aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornextcloud-command <nextcloud-command@users.noreply.github.com>2025-02-09 15:26:38 +0000
committernextcloud-command <nextcloud-command@users.noreply.github.com>2025-02-09 15:26:38 +0000
commit4e8b002f8f6354dd18cd2f167f2704ea30ad09af (patch)
treed1136fc7ce58e67efdc81aad7d25f45d965e8298
parent300ffcbb78d84fd42cdf194163a6faaf227ca708 (diff)
downloadnextcloud-server-backport/49631/stable29.tar.gz
nextcloud-server-backport/49631/stable29.zip
chore(assets): Recompile assetsbackport/49631/stable29
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
-rw-r--r--dist/3098-3098.js3
-rw-r--r--dist/3098-3098.js.LICENSE.txt (renamed from dist/5724-5724.js.LICENSE.txt)23
-rw-r--r--dist/3098-3098.js.map1
-rw-r--r--dist/5724-5724.js3
-rw-r--r--dist/5724-5724.js.map1
-rw-r--r--dist/files-init.js4
-rw-r--r--dist/files-init.js.map2
-rw-r--r--dist/files-main.js4
-rw-r--r--dist/files-main.js.map2
-rw-r--r--dist/files_sharing-additionalScripts.js4
-rw-r--r--dist/files_sharing-additionalScripts.js.map2
-rw-r--r--dist/files_sharing-files_sharing_tab.js4
-rw-r--r--dist/files_sharing-files_sharing_tab.js.map2
-rw-r--r--dist/files_sharing-init.js4
-rw-r--r--dist/files_sharing-init.js.map2
15 files changed, 19 insertions, 42 deletions
diff --git a/dist/3098-3098.js b/dist/3098-3098.js
new file mode 100644
index 00000000000..30f048cd914
--- /dev/null
+++ b/dist/3098-3098.js
@@ -0,0 +1,3 @@
+/*! For license information please see 3098-3098.js.LICENSE.txt */
+(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[3098],{17816:function(t,e,i){var n=i(96763);t.exports=function(){"use strict";function t(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")}var e=function(t,e){return t(e={exports:{}},e.exports),e.exports}((function(e,i){var r;r=function(){return function e(i,n,r){function a(o,l){if(!n[o]){if(!i[o]){if(!l&&t)return t();if(s)return s(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var h=n[o]={exports:{}};i[o][0].call(h.exports,(function(t){return a(i[o][1][t]||t)}),h,h.exports,e,i,n,r)}return n[o].exports}for(var s=t,o=0;o<r.length;o++)a(r[o]);return a}({1:[function(t,e,i){e.exports=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then}},{}],2:[function(t,e,i){var n=t("./utils").getSymbolSize;i.getRowColCoords=function(t){if(1===t)return[];for(var e=Math.floor(t/7)+2,i=n(t),r=145===i?26:2*Math.ceil((i-13)/(2*e-2)),a=[i-7],s=1;s<e-1;s++)a[s]=a[s-1]-r;return a.push(6),a.reverse()},i.getPositions=function(t){for(var e=[],n=i.getRowColCoords(t),r=n.length,a=0;a<r;a++)for(var s=0;s<r;s++)0===a&&0===s||0===a&&s===r-1||a===r-1&&0===s||e.push([n[a],n[s]]);return e}},{"./utils":21}],3:[function(t,e,i){var n=t("./mode"),r=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function a(t){this.mode=n.ALPHANUMERIC,this.data=t}a.getBitsLength=function(t){return 11*Math.floor(t/2)+t%2*6},a.prototype.getLength=function(){return this.data.length},a.prototype.getBitsLength=function(){return a.getBitsLength(this.data.length)},a.prototype.write=function(t){var e;for(e=0;e+2<=this.data.length;e+=2){var i=45*r.indexOf(this.data[e]);i+=r.indexOf(this.data[e+1]),t.put(i,11)}this.data.length%2&&t.put(r.indexOf(this.data[e]),6)},e.exports=a},{"./mode":14}],4:[function(t,e,i){function n(){this.buffer=[],this.length=0}n.prototype={get:function(t){var e=Math.floor(t/8);return 1==(this.buffer[e]>>>7-t%8&1)},put:function(t,e){for(var i=0;i<e;i++)this.putBit(1==(t>>>e-i-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},e.exports=n},{}],5:[function(t,e,i){var n=t("../utils/buffer");function r(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=n.alloc(t*t),this.reservedBit=n.alloc(t*t)}r.prototype.set=function(t,e,i,n){var r=t*this.size+e;this.data[r]=i,n&&(this.reservedBit[r]=!0)},r.prototype.get=function(t,e){return this.data[t*this.size+e]},r.prototype.xor=function(t,e,i){this.data[t*this.size+e]^=i},r.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]},e.exports=r},{"../utils/buffer":28}],6:[function(t,e,i){var n=t("../utils/buffer"),r=t("./mode");function a(t){this.mode=r.BYTE,this.data=n.from(t)}a.getBitsLength=function(t){return 8*t},a.prototype.getLength=function(){return this.data.length},a.prototype.getBitsLength=function(){return a.getBitsLength(this.data.length)},a.prototype.write=function(t){for(var e=0,i=this.data.length;e<i;e++)t.put(this.data[e],8)},e.exports=a},{"../utils/buffer":28,"./mode":14}],7:[function(t,e,i){var n=t("./error-correction-level"),r=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],a=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];i.getBlocksCount=function(t,e){switch(e){case n.L:return r[4*(t-1)+0];case n.M:return r[4*(t-1)+1];case n.Q:return r[4*(t-1)+2];case n.H:return r[4*(t-1)+3];default:return}},i.getTotalCodewordsCount=function(t,e){switch(e){case n.L:return a[4*(t-1)+0];case n.M:return a[4*(t-1)+1];case n.Q:return a[4*(t-1)+2];case n.H:return a[4*(t-1)+3];default:return}}},{"./error-correction-level":8}],8:[function(t,e,i){i.L={bit:1},i.M={bit:0},i.Q={bit:3},i.H={bit:2},i.isValid=function(t){return t&&void 0!==t.bit&&t.bit>=0&&t.bit<4},i.from=function(t,e){if(i.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return i.L;case"m":case"medium":return i.M;case"q":case"quartile":return i.Q;case"h":case"high":return i.H;default:throw new Error("Unknown EC Level: "+t)}}(t)}catch(t){return e}}},{}],9:[function(t,e,i){var n=t("./utils").getSymbolSize;i.getPositions=function(t){var e=n(t);return[[0,0],[e-7,0],[0,e-7]]}},{"./utils":21}],10:[function(t,e,i){var n=t("./utils"),r=n.getBCHDigit(1335);i.getEncodedBits=function(t,e){for(var i=t.bit<<3|e,a=i<<10;n.getBCHDigit(a)-r>=0;)a^=1335<<n.getBCHDigit(a)-r;return 21522^(i<<10|a)}},{"./utils":21}],11:[function(t,e,i){var n=t("../utils/buffer"),r=n.alloc(512),a=n.alloc(256);!function(){for(var t=1,e=0;e<255;e++)r[e]=t,a[t]=e,256&(t<<=1)&&(t^=285);for(e=255;e<512;e++)r[e]=r[e-255]}(),i.log=function(t){if(t<1)throw new Error("log("+t+")");return a[t]},i.exp=function(t){return r[t]},i.mul=function(t,e){return 0===t||0===e?0:r[a[t]+a[e]]}},{"../utils/buffer":28}],12:[function(t,e,i){var n=t("./mode"),r=t("./utils");function a(t){this.mode=n.KANJI,this.data=t}a.getBitsLength=function(t){return 13*t},a.prototype.getLength=function(){return this.data.length},a.prototype.getBitsLength=function(){return a.getBitsLength(this.data.length)},a.prototype.write=function(t){var e;for(e=0;e<this.data.length;e++){var i=r.toSJIS(this.data[e]);if(i>=33088&&i<=40956)i-=33088;else{if(!(i>=57408&&i<=60351))throw new Error("Invalid SJIS character: "+this.data[e]+"\nMake sure your charset is UTF-8");i-=49472}i=192*(i>>>8&255)+(255&i),t.put(i,13)}},e.exports=a},{"./mode":14,"./utils":21}],13:[function(t,e,i){i.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var n=3,r=3,a=40,s=10;function o(t,e,n){switch(t){case i.Patterns.PATTERN000:return(e+n)%2==0;case i.Patterns.PATTERN001:return e%2==0;case i.Patterns.PATTERN010:return n%3==0;case i.Patterns.PATTERN011:return(e+n)%3==0;case i.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(n/3))%2==0;case i.Patterns.PATTERN101:return e*n%2+e*n%3==0;case i.Patterns.PATTERN110:return(e*n%2+e*n%3)%2==0;case i.Patterns.PATTERN111:return(e*n%3+(e+n)%2)%2==0;default:throw new Error("bad maskPattern:"+t)}}i.isValid=function(t){return null!=t&&""!==t&&!isNaN(t)&&t>=0&&t<=7},i.from=function(t){return i.isValid(t)?parseInt(t,10):void 0},i.getPenaltyN1=function(t){for(var e=t.size,i=0,r=0,a=0,s=null,o=null,l=0;l<e;l++){r=a=0,s=o=null;for(var c=0;c<e;c++){var h=t.get(l,c);h===s?r++:(r>=5&&(i+=n+(r-5)),s=h,r=1),(h=t.get(c,l))===o?a++:(a>=5&&(i+=n+(a-5)),o=h,a=1)}r>=5&&(i+=n+(r-5)),a>=5&&(i+=n+(a-5))}return i},i.getPenaltyN2=function(t){for(var e=t.size,i=0,n=0;n<e-1;n++)for(var a=0;a<e-1;a++){var s=t.get(n,a)+t.get(n,a+1)+t.get(n+1,a)+t.get(n+1,a+1);4!==s&&0!==s||i++}return i*r},i.getPenaltyN3=function(t){for(var e=t.size,i=0,n=0,r=0,s=0;s<e;s++){n=r=0;for(var o=0;o<e;o++)n=n<<1&2047|t.get(s,o),o>=10&&(1488===n||93===n)&&i++,r=r<<1&2047|t.get(o,s),o>=10&&(1488===r||93===r)&&i++}return i*a},i.getPenaltyN4=function(t){for(var e=0,i=t.data.length,n=0;n<i;n++)e+=t.data[n];return Math.abs(Math.ceil(100*e/i/5)-10)*s},i.applyMask=function(t,e){for(var i=e.size,n=0;n<i;n++)for(var r=0;r<i;r++)e.isReserved(r,n)||e.xor(r,n,o(t,r,n))},i.getBestMask=function(t,e){for(var n=Object.keys(i.Patterns).length,r=0,a=1/0,s=0;s<n;s++){e(s),i.applyMask(s,t);var o=i.getPenaltyN1(t)+i.getPenaltyN2(t)+i.getPenaltyN3(t)+i.getPenaltyN4(t);i.applyMask(s,t),o<a&&(a=o,r=s)}return r}},{}],14:[function(t,e,i){var n=t("./version-check"),r=t("./regex");i.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},i.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},i.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},i.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},i.MIXED={bit:-1},i.getCharCountIndicator=function(t,e){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!n.isValid(e))throw new Error("Invalid version: "+e);return e>=1&&e<10?t.ccBits[0]:e<27?t.ccBits[1]:t.ccBits[2]},i.getBestModeForData=function(t){return r.testNumeric(t)?i.NUMERIC:r.testAlphanumeric(t)?i.ALPHANUMERIC:r.testKanji(t)?i.KANJI:i.BYTE},i.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")},i.isValid=function(t){return t&&t.bit&&t.ccBits},i.from=function(t,e){if(i.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return i.NUMERIC;case"alphanumeric":return i.ALPHANUMERIC;case"kanji":return i.KANJI;case"byte":return i.BYTE;default:throw new Error("Unknown mode: "+t)}}(t)}catch(t){return e}}},{"./regex":19,"./version-check":22}],15:[function(t,e,i){var n=t("./mode");function r(t){this.mode=n.NUMERIC,this.data=t.toString()}r.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)},r.prototype.getLength=function(){return this.data.length},r.prototype.getBitsLength=function(){return r.getBitsLength(this.data.length)},r.prototype.write=function(t){var e,i,n;for(e=0;e+3<=this.data.length;e+=3)i=this.data.substr(e,3),n=parseInt(i,10),t.put(n,10);var r=this.data.length-e;r>0&&(i=this.data.substr(e),n=parseInt(i,10),t.put(n,3*r+1))},e.exports=r},{"./mode":14}],16:[function(t,e,i){var n=t("../utils/buffer"),r=t("./galois-field");i.mul=function(t,e){for(var i=n.alloc(t.length+e.length-1),a=0;a<t.length;a++)for(var s=0;s<e.length;s++)i[a+s]^=r.mul(t[a],e[s]);return i},i.mod=function(t,e){for(var i=n.from(t);i.length-e.length>=0;){for(var a=i[0],s=0;s<e.length;s++)i[s]^=r.mul(e[s],a);for(var o=0;o<i.length&&0===i[o];)o++;i=i.slice(o)}return i},i.generateECPolynomial=function(t){for(var e=n.from([1]),a=0;a<t;a++)e=i.mul(e,[1,r.exp(a)]);return e}},{"../utils/buffer":28,"./galois-field":11}],17:[function(t,e,i){var n=t("../utils/buffer"),r=t("./utils"),a=t("./error-correction-level"),s=t("./bit-buffer"),o=t("./bit-matrix"),l=t("./alignment-pattern"),c=t("./finder-pattern"),h=t("./mask-pattern"),u=t("./error-correction-code"),d=t("./reed-solomon-encoder"),p=t("./version"),f=t("./format-info"),g=t("./mode"),A=t("./segments"),m=t("isarray");function v(t,e,i){var n,r,a=t.size,s=f.getEncodedBits(e,i);for(n=0;n<15;n++)r=1==(s>>n&1),n<6?t.set(n,8,r,!0):n<8?t.set(n+1,8,r,!0):t.set(a-15+n,8,r,!0),n<8?t.set(8,a-n-1,r,!0):n<9?t.set(8,15-n-1+1,r,!0):t.set(8,15-n-1,r,!0);t.set(a-8,8,1,!0)}function y(t,e,i){var a=new s;i.forEach((function(e){a.put(e.mode.bit,4),a.put(e.getLength(),g.getCharCountIndicator(e.mode,t)),e.write(a)}));var o=8*(r.getSymbolTotalCodewords(t)-u.getTotalCodewordsCount(t,e));for(a.getLengthInBits()+4<=o&&a.put(0,4);a.getLengthInBits()%8!=0;)a.putBit(0);for(var l=(o-a.getLengthInBits())/8,c=0;c<l;c++)a.put(c%2?17:236,8);return function(t,e,i){for(var a=r.getSymbolTotalCodewords(e),s=a-u.getTotalCodewordsCount(e,i),o=u.getBlocksCount(e,i),l=o-a%o,c=Math.floor(a/o),h=Math.floor(s/o),p=h+1,f=c-h,g=new d(f),A=0,m=new Array(o),v=new Array(o),y=0,w=n.from(t.buffer),C=0;C<o;C++){var _=C<l?h:p;m[C]=w.slice(A,A+_),v[C]=g.encode(m[C]),A+=_,y=Math.max(y,_)}var b,E,x=n.alloc(a),S=0;for(b=0;b<y;b++)for(E=0;E<o;E++)b<m[E].length&&(x[S++]=m[E][b]);for(b=0;b<f;b++)for(E=0;E<o;E++)x[S++]=v[E][b];return x}(a,t,e)}function w(t,e,i,n){var a;if(m(t))a=A.fromArray(t);else{if("string"!=typeof t)throw new Error("Invalid data");var s=e;if(!s){var u=A.rawSplit(t);s=p.getBestVersionForData(u,i)}a=A.fromString(t,s||40)}var d=p.getBestVersionForData(a,i);if(!d)throw new Error("The amount of data is too big to be stored in a QR Code");if(e){if(e<d)throw new Error("\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: "+d+".\n")}else e=d;var f=y(e,i,a),g=r.getSymbolSize(e),w=new o(g);return function(t,e){for(var i=t.size,n=c.getPositions(e),r=0;r<n.length;r++)for(var a=n[r][0],s=n[r][1],o=-1;o<=7;o++)if(!(a+o<=-1||i<=a+o))for(var l=-1;l<=7;l++)s+l<=-1||i<=s+l||(o>=0&&o<=6&&(0===l||6===l)||l>=0&&l<=6&&(0===o||6===o)||o>=2&&o<=4&&l>=2&&l<=4?t.set(a+o,s+l,!0,!0):t.set(a+o,s+l,!1,!0))}(w,e),function(t){for(var e=t.size,i=8;i<e-8;i++){var n=i%2==0;t.set(i,6,n,!0),t.set(6,i,n,!0)}}(w),function(t,e){for(var i=l.getPositions(e),n=0;n<i.length;n++)for(var r=i[n][0],a=i[n][1],s=-2;s<=2;s++)for(var o=-2;o<=2;o++)-2===s||2===s||-2===o||2===o||0===s&&0===o?t.set(r+s,a+o,!0,!0):t.set(r+s,a+o,!1,!0)}(w,e),v(w,i,0),e>=7&&function(t,e){for(var i,n,r,a=t.size,s=p.getEncodedBits(e),o=0;o<18;o++)i=Math.floor(o/3),n=o%3+a-8-3,r=1==(s>>o&1),t.set(i,n,r,!0),t.set(n,i,r,!0)}(w,e),function(t,e){for(var i=t.size,n=-1,r=i-1,a=7,s=0,o=i-1;o>0;o-=2)for(6===o&&o--;;){for(var l=0;l<2;l++)if(!t.isReserved(r,o-l)){var c=!1;s<e.length&&(c=1==(e[s]>>>a&1)),t.set(r,o-l,c),-1==--a&&(s++,a=7)}if((r+=n)<0||i<=r){r-=n,n=-n;break}}}(w,f),isNaN(n)&&(n=h.getBestMask(w,v.bind(null,w,i))),h.applyMask(n,w),v(w,i,n),{modules:w,version:e,errorCorrectionLevel:i,maskPattern:n,segments:a}}i.create=function(t,e){if(void 0===t||""===t)throw new Error("No input text");var i,n,s=a.M;return void 0!==e&&(s=a.from(e.errorCorrectionLevel,a.M),i=p.from(e.version),n=h.from(e.maskPattern),e.toSJISFunc&&r.setToSJISFunction(e.toSJISFunc)),w(t,i,s,n)}},{"../utils/buffer":28,"./alignment-pattern":2,"./bit-buffer":4,"./bit-matrix":5,"./error-correction-code":7,"./error-correction-level":8,"./finder-pattern":9,"./format-info":10,"./mask-pattern":13,"./mode":14,"./reed-solomon-encoder":18,"./segments":20,"./utils":21,"./version":23,isarray:33}],18:[function(t,e,i){var n=t("../utils/buffer"),r=t("./polynomial"),a=t("buffer").Buffer;function s(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}s.prototype.initialize=function(t){this.degree=t,this.genPoly=r.generateECPolynomial(this.degree)},s.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");var e=n.alloc(this.degree),i=a.concat([t,e],t.length+this.degree),s=r.mod(i,this.genPoly),o=this.degree-s.length;if(o>0){var l=n.alloc(this.degree);return s.copy(l,o),l}return s},e.exports=s},{"../utils/buffer":28,"./polynomial":16,buffer:30}],19:[function(t,e,i){var n="[0-9]+",r="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",a="(?:(?![A-Z0-9 $%*+\\-./:]|"+(r=r.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";i.KANJI=new RegExp(r,"g"),i.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),i.BYTE=new RegExp(a,"g"),i.NUMERIC=new RegExp(n,"g"),i.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");var s=new RegExp("^"+r+"$"),o=new RegExp("^"+n+"$"),l=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");i.testKanji=function(t){return s.test(t)},i.testNumeric=function(t){return o.test(t)},i.testAlphanumeric=function(t){return l.test(t)}},{}],20:[function(t,e,i){var n=t("./mode"),r=t("./numeric-data"),a=t("./alphanumeric-data"),s=t("./byte-data"),o=t("./kanji-data"),l=t("./regex"),c=t("./utils"),h=t("dijkstrajs");function u(t){return unescape(encodeURIComponent(t)).length}function d(t,e,i){for(var n,r=[];null!==(n=t.exec(i));)r.push({data:n[0],index:n.index,mode:e,length:n[0].length});return r}function p(t){var e,i,r=d(l.NUMERIC,n.NUMERIC,t),a=d(l.ALPHANUMERIC,n.ALPHANUMERIC,t);return c.isKanjiModeEnabled()?(e=d(l.BYTE,n.BYTE,t),i=d(l.KANJI,n.KANJI,t)):(e=d(l.BYTE_KANJI,n.BYTE,t),i=[]),r.concat(a,e,i).sort((function(t,e){return t.index-e.index})).map((function(t){return{data:t.data,mode:t.mode,length:t.length}}))}function f(t,e){switch(e){case n.NUMERIC:return r.getBitsLength(t);case n.ALPHANUMERIC:return a.getBitsLength(t);case n.KANJI:return o.getBitsLength(t);case n.BYTE:return s.getBitsLength(t)}}function g(t,e){var i,l=n.getBestModeForData(t);if((i=n.from(e,l))!==n.BYTE&&i.bit<l.bit)throw new Error('"'+t+'" cannot be encoded with mode '+n.toString(i)+".\n Suggested mode is: "+n.toString(l));switch(i!==n.KANJI||c.isKanjiModeEnabled()||(i=n.BYTE),i){case n.NUMERIC:return new r(t);case n.ALPHANUMERIC:return new a(t);case n.KANJI:return new o(t);case n.BYTE:return new s(t)}}i.fromArray=function(t){return t.reduce((function(t,e){return"string"==typeof e?t.push(g(e,null)):e.data&&t.push(g(e.data,e.mode)),t}),[])},i.fromString=function(t,e){for(var r=function(t,e){for(var i={},r={start:{}},a=["start"],s=0;s<t.length;s++){for(var o=t[s],l=[],c=0;c<o.length;c++){var h=o[c],u=""+s+c;l.push(u),i[u]={node:h,lastCount:0},r[u]={};for(var d=0;d<a.length;d++){var p=a[d];i[p]&&i[p].node.mode===h.mode?(r[p][u]=f(i[p].lastCount+h.length,h.mode)-f(i[p].lastCount,h.mode),i[p].lastCount+=h.length):(i[p]&&(i[p].lastCount=h.length),r[p][u]=f(h.length,h.mode)+4+n.getCharCountIndicator(h.mode,e))}}a=l}for(d=0;d<a.length;d++)r[a[d]].end=0;return{map:r,table:i}}(function(t){for(var e=[],i=0;i<t.length;i++){var r=t[i];switch(r.mode){case n.NUMERIC:e.push([r,{data:r.data,mode:n.ALPHANUMERIC,length:r.length},{data:r.data,mode:n.BYTE,length:r.length}]);break;case n.ALPHANUMERIC:e.push([r,{data:r.data,mode:n.BYTE,length:r.length}]);break;case n.KANJI:e.push([r,{data:r.data,mode:n.BYTE,length:u(r.data)}]);break;case n.BYTE:e.push([{data:r.data,mode:n.BYTE,length:u(r.data)}])}}return e}(p(t,c.isKanjiModeEnabled())),e),a=h.find_path(r.map,"start","end"),s=[],o=1;o<a.length-1;o++)s.push(r.table[a[o]].node);return i.fromArray(s.reduce((function(t,e){var i=t.length-1>=0?t[t.length-1]:null;return i&&i.mode===e.mode?(t[t.length-1].data+=e.data,t):(t.push(e),t)}),[]))},i.rawSplit=function(t){return i.fromArray(p(t,c.isKanjiModeEnabled()))}},{"./alphanumeric-data":3,"./byte-data":6,"./kanji-data":12,"./mode":14,"./numeric-data":15,"./regex":19,"./utils":21,dijkstrajs:31}],21:[function(t,e,i){var n,r=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];i.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return 4*t+17},i.getSymbolTotalCodewords=function(t){return r[t]},i.getBCHDigit=function(t){for(var e=0;0!==t;)e++,t>>>=1;return e},i.setToSJISFunction=function(t){if("function"!=typeof t)throw new Error('"toSJISFunc" is not a valid function.');n=t},i.isKanjiModeEnabled=function(){return void 0!==n},i.toSJIS=function(t){return n(t)}},{}],22:[function(t,e,i){i.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}},{}],23:[function(t,e,i){var n=t("./utils"),r=t("./error-correction-code"),a=t("./error-correction-level"),s=t("./mode"),o=t("./version-check"),l=t("isarray"),c=n.getBCHDigit(7973);function h(t,e){return s.getCharCountIndicator(t,e)+4}function u(t,e){var i=0;return t.forEach((function(t){var n=h(t.mode,e);i+=n+t.getBitsLength()})),i}i.from=function(t,e){return o.isValid(t)?parseInt(t,10):e},i.getCapacity=function(t,e,i){if(!o.isValid(t))throw new Error("Invalid QR Code version");void 0===i&&(i=s.BYTE);var a=8*(n.getSymbolTotalCodewords(t)-r.getTotalCodewordsCount(t,e));if(i===s.MIXED)return a;var l=a-h(i,t);switch(i){case s.NUMERIC:return Math.floor(l/10*3);case s.ALPHANUMERIC:return Math.floor(l/11*2);case s.KANJI:return Math.floor(l/13);case s.BYTE:default:return Math.floor(l/8)}},i.getBestVersionForData=function(t,e){var n,r=a.from(e,a.M);if(l(t)){if(t.length>1)return function(t,e){for(var n=1;n<=40;n++)if(u(t,n)<=i.getCapacity(n,e,s.MIXED))return n}(t,r);if(0===t.length)return 1;n=t[0]}else n=t;return function(t,e,n){for(var r=1;r<=40;r++)if(e<=i.getCapacity(r,n,t))return r}(n.mode,n.getLength(),r)},i.getEncodedBits=function(t){if(!o.isValid(t)||t<7)throw new Error("Invalid QR Code version");for(var e=t<<12;n.getBCHDigit(e)-c>=0;)e^=7973<<n.getBCHDigit(e)-c;return t<<12|e}},{"./error-correction-code":7,"./error-correction-level":8,"./mode":14,"./utils":21,"./version-check":22,isarray:33}],24:[function(t,e,i){var n=t("./can-promise"),r=t("./core/qrcode"),a=t("./renderer/canvas"),s=t("./renderer/svg-tag.js");function o(t,e,i,a,s){var o=[].slice.call(arguments,1),l=o.length,c="function"==typeof o[l-1];if(!c&&!n())throw new Error("Callback required as last argument");if(!c){if(l<1)throw new Error("Too few arguments provided");return 1===l?(i=e,e=a=void 0):2!==l||e.getContext||(a=i,i=e,e=void 0),new Promise((function(n,s){try{var o=r.create(i,a);n(t(o,e,a))}catch(t){s(t)}}))}if(l<2)throw new Error("Too few arguments provided");2===l?(s=i,i=e,e=a=void 0):3===l&&(e.getContext&&void 0===s?(s=a,a=void 0):(s=a,a=i,i=e,e=void 0));try{var h=r.create(i,a);s(null,t(h,e,a))}catch(t){s(t)}}i.create=r.create,i.toCanvas=o.bind(null,a.render),i.toDataURL=o.bind(null,a.renderToDataURL),i.toString=o.bind(null,(function(t,e,i){return s.render(t,i)}))},{"./can-promise":1,"./core/qrcode":17,"./renderer/canvas":25,"./renderer/svg-tag.js":26}],25:[function(t,e,i){var n=t("./utils");i.render=function(t,e,i){var r=i,a=e;void 0!==r||e&&e.getContext||(r=e,e=void 0),e||(a=function(){try{return document.createElement("canvas")}catch(t){throw new Error("You need to specify a canvas element")}}()),r=n.getOptions(r);var s=n.getImageWidth(t.modules.size,r),o=a.getContext("2d"),l=o.createImageData(s,s);return n.qrToImageData(l.data,t,r),function(t,e,i){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=i,e.width=i,e.style.height=i+"px",e.style.width=i+"px"}(o,a,s),o.putImageData(l,0,0),a},i.renderToDataURL=function(t,e,n){var r=n;void 0!==r||e&&e.getContext||(r=e,e=void 0),r||(r={});var a=i.render(t,e,r),s=r.type||"image/png",o=r.rendererOpts||{};return a.toDataURL(s,o.quality)}},{"./utils":27}],26:[function(t,e,i){var n=t("./utils");function r(t,e){var i=t.a/255,n=e+'="'+t.hex+'"';return i<1?n+" "+e+'-opacity="'+i.toFixed(2).slice(1)+'"':n}function a(t,e,i){var n=t+e;return void 0!==i&&(n+=" "+i),n}i.render=function(t,e,i){var s=n.getOptions(e),o=t.modules.size,l=t.modules.data,c=o+2*s.margin,h=s.color.light.a?"<path "+r(s.color.light,"fill")+' d="M0 0h'+c+"v"+c+'H0z"/>':"",u="<path "+r(s.color.dark,"stroke")+' d="'+function(t,e,i){for(var n="",r=0,s=!1,o=0,l=0;l<t.length;l++){var c=Math.floor(l%e),h=Math.floor(l/e);c||s||(s=!0),t[l]?(o++,l>0&&c>0&&t[l-1]||(n+=s?a("M",c+i,.5+h+i):a("m",r,0),r=0,s=!1),c+1<e&&t[l+1]||(n+=a("h",o),o=0)):r++}return n}(l,o,s.margin)+'"/>',d='viewBox="0 0 '+c+" "+c+'"',p='<svg xmlns="http://www.w3.org/2000/svg" '+(s.width?'width="'+s.width+'" height="'+s.width+'" ':"")+d+' shape-rendering="crispEdges">'+h+u+"</svg>\n";return"function"==typeof i&&i(null,p),p}},{"./utils":27}],27:[function(t,e,i){function n(t){if("number"==typeof t&&(t=t.toString()),"string"!=typeof t)throw new Error("Color should be defined as hex string");var e=t.slice().replace("#","").split("");if(e.length<3||5===e.length||e.length>8)throw new Error("Invalid hex color: "+t);3!==e.length&&4!==e.length||(e=Array.prototype.concat.apply([],e.map((function(t){return[t,t]})))),6===e.length&&e.push("F","F");var i=parseInt(e.join(""),16);return{r:i>>24&255,g:i>>16&255,b:i>>8&255,a:255&i,hex:"#"+e.slice(0,6).join("")}}i.getOptions=function(t){t||(t={}),t.color||(t.color={});var e=void 0===t.margin||null===t.margin||t.margin<0?4:t.margin,i=t.width&&t.width>=21?t.width:void 0,r=t.scale||4;return{width:i,scale:i?4:r,margin:e,color:{dark:n(t.color.dark||"#000000ff"),light:n(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},i.getScale=function(t,e){return e.width&&e.width>=t+2*e.margin?e.width/(t+2*e.margin):e.scale},i.getImageWidth=function(t,e){var n=i.getScale(t,e);return Math.floor((t+2*e.margin)*n)},i.qrToImageData=function(t,e,n){for(var r=e.modules.size,a=e.modules.data,s=i.getScale(r,n),o=Math.floor((r+2*n.margin)*s),l=n.margin*s,c=[n.color.light,n.color.dark],h=0;h<o;h++)for(var u=0;u<o;u++){var d=4*(h*o+u),p=n.color.light;h>=l&&u>=l&&h<o-l&&u<o-l&&(p=c[a[Math.floor((h-l)/s)*r+Math.floor((u-l)/s)]?1:0]),t[d++]=p.r,t[d++]=p.g,t[d++]=p.b,t[d]=p.a}}},{}],28:[function(t,e,i){var n=t("isarray");a.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()}catch(t){return!1}}();var r=a.TYPED_ARRAY_SUPPORT?2147483647:1073741823;function a(t,e,i){return a.TYPED_ARRAY_SUPPORT||this instanceof a?"number"==typeof t?l(this,t):function(t,e,i,n){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?function(t,e,i,n){if(i<0||e.byteLength<i)throw new RangeError("'offset' is out of bounds");if(e.byteLength<i+(n||0))throw new RangeError("'length' is out of bounds");var r;return r=void 0===i&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,i):new Uint8Array(e,i,n),a.TYPED_ARRAY_SUPPORT?r.__proto__=a.prototype:r=c(t,r),r}(t,e,i,n):"string"==typeof e?function(t,e){var i=0|u(e),n=o(t,i),r=n.write(e);return r!==i&&(n=n.slice(0,r)),n}(t,e):function(t,e){if(a.isBuffer(e)){var i=0|s(e.length),n=o(t,i);return 0===n.length||e.copy(n,0,0,i),n}if(e){if("undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!=typeof e.length||(r=e.length)!=r?o(t,0):c(t,e);if("Buffer"===e.type&&Array.isArray(e.data))return c(t,e.data)}var r;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(t,e)}(this,t,e,i):new a(t,e,i)}function s(t){if(t>=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|t}function o(t,e){var i;return a.TYPED_ARRAY_SUPPORT?(i=new Uint8Array(e)).__proto__=a.prototype:(null===(i=t)&&(i=new a(e)),i.length=e),i}function l(t,e){var i=o(t,e<0?0:0|s(e));if(!a.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)i[n]=0;return i}function c(t,e){for(var i=e.length<0?0:0|s(e.length),n=o(t,i),r=0;r<i;r+=1)n[r]=255&e[r];return n}function h(t,e){var i;e=e||1/0;for(var n=t.length,r=null,a=[],s=0;s<n;++s){if((i=t.charCodeAt(s))>55295&&i<57344){if(!r){if(i>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&a.push(239,191,189);continue}r=i;continue}if(i<56320){(e-=3)>-1&&a.push(239,191,189),r=i;continue}i=65536+(r-55296<<10|i-56320)}else r&&(e-=3)>-1&&a.push(239,191,189);if(r=null,i<128){if((e-=1)<0)break;a.push(i)}else if(i<2048){if((e-=2)<0)break;a.push(i>>6|192,63&i|128)}else if(i<65536){if((e-=3)<0)break;a.push(i>>12|224,i>>6&63|128,63&i|128)}else{if(!(i<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(i>>18|240,i>>12&63|128,i>>6&63|128,63&i|128)}}return a}function u(t){return a.isBuffer(t)?t.length:"undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer)?t.byteLength:("string"!=typeof t&&(t=""+t),0===t.length?0:h(t).length)}a.TYPED_ARRAY_SUPPORT&&(a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1})),a.prototype.write=function(t,e,i){void 0===e||void 0===i&&"string"==typeof e?(i=this.length,e=0):isFinite(e)&&(e|=0,isFinite(i)?i|=0:i=void 0);var n=this.length-e;if((void 0===i||i>n)&&(i=n),t.length>0&&(i<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");return function(t,e,i,n){return function(t,e,i,n){for(var r=0;r<n&&!(r+i>=e.length||r>=t.length);++r)e[r+i]=t[r];return r}(h(e,t.length-i),t,i,n)}(this,t,e,i)},a.prototype.slice=function(t,e){var i,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t),a.TYPED_ARRAY_SUPPORT)(i=this.subarray(t,e)).__proto__=a.prototype;else{var r=e-t;i=new a(r,void 0);for(var s=0;s<r;++s)i[s]=this[s+t]}return i},a.prototype.copy=function(t,e,i,n){if(i||(i=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<i&&(n=i),n===i)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(i<0||i>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e<n-i&&(n=t.length-e+i);var r,s=n-i;if(this===t&&i<e&&e<n)for(r=s-1;r>=0;--r)t[r+e]=this[r+i];else if(s<1e3||!a.TYPED_ARRAY_SUPPORT)for(r=0;r<s;++r)t[r+e]=this[r+i];else Uint8Array.prototype.set.call(t,this.subarray(i,i+s),e);return s},a.prototype.fill=function(t,e,i){if("string"==typeof t){if("string"==typeof e?(e=0,i=this.length):"string"==typeof i&&(i=this.length),1===t.length){var n=t.charCodeAt(0);n<256&&(t=n)}}else"number"==typeof t&&(t&=255);if(e<0||this.length<e||this.length<i)throw new RangeError("Out of range index");if(i<=e)return this;var r;if(e>>>=0,i=void 0===i?this.length:i>>>0,t||(t=0),"number"==typeof t)for(r=e;r<i;++r)this[r]=t;else{var s=a.isBuffer(t)?t:new a(t),o=s.length;for(r=0;r<i-e;++r)this[r+e]=s[r%o]}return this},a.concat=function(t,e){if(!n(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return o(null,0);var i;if(void 0===e)for(e=0,i=0;i<t.length;++i)e+=t[i].length;var r=l(null,e),s=0;for(i=0;i<t.length;++i){var c=t[i];if(!a.isBuffer(c))throw new TypeError('"list" argument must be an Array of Buffers');c.copy(r,s),s+=c.length}return r},a.byteLength=u,a.prototype._isBuffer=!0,a.isBuffer=function(t){return!(null==t||!t._isBuffer)},e.exports.alloc=function(t){var e=new a(t);return e.fill(0),e},e.exports.from=function(t){return new a(t)}},{isarray:33}],29:[function(t,e,i){i.byteLength=function(t){var e=l(t),i=e[0],n=e[1];return 3*(i+n)/4-n},i.toByteArray=function(t){var e,i,n=l(t),s=n[0],o=n[1],c=new a(function(t,e,i){return 3*(e+i)/4-i}(0,s,o)),h=0,u=o>0?s-4:s;for(i=0;i<u;i+=4)e=r[t.charCodeAt(i)]<<18|r[t.charCodeAt(i+1)]<<12|r[t.charCodeAt(i+2)]<<6|r[t.charCodeAt(i+3)],c[h++]=e>>16&255,c[h++]=e>>8&255,c[h++]=255&e;return 2===o&&(e=r[t.charCodeAt(i)]<<2|r[t.charCodeAt(i+1)]>>4,c[h++]=255&e),1===o&&(e=r[t.charCodeAt(i)]<<10|r[t.charCodeAt(i+1)]<<4|r[t.charCodeAt(i+2)]>>2,c[h++]=e>>8&255,c[h++]=255&e),c},i.fromByteArray=function(t){for(var e,i=t.length,r=i%3,a=[],s=16383,o=0,l=i-r;o<l;o+=s)a.push(c(t,o,o+s>l?l:o+s));return 1===r?(e=t[i-1],a.push(n[e>>2]+n[e<<4&63]+"==")):2===r&&(e=(t[i-2]<<8)+t[i-1],a.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),a.join("")};for(var n=[],r=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)n[o]=s[o],r[s.charCodeAt(o)]=o;function l(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var i=t.indexOf("=");return-1===i&&(i=e),[i,i===e?0:4-i%4]}function c(t,e,i){for(var r,a=[],s=e;s<i;s+=3)r=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),a.push(n[(o=r)>>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);var o;return a.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},{}],30:[function(t,e,i){var r=t("base64-js"),a=t("ieee754"),s="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;i.Buffer=c,i.SlowBuffer=function(t){return+t!=t&&(t=0),c.alloc(+t)},i.INSPECT_MAX_BYTES=50;var o=2147483647;function l(t){if(t>o)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,c.prototype),e}function c(t,e,i){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return d(t)}return h(t,e,i)}function h(t,e,i){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!c.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var i=0|g(t,e),n=l(i),r=n.write(t,e);return r!==i&&(n=n.slice(0,r)),n}(t,e);if(ArrayBuffer.isView(t))return p(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(H(t,ArrayBuffer)||t&&H(t.buffer,ArrayBuffer))return function(t,e,i){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(i||0))throw new RangeError('"length" is outside of buffer bounds');var n;return n=void 0===e&&void 0===i?new Uint8Array(t):void 0===i?new Uint8Array(t,e):new Uint8Array(t,e,i),Object.setPrototypeOf(n,c.prototype),n}(t,e,i);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return c.from(n,e,i);var r=function(t){if(c.isBuffer(t)){var e=0|f(t.length),i=l(e);return 0===i.length||t.copy(i,0,0,e),i}return void 0!==t.length?"number"!=typeof t.length||j(t.length)?l(0):p(t):"Buffer"===t.type&&Array.isArray(t.data)?p(t.data):void 0}(t);if(r)return r;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return c.from(t[Symbol.toPrimitive]("string"),e,i);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function u(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function d(t){return u(t),l(t<0?0:0|f(t))}function p(t){for(var e=t.length<0?0:0|f(t.length),i=l(e),n=0;n<e;n+=1)i[n]=255&t[n];return i}function f(t){if(t>=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function g(t,e){if(c.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||H(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var i=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===i)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return i;case"utf8":case"utf-8":return V(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*i;case"hex":return i>>>1;case"base64":return F(t).length;default:if(r)return n?-1:V(t).length;e=(""+e).toLowerCase(),r=!0}}function A(t,e,i){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===i||i>this.length)&&(i=this.length),i<=0)return"";if((i>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return P(this,e,i);case"utf8":case"utf-8":return k(this,e,i);case"ascii":return I(this,e,i);case"latin1":case"binary":return T(this,e,i);case"base64":return S(this,e,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,e,i);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function m(t,e,i){var n=t[e];t[e]=t[i],t[i]=n}function v(t,e,i,n,r){if(0===t.length)return-1;if("string"==typeof i?(n=i,i=0):i>2147483647?i=2147483647:i<-2147483648&&(i=-2147483648),j(i=+i)&&(i=r?0:t.length-1),i<0&&(i=t.length+i),i>=t.length){if(r)return-1;i=t.length-1}else if(i<0){if(!r)return-1;i=0}if("string"==typeof e&&(e=c.from(e,n)),c.isBuffer(e))return 0===e.length?-1:y(t,e,i,n,r);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,i):Uint8Array.prototype.lastIndexOf.call(t,e,i):y(t,[e],i,n,r);throw new TypeError("val must be string, number or Buffer")}function y(t,e,i,n,r){var a,s=1,o=t.length,l=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,o/=2,l/=2,i/=2}function c(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(r){var h=-1;for(a=i;a<o;a++)if(c(t,a)===c(e,-1===h?0:a-h)){if(-1===h&&(h=a),a-h+1===l)return h*s}else-1!==h&&(a-=a-h),h=-1}else for(i+l>o&&(i=o-l),a=i;a>=0;a--){for(var u=!0,d=0;d<l;d++)if(c(t,a+d)!==c(e,d)){u=!1;break}if(u)return a}return-1}function w(t,e,i,n){i=Number(i)||0;var r=t.length-i;n?(n=Number(n))>r&&(n=r):n=r;var a=e.length;n>a/2&&(n=a/2);for(var s=0;s<n;++s){var o=parseInt(e.substr(2*s,2),16);if(j(o))return s;t[i+s]=o}return s}function C(t,e,i,n){return z(V(e,t.length-i),t,i,n)}function _(t,e,i,n){return z(function(t){for(var e=[],i=0;i<t.length;++i)e.push(255&t.charCodeAt(i));return e}(e),t,i,n)}function b(t,e,i,n){return _(t,e,i,n)}function E(t,e,i,n){return z(F(e),t,i,n)}function x(t,e,i,n){return z(function(t,e){for(var i,n,r,a=[],s=0;s<t.length&&!((e-=2)<0);++s)n=(i=t.charCodeAt(s))>>8,r=i%256,a.push(r),a.push(n);return a}(e,t.length-i),t,i,n)}function S(t,e,i){return 0===e&&i===t.length?r.fromByteArray(t):r.fromByteArray(t.slice(e,i))}function k(t,e,i){i=Math.min(t.length,i);for(var n=[],r=e;r<i;){var a,s,o,l,c=t[r],h=null,u=c>239?4:c>223?3:c>191?2:1;if(r+u<=i)switch(u){case 1:c<128&&(h=c);break;case 2:128==(192&(a=t[r+1]))&&(l=(31&c)<<6|63&a)>127&&(h=l);break;case 3:a=t[r+1],s=t[r+2],128==(192&a)&&128==(192&s)&&(l=(15&c)<<12|(63&a)<<6|63&s)>2047&&(l<55296||l>57343)&&(h=l);break;case 4:a=t[r+1],s=t[r+2],o=t[r+3],128==(192&a)&&128==(192&s)&&128==(192&o)&&(l=(15&c)<<18|(63&a)<<12|(63&s)<<6|63&o)>65535&&l<1114112&&(h=l)}null===h?(h=65533,u=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),r+=u}return function(t){var e=t.length;if(e<=D)return String.fromCharCode.apply(String,t);for(var i="",n=0;n<e;)i+=String.fromCharCode.apply(String,t.slice(n,n+=D));return i}(n)}i.kMaxLength=o,c.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),c.TYPED_ARRAY_SUPPORT||void 0===n||"function"!=typeof n.error||n.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&c[Symbol.species]===c&&Object.defineProperty(c,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),c.poolSize=8192,c.from=function(t,e,i){return h(t,e,i)},Object.setPrototypeOf(c.prototype,Uint8Array.prototype),Object.setPrototypeOf(c,Uint8Array),c.alloc=function(t,e,i){return function(t,e,i){return u(t),t<=0?l(t):void 0!==e?"string"==typeof i?l(t).fill(e,i):l(t).fill(e):l(t)}(t,e,i)},c.allocUnsafe=function(t){return d(t)},c.allocUnsafeSlow=function(t){return d(t)},c.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==c.prototype},c.compare=function(t,e){if(H(t,Uint8Array)&&(t=c.from(t,t.offset,t.byteLength)),H(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(t)||!c.isBuffer(e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;for(var i=t.length,n=e.length,r=0,a=Math.min(i,n);r<a;++r)if(t[r]!==e[r]){i=t[r],n=e[r];break}return i<n?-1:n<i?1:0},c.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return c.alloc(0);var i;if(void 0===e)for(e=0,i=0;i<t.length;++i)e+=t[i].length;var n=c.allocUnsafe(e),r=0;for(i=0;i<t.length;++i){var a=t[i];if(H(a,Uint8Array)&&(a=c.from(a)),!c.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,r),r+=a.length}return n},c.byteLength=g,c.prototype._isBuffer=!0,c.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)m(this,e,e+1);return this},c.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<t;e+=4)m(this,e,e+3),m(this,e+1,e+2);return this},c.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<t;e+=8)m(this,e,e+7),m(this,e+1,e+6),m(this,e+2,e+5),m(this,e+3,e+4);return this},c.prototype.toString=function(){var t=this.length;return 0===t?"":0===arguments.length?k(this,0,t):A.apply(this,arguments)},c.prototype.toLocaleString=c.prototype.toString,c.prototype.equals=function(t){if(!c.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===c.compare(this,t)},c.prototype.inspect=function(){var t="",e=i.INSPECT_MAX_BYTES;return t=this.toString("hex",0,e).replace(/(.{2})/g,"$1 ").trim(),this.length>e&&(t+=" ... "),"<Buffer "+t+">"},s&&(c.prototype[s]=c.prototype.inspect),c.prototype.compare=function(t,e,i,n,r){if(H(t,Uint8Array)&&(t=c.from(t,t.offset,t.byteLength)),!c.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===i&&(i=t?t.length:0),void 0===n&&(n=0),void 0===r&&(r=this.length),e<0||i>t.length||n<0||r>this.length)throw new RangeError("out of range index");if(n>=r&&e>=i)return 0;if(n>=r)return-1;if(e>=i)return 1;if(this===t)return 0;for(var a=(r>>>=0)-(n>>>=0),s=(i>>>=0)-(e>>>=0),o=Math.min(a,s),l=this.slice(n,r),h=t.slice(e,i),u=0;u<o;++u)if(l[u]!==h[u]){a=l[u],s=h[u];break}return a<s?-1:s<a?1:0},c.prototype.includes=function(t,e,i){return-1!==this.indexOf(t,e,i)},c.prototype.indexOf=function(t,e,i){return v(this,t,e,i,!0)},c.prototype.lastIndexOf=function(t,e,i){return v(this,t,e,i,!1)},c.prototype.write=function(t,e,i,n){if(void 0===e)n="utf8",i=this.length,e=0;else if(void 0===i&&"string"==typeof e)n=e,i=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e>>>=0,isFinite(i)?(i>>>=0,void 0===n&&(n="utf8")):(n=i,i=void 0)}var r=this.length-e;if((void 0===i||i>r)&&(i=r),t.length>0&&(i<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return w(this,t,e,i);case"utf8":case"utf-8":return C(this,t,e,i);case"ascii":return _(this,t,e,i);case"latin1":case"binary":return b(this,t,e,i);case"base64":return E(this,t,e,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,e,i);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var D=4096;function I(t,e,i){var n="";i=Math.min(t.length,i);for(var r=e;r<i;++r)n+=String.fromCharCode(127&t[r]);return n}function T(t,e,i){var n="";i=Math.min(t.length,i);for(var r=e;r<i;++r)n+=String.fromCharCode(t[r]);return n}function P(t,e,i){var n=t.length;(!e||e<0)&&(e=0),(!i||i<0||i>n)&&(i=n);for(var r="",a=e;a<i;++a)r+=q[t[a]];return r}function B(t,e,i){for(var n=t.slice(e,i),r="",a=0;a<n.length;a+=2)r+=String.fromCharCode(n[a]+256*n[a+1]);return r}function R(t,e,i){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>i)throw new RangeError("Trying to access beyond buffer length")}function N(t,e,i,n,r,a){if(!c.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||e<a)throw new RangeError('"value" argument is out of bounds');if(i+n>t.length)throw new RangeError("Index out of range")}function L(t,e,i,n,r,a){if(i+n>t.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range")}function O(t,e,i,n,r){return e=+e,i>>>=0,r||L(t,0,i,4),a.write(t,e,i,n,23,4),i+4}function U(t,e,i,n,r){return e=+e,i>>>=0,r||L(t,0,i,8),a.write(t,e,i,n,52,8),i+8}c.prototype.slice=function(t,e){var i=this.length;(t=~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),(e=void 0===e?i:~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),e<t&&(e=t);var n=this.subarray(t,e);return Object.setPrototypeOf(n,c.prototype),n},c.prototype.readUIntLE=function(t,e,i){t>>>=0,e>>>=0,i||R(t,e,this.length);for(var n=this[t],r=1,a=0;++a<e&&(r*=256);)n+=this[t+a]*r;return n},c.prototype.readUIntBE=function(t,e,i){t>>>=0,e>>>=0,i||R(t,e,this.length);for(var n=this[t+--e],r=1;e>0&&(r*=256);)n+=this[t+--e]*r;return n},c.prototype.readUInt8=function(t,e){return t>>>=0,e||R(t,1,this.length),this[t]},c.prototype.readUInt16LE=function(t,e){return t>>>=0,e||R(t,2,this.length),this[t]|this[t+1]<<8},c.prototype.readUInt16BE=function(t,e){return t>>>=0,e||R(t,2,this.length),this[t]<<8|this[t+1]},c.prototype.readUInt32LE=function(t,e){return t>>>=0,e||R(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},c.prototype.readUInt32BE=function(t,e){return t>>>=0,e||R(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},c.prototype.readIntLE=function(t,e,i){t>>>=0,e>>>=0,i||R(t,e,this.length);for(var n=this[t],r=1,a=0;++a<e&&(r*=256);)n+=this[t+a]*r;return n>=(r*=128)&&(n-=Math.pow(2,8*e)),n},c.prototype.readIntBE=function(t,e,i){t>>>=0,e>>>=0,i||R(t,e,this.length);for(var n=e,r=1,a=this[t+--n];n>0&&(r*=256);)a+=this[t+--n]*r;return a>=(r*=128)&&(a-=Math.pow(2,8*e)),a},c.prototype.readInt8=function(t,e){return t>>>=0,e||R(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},c.prototype.readInt16LE=function(t,e){t>>>=0,e||R(t,2,this.length);var i=this[t]|this[t+1]<<8;return 32768&i?4294901760|i:i},c.prototype.readInt16BE=function(t,e){t>>>=0,e||R(t,2,this.length);var i=this[t+1]|this[t]<<8;return 32768&i?4294901760|i:i},c.prototype.readInt32LE=function(t,e){return t>>>=0,e||R(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},c.prototype.readInt32BE=function(t,e){return t>>>=0,e||R(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},c.prototype.readFloatLE=function(t,e){return t>>>=0,e||R(t,4,this.length),a.read(this,t,!0,23,4)},c.prototype.readFloatBE=function(t,e){return t>>>=0,e||R(t,4,this.length),a.read(this,t,!1,23,4)},c.prototype.readDoubleLE=function(t,e){return t>>>=0,e||R(t,8,this.length),a.read(this,t,!0,52,8)},c.prototype.readDoubleBE=function(t,e){return t>>>=0,e||R(t,8,this.length),a.read(this,t,!1,52,8)},c.prototype.writeUIntLE=function(t,e,i,n){t=+t,e>>>=0,i>>>=0,n||N(this,t,e,i,Math.pow(2,8*i)-1,0);var r=1,a=0;for(this[e]=255&t;++a<i&&(r*=256);)this[e+a]=t/r&255;return e+i},c.prototype.writeUIntBE=function(t,e,i,n){t=+t,e>>>=0,i>>>=0,n||N(this,t,e,i,Math.pow(2,8*i)-1,0);var r=i-1,a=1;for(this[e+r]=255&t;--r>=0&&(a*=256);)this[e+r]=t/a&255;return e+i},c.prototype.writeUInt8=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,1,255,0),this[e]=255&t,e+1},c.prototype.writeUInt16LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},c.prototype.writeUInt16BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},c.prototype.writeUInt32LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},c.prototype.writeUInt32BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},c.prototype.writeIntLE=function(t,e,i,n){if(t=+t,e>>>=0,!n){var r=Math.pow(2,8*i-1);N(this,t,e,i,r-1,-r)}var a=0,s=1,o=0;for(this[e]=255&t;++a<i&&(s*=256);)t<0&&0===o&&0!==this[e+a-1]&&(o=1),this[e+a]=(t/s>>0)-o&255;return e+i},c.prototype.writeIntBE=function(t,e,i,n){if(t=+t,e>>>=0,!n){var r=Math.pow(2,8*i-1);N(this,t,e,i,r-1,-r)}var a=i-1,s=1,o=0;for(this[e+a]=255&t;--a>=0&&(s*=256);)t<0&&0===o&&0!==this[e+a+1]&&(o=1),this[e+a]=(t/s>>0)-o&255;return e+i},c.prototype.writeInt8=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},c.prototype.writeInt16LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},c.prototype.writeInt16BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},c.prototype.writeInt32LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},c.prototype.writeInt32BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},c.prototype.writeFloatLE=function(t,e,i){return O(this,t,e,!0,i)},c.prototype.writeFloatBE=function(t,e,i){return O(this,t,e,!1,i)},c.prototype.writeDoubleLE=function(t,e,i){return U(this,t,e,!0,i)},c.prototype.writeDoubleBE=function(t,e,i){return U(this,t,e,!1,i)},c.prototype.copy=function(t,e,i,n){if(!c.isBuffer(t))throw new TypeError("argument should be a Buffer");if(i||(i=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<i&&(n=i),n===i)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(i<0||i>=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e<n-i&&(n=t.length-e+i);var r=n-i;if(this===t&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(e,i,n);else if(this===t&&i<e&&e<n)for(var a=r-1;a>=0;--a)t[a+e]=this[a+i];else Uint8Array.prototype.set.call(t,this.subarray(i,n),e);return r},c.prototype.fill=function(t,e,i,n){if("string"==typeof t){if("string"==typeof e?(n=e,e=0,i=this.length):"string"==typeof i&&(n=i,i=this.length),void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!c.isEncoding(n))throw new TypeError("Unknown encoding: "+n);if(1===t.length){var r=t.charCodeAt(0);("utf8"===n&&r<128||"latin1"===n)&&(t=r)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<i)throw new RangeError("Out of range index");if(i<=e)return this;var a;if(e>>>=0,i=void 0===i?this.length:i>>>0,t||(t=0),"number"==typeof t)for(a=e;a<i;++a)this[a]=t;else{var s=c.isBuffer(t)?t:c.from(t,n),o=s.length;if(0===o)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(a=0;a<i-e;++a)this[a+e]=s[a%o]}return this};var M=/[^+/0-9A-Za-z-_]/g;function V(t,e){var i;e=e||1/0;for(var n=t.length,r=null,a=[],s=0;s<n;++s){if((i=t.charCodeAt(s))>55295&&i<57344){if(!r){if(i>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&a.push(239,191,189);continue}r=i;continue}if(i<56320){(e-=3)>-1&&a.push(239,191,189),r=i;continue}i=65536+(r-55296<<10|i-56320)}else r&&(e-=3)>-1&&a.push(239,191,189);if(r=null,i<128){if((e-=1)<0)break;a.push(i)}else if(i<2048){if((e-=2)<0)break;a.push(i>>6|192,63&i|128)}else if(i<65536){if((e-=3)<0)break;a.push(i>>12|224,i>>6&63|128,63&i|128)}else{if(!(i<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(i>>18|240,i>>12&63|128,i>>6&63|128,63&i|128)}}return a}function F(t){return r.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(M,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function z(t,e,i,n){for(var r=0;r<n&&!(r+i>=e.length||r>=t.length);++r)e[r+i]=t[r];return r}function H(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function j(t){return t!=t}var q=function(){for(var t="0123456789abcdef",e=new Array(256),i=0;i<16;++i)for(var n=16*i,r=0;r<16;++r)e[n+r]=t[i]+t[r];return e}()},{"base64-js":29,ieee754:32}],31:[function(t,e,i){var n={single_source_shortest_paths:function(t,e,i){var r={},a={};a[e]=0;var s,o,l,c,h,u,d,p=n.PriorityQueue.make();for(p.push(e,0);!p.empty();)for(l in o=(s=p.pop()).value,c=s.cost,h=t[o]||{})h.hasOwnProperty(l)&&(u=c+h[l],d=a[l],(void 0===a[l]||d>u)&&(a[l]=u,p.push(l,u),r[l]=o));if(void 0!==i&&void 0===a[i]){var f=["Could not find a path from ",e," to ",i,"."].join("");throw new Error(f)}return r},extract_shortest_path_from_predecessor_list:function(t,e){for(var i=[],n=e;n;)i.push(n),t[n],n=t[n];return i.reverse(),i},find_path:function(t,e,i){var r=n.single_source_shortest_paths(t,e,i);return n.extract_shortest_path_from_predecessor_list(r,i)},PriorityQueue:{make:function(t){var e,i=n.PriorityQueue,r={};for(e in t=t||{},i)i.hasOwnProperty(e)&&(r[e]=i[e]);return r.queue=[],r.sorter=t.sorter||i.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var i={value:t,cost:e};this.queue.push(i),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};void 0!==e&&(e.exports=n)},{}],32:[function(t,e,i){i.read=function(t,e,i,n,r){var a,s,o=8*r-n-1,l=(1<<o)-1,c=l>>1,h=-7,u=i?r-1:0,d=i?-1:1,p=t[e+u];for(u+=d,a=p&(1<<-h)-1,p>>=-h,h+=o;h>0;a=256*a+t[e+u],u+=d,h-=8);for(s=a&(1<<-h)-1,a>>=-h,h+=n;h>0;s=256*s+t[e+u],u+=d,h-=8);if(0===a)a=1-c;else{if(a===l)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,n),a-=c}return(p?-1:1)*s*Math.pow(2,a-n)},i.write=function(t,e,i,n,r,a){var s,o,l,c=8*a-r-1,h=(1<<c)-1,u=h>>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,f=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(o=isNaN(e)?1:0,s=h):(s=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-s))<1&&(s--,l*=2),(e+=s+u>=1?d/l:d*Math.pow(2,1-u))*l>=2&&(s++,l/=2),s+u>=h?(o=0,s=h):s+u>=1?(o=(e*l-1)*Math.pow(2,r),s+=u):(o=e*Math.pow(2,u-1)*Math.pow(2,r),s=0));r>=8;t[i+p]=255&o,p+=f,o/=256,r-=8);for(s=s<<r|o,c+=r;c>0;t[i+p]=255&s,p+=f,s/=256,c-=8);t[i+p-f]|=128*g}},{}],33:[function(t,e,i){var n={}.toString;e.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},{}]},{},[24])(24)},e.exports=r()}));return{name:"qrcode",props:{value:null,options:Object,tag:{type:String,default:"canvas"}},render:function(t){return t(this.tag,this.$slots.default)},watch:{$props:{deep:!0,immediate:!0,handler:function(){this.$el&&this.generate()}}},methods:{generate:function(){var t=this,i=this.options,n=this.tag,r=String(this.value);"canvas"===n?e.toCanvas(this.$el,r,i,(function(t){if(t)throw t})):"img"===n?e.toDataURL(r,i,(function(e,i){if(e)throw e;t.$el.src=i})):e.toString(r,i,(function(e,i){if(e)throw e;t.$el.innerHTML=i}))}},mounted:function(){this.generate()}}}()},86243:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".fade-enter-active[data-v-8e58e0a5],\n.fade-leave-active[data-v-8e58e0a5] {\n transition: opacity .3s ease;\n}\n.fade-enter[data-v-8e58e0a5],\n.fade-leave-to[data-v-8e58e0a5] {\n opacity: 0;\n}\n.linked-icons[data-v-8e58e0a5] {\n display: flex;\n}\n.linked-icons img[data-v-8e58e0a5] {\n padding: 12px;\n height: 44px;\n display: block;\n background-repeat: no-repeat;\n background-position: center;\n opacity: .7;\n}\n.linked-icons img[data-v-8e58e0a5]:hover {\n opacity: 1;\n}\n.popovermenu[data-v-8e58e0a5] {\n display: none;\n}\n.popovermenu.open[data-v-8e58e0a5] {\n display: block;\n}\nli.collection-list-item[data-v-8e58e0a5] {\n flex-wrap: wrap;\n height: auto;\n cursor: pointer;\n margin-bottom: 0 !important;\n}\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\n margin-top: 6px;\n}\nli.collection-list-item form[data-v-8e58e0a5],\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n flex-basis: 10%;\n flex-grow: 1;\n display: flex;\n}\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n padding: 12px 9px;\n}\nli.collection-list-item input[data-v-8e58e0a5] {\n margin-top: 4px;\n border-color: var(--color-border-maxcontrast);\n}\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\n flex-grow: 1;\n}\nli.collection-list-item .error[data-v-8e58e0a5],\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\n flex-basis: 100%;\n width: 100%;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\n display: flex;\n margin-left: 44px;\n border-radius: 3px;\n cursor: pointer;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\n background-color: var(--color-background-dark);\n}\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\n flex-grow: 1;\n padding: 3px;\n max-width: calc(100% - 30px);\n display: flex;\n}\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\n display: inline-block;\n vertical-align: top;\n margin-right: 10px;\n}\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\n text-overflow: ellipsis;\n overflow: hidden;\n position: relative;\n vertical-align: top;\n white-space: nowrap;\n flex-grow: 1;\n padding: 4px;\n}\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\n width: 24px;\n height: 24px;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\n opacity: .7;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\n opacity: 1;\n}\n.shouldshake[data-v-8e58e0a5] {\n animation: shake-8e58e0a5 .6s 1 linear;\n}\n@keyframes shake-8e58e0a5 {\n 0% {\n transform: translate(15px);\n }\n 20% {\n transform: translate(-15px);\n }\n 40% {\n transform: translate(7px);\n }\n 60% {\n transform: translate(-7px);\n }\n 80% {\n transform: translate(3px);\n }\n to {\n transform: translate(0);\n }\n}\n.collection-list *[data-v-75a4370b] {\n box-sizing: border-box;\n}\n.collection-list > li[data-v-75a4370b] {\n display: flex;\n align-items: start;\n gap: 12px;\n}\n.collection-list > li > .avatar[data-v-75a4370b] {\n margin-top: auto;\n}\n#collection-select-container[data-v-75a4370b] {\n display: flex;\n flex-direction: column;\n}\n.v-select span.avatar[data-v-75a4370b] {\n display: block;\n padding: 16px;\n opacity: .7;\n background-repeat: no-repeat;\n background-position: center;\n}\n.v-select span.avatar[data-v-75a4370b]:hover {\n opacity: 1;\n}\np.hint[data-v-75a4370b] {\n z-index: 1;\n margin-top: -16px;\n padding: 8px;\n color: var(--color-text-maxcontrast);\n line-height: normal;\n}\ndiv.avatar[data-v-75a4370b] {\n width: 32px;\n height: 32px;\n margin: 30px 0 0;\n padding: 8px;\n background-color: var(--color-background-dark);\n}\n.icon-projects[data-v-75a4370b] {\n display: block;\n padding: 8px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.option__wrapper[data-v-75a4370b] {\n display: flex;\n}\n.option__wrapper .avatar[data-v-75a4370b] {\n display: block;\n background-color: var(--color-background-darker) !important;\n}\n.option__wrapper .option__title[data-v-75a4370b] {\n padding: 4px;\n}\n.fade-enter-active[data-v-75a4370b],\n.fade-leave-active[data-v-75a4370b] {\n transition: opacity .5s;\n}\n.fade-enter[data-v-75a4370b],\n.fade-leave-to[data-v-75a4370b] {\n opacity: 0;\n}\n","",{version:3,sources:["webpack://./node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css"],names:[],mappings:"AAAA;;EAEE,4BAA4B;AAC9B;AACA;;EAEE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,aAAa;EACb,YAAY;EACZ,cAAc;EACd,4BAA4B;EAC5B,2BAA2B;EAC3B,WAAW;AACb;AACA;EACE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;AAChB;AACA;EACE,eAAe;EACf,YAAY;EACZ,eAAe;EACf,2BAA2B;AAC7B;AACA;EACE,eAAe;AACjB;AACA;;EAEE,eAAe;EACf,YAAY;EACZ,aAAa;AACf;AACA;EACE,iBAAiB;AACnB;AACA;EACE,eAAe;EACf,6CAA6C;AAC/C;AACA;EACE,YAAY;AACd;AACA;;EAEE,gBAAgB;EAChB,WAAW;AACb;AACA;EACE,aAAa;EACb,iBAAiB;EACjB,kBAAkB;EAClB,eAAe;AACjB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,YAAY;EACZ,YAAY;EACZ,4BAA4B;EAC5B,aAAa;AACf;AACA;EACE,qBAAqB;EACrB,mBAAmB;EACnB,kBAAkB;AACpB;AACA;EACE,uBAAuB;EACvB,gBAAgB;EAChB,kBAAkB;EAClB,mBAAmB;EACnB,mBAAmB;EACnB,YAAY;EACZ,YAAY;AACd;AACA;EACE,WAAW;EACX,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;;EAEE,UAAU;AACZ;AACA;EACE,sCAAsC;AACxC;AACA;EACE;IACE,0BAA0B;EAC5B;EACA;IACE,2BAA2B;EAC7B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,0BAA0B;EAC5B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,uBAAuB;EACzB;AACF;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,kBAAkB;EAClB,SAAS;AACX;AACA;EACE,gBAAgB;AAClB;AACA;EACE,aAAa;EACb,sBAAsB;AACxB;AACA;EACE,cAAc;EACd,aAAa;EACb,WAAW;EACX,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,UAAU;AACZ;AACA;EACE,UAAU;EACV,iBAAiB;EACjB,YAAY;EACZ,oCAAoC;EACpC,mBAAmB;AACrB;AACA;EACE,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;EACZ,8CAA8C;AAChD;AACA;EACE,cAAc;EACd,YAAY;EACZ,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;EACd,2DAA2D;AAC7D;AACA;EACE,YAAY;AACd;AACA;;EAEE,uBAAuB;AACzB;AACA;;EAEE,UAAU;AACZ",sourcesContent:[".fade-enter-active[data-v-8e58e0a5],\n.fade-leave-active[data-v-8e58e0a5] {\n transition: opacity .3s ease;\n}\n.fade-enter[data-v-8e58e0a5],\n.fade-leave-to[data-v-8e58e0a5] {\n opacity: 0;\n}\n.linked-icons[data-v-8e58e0a5] {\n display: flex;\n}\n.linked-icons img[data-v-8e58e0a5] {\n padding: 12px;\n height: 44px;\n display: block;\n background-repeat: no-repeat;\n background-position: center;\n opacity: .7;\n}\n.linked-icons img[data-v-8e58e0a5]:hover {\n opacity: 1;\n}\n.popovermenu[data-v-8e58e0a5] {\n display: none;\n}\n.popovermenu.open[data-v-8e58e0a5] {\n display: block;\n}\nli.collection-list-item[data-v-8e58e0a5] {\n flex-wrap: wrap;\n height: auto;\n cursor: pointer;\n margin-bottom: 0 !important;\n}\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\n margin-top: 6px;\n}\nli.collection-list-item form[data-v-8e58e0a5],\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n flex-basis: 10%;\n flex-grow: 1;\n display: flex;\n}\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n padding: 12px 9px;\n}\nli.collection-list-item input[data-v-8e58e0a5] {\n margin-top: 4px;\n border-color: var(--color-border-maxcontrast);\n}\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\n flex-grow: 1;\n}\nli.collection-list-item .error[data-v-8e58e0a5],\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\n flex-basis: 100%;\n width: 100%;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\n display: flex;\n margin-left: 44px;\n border-radius: 3px;\n cursor: pointer;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\n background-color: var(--color-background-dark);\n}\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\n flex-grow: 1;\n padding: 3px;\n max-width: calc(100% - 30px);\n display: flex;\n}\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\n display: inline-block;\n vertical-align: top;\n margin-right: 10px;\n}\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\n text-overflow: ellipsis;\n overflow: hidden;\n position: relative;\n vertical-align: top;\n white-space: nowrap;\n flex-grow: 1;\n padding: 4px;\n}\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\n width: 24px;\n height: 24px;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\n opacity: .7;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\n opacity: 1;\n}\n.shouldshake[data-v-8e58e0a5] {\n animation: shake-8e58e0a5 .6s 1 linear;\n}\n@keyframes shake-8e58e0a5 {\n 0% {\n transform: translate(15px);\n }\n 20% {\n transform: translate(-15px);\n }\n 40% {\n transform: translate(7px);\n }\n 60% {\n transform: translate(-7px);\n }\n 80% {\n transform: translate(3px);\n }\n to {\n transform: translate(0);\n }\n}\n.collection-list *[data-v-75a4370b] {\n box-sizing: border-box;\n}\n.collection-list > li[data-v-75a4370b] {\n display: flex;\n align-items: start;\n gap: 12px;\n}\n.collection-list > li > .avatar[data-v-75a4370b] {\n margin-top: auto;\n}\n#collection-select-container[data-v-75a4370b] {\n display: flex;\n flex-direction: column;\n}\n.v-select span.avatar[data-v-75a4370b] {\n display: block;\n padding: 16px;\n opacity: .7;\n background-repeat: no-repeat;\n background-position: center;\n}\n.v-select span.avatar[data-v-75a4370b]:hover {\n opacity: 1;\n}\np.hint[data-v-75a4370b] {\n z-index: 1;\n margin-top: -16px;\n padding: 8px;\n color: var(--color-text-maxcontrast);\n line-height: normal;\n}\ndiv.avatar[data-v-75a4370b] {\n width: 32px;\n height: 32px;\n margin: 30px 0 0;\n padding: 8px;\n background-color: var(--color-background-dark);\n}\n.icon-projects[data-v-75a4370b] {\n display: block;\n padding: 8px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.option__wrapper[data-v-75a4370b] {\n display: flex;\n}\n.option__wrapper .avatar[data-v-75a4370b] {\n display: block;\n background-color: var(--color-background-darker) !important;\n}\n.option__wrapper .option__title[data-v-75a4370b] {\n padding: 4px;\n}\n.fade-enter-active[data-v-75a4370b],\n.fade-leave-active[data-v-75a4370b] {\n transition: opacity .5s;\n}\n.fade-enter[data-v-75a4370b],\n.fade-leave-to[data-v-75a4370b] {\n opacity: 0;\n}\n"],sourceRoot:""}]);const o=s},44553:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-172dde79]{display:flex;align-items:center;height:44px}.sharing-entry__summary[data-v-172dde79]{padding:8px;padding-left:10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0;min-width:0}.sharing-entry__summary__desc[data-v-172dde79]{display:inline-block;padding-bottom:0;line-height:1.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sharing-entry__summary__desc p[data-v-172dde79],.sharing-entry__summary__desc small[data-v-172dde79]{color:var(--color-text-maxcontrast)}.sharing-entry__summary__desc-unique[data-v-172dde79]{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntry.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,sBAAA,CACA,QAAA,CACA,WAAA,CAEA,+CACC,oBAAA,CACA,gBAAA,CACA,iBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAEA,sGAEC,mCAAA,CAGD,sDACC,mCAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\talign-items: flex-start;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\n\t\t&__desc {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding-bottom: 0;\n\t\t\tline-height: 1.2em;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\tp,\n\t\t\tsmall {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&-unique {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\t\t}\n\t}\n\n}\n"],sourceRoot:""}]);const o=s},41699:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-283ca89e]{display:flex;align-items:center;height:44px}.sharing-entry__desc[data-v-283ca89e]{display:flex;flex-direction:column;justify-content:space-between;padding:8px;padding-left:10px;line-height:1.2em}.sharing-entry__desc p[data-v-283ca89e]{color:var(--color-text-maxcontrast)}.sharing-entry__actions[data-v-283ca89e]{margin-left:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInherited.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,sCACC,YAAA,CACA,qBAAA,CACA,6BAAA,CACA,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,wCACC,mCAAA,CAGF,yCACC,gBAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__desc {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__actions {\n\t\tmargin-left: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=s},16469:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry__internal .avatar-external[data-v-e40cd936]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}.sharing-entry__internal .icon-checkmark-color[data-v-e40cd936]{opacity:1;color:var(--color-success)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInternal.vue"],names:[],mappings:"AAEC,2DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA,CAED,gEACC,SAAA,CACA,0BAAA",sourcesContent:["\n.sharing-entry__internal {\n\t.avatar-external {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n"],sourceRoot:""}]);const o=s},22648:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-3e048372]{display:flex;align-items:center;min-height:44px}.sharing-entry__summary[data-v-3e048372]{padding:8px;padding-left:10px;display:flex;justify-content:space-between;flex:1 0;min-width:0}.sharing-entry__desc[data-v-3e048372]{display:flex;flex-direction:column;line-height:1.2em}.sharing-entry__desc p[data-v-3e048372]{color:var(--color-text-maxcontrast)}.sharing-entry__desc__title[data-v-3e048372]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.sharing-entry:not(.sharing-entry--share) .sharing-entry__actions .new-share-link[data-v-3e048372]{border-top:1px solid var(--color-border)}.sharing-entry[data-v-3e048372] .avatar-link-share{background-color:var(--color-primary-element)}.sharing-entry .sharing-entry__action--public-upload[data-v-3e048372]{border-bottom:1px solid var(--color-border)}.sharing-entry__loading[data-v-3e048372]{width:44px;height:44px;margin:0;padding:14px;margin-left:auto}.sharing-entry .action-item~.action-item[data-v-3e048372],.sharing-entry .action-item~.sharing-entry__loading[data-v-3e048372]{margin-left:0}.sharing-entry .icon-checkmark-color[data-v-3e048372]{opacity:1;color:var(--color-success)}.qr-code-dialog[data-v-3e048372]{display:flex;width:100%;justify-content:center}.qr-code-dialog__img[data-v-3e048372]{width:100%;height:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryLink.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,6BAAA,CACA,QAAA,CACA,WAAA,CAGA,sCACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,wCACC,mCAAA,CAGD,6CACC,sBAAA,CACA,eAAA,CACA,kBAAA,CAKF,mGACC,wCAAA,CAIF,mDACC,6CAAA,CAGD,sEACC,2CAAA,CAGD,yCACC,UAAA,CACA,WAAA,CACA,QAAA,CACA,YAAA,CACA,gBAAA,CAOA,+HAEC,aAAA,CAIF,sDACC,SAAA,CACA,0BAAA,CAKF,iCACC,YAAA,CACA,UAAA,CACA,sBAAA,CAEA,sCACC,UAAA,CACA,WAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\t}\n\n\t\t&__desc {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tline-height: 1.2em;\n\n\t\t\tp {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&__title {\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\t\t}\n\n\t&:not(.sharing-entry--share) &__actions {\n\t\t.new-share-link {\n\t\t\tborder-top: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t::v-deep .avatar-link-share {\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t.sharing-entry__action--public-upload {\n\t\tborder-bottom: 1px solid var(--color-border);\n\t}\n\n\t&__loading {\n\t\twidth: 44px;\n\t\theight: 44px;\n\t\tmargin: 0;\n\t\tpadding: 14px;\n\t\tmargin-left: auto;\n\t}\n\n\t// put menus to the left\n\t// but only the first one\n\t.action-item {\n\n\t\t~.action-item,\n\t\t~.sharing-entry__loading {\n\t\t\tmargin-left: 0;\n\t\t}\n\t}\n\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n\n// styling for the qr-code container\n.qr-code-dialog {\n\tdisplay: flex;\n\twidth: 100%;\n\tjustify-content: center;\n\n\t&__img {\n\t\twidth: 100%;\n\t\theight: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=s},19059:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".share-select[data-v-f3bc43ce]{display:block}.share-select[data-v-f3bc43ce] .action-item__menutoggle{color:var(--color-primary-element) !important;font-size:12.5px !important;height:auto !important;min-height:auto !important}.share-select[data-v-f3bc43ce] .action-item__menutoggle .button-vue__text{font-weight:normal !important}.share-select[data-v-f3bc43ce] .action-item__menutoggle .button-vue__icon{height:24px !important;min-height:24px !important;width:24px !important;min-width:24px !important}.share-select[data-v-f3bc43ce] .action-item__menutoggle .button-vue__wrapper{flex-direction:row-reverse !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue"],names:[],mappings:"AACA,+BACC,aAAA,CAIA,wDACC,6CAAA,CACA,2BAAA,CACA,sBAAA,CACA,0BAAA,CAEA,0EACC,6BAAA,CAGD,0EACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAGD,6EAEC,qCAAA",sourcesContent:["\n.share-select {\n\tdisplay: block;\n\n\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\n\t// Overrider NcActionms button to make it small\n\t:deep(.action-item__menutoggle) {\n\t\tcolor: var(--color-primary-element) !important;\n\t\tfont-size: 12.5px !important;\n\t\theight: auto !important;\n\t\tmin-height: auto !important;\n\n\t\t.button-vue__text {\n\t\t\tfont-weight: normal !important;\n\t\t}\n\n\t\t.button-vue__icon {\n\t\t\theight: 24px !important;\n\t\t\tmin-height: 24px !important;\n\t\t\twidth: 24px !important;\n\t\t\tmin-width: 24px !important;\n\t\t}\n\n\t\t.button-vue__wrapper {\n\t\t\t// Emulate NcButton's alignment=center-reverse\n\t\t\tflex-direction: row-reverse !important;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=s},17557:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-1852ea78]{display:flex;align-items:center;min-height:44px}.sharing-entry__desc[data-v-1852ea78]{padding:8px;padding-left:10px;line-height:1.2em;position:relative;flex:1 1;min-width:0}.sharing-entry__desc p[data-v-1852ea78]{color:var(--color-text-maxcontrast)}.sharing-entry__title[data-v-1852ea78]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:inherit}.sharing-entry__actions[data-v-1852ea78]{margin-left:auto !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntrySimple.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CACA,sCACC,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,wCACC,mCAAA,CAGF,uCACC,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,iBAAA,CAED,yCACC,2BAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\t&__desc {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tposition: relative;\n\t\tflex: 1 1;\n\t\tmin-width: 0;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__title {\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tmax-width: inherit;\n\t}\n\t&__actions {\n\t\tmargin-left: auto !important;\n\t}\n}\n"],sourceRoot:""}]);const o=s},80521:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-search{display:flex;flex-direction:column;margin-bottom:4px}.sharing-search label[for=sharing-search-input]{margin-bottom:2px}.sharing-search__input{width:100%;margin:10px 0}.vs__dropdown-menu span[lookup] .avatardiv{background-image:var(--icon-search-white);background-repeat:no-repeat;background-position:center;background-color:var(--color-text-maxcontrast) !important}.vs__dropdown-menu span[lookup] .avatardiv .avatardiv__initials-wrapper{display:none}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingInput.vue"],names:[],mappings:"AACA,gBACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,gDACC,iBAAA,CAGD,uBACC,UAAA,CACA,aAAA,CAOA,2CACC,yCAAA,CACA,2BAAA,CACA,0BAAA,CACA,yDAAA,CACA,wEACC,YAAA",sourcesContent:['\n.sharing-search {\n\tdisplay: flex;\n\tflex-direction: column;\n\tmargin-bottom: 4px;\n\n\tlabel[for="sharing-search-input"] {\n\t\tmargin-bottom: 2px;\n\t}\n\n\t&__input {\n\t\twidth: 100%;\n\t\tmargin: 10px 0;\n\t}\n}\n\n.vs__dropdown-menu {\n\t// properly style the lookup entry\n\tspan[lookup] {\n\t\t.avatardiv {\n\t\t\tbackground-image: var(--icon-search-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-color: var(--color-text-maxcontrast) !important;\n\t\t\t.avatardiv__initials-wrapper {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const o=s},16581:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharingTabDetailsView[data-v-c452153e]{display:flex;flex-direction:column;width:100%;margin:0 auto;position:relative;height:100%;overflow:hidden}.sharingTabDetailsView__header[data-v-c452153e]{display:flex;align-items:center;box-sizing:border-box;margin:.2em}.sharingTabDetailsView__header span[data-v-c452153e]{display:flex;align-items:center}.sharingTabDetailsView__header span h1[data-v-c452153e]{font-size:15px;padding-left:.3em}.sharingTabDetailsView__wrapper[data-v-c452153e]{position:relative;overflow:scroll;flex-shrink:1;padding:4px;padding-right:12px}.sharingTabDetailsView__quick-permissions[data-v-c452153e]{display:flex;justify-content:center;width:100%;margin:0 auto;border-radius:0}.sharingTabDetailsView__quick-permissions div[data-v-c452153e]{width:100%}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e]{width:100%}.sharingTabDetailsView__quick-permissions div span span[data-v-c452153e]:nth-child(1){align-items:center;justify-content:center;padding:.1em}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e] label span{display:flex;flex-direction:column}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e] span.checkbox-content__text.checkbox-radio-switch__text{flex-wrap:wrap}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e] span.checkbox-content__text.checkbox-radio-switch__text .subline{display:block;flex-basis:100%}.sharingTabDetailsView__advanced-control[data-v-c452153e]{width:100%}.sharingTabDetailsView__advanced-control button[data-v-c452153e]{margin-top:.5em}.sharingTabDetailsView__advanced[data-v-c452153e]{width:100%;margin-bottom:.5em;text-align:left;padding-left:0}.sharingTabDetailsView__advanced section textarea[data-v-c452153e],.sharingTabDetailsView__advanced section div.mx-datepicker[data-v-c452153e]{width:100%}.sharingTabDetailsView__advanced section textarea[data-v-c452153e]{height:80px;margin:0}.sharingTabDetailsView__advanced section span[data-v-c452153e] label{padding-left:0 !important;background-color:initial !important;border:none !important}.sharingTabDetailsView__advanced section section.custom-permissions-group[data-v-c452153e]{padding-left:1.5em}.sharingTabDetailsView__delete>button[data-v-c452153e]:first-child{color:#df0707}.sharingTabDetailsView__footer[data-v-c452153e]{width:100%;display:flex;position:sticky;bottom:0;flex-direction:column;justify-content:space-between;align-items:flex-start;background:linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background))}.sharingTabDetailsView__footer .button-group[data-v-c452153e]{display:flex;justify-content:space-between;width:100%;margin-top:16px}.sharingTabDetailsView__footer .button-group button[data-v-c452153e]{margin-left:16px}.sharingTabDetailsView__footer .button-group button[data-v-c452153e]:first-child{margin-left:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingDetailsTab.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,eAAA,CAEA,gDACC,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,wDACC,cAAA,CACA,iBAAA,CAMH,iDACC,iBAAA,CACA,eAAA,CACA,aAAA,CACA,WAAA,CACA,kBAAA,CAGD,2DACC,YAAA,CACA,sBAAA,CACA,UAAA,CACA,aAAA,CACA,eAAA,CAEA,+DACC,UAAA,CAEA,oEACC,UAAA,CAEA,sFACC,kBAAA,CACA,sBAAA,CACA,YAAA,CAKA,+EACC,YAAA,CACA,qBAAA,CAKF,4HACC,cAAA,CAEA,qIACC,aAAA,CACA,eAAA,CAQL,0DACC,UAAA,CAEA,iEACC,eAAA,CAKF,kDACC,UAAA,CACA,kBAAA,CACA,eAAA,CACA,cAAA,CAIC,+IAEC,UAAA,CAGD,mEACC,WAAA,CACA,QAAA,CAaA,qEACC,yBAAA,CACA,mCAAA,CACA,sBAAA,CAIF,2FACC,kBAAA,CAMF,mEACC,aAAA,CAIF,gDACC,UAAA,CACA,YAAA,CACA,eAAA,CACA,QAAA,CACA,qBAAA,CACA,6BAAA,CACA,sBAAA,CACA,2FAAA,CAEA,8DACC,YAAA,CACA,6BAAA,CACA,UAAA,CACA,eAAA,CAEA,qEACC,gBAAA,CAEA,iFACC,aAAA",sourcesContent:["\n.sharingTabDetailsView {\n\tdisplay: flex;\n\tflex-direction: column;\n\twidth: 100%;\n\tmargin: 0 auto;\n\tposition: relative;\n\theight: 100%;\n\toverflow: hidden;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tbox-sizing: border-box;\n\t\tmargin: 0.2em;\n\n\t\tspan {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\th1 {\n\t\t\t\tfont-size: 15px;\n\t\t\t\tpadding-left: 0.3em;\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\toverflow: scroll;\n\t\tflex-shrink: 1;\n\t\tpadding: 4px;\n\t\tpadding-right: 12px;\n\t}\n\n\t&__quick-permissions {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\tmargin: 0 auto;\n\t\tborder-radius: 0;\n\n\t\tdiv {\n\t\t\twidth: 100%;\n\n\t\t\tspan {\n\t\t\t\twidth: 100%;\n\n\t\t\t\tspan:nth-child(1) {\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tjustify-content: center;\n\t\t\t\t\tpadding: 0.1em;\n\t\t\t\t}\n\n\t\t\t\t::v-deep label {\n\n\t\t\t\t\tspan {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-direction: column;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\n\t\t\t\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\n\t\t\t\t\tflex-wrap: wrap;\n\n\t\t\t\t\t.subline {\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\tflex-basis: 100%;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__advanced-control {\n\t\twidth: 100%;\n\n\t\tbutton {\n\t\t\tmargin-top: 0.5em;\n\t\t}\n\n\t}\n\n\t&__advanced {\n\t\twidth: 100%;\n\t\tmargin-bottom: 0.5em;\n\t\ttext-align: left;\n\t\tpadding-left: 0;\n\n\t\tsection {\n\n\t\t\ttextarea,\n\t\t\tdiv.mx-datepicker {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttextarea {\n\t\t\t\theight: 80px;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t/*\n The following style is applied out of the component's scope\n to remove padding from the label.checkbox-radio-switch__label,\n which is used to group radio checkbox items. The use of ::v-deep\n ensures that the padding is modified without being affected by\n the component's scoping.\n Without this achieving left alignment for the checkboxes would not\n be possible.\n */\n\t\t\tspan {\n\t\t\t\t::v-deep label {\n\t\t\t\t\tpadding-left: 0 !important;\n\t\t\t\t\tbackground-color: initial !important;\n\t\t\t\t\tborder: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsection.custom-permissions-group {\n\t\t\t\tpadding-left: 1.5em;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__delete {\n\t\t>button:first-child {\n\t\t\tcolor: rgb(223, 7, 7);\n\t\t}\n\t}\n\n\t&__footer {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\talign-items: flex-start;\n\t\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\n\n\t\t.button-group {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t\tmargin-top: 16px;\n\n\t\t\tbutton {\n\t\t\t\tmargin-left: 16px;\n\n\t\t\t\t&:first-child {\n\t\t\t\t\tmargin-left: 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=s},4442:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry__inherited .avatar-shared[data-v-50f9af8c]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingInherited.vue"],names:[],mappings:"AAEC,0DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA",sourcesContent:["\n.sharing-entry__inherited {\n\t.avatar-shared {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n}\n"],sourceRoot:""}]);const o=s},72127:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".emptyContentWithSections[data-v-1fa88ab1]{margin:1rem auto}.sharingTab[data-v-1fa88ab1]{position:relative;height:100%}.sharingTab__content[data-v-1fa88ab1]{padding:0 6px}.sharingTab__additionalContent[data-v-1fa88ab1]{margin:44px 0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingTab.vue"],names:[],mappings:"AACA,2CACC,gBAAA,CAGD,6BACC,iBAAA,CACA,WAAA,CAEA,sCACC,aAAA,CAGD,gDACC,aAAA",sourcesContent:["\n.emptyContentWithSections {\n\tmargin: 1rem auto;\n}\n\n.sharingTab {\n\tposition: relative;\n\theight: 100%;\n\n\t&__content {\n\t\tpadding: 0 6px;\n\t}\n\n\t&__additionalContent {\n\t\tmargin: 44px 0;\n\t}\n}\n"],sourceRoot:""}]);const o=s},37023:(t,e,i)=>{"use strict";e.KT=void 0,i(25440),e.KT=(t,e,i)=>{const a=1===Object.assign({ocsVersion:2},i||{}).ocsVersion?1:2;return window.location.protocol+"//"+window.location.host+r()+"/ocs/v"+a+".php"+n(t,e,i)};const n=(t,e,i)=>{const n=Object.assign({escape:!0},i||{});return"/"!==t.charAt(0)&&(t="/"+t),r=(r=e||{})||{},t.replace(/{([^{}]*)}/g,(function(t,e){var i=r[e];return n.escape?"string"==typeof i||"number"==typeof i?encodeURIComponent(i.toString()):encodeURIComponent(t):"string"==typeof i||"number"==typeof i?i.toString():t}));var r};function r(){let t=window._oc_webroot;if(void 0===t){t=location.pathname;const e=t.indexOf("/index.php/");t=-1!==e?t.substr(0,e):t.substr(0,t.lastIndexOf("/"))}return t}},48318:function(t,e,i){!function(t){"use strict";var e,i=function(){try{if(t.URLSearchParams&&"bar"===new t.URLSearchParams("foo=bar").get("foo"))return t.URLSearchParams}catch(t){}return null}(),n=i&&"a=1"===new i({a:1}).toString(),r=i&&"+"===new i("s=%2B").get("s"),a=i&&"size"in i.prototype,s="__URLSearchParams__",o=!i||((e=new i).append("s"," &"),"s=+%26"===e.toString()),l=p.prototype,c=!(!t.Symbol||!t.Symbol.iterator);if(!(i&&n&&r&&o&&a)){l.append=function(t,e){v(this[s],t,e)},l.delete=function(t){delete this[s][t]},l.get=function(t){var e=this[s];return this.has(t)?e[t][0]:null},l.getAll=function(t){var e=this[s];return this.has(t)?e[t].slice(0):[]},l.has=function(t){return w(this[s],t)},l.set=function(t,e){this[s][t]=[""+e]},l.toString=function(){var t,e,i,n,r=this[s],a=[];for(e in r)for(i=f(e),t=0,n=r[e];t<n.length;t++)a.push(i+"="+f(n[t]));return a.join("&")};var h,u=t.Proxy&&i&&(!r||!o||!n||!a);u?(h=new Proxy(i,{construct:function(t,e){return new t(new p(e[0]).toString())}})).toString=Function.prototype.toString.bind(p):h=p,Object.defineProperty(t,"URLSearchParams",{value:h});var d=t.URLSearchParams.prototype;d.polyfill=!0,!u&&t.Symbol&&(d[t.Symbol.toStringTag]="URLSearchParams"),"forEach"in d||(d.forEach=function(t,e){var i=m(this.toString());Object.getOwnPropertyNames(i).forEach((function(n){i[n].forEach((function(i){t.call(e,i,n,this)}),this)}),this)}),"sort"in d||(d.sort=function(){var t,e,i,n=m(this.toString()),r=[];for(t in n)r.push(t);for(r.sort(),e=0;e<r.length;e++)this.delete(r[e]);for(e=0;e<r.length;e++){var a=r[e],s=n[a];for(i=0;i<s.length;i++)this.append(a,s[i])}}),"keys"in d||(d.keys=function(){var t=[];return this.forEach((function(e,i){t.push(i)})),A(t)}),"values"in d||(d.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),A(t)}),"entries"in d||(d.entries=function(){var t=[];return this.forEach((function(e,i){t.push([i,e])})),A(t)}),c&&(d[t.Symbol.iterator]=d[t.Symbol.iterator]||d.entries),"size"in d||Object.defineProperty(d,"size",{get:function(){var t=m(this.toString());if(d===this)throw new TypeError("Illegal invocation at URLSearchParams.invokeGetter");return Object.keys(t).reduce((function(e,i){return e+t[i].length}),0)}})}function p(t){((t=t||"")instanceof URLSearchParams||t instanceof p)&&(t=t.toString()),this[s]=m(t)}function f(t){var e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'\(\)~]|%20|%00/g,(function(t){return e[t]}))}function g(t){return t.replace(/[ +]/g,"%20").replace(/(%[a-f0-9]{2})+/gi,(function(t){return decodeURIComponent(t)}))}function A(e){var i={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return c&&(i[t.Symbol.iterator]=function(){return i}),i}function m(t){var e={};if("object"==typeof t)if(y(t))for(var i=0;i<t.length;i++){var n=t[i];if(!y(n)||2!==n.length)throw new TypeError("Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements");v(e,n[0],n[1])}else for(var r in t)t.hasOwnProperty(r)&&v(e,r,t[r]);else{0===t.indexOf("?")&&(t=t.slice(1));for(var a=t.split("&"),s=0;s<a.length;s++){var o=a[s],l=o.indexOf("=");-1<l?v(e,g(o.slice(0,l)),g(o.slice(l+1))):o&&v(e,g(o),"")}}return e}function v(t,e,i){var n="string"==typeof i?i:null!=i&&"function"==typeof i.toString?i.toString():JSON.stringify(i);w(t,e)?t[e].push(n):t[e]=[n]}function y(t){return!!t&&"[object Array]"===Object.prototype.toString.call(t)}function w(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(void 0!==i.g?i.g:"undefined"!=typeof window?window:this)},86839:(e,i,n)=>{"use strict";n.r(i),n.d(i,{default:()=>Pi});var r=n(85072),a=n.n(r),s=n(97825),o=n.n(s),l=n(77659),c=n.n(l),h=n(55056),u=n.n(h),d=n(10540),p=n.n(d),f=n(41113),g=n.n(f),A=n(86243),m={};m.styleTagTransform=g(),m.setAttributes=u(),m.insert=c().bind(null,"head"),m.domAPI=o(),m.insertStyleElement=p(),a()(A.A,m),A.A&&A.A.locals&&A.A.locals;var v=n(41944),y=n(67607);const w=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)},C="object"==typeof global&&global&&global.Object===Object&&global;var _="object"==typeof self&&self&&self.Object===Object&&self;const b=C||_||Function("return this")(),E=function(){return b.Date.now()};var x=/\s/;var S=/^\s+/;const k=function(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&x.test(t.charAt(e)););return e}(t)+1).replace(S,""):t},D=b.Symbol;var I=Object.prototype,T=I.hasOwnProperty,P=I.toString,B=D?D.toStringTag:void 0;var R=Object.prototype.toString;var N=D?D.toStringTag:void 0;const L=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":N&&N in Object(t)?function(t){var e=T.call(t,B),i=t[B];try{t[B]=void 0;var n=!0}catch(t){}var r=P.call(t);return n&&(e?t[B]=i:delete t[B]),r}(t):function(t){return R.call(t)}(t)};var O=/^[-+]0x[0-9a-f]+$/i,U=/^0b[01]+$/i,M=/^0o[0-7]+$/i,V=parseInt;const F=function(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return null!=t&&"object"==typeof t}(t)&&"[object Symbol]"==L(t)}(t))return NaN;if(w(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=w(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=k(t);var i=U.test(t);return i||M.test(t)?V(t.slice(2),i?2:8):O.test(t)?NaN:+t};var z=Math.max,H=Math.min;var j=n(24764),q=n(89257),W=n(85471),$=n(65043),Y=n(37023),G=n(96763);const Q=new class{constructor(){this.http=$.Ay}listCollection(t){return this.http.get((0,Y.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}))}renameCollection(t,e){return this.http.put((0,Y.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}),{collectionName:e}).then((t=>t.data.ocs.data))}getCollectionsByResource(t,e){return this.http.get((0,Y.KT)("collaboration/resources/{resourceType}/{resourceId}",{resourceType:t,resourceId:e})).then((t=>t.data.ocs.data))}createCollection(t,e,i){return this.http.post((0,Y.KT)("collaboration/resources/{resourceType}/{resourceId}",{resourceType:t,resourceId:e}),{name:i}).then((t=>t.data.ocs.data))}addResource(t,e,i){return i=""+i,this.http.post((0,Y.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}),{resourceType:e,resourceId:i}).then((t=>t.data.ocs.data))}removeResource(t,e,i){return this.http.delete((0,Y.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}),{params:{resourceType:e,resourceId:i}}).then((t=>t.data.ocs.data))}search(t){return this.http.get((0,Y.KT)("collaboration/resources/collections/search/{query}",{query:t})).then((t=>t.data.ocs.data))}},K=W.Ay.observable({collections:[]}),Z={addCollections(t){(0,W.hZ)(K,"collections",t)},addCollection(t){K.collections.push(t)},removeCollection(t){(0,W.hZ)(K,"collections",K.collections.filter((e=>e.id!==t)))},updateCollection(t){const e=K.collections.findIndex((e=>e.id===t.id));-1!==e?(0,W.hZ)(K.collections,e,t):K.collections.push(t)}},J={fetchCollectionsByResource:({resourceType:t,resourceId:e})=>Q.getCollectionsByResource(t,e).then((t=>(Z.addCollections(t),t))),createCollection:({baseResourceType:t,baseResourceId:e,resourceType:i,resourceId:n,name:r})=>Q.createCollection(t,e,r).then((t=>{Z.addCollection(t),J.addResourceToCollection({collectionId:t.id,resourceType:i,resourceId:n})})),renameCollection:({collectionId:t,name:e})=>Q.renameCollection(t,e).then((t=>(Z.updateCollection(t),t))),addResourceToCollection:({collectionId:t,resourceType:e,resourceId:i})=>Q.addResource(t,e,i).then((t=>(Z.updateCollection(t),t))),removeResource:({collectionId:t,resourceType:e,resourceId:i})=>Q.removeResource(t,e,i).then((t=>{t.resources.length>0?Z.updateCollection(t):Z.removeCollection(t)})),search:t=>Q.search(t)};function X(t,e,i,n,r,a,s,o){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=i,c._compiled=!0),n&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),s?(l=function(t){!(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)&&typeof __VUE_SSR_CONTEXT__<"u"&&(t=__VUE_SSR_CONTEXT__),r&&r.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(s)},c._ssrRegister=l):r&&(l=o?function(){r.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:r),l)if(c.functional){c._injectStyles=l;var h=c.render;c.render=function(t,e){return l.call(e),h(t,e)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:t,options:c}}const tt=X({name:"CollectionListItem",components:{NcAvatar:v.A,NcActions:j.A,NcActionButton:q.A},props:{collection:{type:Object,default:null}},data:()=>({detailsOpen:!1,newName:null,error:{}}),computed:{getIcon:()=>t=>[t.iconClass],typeClass:()=>t=>"resource-type-"+t.type,limitedResources:()=>t=>t.resources?t.resources.slice(0,2):[],iconUrl:()=>t=>t.mimetype?OC.MimeType.getIconUrl(t.mimetype):t.iconUrl?t.iconUrl:""},methods:{toggleDetails(){this.detailsOpen=!this.detailsOpen},showDetails(){this.detailsOpen=!0},hideDetails(){this.detailsOpen=!1},removeResource(t,e){J.removeResource({collectionId:t.id,resourceType:e.type,resourceId:e.id})},openRename(){this.newName=this.collection.name},renameCollection(){""!==this.newName?J.renameCollection({collectionId:this.collection.id,name:this.newName}).then((t=>{this.newName=null})).catch((e=>{this.$set(this.error,"rename",t("core","Failed to rename the project")),G.error(e),setTimeout((()=>{(0,W.hZ)(this.error,"rename",null)}),3e3)})):this.newName=null}}},(function(){var t=this,e=t._self._c;return e("li",{staticClass:"collection-list-item"},[e("NcAvatar",{staticClass:"collection-avatar",attrs:{"display-name":t.collection.name,"allow-placeholder":""}}),null===t.newName?e("span",{staticClass:"collection-item-name",attrs:{title:""},on:{click:t.showDetails}},[t._v(t._s(t.collection.name))]):e("form",{class:{shouldshake:t.error.rename},on:{submit:function(e){return e.preventDefault(),t.renameCollection.apply(null,arguments)}}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.newName,expression:"newName"}],attrs:{type:"text",autocomplete:"off",autocapitalize:"off"},domProps:{value:t.newName},on:{input:function(e){e.target.composing||(t.newName=e.target.value)}}}),e("input",{staticClass:"icon-confirm",attrs:{type:"submit",value:""}})]),t.detailsOpen||null!==t.newName?t._e():e("div",{staticClass:"linked-icons"},t._l(t.limitedResources(t.collection),(function(i){return e("a",{key:i.type+"|"+i.id,class:t.typeClass(i),attrs:{title:i.name,href:i.link}},[e("img",{attrs:{src:t.iconUrl(i)}})])})),0),null===t.newName?e("span",{staticClass:"sharingOptionsGroup"},[e("NcActions",[e("NcActionButton",{attrs:{icon:"icon-info"},on:{click:function(e){return e.preventDefault(),t.toggleDetails.apply(null,arguments)}}},[t._v(" "+t._s(t.detailsOpen?t.t("core","Hide details"):t.t("core","Show details"))+" ")]),e("NcActionButton",{attrs:{icon:"icon-rename"},on:{click:function(e){return e.preventDefault(),t.openRename.apply(null,arguments)}}},[t._v(" "+t._s(t.t("core","Rename project"))+" ")])],1)],1):t._e(),e("transition",{attrs:{name:"fade"}},[t.error.rename?e("div",{staticClass:"error"},[t._v(" "+t._s(t.error.rename)+" ")]):t._e()]),e("transition",{attrs:{name:"fade"}},[t.detailsOpen?e("ul",{staticClass:"resource-list-details"},t._l(t.collection.resources,(function(i){return e("li",{key:i.type+"|"+i.id,class:t.typeClass(i)},[e("a",{attrs:{href:i.link}},[e("img",{attrs:{src:t.iconUrl(i)}}),e("span",{staticClass:"resource-name"},[t._v(t._s(i.name||""))])]),e("span",{staticClass:"icon-close",on:{click:function(e){return t.removeResource(t.collection,i)}}})])})),0):t._e()])],1)}),[],!1,null,"8e58e0a5",null,null).exports,et=function(t,e,i){var n,r,a,s,o,l,c=0,h=!1,u=!1,d=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function p(e){var i=n,a=r;return n=r=void 0,c=e,s=t.apply(a,i)}function f(t){var i=t-l;return void 0===l||i>=e||i<0||u&&t-c>=a}function g(){var t=E();if(f(t))return A(t);o=setTimeout(g,function(t){var i=e-(t-l);return u?H(i,a-(t-c)):i}(t))}function A(t){return o=void 0,d&&n?p(t):(n=r=void 0,s)}function m(){var t=E(),i=f(t);if(n=arguments,r=this,l=t,i){if(void 0===o)return function(t){return c=t,o=setTimeout(g,e),h?p(t):s}(l);if(u)return clearTimeout(o),o=setTimeout(g,e),p(l)}return void 0===o&&(o=setTimeout(g,e)),s}return e=F(e)||0,w(i)&&(h=!!i.leading,a=(u="maxWait"in i)?z(F(i.maxWait)||0,e):a,d="trailing"in i?!!i.trailing:d),m.cancel=function(){void 0!==o&&clearTimeout(o),c=0,n=l=r=o=void 0},m.flush=function(){return void 0===o?s:A(E())},m}((function(t,e){""!==t&&(e(!0),J.search(t).then((t=>{this.searchCollections=t})).catch((t=>{G.error("Failed to search for collections",t)})).finally((()=>{e(!1)})))}),500,{}),it=X({name:"CollectionList",components:{CollectionListItem:tt,NcAvatar:v.A,NcSelect:y.A},props:{type:{type:String,default:null},id:{type:String,default:null},name:{type:String,default:""},isActive:{type:Boolean,default:!0}},data:()=>({selectIsOpen:!1,generatingCodes:!1,codes:void 0,value:null,model:{},searchCollections:[],error:null,state:K,isSelectOpen:!1}),computed:{collections(){return this.state.collections.filter((t=>typeof t.resources.find((t=>t&&t.id===""+this.id&&t.type===this.type))<"u"))},placeholder(){return this.isSelectOpen?t("core","Type to search for existing projects"):t("core","Add to a project")},options(){const t=[];window.OCP.Collaboration.getTypes().sort().forEach((e=>{t.push({method:0,type:e,title:window.OCP.Collaboration.getLabel(e),class:window.OCP.Collaboration.getIcon(e),action:()=>window.OCP.Collaboration.trigger(e)})}));for(const e in this.searchCollections)-1===this.collections.findIndex((t=>t.id===this.searchCollections[e].id))&&t.push({method:1,title:this.searchCollections[e].name,collectionId:this.searchCollections[e].id});return t}},watch:{type(){this.isActive&&J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})},id(){this.isActive&&J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})},isActive(t){t&&J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})}},mounted(){J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})},methods:{select(e,i){0===e.method&&e.action().then((i=>{J.createCollection({baseResourceType:this.type,baseResourceId:this.id,resourceType:e.type,resourceId:i,name:this.name}).catch((e=>{this.setError(t("core","Failed to create a project"),e)}))})).catch((t=>{G.error("No resource selected",t)})),1===e.method&&J.addResourceToCollection({collectionId:e.collectionId,resourceType:this.type,resourceId:this.id}).catch((e=>{this.setError(t("core","Failed to add the item to the project"),e)}))},search(t,e){et.bind(this)(t,e)},showSelect(){this.selectIsOpen=!0,this.$refs.select.$el.focus()},hideSelect(){this.selectIsOpen=!1},isVueComponent:t=>t._isVue,setError(t,e){G.error(t,e),this.error=t,setTimeout((()=>{this.error=null}),5e3)}}},(function(){var t=this,e=t._self._c;return t.collections&&t.type&&t.id?e("ul",{staticClass:"collection-list",attrs:{id:"collection-list"}},[e("li",{on:{click:t.showSelect}},[t._m(0),e("div",{attrs:{id:"collection-select-container"}},[e("NcSelect",{ref:"select",attrs:{"aria-label-combobox":t.t("core","Add to a project"),options:t.options,placeholder:t.placeholder,label:"title",limit:5},on:{close:function(e){t.isSelectOpen=!1},open:function(e){t.isSelectOpen=!0},"option:selected":t.select,search:t.search},scopedSlots:t._u([{key:"selected-option",fn:function(i){return[e("span",{staticClass:"option__desc"},[e("span",{staticClass:"option__title"},[t._v(t._s(i.title))])])]}},{key:"option",fn:function(i){return[e("span",{staticClass:"option__wrapper"},[i.class?e("span",{staticClass:"avatar",class:i.class}):2!==i.method?e("NcAvatar",{attrs:{"allow-placeholder":"","display-name":i.title}}):t._e(),e("span",{staticClass:"option__title"},[t._v(t._s(i.title))])],1)]}}],null,!1,2397208459),model:{value:t.value,callback:function(e){t.value=e},expression:"value"}},[e("p",{staticClass:"hint"},[t._v(" "+t._s(t.t("core","Connect items to a project to make them easier to find"))+" ")])])],1)]),e("transition",{attrs:{name:"fade"}},[t.error?e("li",{staticClass:"error"},[t._v(" "+t._s(t.error)+" ")]):t._e()]),t._l(t.collections,(function(t){return e("CollectionListItem",{key:t.id,attrs:{collection:t}})}))],2):t._e()}),[function(){var t=this._self._c;return t("div",{staticClass:"avatar"},[t("span",{staticClass:"icon-projects"})])}],!1,null,"75a4370b",null,null).exports;var nt=n(63814),rt=n(77905),at=n(32981),st=n(87485);class ot{constructor(){this._capabilities=(0,st.F)()}get defaultPermissions(){var t;return null===(t=this._capabilities.files_sharing)||void 0===t?void 0:t.default_permissions}get isPublicUploadEnabled(){var t;return null===(t=this._capabilities.files_sharing)||void 0===t?void 0:t.public.upload}get isShareWithLinkAllowed(){return document.getElementById("allowShareWithLink")&&"yes"===document.getElementById("allowShareWithLink").value}get federatedShareDocLink(){return OC.appConfig.core.federatedCloudShareDoc}get defaultExpirationDate(){return this.isDefaultExpireDateEnabled?new Date((new Date).setDate((new Date).getDate()+this.defaultExpireDate)):null}get defaultInternalExpirationDate(){return this.isDefaultInternalExpireDateEnabled?new Date((new Date).setDate((new Date).getDate()+this.defaultInternalExpireDate)):null}get defaultRemoteExpirationDateString(){return this.isDefaultRemoteExpireDateEnabled?new Date((new Date).setDate((new Date).getDate()+this.defaultRemoteExpireDate)):null}get enforcePasswordForPublicLink(){return!0===OC.appConfig.core.enforcePasswordForPublicLink}get enableLinkPasswordByDefault(){return!0===OC.appConfig.core.enableLinkPasswordByDefault}get isDefaultExpireDateEnforced(){return!0===OC.appConfig.core.defaultExpireDateEnforced}get isDefaultExpireDateEnabled(){return!0===OC.appConfig.core.defaultExpireDateEnabled}get isDefaultInternalExpireDateEnforced(){return!0===OC.appConfig.core.defaultInternalExpireDateEnforced}get isDefaultRemoteExpireDateEnforced(){return!0===OC.appConfig.core.defaultRemoteExpireDateEnforced}get isDefaultInternalExpireDateEnabled(){return!0===OC.appConfig.core.defaultInternalExpireDateEnabled}get isDefaultRemoteExpireDateEnabled(){return!0===OC.appConfig.core.defaultRemoteExpireDateEnabled}get isRemoteShareAllowed(){return!0===OC.appConfig.core.remoteShareAllowed}get isMailShareAllowed(){var t,e;return void 0!==(null===(t=this._capabilities)||void 0===t||null===(t=t.files_sharing)||void 0===t?void 0:t.sharebymail)&&!0===(null===(e=this._capabilities)||void 0===e||null===(e=e.files_sharing)||void 0===e||null===(e=e.public)||void 0===e?void 0:e.enabled)}get defaultExpireDate(){return OC.appConfig.core.defaultExpireDate}get defaultInternalExpireDate(){return OC.appConfig.core.defaultInternalExpireDate}get defaultRemoteExpireDate(){return OC.appConfig.core.defaultRemoteExpireDate}get isResharingAllowed(){return!0===OC.appConfig.core.resharingAllowed}get isPasswordForMailSharesRequired(){return void 0!==this._capabilities.files_sharing.sharebymail&&this._capabilities.files_sharing.sharebymail.password.enforced}get shouldAlwaysShowUnique(){var t;return!0===(null===(t=this._capabilities.files_sharing)||void 0===t||null===(t=t.sharee)||void 0===t?void 0:t.always_show_unique)}get allowGroupSharing(){return!0===OC.appConfig.core.allowGroupSharing}get maxAutocompleteResults(){return parseInt(OC.config["sharing.maxAutocompleteResults"],10)||25}get minSearchStringLength(){return parseInt(OC.config["sharing.minSearchStringLength"],10)||0}get passwordPolicy(){return this._capabilities.password_policy?this._capabilities.password_policy:{}}}var lt=n(96763);class ct{constructor(t){var e,i,n,r;if(i=this,r=void 0,(n=function(t){var e=function(t,e){if("object"!=typeof t||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(n="_share"))in i?Object.defineProperty(i,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):i[n]=r,t.ocs&&t.ocs.data&&t.ocs.data[0]&&(t=t.ocs.data[0]),t.hide_download=!!t.hide_download,t.mail_send=!!t.mail_send,t.attributes&&"string"==typeof t.attributes)try{t.attributes=JSON.parse(t.attributes)}catch(e){lt.warn("Could not parse share attributes returned by server",t.attributes)}t.attributes=null!==(e=t.attributes)&&void 0!==e?e:[],this._share=t}get state(){return this._share}get id(){return this._share.id}get type(){return this._share.share_type}get permissions(){return this._share.permissions}get attributes(){return this._share.attributes}set permissions(t){this._share.permissions=t}get owner(){return this._share.uid_owner}get ownerDisplayName(){return this._share.displayname_owner}get shareWith(){return this._share.share_with}get shareWithDisplayName(){return this._share.share_with_displayname||this._share.share_with}get shareWithDisplayNameUnique(){return this._share.share_with_displayname_unique||this._share.share_with}get shareWithLink(){return this._share.share_with_link}get shareWithAvatar(){return this._share.share_with_avatar}get uidFileOwner(){return this._share.uid_file_owner}get displaynameFileOwner(){return this._share.displayname_file_owner||this._share.uid_file_owner}get createdTime(){return this._share.stime}get expireDate(){return this._share.expiration}set expireDate(t){this._share.expiration=t}get token(){return this._share.token}get note(){return this._share.note}set note(t){this._share.note=t}get label(){var t;return null!==(t=this._share.label)&&void 0!==t?t:""}set label(t){this._share.label=t}get mailSend(){return!0===this._share.mail_send}get hideDownload(){return!0===this._share.hide_download}set hideDownload(t){this._share.hide_download=!0===t}get password(){return this._share.password}set password(t){this._share.password=t}get passwordExpirationTime(){return this._share.password_expiration_time}set passwordExpirationTime(t){this._share.password_expiration_time=t}get sendPasswordByTalk(){return this._share.send_password_by_talk}set sendPasswordByTalk(t){this._share.send_password_by_talk=t}get path(){return this._share.path}get itemType(){return this._share.item_type}get mimetype(){return this._share.mimetype}get fileSource(){return this._share.file_source}get fileTarget(){return this._share.file_target}get fileParent(){return this._share.file_parent}get hasReadPermission(){return!!(this.permissions&OC.PERMISSION_READ)}get hasCreatePermission(){return!!(this.permissions&OC.PERMISSION_CREATE)}get hasDeletePermission(){return!!(this.permissions&OC.PERMISSION_DELETE)}get hasUpdatePermission(){return!!(this.permissions&OC.PERMISSION_UPDATE)}get hasSharePermission(){return!!(this.permissions&OC.PERMISSION_SHARE)}get hasDownloadPermission(){for(const t in this._share.attributes){const e=this._share.attributes[t];if("permissions"===e.scope&&"download"===e.key)return e.enabled}return!0}set hasDownloadPermission(t){this.setAttribute("permissions","download",!!t)}setAttribute(t,e,i){const n={scope:t,key:e,enabled:i};for(const t in this._share.attributes){const e=this._share.attributes[t];if(e.scope===n.scope&&e.key===n.key)return void this._share.attributes.splice(t,1,n)}this._share.attributes.push(n)}get canEdit(){return!0===this._share.can_edit}get canDelete(){return!0===this._share.can_delete}get viaFileid(){return this._share.via_fileid}get viaPath(){return this._share.via_path}get parent(){return this._share.parent}get storageId(){return this._share.storage_id}get storage(){return this._share.storage}get itemSource(){return this._share.item_source}get status(){return this._share.status}}var ht=n(85168);const ut={name:"CheckBoldIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var dt=n(14486);const pt=(0,dt.A)(ut,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon check-bold-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ft={name:"ClipboardFlowIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gt=(0,dt.A)(ft,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon clipboard-flow-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M15,19L11,15H14V8H16V15H19L15,19M10,16H8V9H5L9,5L13,9H10V16"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,At={name:"SharingEntrySimple",components:{NcActions:j.A},props:{title:{type:String,default:"",required:!0},subtitle:{type:String,default:""},isUnique:{type:Boolean,default:!0},ariaExpanded:{type:Boolean,default:null}},computed:{ariaExpandedValue(){return null===this.ariaExpanded?this.ariaExpanded:this.ariaExpanded?"true":"false"}}};var mt=n(17557),vt={};vt.styleTagTransform=g(),vt.setAttributes=u(),vt.insert=c().bind(null,"head"),vt.domAPI=o(),vt.insertStyleElement=p(),a()(mt.A,vt),mt.A&&mt.A.locals&&mt.A.locals;const yt=(0,dt.A)(At,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"sharing-entry"},[t._t("avatar"),t._v(" "),e("div",{staticClass:"sharing-entry__desc"},[e("span",{staticClass:"sharing-entry__title"},[t._v(t._s(t.title))]),t._v(" "),t.subtitle?e("p",[t._v("\n\t\t\t"+t._s(t.subtitle)+"\n\t\t")]):t._e()]),t._v(" "),t.$slots.default?e("NcActions",{ref:"actionsComponent",staticClass:"sharing-entry__actions",attrs:{"menu-align":"right","aria-expanded":t.ariaExpandedValue}},[t._t("default")],2):t._e()],2)}),[],!1,null,"1852ea78",null).exports;var wt=n(96763);const Ct={name:"SharingEntryInternal",components:{NcActionButton:q.A,SharingEntrySimple:yt,CheckIcon:pt,ClipboardIcon:gt},props:{fileInfo:{type:Object,default:()=>{},required:!0}},data:()=>({copied:!1,copySuccess:!1}),computed:{internalLink(){return window.location.protocol+"//"+window.location.host+(0,nt.Jv)("/f/")+this.fileInfo.id},copyLinkTooltip(){return this.copied?this.copySuccess?"":t("files_sharing","Cannot copy, please copy the link manually"):t("files_sharing","Copy internal link to clipboard")},internalLinkSubtitle(){return"dir"===this.fileInfo.type?t("files_sharing","Only works for people with access to this folder"):t("files_sharing","Only works for people with access to this file")}},methods:{async copyLink(){try{await navigator.clipboard.writeText(this.internalLink),(0,ht.Te)(t("files_sharing","Link copied")),this.$refs.shareEntrySimple.$refs.actionsComponent.$el.focus(),this.copySuccess=!0,this.copied=!0}catch(t){this.copySuccess=!1,this.copied=!0,wt.error(t)}finally{setTimeout((()=>{this.copySuccess=!1,this.copied=!1}),4e3)}}}};var _t=n(16469),bt={};bt.styleTagTransform=g(),bt.setAttributes=u(),bt.insert=c().bind(null,"head"),bt.domAPI=o(),bt.insertStyleElement=p(),a()(_t.A,bt),_t.A&&_t.A.locals&&_t.A.locals;const Et=(0,dt.A)(Ct,(function(){var t=this,e=t._self._c;return e("ul",[e("SharingEntrySimple",{ref:"shareEntrySimple",staticClass:"sharing-entry__internal",attrs:{title:t.t("files_sharing","Internal link"),subtitle:t.internalLinkSubtitle},scopedSlots:t._u([{key:"avatar",fn:function(){return[e("div",{staticClass:"avatar-external icon-external-white"})]},proxy:!0}])},[t._v(" "),e("NcActionButton",{attrs:{title:t.copyLinkTooltip,"aria-label":t.copyLinkTooltip},on:{click:t.copyLink},scopedSlots:t._u([{key:"icon",fn:function(){return[t.copied&&t.copySuccess?e("CheckIcon",{staticClass:"icon-checkmark-color",attrs:{size:20}}):e("ClipboardIcon",{attrs:{size:20}})]},proxy:!0}])})],1)],1)}),[],!1,null,"e40cd936",null).exports;var xt=n(21777),St=n(17334),kt=n.n(St),Dt=n(96763);const It=new ot;async function Tt(){if(It.passwordPolicy.api&&It.passwordPolicy.api.generate)try{const e=await $.Ay.get(It.passwordPolicy.api.generate);if(e.data.ocs.data.password)return(0,ht.Te)(t("files_sharing","Password created successfully")),e.data.ocs.data.password}catch(e){Dt.info("Error generating password from password_policy",e),(0,ht.Qg)(t("files_sharing","Error generating password from password policy"))}const e=new Uint8Array(10);self.crypto.getRandomValues(e);let i="";for(let t=0;t<e.length;t++)i+="abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789".charAt(.20392156862745098*e[t]);return i}n(48318);var Pt=n(61338),Bt=n(96763);const Rt=(0,nt.KT)("apps/files_sharing/api/v1/shares"),Nt={methods:{async createShare(e){let{path:i,permissions:n,shareType:r,shareWith:a,publicUpload:s,password:o,sendPasswordByTalk:l,expireDate:c,label:h,note:u,attributes:d}=e;try{var p;const t=await $.Ay.post(Rt,{path:i,permissions:n,shareType:r,shareWith:a,publicUpload:s,password:o,sendPasswordByTalk:l,expireDate:c,label:h,note:u,attributes:d});if(null==t||null===(p=t.data)||void 0===p||!p.ocs)throw t;const e=new ct(t.data.ocs.data);return(0,Pt.Ic)("files_sharing:share:created",{share:e}),e}catch(e){var f;Bt.error("Error while creating share",e);const i=null==e||null===(f=e.response)||void 0===f||null===(f=f.data)||void 0===f||null===(f=f.ocs)||void 0===f||null===(f=f.meta)||void 0===f?void 0:f.message;throw OC.Notification.showTemporary(i?t("files_sharing","Error creating the share: {errorMessage}",{errorMessage:i}):t("files_sharing","Error creating the share"),{type:"error"}),e}},async deleteShare(e){try{var i;const t=await $.Ay.delete(Rt+"/".concat(e));if(null==t||null===(i=t.data)||void 0===i||!i.ocs)throw t;return(0,Pt.Ic)("files_sharing:share:deleted",{id:e}),!0}catch(e){var n;Bt.error("Error while deleting share",e);const i=null==e||null===(n=e.response)||void 0===n||null===(n=n.data)||void 0===n||null===(n=n.ocs)||void 0===n||null===(n=n.meta)||void 0===n?void 0:n.message;throw OC.Notification.showTemporary(i?t("files_sharing","Error deleting the share: {errorMessage}",{errorMessage:i}):t("files_sharing","Error deleting the share"),{type:"error"}),e}},async updateShare(e,i){try{var n;const t=await $.Ay.put(Rt+"/".concat(e),i);if((0,Pt.Ic)("files_sharing:share:updated",{id:e}),null!=t&&null!==(n=t.data)&&void 0!==n&&n.ocs)return t.data.ocs.data;throw t}catch(e){if(Bt.error("Error while updating share",e),400!==e.response.status){var r;const i=null==e||null===(r=e.response)||void 0===r||null===(r=r.data)||void 0===r||null===(r=r.ocs)||void 0===r||null===(r=r.meta)||void 0===r?void 0:r.message;OC.Notification.showTemporary(i?t("files_sharing","Error updating the share: {errorMessage}",{errorMessage:i}):t("files_sharing","Error updating the share"),{type:"error"})}const i=e.response.data.ocs.meta.message;throw new Error(i)}}}},Lt={methods:{async openSharingDetails(t){let e={};if(t.handler){const i={};this.suggestions&&(i.suggestions=this.suggestions,i.fileInfo=this.fileInfo,i.query=this.query);const n=await t.handler(i);e=this.mapShareRequestToShareObject(n)}else e=this.mapShareRequestToShareObject(t);const i={fileInfo:this.fileInfo,share:e};this.$emit("open-sharing-details",i)},openShareDetailsForCustomSettings(t){t.setCustomPermissions=!0,this.openSharingDetails(t)},mapShareRequestToShareObject(t){var e;if(t.id)return t;const i={attributes:[{enabled:!0,key:"download",scope:"permissions"}],share_type:t.shareType,share_with:t.shareWith,is_no_user:t.isNoUser,user:t.shareWith,share_with_displayname:t.displayName,subtitle:t.subtitle,permissions:null!==(e=t.permissions)&&void 0!==e?e:(new ot).defaultPermissions,expiration:""};return new ct(i)}}};var Ot=n(96763);const Ut={name:"SharingInput",components:{NcSelect:y.A},mixins:[Nt,Lt],props:{shares:{type:Array,default:()=>[],required:!0},linkShares:{type:Array,default:()=>[],required:!0},fileInfo:{type:Object,default:()=>{},required:!0},reshare:{type:ct,default:null},canReshare:{type:Boolean,required:!0}},data:()=>({config:new ot,loading:!1,query:"",recommendations:[],ShareSearch:OCA.Sharing.ShareSearch.state,suggestions:[],value:null}),computed:{externalResults(){return this.ShareSearch.results},inputPlaceholder(){const e=this.config.isRemoteShareAllowed;return this.canReshare?e?t("files_sharing","Name, email, or Federated Cloud ID …"):t("files_sharing","Name or email …"):t("files_sharing","Resharing is not allowed")},isValidQuery(){return this.query&&""!==this.query.trim()&&this.query.length>this.config.minSearchStringLength},options(){return this.isValidQuery?this.suggestions:this.recommendations},noResultText(){return this.loading?t("files_sharing","Searching …"):t("files_sharing","No elements found.")}},mounted(){this.getRecommendations()},methods:{onSelected(t){this.value=null,this.openSharingDetails(t)},async asyncFind(t){this.query=t.trim(),this.isValidQuery&&(this.loading=!0,await this.debounceGetSuggestions(t))},async getSuggestions(e){let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.loading=!0,!0===(0,st.F)().files_sharing.sharee.query_lookup_default&&(i=!0);const n=Object.values(rt.I);!0===(0,st.F)().files_sharing.public.enabled&&n.push(rt.I.Email);let r=null;try{r=await $.Ay.get((0,nt.KT)("apps/files_sharing/api/v1/sharees"),{params:{format:"json",itemType:"dir"===this.fileInfo.type?"folder":"file",search:e,lookup:i,perPage:this.config.maxAutocompleteResults,shareType:n}})}catch(t){return void Ot.error("Error fetching suggestions",t)}const a=r.data.ocs.data,s=r.data.ocs.data.exact;a.exact=[];const o=Object.values(s).reduce(((t,e)=>t.concat(e)),[]),l=Object.values(a).reduce(((t,e)=>t.concat(e)),[]),c=this.filterOutExistingShares(o).map((t=>this.formatForMultiselect(t))).sort(((t,e)=>t.shareType-e.shareType)),h=this.filterOutExistingShares(l).map((t=>this.formatForMultiselect(t))).sort(((t,e)=>t.shareType-e.shareType)),u=[];a.lookupEnabled&&!i&&u.push({id:"global-lookup",isNoUser:!0,displayName:t("files_sharing","Search globally"),lookup:!0});const d=this.externalResults.filter((t=>!t.condition||t.condition(this))),p=c.concat(h).concat(d).concat(u),f=p.reduce(((t,e)=>e.displayName?(t[e.displayName]||(t[e.displayName]=0),t[e.displayName]++,t):t),{});this.suggestions=p.map((t=>f[t.displayName]>1&&!t.desc?{...t,desc:t.shareWithDisplayNameUnique}:t)),this.loading=!1,Ot.info("suggestions",this.suggestions)},debounceGetSuggestions:kt()((function(){this.getSuggestions(...arguments)}),300),async getRecommendations(){this.loading=!0;let t=null;try{t=await $.Ay.get((0,nt.KT)("apps/files_sharing/api/v1/sharees_recommended"),{params:{format:"json",itemType:this.fileInfo.type}})}catch(t){return void Ot.error("Error fetching recommendations",t)}const e=this.externalResults.filter((t=>!t.condition||t.condition(this))),i=Object.values(t.data.ocs.data.exact).reduce(((t,e)=>t.concat(e)),[]);this.recommendations=this.filterOutExistingShares(i).map((t=>this.formatForMultiselect(t))).concat(e),this.loading=!1,Ot.info("recommendations",this.recommendations)},filterOutExistingShares(t){return t.reduce(((t,e)=>{if("object"!=typeof e)return t;try{if(e.value.shareType===rt.I.User){if(e.value.shareWith===(0,xt.HW)().uid)return t;if(this.reshare&&e.value.shareWith===this.reshare.owner)return t}if(e.value.shareType===rt.I.Email){if(-1!==this.linkShares.map((t=>t.shareWith)).indexOf(e.value.shareWith.trim()))return t}else{const i=this.shares.reduce(((t,e)=>(t[e.shareWith]=e.type,t)),{}),n=e.value.shareWith.trim();if(n in i&&i[n]===e.value.shareType)return t}t.push(e)}catch{return t}return t}),[])},shareTypeToIcon(e){switch(e){case rt.I.Guest:return{icon:"icon-user",iconTitle:t("files_sharing","Guest")};case rt.I.RemoteGroup:case rt.I.Group:return{icon:"icon-group",iconTitle:t("files_sharing","Group")};case rt.I.Email:return{icon:"icon-mail",iconTitle:t("files_sharing","Email")};case rt.I.Team:return{icon:"icon-teams",iconTitle:t("files_sharing","Team")};case rt.I.Room:return{icon:"icon-room",iconTitle:t("files_sharing","Talk conversation")};case rt.I.Deck:return{icon:"icon-deck",iconTitle:t("files_sharing","Deck board")};case rt.I.Sciencemesh:return{icon:"icon-sciencemesh",iconTitle:t("files_sharing","ScienceMesh")};default:return{}}},formatForMultiselect(e){let i;var n;if(e.value.shareType===rt.I.User&&this.config.shouldAlwaysShowUnique)i=null!==(n=e.shareWithDisplayNameUnique)&&void 0!==n?n:"";else if(e.value.shareType!==rt.I.Remote&&e.value.shareType!==rt.I.RemoteGroup||!e.value.server)if(e.value.shareType===rt.I.Email)i=e.value.shareWith;else{var r;i=null!==(r=e.shareWithDescription)&&void 0!==r?r:""}else i=t("files_sharing","on {server}",{server:e.value.server});return{shareWith:e.value.shareWith,shareType:e.value.shareType,user:e.uuid||e.value.shareWith,isNoUser:e.value.shareType!==rt.I.User,displayName:e.name||e.label,subname:i,shareWithDisplayNameUnique:e.shareWithDisplayNameUnique||"",...this.shareTypeToIcon(e.value.shareType)}}}};var Mt=n(80521),Vt={};Vt.styleTagTransform=g(),Vt.setAttributes=u(),Vt.insert=c().bind(null,"head"),Vt.domAPI=o(),Vt.insertStyleElement=p(),a()(Mt.A,Vt),Mt.A&&Mt.A.locals&&Mt.A.locals;const Ft=(0,dt.A)(Ut,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"sharing-search"},[e("label",{attrs:{for:"sharing-search-input"}},[t._v(t._s(t.t("files_sharing","Search for share recipients")))]),t._v(" "),e("NcSelect",{ref:"select",staticClass:"sharing-search__input",attrs:{"input-id":"sharing-search-input",disabled:!t.canReshare,loading:t.loading,filterable:!1,placeholder:t.inputPlaceholder,"clear-search-on-blur":()=>!1,"user-select":!0,options:t.options},on:{search:t.asyncFind,"option:selected":t.onSelected},scopedSlots:t._u([{key:"no-options",fn:function(e){let{search:i}=e;return[t._v("\n\t\t\t"+t._s(i?t.noResultText:t.t("files_sharing","No recommendations. Start typing."))+"\n\t\t")]}}]),model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})],1)}),[],!1,null,null,null).exports;var zt=n(71225),Ht=n(73267),jt=n(32831),qt=n(34297);const Wt=(0,qt.H4)();var $t=n(49264),Yt=n(35947);const Gt=(0,Yt.YK)().setApp("files_sharing").detectUser().build(),Qt={NONE:0,READ:1,UPDATE:2,CREATE:4,DELETE:8,SHARE:16},Kt={READ_ONLY:Qt.READ,UPLOAD_AND_UPDATE:Qt.READ|Qt.UPDATE|Qt.CREATE|Qt.DELETE,FILE_DROP:Qt.CREATE,ALL:Qt.UPDATE|Qt.CREATE|Qt.READ|Qt.DELETE|Qt.SHARE,ALL_FILE:Qt.UPDATE|Qt.READ|Qt.SHARE};var Zt=n(96763);const Jt={mixins:[Nt],props:{fileInfo:{type:Object,default:()=>{},required:!0},share:{type:ct,default:null},isUnique:{type:Boolean,default:!0}},data(){var t;return{config:new ot,node:null,ShareType:rt.I,errors:{},loading:!1,saving:!1,open:!1,updateQueue:new $t.A({concurrency:1}),reactiveState:null===(t=this.share)||void 0===t?void 0:t.state}},computed:{path(){return(this.fileInfo.path+"/"+this.fileInfo.name).replace("//","/")},hasNote:{get(){return""!==this.share.note},set(t){this.share.note=t?null:""}},dateTomorrow:()=>new Date((new Date).setDate((new Date).getDate()+1)),lang(){const t=window.dayNamesShort?window.dayNamesShort:["Sun.","Mon.","Tue.","Wed.","Thu.","Fri.","Sat."],e=window.monthNamesShort?window.monthNamesShort:["Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."];return{formatLocale:{firstDayOfWeek:window.firstDay?window.firstDay:0,monthsShort:e,weekdaysMin:t,weekdaysShort:t},monthFormat:"MMM"}},isFolder(){return"dir"===this.fileInfo.type},isPublicShare(){var t;const e=null!==(t=this.share.shareType)&&void 0!==t?t:this.share.type;return[rt.I.Link,rt.I.Email].includes(e)},isRemoteShare(){return this.share.type===rt.I.RemoteGroup||this.share.type===rt.I.Remote},isShareOwner(){return this.share&&this.share.owner===(0,xt.HW)().uid},isExpiryDateEnforced(){return this.isPublicShare?this.config.isDefaultExpireDateEnforced:this.isRemoteShare?this.config.isDefaultRemoteExpireDateEnforced:this.config.isDefaultInternalExpireDateEnforced},hasCustomPermissions(){return![Kt.ALL,Kt.READ_ONLY,Kt.FILE_DROP].includes(this.share.permissions)},maxExpirationDateEnforced(){return this.isExpiryDateEnforced?this.isPublicShare?this.config.defaultExpirationDate:this.isRemoteShare?this.config.defaultRemoteExpirationDateString:this.config.defaultInternalExpirationDate:null}},methods:{async getNode(){const t={path:this.path};try{this.node=await(async t=>{const e=(0,qt.VL)(),i=await Wt.stat("".concat(qt.lJ).concat(t.path),{details:!0,data:e});return(0,qt.Al)(i.data)})(t),Gt.info("Fetched node:",{node:this.node})}catch(t){Gt.error("Error:",t)}},checkShare:t=>(!t.password||"string"==typeof t.password&&""!==t.password.trim())&&!(t.expirationDate&&!t.expirationDate.isValid()),formatDateToString:t=>new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate())).toISOString().split("T")[0],onExpirationChange(t){this.share.expireDate=this.formatDateToString(new Date(t))},onExpirationDisable(){this.share.expireDate=""},onNoteChange(t){this.$set(this.share,"newNote",t.trim())},onNoteSubmit(){this.share.newNote&&(this.share.note=this.share.newNote,this.$delete(this.share,"newNote"),this.queueUpdate("note"))},async onDelete(){try{this.loading=!0,this.open=!1,await this.deleteShare(this.share.id),Zt.debug("Share deleted",this.share.id);const e="file"===this.share.itemType?t("files_sharing",'File "{path}" has been unshared',{path:this.share.path}):t("files_sharing",'Folder "{path}" has been unshared',{path:this.share.path});(0,ht.Te)(e),this.$emit("remove:share",this.share),await this.getNode(),(0,Pt.Ic)("files:node:updated",this.node)}catch(t){this.open=!0}finally{this.loading=!1}},queueUpdate(){for(var e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];if(0!==i.length){if(this.share.id){const e={};return i.forEach((t=>{"object"==typeof this.share[t]?e[t]=JSON.stringify(this.share[t]):e[t]=this.share[t].toString()})),void this.updateQueue.add((async()=>{this.saving=!0,this.errors={};try{const t=await this.updateShare(this.share.id,e);i.indexOf("password")>=0&&(this.$delete(this.share,"newPassword"),this.share.passwordExpirationTime=t.password_expiration_time),this.$delete(this.errors,i[0]),(0,ht.Te)(this.updateSuccessMessage(i))}catch(e){Gt.error("Could not update share",{error:e,share:this.share,propertyNames:i});const{message:n}=e;n&&""!==n?(this.onSyncError(i[0],n),(0,ht.Qg)(n)):(0,ht.Qg)(t("files_sharing","Could not update share"))}finally{this.saving=!1}}))}Zt.debug("Updated local share",this.share)}},updateSuccessMessage(e){if(1!==e.length)return t("files_sharing","Share saved");switch(e[0]){case"expireDate":return t("files_sharing","Share expire date saved");case"hideDownload":return t("files_sharing","Share hide-download state saved");case"label":return t("files_sharing","Share label saved");case"note":return t("files_sharing","Share note for recipient saved");case"password":return t("files_sharing","Share password saved");case"permissions":return t("files_sharing","Share permissions saved");default:return t("files_sharing","Share saved")}},onSyncError(t,e){switch(this.open=!0,t){case"password":case"pending":case"expireDate":case"label":case"note":{this.$set(this.errors,t,e);let i=this.$refs[t];if(i){i.$el&&(i=i.$el);const t=i.querySelector(".focusable");t&&t.focus()}break}case"sendPasswordByTalk":this.$set(this.errors,t,e),this.share.sendPasswordByTalk=!this.share.sendPasswordByTalk}},debounceQueueUpdate:kt()((function(t){this.queueUpdate(t)}),500)}},Xt={name:"SharingEntryInherited",components:{NcActionButton:q.A,NcActionLink:Ht.A,NcActionText:jt.A,NcAvatar:v.A,SharingEntrySimple:yt},mixins:[Jt],props:{share:{type:ct,required:!0}},computed:{viaFileTargetUrl(){return(0,nt.Jv)("/f/{fileid}",{fileid:this.share.viaFileid})},viaFolderName(){return(0,zt.P8)(this.share.viaPath)}}};var te=n(41699),ee={};ee.styleTagTransform=g(),ee.setAttributes=u(),ee.insert=c().bind(null,"head"),ee.domAPI=o(),ee.insertStyleElement=p(),a()(te.A,ee),te.A&&te.A.locals&&te.A.locals;const ie=(0,dt.A)(Xt,(function(){var t=this,e=t._self._c;return e("SharingEntrySimple",{key:t.share.id,staticClass:"sharing-entry__inherited",attrs:{title:t.share.shareWithDisplayName},scopedSlots:t._u([{key:"avatar",fn:function(){return[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{user:t.share.shareWith,"display-name":t.share.shareWithDisplayName}})]},proxy:!0}])},[t._v(" "),e("NcActionText",{attrs:{icon:"icon-user"}},[t._v("\n\t\t"+t._s(t.t("files_sharing","Added by {initiator}",{initiator:t.share.ownerDisplayName}))+"\n\t")]),t._v(" "),t.share.viaPath&&t.share.viaFileid?e("NcActionLink",{attrs:{icon:"icon-folder",href:t.viaFileTargetUrl}},[t._v("\n\t\t"+t._s(t.t("files_sharing","Via “{folder}”",{folder:t.viaFolderName}))+"\n\t")]):t._e(),t._v(" "),t.share.canDelete?e("NcActionButton",{attrs:{icon:"icon-close"},on:{click:function(e){return e.preventDefault(),t.onDelete.apply(null,arguments)}}},[t._v("\n\t\t"+t._s(t.t("files_sharing","Unshare"))+"\n\t")]):t._e()],1)}),[],!1,null,"283ca89e",null).exports;var ne=n(96763);const re={name:"SharingInherited",components:{NcActionButton:q.A,SharingEntryInherited:ie,SharingEntrySimple:yt},props:{fileInfo:{type:Object,default:()=>{},required:!0}},data:()=>({loaded:!1,loading:!1,showInheritedShares:!1,shares:[]}),computed:{showInheritedSharesIcon(){return this.loading?"icon-loading-small":this.showInheritedShares?"icon-triangle-n":"icon-triangle-s"},mainTitle:()=>t("files_sharing","Others with access"),subTitle(){return this.showInheritedShares&&0===this.shares.length?t("files_sharing","No other accounts with access found"):""},toggleTooltip(){return"dir"===this.fileInfo.type?t("files_sharing","Toggle list of others with access to this directory"):t("files_sharing","Toggle list of others with access to this file")},fullPath(){return"".concat(this.fileInfo.path,"/").concat(this.fileInfo.name).replace("//","/")}},watch:{fileInfo(){this.resetState()}},methods:{toggleInheritedShares(){this.showInheritedShares=!this.showInheritedShares,this.showInheritedShares?this.fetchInheritedShares():this.resetState()},async fetchInheritedShares(){this.loading=!0;try{const t=(0,nt.KT)("apps/files_sharing/api/v1/shares/inherited?format=json&path={path}",{path:this.fullPath}),e=await $.Ay.get(t);this.shares=e.data.ocs.data.map((t=>new ct(t))).sort(((t,e)=>e.createdTime-t.createdTime)),ne.info(this.shares),this.loaded=!0}catch(e){OC.Notification.showTemporary(t("files_sharing","Unable to fetch inherited shares"),{type:"error"})}finally{this.loading=!1}},resetState(){this.loaded=!1,this.loading=!1,this.showInheritedShares=!1,this.shares=[]},removeShare(t){const e=this.shares.findIndex((e=>e===t));this.shares.splice(e,1)}}};var ae=n(4442),se={};se.styleTagTransform=g(),se.setAttributes=u(),se.insert=c().bind(null,"head"),se.domAPI=o(),se.insertStyleElement=p(),a()(ae.A,se),ae.A&&ae.A.locals&&ae.A.locals;const oe=(0,dt.A)(re,(function(){var t=this,e=t._self._c;return e("ul",{attrs:{id:"sharing-inherited-shares"}},[e("SharingEntrySimple",{staticClass:"sharing-entry__inherited",attrs:{title:t.mainTitle,subtitle:t.subTitle,"aria-expanded":t.showInheritedShares},scopedSlots:t._u([{key:"avatar",fn:function(){return[e("div",{staticClass:"avatar-shared icon-more-white"})]},proxy:!0}])},[t._v(" "),e("NcActionButton",{attrs:{icon:t.showInheritedSharesIcon,"aria-label":t.toggleTooltip,title:t.toggleTooltip},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.toggleInheritedShares.apply(null,arguments)}}})],1),t._v(" "),t._l(t.shares,(function(i){return e("SharingEntryInherited",{key:i.id,attrs:{"file-info":t.fileInfo,share:i},on:{"remove:share":t.removeShare}})}))],2)}),[],!1,null,"50f9af8c",null).exports;var le=n(17816),ce=n.n(le),he=n(1790),ue=n(44131),de=n(80114),pe=n(94219);const fe={name:"TuneIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ge=(0,dt.A)(fe,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon tune-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Ae={name:"CalendarBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},me=(0,dt.A)(Ae,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon calendar-blank-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ve={name:"QrcodeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ye=(0,dt.A)(ve,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon qrcode-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,we={name:"ExclamationIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ce=(0,dt.A)(we,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon exclamation-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,_e={name:"LockIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},be=(0,dt.A)(_e,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon lock-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Ee=n(66001),xe=n(96078);const Se={name:"TriangleSmallDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ke=(0,dt.A)(Se,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon triangle-small-down-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M8 9H16L12 16"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,De={name:"EyeOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ie=(0,dt.A)(De,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon eye-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,12Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Te=n(2413);const Pe={name:"FileUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Be=(0,dt.A)(Pe,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon file-upload-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Re={name:"SharingEntryQuickShareSelect",components:{DropdownIcon:ke,NcActions:j.A,NcActionButton:q.A},mixins:[Jt,Lt],props:{share:{type:Object,required:!0}},emits:["open-sharing-details"],data:()=>({selectedOption:""}),computed:{ariaLabel(){return t("files_sharing",'Quick share options, the current selected is "{selectedOption}"',{selectedOption:this.selectedOption})},canViewText:()=>t("files_sharing","View only"),canEditText:()=>t("files_sharing","Can edit"),fileDropText:()=>t("files_sharing","File drop"),customPermissionsText:()=>t("files_sharing","Custom permissions"),preSelectedOption(){return(this.share.permissions&~Qt.SHARE)===Kt.READ_ONLY?this.canViewText:this.share.permissions===Kt.ALL||this.share.permissions===Kt.ALL_FILE?this.canEditText:(this.share.permissions&~Qt.SHARE)===Kt.FILE_DROP?this.fileDropText:this.customPermissionsText},options(){const t=[{label:this.canViewText,icon:Ie},{label:this.canEditText,icon:Te.A}];return this.supportsFileDrop&&t.push({label:this.fileDropText,icon:Be}),t.push({label:this.customPermissionsText,icon:ge}),t},supportsFileDrop(){if(this.isFolder&&this.config.isPublicUploadEnabled){var t;const e=null!==(t=this.share.type)&&void 0!==t?t:this.share.shareType;return[rt.I.Link,rt.I.Email].includes(e)}return!1},dropDownPermissionValue(){switch(this.selectedOption){case this.canEditText:return this.isFolder?Kt.ALL:Kt.ALL_FILE;case this.fileDropText:return Kt.FILE_DROP;case this.customPermissionsText:return"custom";case this.canViewText:default:return Kt.READ_ONLY}}},created(){this.selectedOption=this.preSelectedOption},methods:{selectOption(t){this.selectedOption=t,t===this.customPermissionsText?this.$emit("open-sharing-details"):(this.share.permissions=this.dropDownPermissionValue,this.queueUpdate("permissions"),this.$refs.quickShareActions.$refs.menuButton.$el.focus())}}},Ne=Re;var Le=n(19059),Oe={};Oe.styleTagTransform=g(),Oe.setAttributes=u(),Oe.insert=c().bind(null,"head"),Oe.domAPI=o(),Oe.insertStyleElement=p(),a()(Le.A,Oe),Le.A&&Le.A.locals&&Le.A.locals;const Ue=(0,dt.A)(Ne,(function(){var t=this,e=t._self._c;return e("NcActions",{ref:"quickShareActions",staticClass:"share-select",attrs:{"menu-name":t.selectedOption,"aria-label":t.ariaLabel,type:"tertiary-no-background",disabled:!t.share.canEdit,"force-name":""},scopedSlots:t._u([{key:"icon",fn:function(){return[e("DropdownIcon",{attrs:{size:15}})]},proxy:!0}])},[t._v(" "),t._l(t.options,(function(i){return e("NcActionButton",{key:i.label,attrs:{type:"radio","model-value":i.label===t.selectedOption,"close-after-click":""},on:{click:function(e){return t.selectOption(i.label)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(i.icon,{tag:"component"})]},proxy:!0}],null,!0)},[t._v("\n\t\t"+t._s(i.label)+"\n\t")])}))],2)}),[],!1,null,"f3bc43ce",null).exports,Me={name:"ExternalShareAction",props:{id:{type:String,required:!0},action:{type:Object,default:()=>({})},fileInfo:{type:Object,default:()=>{},required:!0},share:{type:ct,default:null}},computed:{data(){return this.action.data(this)}}},Ve=(0,dt.A)(Me,(function(){var t=this;return(0,t._self._c)(t.data.is,t._g(t._b({tag:"Component"},"Component",t.data,!1),t.action.handlers),[t._v("\n\t"+t._s(t.data.text)+"\n")])}),[],!1,null,null,null).exports;var Fe=n(96763);const ze={name:"SharingEntryLink",components:{ExternalShareAction:Ve,NcActions:j.A,NcActionButton:q.A,NcActionCheckbox:he.A,NcActionInput:ue.A,NcActionLink:Ht.A,NcActionText:jt.A,NcActionSeparator:de.A,NcAvatar:v.A,NcDialog:pe.A,VueQrcode:ce(),Tune:ge,IconCalendarBlank:me,IconQr:ye,ErrorIcon:Ce,LockIcon:be,CheckIcon:pt,ClipboardIcon:gt,CloseIcon:Ee.A,PlusIcon:xe.A,SharingEntryQuickShareSelect:Ue},mixins:[Jt,Lt],props:{canReshare:{type:Boolean,default:!0},index:{type:Number,default:null}},data:()=>({shareCreationComplete:!1,copySuccess:!0,copied:!1,defaultExpirationDateEnabled:!1,pending:!1,ExternalLegacyLinkActions:OCA.Sharing.ExternalLinkActions.state,ExternalShareActions:OCA.Sharing.ExternalShareActions.state,logger:(0,Yt.YK)().setApp("files_sharing").detectUser().build(),showQRCode:!1}),computed:{title(){if(this.share&&this.share.id){if(!this.isShareOwner&&this.share.ownerDisplayName)return this.isEmailShareType?t("files_sharing","{shareWith} by {initiator}",{shareWith:this.share.shareWith,initiator:this.share.ownerDisplayName}):t("files_sharing","Shared via link by {initiator}",{initiator:this.share.ownerDisplayName});if(this.share.label&&""!==this.share.label.trim())return this.isEmailShareType?t("files_sharing","Mail share ({label})",{label:this.share.label.trim()}):t("files_sharing","Share link ({label})",{label:this.share.label.trim()});if(this.isEmailShareType)return this.share.shareWith}return this.index>1?t("files_sharing","Share link ({index})",{index:this.index}):t("files_sharing","Share link")},subtitle(){return this.isEmailShareType&&this.title!==this.share.shareWith?this.share.shareWith:null},isPasswordProtected:{get(){return this.config.enforcePasswordForPublicLink||!!this.share.password},async set(t){W.Ay.set(this.share,"password",t?await Tt():""),W.Ay.set(this.share,"newPassword",this.share.password)}},passwordExpirationTime(){if(null===this.share.passwordExpirationTime)return null;const t=moment(this.share.passwordExpirationTime);return!(t.diff(moment())<0)&&t.fromNow()},isTalkEnabled:()=>void 0!==OC.appswebroots.spreed,isPasswordProtectedByTalkAvailable(){return this.isPasswordProtected&&this.isTalkEnabled},isPasswordProtectedByTalk:{get(){return this.share.sendPasswordByTalk},async set(t){this.share.sendPasswordByTalk=t}},isEmailShareType(){return!!this.share&&this.share.type===rt.I.Email},canTogglePasswordProtectedByTalkAvailable(){return!(!this.isPasswordProtected||this.isEmailShareType&&!this.hasUnsavedPassword)},pendingDataIsMissing(){return this.pendingPassword||this.pendingEnforcedPassword||this.pendingDefaultExpirationDate||this.pendingEnforcedExpirationDate},pendingPassword(){return this.config.enableLinkPasswordByDefault&&this.isPendingShare},pendingEnforcedPassword(){return this.config.enforcePasswordForPublicLink&&this.isPendingShare},pendingEnforcedExpirationDate(){return this.config.isDefaultExpireDateEnforced&&this.isPendingShare},pendingDefaultExpirationDate(){return(this.config.defaultExpirationDate instanceof Date||!isNaN(new Date(this.config.defaultExpirationDate).getTime()))&&this.isPendingShare},isPendingShare(){return!(!this.share||this.share.id)},sharePolicyHasEnforcedProperties(){return this.config.enforcePasswordForPublicLink||this.config.isDefaultExpireDateEnforced},enforcedPropertiesMissing(){if(!this.sharePolicyHasEnforcedProperties)return!1;if(!this.share)return!0;if(this.share.id)return!0;const t=this.config.enforcePasswordForPublicLink&&!this.share.password,e=this.config.isDefaultExpireDateEnforced&&!this.share.expireDate;return t||e},hasUnsavedPassword(){return void 0!==this.share.newPassword},shareLink(){return window.location.protocol+"//"+window.location.host+(0,nt.Jv)("/s/")+this.share.token},actionsTooltip(){return t("files_sharing",'Actions for "{title}"',{title:this.title})},copyLinkTooltip(){return this.copied?this.copySuccess?"":t("files_sharing","Cannot copy, please copy the link manually"):t("files_sharing",'Copy public link of "{title}" to clipboard',{title:this.title})},externalLegacyLinkActions(){return this.ExternalLegacyLinkActions.actions},externalLinkActions(){return this.ExternalShareActions.actions.filter((t=>(t.shareType.includes(rt.I.Link)||t.shareType.includes(rt.I.Email))&&!t.advanced))},isPasswordPolicyEnabled(){return"object"==typeof this.config.passwordPolicy},canChangeHideDownload(){return this.fileInfo.shareAttributes.some((t=>"download"===t.key&&"permissions"===t.scope&&!1===t.enabled))}},mounted(){this.defaultExpirationDateEnabled=this.config.defaultExpirationDate instanceof Date},methods:{shareRequiresReview(t){return!t&&(this.defaultExpirationDateEnabled||this.config.enableLinkPasswordByDefault)},async onNewLinkShare(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.logger.debug("onNewLinkShare called (with this.share)",this.share),this.loading)return;const i={share_type:rt.I.Link};if(this.config.isDefaultExpireDateEnforced&&(i.expiration=this.formatDateToString(this.config.defaultExpirationDate)),this.logger.debug("Missing required properties?",this.enforcedPropertiesMissing),this.sharePolicyHasEnforcedProperties&&this.enforcedPropertiesMissing||this.shareRequiresReview(!0===e)){this.pending=!0,this.shareCreationComplete=!1,this.logger.info("Share policy requires a review or has mandated properties (password, expirationDate)..."),(this.config.enableLinkPasswordByDefault||this.config.enforcePasswordForPublicLink)&&(i.password=await Tt());const t=new ct(i),e=await new Promise((e=>{this.$emit("add:share",t,e)}));this.open=!1,this.pending=!1,e.open=!0}else{if(this.share&&!this.share.id){if(this.checkShare(this.share)){try{this.logger.info("Sending existing share to server",this.share),await this.pushNewLinkShare(this.share,!0),this.shareCreationComplete=!0,this.logger.info("Share created on server",this.share)}catch(t){return this.pending=!1,this.logger.error("Error creating share",t),!1}return!0}return this.open=!0,(0,ht.Qg)(t("files_sharing","Error, please enter proper password and/or expiration date")),!1}const e=new ct(i);await this.pushNewLinkShare(e),this.shareCreationComplete=!0}},async pushNewLinkShare(e,i){try{if(this.loading)return!0;this.loading=!0,this.errors={};const n={path:(this.fileInfo.path+"/"+this.fileInfo.name).replace("//","/"),shareType:rt.I.Link,password:e.password,expireDate:e.expireDate,attributes:JSON.stringify(this.fileInfo.shareAttributes)};Fe.debug("Creating link share with options",n);const r=await this.createShare(n);let a;this.open=!1,this.shareCreationComplete=!0,Fe.debug("Link share created",r),a=i?await new Promise((t=>{this.$emit("update:share",r,t)})):await new Promise((t=>{this.$emit("add:share",r,t)})),await this.getNode(),(0,Pt.Ic)("files:node:updated",this.node),this.config.enforcePasswordForPublicLink||a.copyLink(),(0,ht.Te)(t("files_sharing","Link share created"))}catch(e){var n;const i=null==e||null===(n=e.response)||void 0===n||null===(n=n.data)||void 0===n||null===(n=n.ocs)||void 0===n||null===(n=n.meta)||void 0===n?void 0:n.message;if(!i)return(0,ht.Qg)(t("files_sharing","Error while creating the share")),void Fe.error(e);throw i.match(/password/i)?this.onSyncError("password",i):i.match(/date/i)?this.onSyncError("expireDate",i):this.onSyncError("pending",i),e}finally{this.loading=!1,this.shareCreationComplete=!0}},async copyLink(){try{await navigator.clipboard.writeText(this.shareLink),(0,ht.Te)(t("files_sharing","Link copied")),this.$refs.copyButton.$el.focus(),this.copySuccess=!0,this.copied=!0}catch(t){this.copySuccess=!1,this.copied=!0,Fe.error(t)}finally{setTimeout((()=>{this.copySuccess=!1,this.copied=!1}),4e3)}},onPasswordChange(t){this.$set(this.share,"newPassword",t)},onPasswordDisable(){this.share.password="",this.$delete(this.share,"newPassword"),this.share.id&&this.queueUpdate("password")},onPasswordSubmit(){this.hasUnsavedPassword&&(this.share.password=this.share.newPassword.trim(),this.queueUpdate("password"))},onPasswordProtectedByTalkChange(){this.hasUnsavedPassword&&(this.share.password=this.share.newPassword.trim()),this.queueUpdate("sendPasswordByTalk","password")},onMenuClose(){this.onPasswordSubmit(),this.onNoteSubmit()},onDefaultExpirationDateEnabledChange(t){this.share.expireDate=t?this.formatDateToString(this.config.defaultExpirationDate):""},onCancel(){this.shareCreationComplete||this.$emit("remove:share",this.share)}}},He=ze;var je=n(22648),qe={};qe.styleTagTransform=g(),qe.setAttributes=u(),qe.insert=c().bind(null,"head"),qe.domAPI=o(),qe.insertStyleElement=p(),a()(je.A,qe),je.A&&je.A.locals&&je.A.locals;const We={name:"SharingLinkList",components:{SharingEntryLink:(0,dt.A)(He,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"sharing-entry sharing-entry__link",class:{"sharing-entry--share":t.share}},[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{"is-no-user":!0,"icon-class":t.isEmailShareType?"avatar-link-share icon-mail-white":"avatar-link-share icon-public-white"}}),t._v(" "),e("div",{staticClass:"sharing-entry__summary"},[e("div",{staticClass:"sharing-entry__desc"},[e("span",{staticClass:"sharing-entry__title",attrs:{title:t.title}},[t._v("\n\t\t\t\t"+t._s(t.title)+"\n\t\t\t")]),t._v(" "),t.subtitle?e("p",[t._v("\n\t\t\t\t"+t._s(t.subtitle)+"\n\t\t\t")]):t._e(),t._v(" "),t.share&&void 0!==t.share.permissions?e("SharingEntryQuickShareSelect",{attrs:{share:t.share,"file-info":t.fileInfo},on:{"open-sharing-details":function(e){return t.openShareDetailsForCustomSettings(t.share)}}}):t._e()],1),t._v(" "),t.share&&!t.isEmailShareType&&t.share.token?e("NcActions",{ref:"copyButton",staticClass:"sharing-entry__copy"},[e("NcActionButton",{attrs:{title:t.copyLinkTooltip,"aria-label":t.copyLinkTooltip},on:{click:function(e){return e.preventDefault(),t.copyLink.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.copied&&t.copySuccess?e("CheckIcon",{staticClass:"icon-checkmark-color",attrs:{size:20}}):e("ClipboardIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,4269614823)})],1):t._e()],1),t._v(" "),!t.pending&&t.pendingDataIsMissing?e("NcActions",{staticClass:"sharing-entry__actions",attrs:{"aria-label":t.actionsTooltip,"menu-align":"right",open:t.open},on:{"update:open":function(e){t.open=e},close:t.onCancel}},[t.errors.pending?e("NcActionText",{staticClass:"error",scopedSlots:t._u([{key:"icon",fn:function(){return[e("ErrorIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,1966124155)},[t._v("\n\t\t\t"+t._s(t.errors.pending)+"\n\t\t")]):e("NcActionText",{attrs:{icon:"icon-info"}},[t._v("\n\t\t\t"+t._s(t.t("files_sharing","Please enter the following required information before creating the share"))+"\n\t\t")]),t._v(" "),t.pendingPassword?e("NcActionCheckbox",{staticClass:"share-link-password-checkbox",attrs:{checked:t.isPasswordProtected,disabled:t.config.enforcePasswordForPublicLink||t.saving},on:{"update:checked":function(e){t.isPasswordProtected=e},uncheck:t.onPasswordDisable}},[t._v("\n\t\t\t"+t._s(t.config.enforcePasswordForPublicLink?t.t("files_sharing","Password protection (enforced)"):t.t("files_sharing","Password protection"))+"\n\t\t")]):t._e(),t._v(" "),t.pendingEnforcedPassword||t.share.password?e("NcActionInput",{staticClass:"share-link-password",attrs:{label:t.t("files_sharing","Enter a password"),value:t.share.password,disabled:t.saving,required:t.config.enableLinkPasswordByDefault||t.config.enforcePasswordForPublicLink,minlength:t.isPasswordPolicyEnabled&&t.config.passwordPolicy.minLength,autocomplete:"new-password"},on:{"update:value":function(e){return t.$set(t.share,"password",e)},submit:function(e){return t.onNewLinkShare(!0)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("LockIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2056568168)}):t._e(),t._v(" "),t.pendingDefaultExpirationDate?e("NcActionCheckbox",{staticClass:"share-link-expiration-date-checkbox",attrs:{checked:t.defaultExpirationDateEnabled,disabled:t.pendingEnforcedExpirationDate||t.saving},on:{"update:checked":function(e){t.defaultExpirationDateEnabled=e},change:t.onDefaultExpirationDateEnabledChange}},[t._v("\n\t\t\t"+t._s(t.config.enforcePasswordForPublicLink?t.t("files_sharing","Enable link expiration (enforced)"):t.t("files_sharing","Enable link expiration"))+"\n\t\t")]):t._e(),t._v(" "),(t.pendingDefaultExpirationDate||t.pendingEnforcedExpirationDate)&&t.defaultExpirationDateEnabled?e("NcActionInput",{staticClass:"share-link-expire-date",attrs:{label:t.pendingEnforcedExpirationDate?t.t("files_sharing","Enter expiration date (enforced)"):t.t("files_sharing","Enter expiration date"),disabled:t.saving,"is-native-picker":!0,"hide-label":!0,value:new Date(t.share.expireDate),type:"date",min:t.dateTomorrow,max:t.maxExpirationDateEnforced},on:{input:function(e){t.onExpirationChange}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("IconCalendarBlank",{attrs:{size:20}})]},proxy:!0}],null,!1,3418578971)}):t._e(),t._v(" "),e("NcActionButton",{on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onNewLinkShare(!0)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CheckIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2630571749)},[t._v("\n\t\t\t"+t._s(t.t("files_sharing","Create share"))+"\n\t\t")]),t._v(" "),e("NcActionButton",{on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onCancel.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CloseIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2428343285)},[t._v("\n\t\t\t"+t._s(t.t("files_sharing","Cancel"))+"\n\t\t")])],1):t.loading?e("div",{staticClass:"icon-loading-small sharing-entry__loading"}):e("NcActions",{staticClass:"sharing-entry__actions",attrs:{"aria-label":t.actionsTooltip,"menu-align":"right",open:t.open},on:{"update:open":function(e){t.open=e},close:t.onMenuClose}},[t.share?[t.share.canEdit&&t.canReshare?[e("NcActionButton",{attrs:{disabled:t.saving,"close-after-click":!0},on:{click:function(e){return e.preventDefault(),t.openSharingDetails.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Tune",{attrs:{size:20}})]},proxy:!0}],null,!1,1300586850)},[t._v("\n\t\t\t\t\t"+t._s(t.t("files_sharing","Customize link"))+"\n\t\t\t\t")])]:t._e(),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){e.preventDefault(),t.showQRCode=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("IconQr",{attrs:{size:20}})]},proxy:!0}],null,!1,1082198240)},[t._v("\n\t\t\t\t"+t._s(t.t("files_sharing","Generate QR code"))+"\n\t\t\t")]),t._v(" "),e("NcActionSeparator"),t._v(" "),t._l(t.externalLinkActions,(function(i){return e("ExternalShareAction",{key:i.id,attrs:{id:i.id,action:i,"file-info":t.fileInfo,share:t.share}})})),t._v(" "),t._l(t.externalLegacyLinkActions,(function(i,n){let{icon:r,url:a,name:s}=i;return e("NcActionLink",{key:n,attrs:{href:a(t.shareLink),icon:r,target:"_blank"}},[t._v("\n\t\t\t\t"+t._s(s)+"\n\t\t\t")])})),t._v(" "),!t.isEmailShareType&&t.canReshare?e("NcActionButton",{staticClass:"new-share-link",on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onNewLinkShare.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("PlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2953566425)},[t._v("\n\t\t\t\t"+t._s(t.t("files_sharing","Add another link"))+"\n\t\t\t")]):t._e(),t._v(" "),t.share.canDelete?e("NcActionButton",{attrs:{disabled:t.saving},on:{click:function(e){return e.preventDefault(),t.onDelete.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CloseIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2428343285)},[t._v("\n\t\t\t\t"+t._s(t.t("files_sharing","Unshare"))+"\n\t\t\t")]):t._e()]:t.canReshare?e("NcActionButton",{staticClass:"new-share-link",attrs:{title:t.t("files_sharing","Create a new share link"),"aria-label":t.t("files_sharing","Create a new share link"),icon:t.loading?"icon-loading-small":"icon-add"},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onNewLinkShare.apply(null,arguments)}}}):t._e()],2),t._v(" "),t.showQRCode?e("NcDialog",{attrs:{size:"normal",open:t.showQRCode,name:t.title,"close-on-click-outside":!0},on:{"update:open":function(e){t.showQRCode=e},close:function(e){t.showQRCode=!1}}},[e("div",{staticClass:"qr-code-dialog"},[e("VueQrcode",{staticClass:"qr-code-dialog__img",attrs:{tag:"img",value:t.shareLink}})],1)]):t._e()],1)}),[],!1,null,"3e048372",null).exports},mixins:[Lt],props:{fileInfo:{type:Object,default:()=>{},required:!0},shares:{type:Array,default:()=>[],required:!0},canReshare:{type:Boolean,required:!0}},data:()=>({canLinkShare:(0,st.F)().files_sharing.public.enabled}),computed:{hasLinkShares(){return this.shares.filter((t=>t.type===rt.I.Link)).length>0},hasShares(){return this.shares.length>0}},methods:{addShare(t,e){this.shares.push(t),this.awaitForShare(t,e)},awaitForShare(t,e){this.$nextTick((()=>{const i=this.$children.find((e=>e.share===t));i&&e(i)}))},removeShare(t){const e=this.shares.findIndex((e=>e===t));this.shares.splice(e,1)}}},$e=(0,dt.A)(We,(function(){var t=this,e=t._self._c;return t.canLinkShare?e("ul",{staticClass:"sharing-link-list"},[!t.hasLinkShares&&t.canReshare?e("SharingEntryLink",{attrs:{"can-reshare":t.canReshare,"file-info":t.fileInfo},on:{"add:share":t.addShare}}):t._e(),t._v(" "),t.hasShares?t._l(t.shares,(function(i,n){return e("SharingEntryLink",{key:i.id,attrs:{index:t.shares.length>1?n+1:null,"can-reshare":t.canReshare,share:t.shares[n],"file-info":t.fileInfo},on:{"update:share":[function(e){return t.$set(t.shares,n,e)},function(e){return t.awaitForShare(...arguments)}],"add:share":function(e){return t.addShare(...arguments)},"remove:share":t.removeShare,"open-sharing-details":function(e){return t.openSharingDetails(i)}}})})):t._e()],2):t._e()}),[],!1,null,null,null).exports;var Ye=n(18740);const Ge={name:"DotsHorizontalIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Qe=(0,dt.A)(Ge,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon dots-horizontal-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Ke={name:"SharingEntry",components:{NcButton:Ye.A,NcAvatar:v.A,DotsHorizontalIcon:Qe,NcSelect:y.A,SharingEntryQuickShareSelect:Ue},mixins:[Jt,Lt],computed:{title(){let e=this.share.shareWithDisplayName;return this.share.type===rt.I.Group?e+=" (".concat(t("files_sharing","group"),")"):this.share.type===rt.I.Room?e+=" (".concat(t("files_sharing","conversation"),")"):this.share.type===rt.I.Remote?e+=" (".concat(t("files_sharing","remote"),")"):this.share.type===rt.I.RemoteGroup?e+=" (".concat(t("files_sharing","remote group"),")"):this.share.type===rt.I.Guest&&(e+=" (".concat(t("files_sharing","guest"),")")),e},tooltip(){if(this.share.owner!==this.share.uidFileOwner){const e={user:this.share.shareWithDisplayName,owner:this.share.ownerDisplayName};return this.share.type===rt.I.Group?t("files_sharing","Shared with the group {user} by {owner}",e):this.share.type===rt.I.Room?t("files_sharing","Shared with the conversation {user} by {owner}",e):t("files_sharing","Shared with {user} by {owner}",e)}return null},hasStatus(){return this.share.type===rt.I.User&&"object"==typeof this.share.status&&!Array.isArray(this.share.status)}},methods:{onMenuClose(){this.onNoteSubmit()}}};var Ze=n(44553),Je={};Je.styleTagTransform=g(),Je.setAttributes=u(),Je.insert=c().bind(null,"head"),Je.domAPI=o(),Je.insertStyleElement=p(),a()(Ze.A,Je),Ze.A&&Ze.A.locals&&Ze.A.locals;const Xe={name:"SharingList",components:{SharingEntry:(0,dt.A)(Ke,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"sharing-entry"},[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{"is-no-user":t.share.type!==t.ShareType.User,user:t.share.shareWith,"display-name":t.share.shareWithDisplayName,"menu-position":"left",url:t.share.shareWithAvatar}}),t._v(" "),e("div",{staticClass:"sharing-entry__summary"},[e(t.share.shareWithLink?"a":"div",{tag:"component",staticClass:"sharing-entry__summary__desc",attrs:{title:t.tooltip,"aria-label":t.tooltip,href:t.share.shareWithLink}},[e("span",[t._v(t._s(t.title)+"\n\t\t\t\t"),t.isUnique?t._e():e("span",{staticClass:"sharing-entry__summary__desc-unique"},[t._v(" ("+t._s(t.share.shareWithDisplayNameUnique)+")")]),t._v(" "),t.hasStatus&&t.share.status.message?e("small",[t._v("("+t._s(t.share.status.message)+")")]):t._e()])]),t._v(" "),e("SharingEntryQuickShareSelect",{attrs:{share:t.share,"file-info":t.fileInfo},on:{"open-sharing-details":function(e){return t.openShareDetailsForCustomSettings(t.share)}}})],1),t._v(" "),t.share.canEdit?e("NcButton",{staticClass:"sharing-entry__action",attrs:{"data-cy-files-sharing-share-actions":"","aria-label":t.t("files_sharing","Open Sharing Details"),type:"tertiary"},on:{click:function(e){return t.openSharingDetails(t.share)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("DotsHorizontalIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,1700783217)}):t._e()],1)}),[],!1,null,"172dde79",null).exports},mixins:[Lt],props:{fileInfo:{type:Object,default:()=>{},required:!0},shares:{type:Array,default:()=>[],required:!0}},computed:{hasShares(){return 0===this.shares.length},isUnique(){return t=>[...this.shares].filter((e=>t.type===rt.I.User&&t.shareWithDisplayName===e.shareWithDisplayName)).length<=1}}},ti=(0,dt.A)(Xe,(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"sharing-sharee-list"},t._l(t.shares,(function(i){return e("SharingEntry",{key:i.id,attrs:{"file-info":t.fileInfo,share:i,"is-unique":t.isUnique(i)},on:{"open-sharing-details":function(e){return t.openSharingDetails(i)}}})})),1)}),[],!1,null,null,null).exports;var ei=n(53334),ii=n(63407),ni=n(16044),ri=n(31126),ai=n(32073),si=n(84237);const oi={name:"CircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},li=(0,dt.A)(oi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon circle-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ci={name:"EmailIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},hi=(0,dt.A)(ci,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon email-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var ui=n(36600),di=n(43261);const pi={name:"ShareCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},fi=(0,dt.A)(pi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon share-circle-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,gi={name:"AccountCircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ai=(0,dt.A)(gi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon account-circle-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,mi={name:"EyeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},vi=(0,dt.A)(mi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon eye-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var yi=n(65422),wi=n(25384),Ci=n(33388);const _i={name:"SharingDetailsTab",components:{NcAvatar:v.A,NcButton:Ye.A,NcInputField:ii.A,NcPasswordField:ni.A,NcDateTimePickerNative:ri.A,NcCheckboxRadioSwitch:ai.A,NcLoadingIcon:si.A,CloseIcon:Ee.A,CircleIcon:li,EditIcon:Te.A,ExternalShareAction:Ve,LinkIcon:ui.A,GroupIcon:di.A,ShareIcon:fi,UserIcon:Ai,UploadIcon:yi.A,ViewIcon:vi,MenuDownIcon:wi.A,MenuUpIcon:Ci.A,DotsHorizontalIcon:Qe},mixins:[Nt,Jt],props:{shareRequestValue:{type:Object,required:!1},fileInfo:{type:Object,required:!0},share:{type:Object,required:!0}},data:()=>({writeNoteToRecipientIsChecked:!1,sharingPermission:Kt.ALL.toString(),revertSharingPermission:Kt.ALL.toString(),setCustomPermissions:!1,passwordError:!1,advancedSectionAccordionExpanded:!1,bundledPermissions:Kt,isFirstComponentLoad:!0,test:!1,creating:!1,ExternalShareActions:OCA.Sharing.ExternalShareActions.state}),computed:{title(){switch(this.share.type){case rt.I.User:return t("files_sharing","Share with {userName}",{userName:this.share.shareWithDisplayName});case rt.I.Email:return t("files_sharing","Share with email {email}",{email:this.share.shareWith});case rt.I.Link:return t("files_sharing","Share link");case rt.I.Group:return t("files_sharing","Share with group");case rt.I.Room:return t("files_sharing","Share in conversation");case rt.I.Remote:{const[e,i]=this.share.shareWith.split("@");return t("files_sharing","Share with {user} on remote server {server}",{user:e,server:i})}case rt.I.RemoteGroup:return t("files_sharing","Share with remote group");case rt.I.Guest:return t("files_sharing","Share with guest");default:return this.share.id?t("files_sharing","Update share"):t("files_sharing","Create share")}},canEdit:{get(){return this.share.hasUpdatePermission},set(t){this.updateAtomicPermissions({isEditChecked:t})}},canCreate:{get(){return this.share.hasCreatePermission},set(t){this.updateAtomicPermissions({isCreateChecked:t})}},canDelete:{get(){return this.share.hasDeletePermission},set(t){this.updateAtomicPermissions({isDeleteChecked:t})}},canReshare:{get(){return this.share.hasSharePermission},set(t){this.updateAtomicPermissions({isReshareChecked:t})}},canDownload:{get(){var t;return(null===(t=this.share.attributes.find((t=>"download"===t.key)))||void 0===t?void 0:t.enabled)||!1},set(t){const e=this.share.attributes.find((t=>"download"===t.key));e&&(e.enabled=t)}},hasRead:{get(){return this.share.hasReadPermission},set(t){this.updateAtomicPermissions({isReadChecked:t})}},hasExpirationDate:{get(){return this.isValidShareAttribute(this.share.expireDate)},set(t){this.share.expireDate=t?this.formatDateToString(this.defaultExpiryDate):""}},isPasswordProtected:{get(){return this.config.enforcePasswordForPublicLink||!!this.share.password},async set(t){t?(this.share.password=await Tt(),this.$set(this.share,"newPassword",this.share.password)):(this.share.password="",this.$delete(this.share,"newPassword"))}},isFolder(){return"dir"===this.fileInfo.type},isSetDownloadButtonVisible(){return this.isFolder||["application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation"].includes(this.fileInfo.mimetype)},isPasswordEnforced(){return this.isPublicShare&&this.config.enforcePasswordForPublicLink},defaultExpiryDate(){return(this.isGroupShare||this.isUserShare)&&this.config.isDefaultInternalExpireDateEnabled?new Date(this.config.defaultInternalExpirationDate):this.isRemoteShare&&this.config.isDefaultRemoteExpireDateEnabled?new Date(this.config.defaultRemoteExpireDateEnabled):this.isPublicShare&&this.config.isDefaultExpireDateEnabled?new Date(this.config.defaultExpirationDate):new Date((new Date).setDate((new Date).getDate()+1))},isUserShare(){return this.share.type===rt.I.User},isGroupShare(){return this.share.type===rt.I.Group},isNewShare(){return!this.share.id},allowsFileDrop(){return!(!this.isFolder||!this.config.isPublicUploadEnabled||this.share.type!==rt.I.Link&&this.share.type!==rt.I.Email)},hasFileDropPermissions(){return this.share.permissions===this.bundledPermissions.FILE_DROP},shareButtonText(){return this.isNewShare?t("files_sharing","Save share"):t("files_sharing","Update share")},canSetEdit(){return this.fileInfo.sharePermissions&OC.PERMISSION_UPDATE||this.canEdit},canSetCreate(){return this.fileInfo.sharePermissions&OC.PERMISSION_CREATE||this.canCreate},canSetDelete(){return this.fileInfo.sharePermissions&OC.PERMISSION_DELETE||this.canDelete},canSetReshare(){return this.fileInfo.sharePermissions&OC.PERMISSION_SHARE||this.canReshare},canSetDownload(){return this.fileInfo.canDownload()||this.canDownload},canRemoveReadPermission(){return this.allowsFileDrop&&(this.share.type===rt.I.Link||this.share.type===rt.I.Email)},hasUnsavedPassword(){return void 0!==this.share.newPassword},passwordExpirationTime(){if(!this.isValidShareAttribute(this.share.passwordExpirationTime))return null;const t=moment(this.share.passwordExpirationTime);return!(t.diff(moment())<0)&&t.fromNow()},isTalkEnabled:()=>void 0!==OC.appswebroots.spreed,isPasswordProtectedByTalkAvailable(){return this.isPasswordProtected&&this.isTalkEnabled},isPasswordProtectedByTalk:{get(){return this.share.sendPasswordByTalk},async set(t){this.share.sendPasswordByTalk=t}},isEmailShareType(){return!!this.share&&this.share.type===rt.I.Email},canTogglePasswordProtectedByTalkAvailable(){return!(!this.isPublicShare||!this.isPasswordProtected||this.isEmailShareType&&!this.hasUnsavedPassword||void 0===OC.appswebroots.spreed)},canChangeHideDownload(){return this.fileInfo.shareAttributes.some((t=>"download"===t.key&&"permissions"===t.scope&&!1===t.enabled))},customPermissionsList(){const t={[Qt.READ]:this.t("files_sharing","Read"),[Qt.CREATE]:this.t("files_sharing","Create"),[Qt.UPDATE]:this.t("files_sharing","Edit"),[Qt.SHARE]:this.t("files_sharing","Share"),[Qt.DELETE]:this.t("files_sharing","Delete")};return[Qt.READ,Qt.CREATE,Qt.UPDATE,Qt.SHARE,Qt.DELETE].filter((t=>{return e=this.share.permissions,i=t,e!==Qt.NONE&&(e&i)===i;var e,i})).map(((e,i)=>0===i?t[e]:t[e].toLocaleLowerCase((0,ei.Z0)()))).join(", ")},advancedControlExpandedValue(){return this.advancedSectionAccordionExpanded?"true":"false"},errorPasswordLabel(){if(this.passwordError)return t("files_sharing","Password field can't be empty")},passwordHint(){if(!this.isNewShare&&!this.hasUnsavedPassword)return t("files_sharing","Replace current password")},externalLinkActions(){return this.ExternalShareActions.actions.filter((t=>(t.shareType.includes(rt.I.SHARE_TYPE_LINK)||t.shareType.includes(rt.I.SHARE_TYPE_EMAIL))&&t.advanced))}},watch:{setCustomPermissions(t){this.sharingPermission=t?"custom":this.revertSharingPermission}},beforeMount(){this.initializePermissions(),this.initializeAttributes(),Gt.debug("Share object received",{share:this.share}),Gt.debug("Configuration object received",{config:this.config})},mounted(){var t;null===(t=this.$refs.quickPermissions)||void 0===t||null===(t=t.querySelector("input:checked"))||void 0===t||t.focus()},methods:{updateAtomicPermissions(){let{isReadChecked:t=this.hasRead,isEditChecked:e=this.canEdit,isCreateChecked:i=this.canCreate,isDeleteChecked:n=this.canDelete,isReshareChecked:r=this.canReshare}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const a=0|(t?Qt.READ:0)|(i?Qt.CREATE:0)|(n?Qt.DELETE:0)|(e?Qt.UPDATE:0)|(r?Qt.SHARE:0);this.share.permissions=a},expandCustomPermissions(){this.advancedSectionAccordionExpanded||(this.advancedSectionAccordionExpanded=!0),this.toggleCustomPermissions()},toggleCustomPermissions(t){const e="custom"===this.sharingPermission;this.revertSharingPermission=e?"custom":t,this.setCustomPermissions=e},async initializeAttributes(){if(this.isNewShare)return this.isPasswordEnforced&&this.isPublicShare&&(this.$set(this.share,"newPassword",await Tt()),this.advancedSectionAccordionExpanded=!0),this.isPublicShare&&this.config.isDefaultExpireDateEnabled?this.share.expireDate=this.config.defaultExpirationDate.toDateString():this.isRemoteShare&&this.config.isDefaultRemoteExpireDateEnabled?this.share.expireDate=this.config.defaultRemoteExpirationDateString.toDateString():this.config.isDefaultInternalExpireDateEnabled&&(this.share.expireDate=this.config.defaultInternalExpirationDate.toDateString()),void(this.isValidShareAttribute(this.share.expireDate)&&(this.advancedSectionAccordionExpanded=!0));!this.isValidShareAttribute(this.share.expireDate)&&this.isExpiryDateEnforced&&(this.hasExpirationDate=!0),(this.isValidShareAttribute(this.share.password)||this.isValidShareAttribute(this.share.expireDate)||this.isValidShareAttribute(this.share.label))&&(this.advancedSectionAccordionExpanded=!0)},handleShareType(){"shareType"in this.share?this.share.type=this.share.shareType:this.share.share_type&&(this.share.type=this.share.share_type)},handleDefaultPermissions(){if(this.isNewShare){const t=this.config.defaultPermissions;t===Kt.READ_ONLY||t===Kt.ALL?this.sharingPermission=t.toString():(this.sharingPermission="custom",this.share.permissions=t,this.advancedSectionAccordionExpanded=!0,this.setCustomPermissions=!0)}this.canRemoveReadPermission||(this.hasRead=!0)},handleCustomPermissions(){this.isNewShare||!this.hasCustomPermissions&&!this.share.setCustomPermissions?this.share.permissions&&(this.sharingPermission=this.share.permissions.toString()):(this.sharingPermission="custom",this.advancedSectionAccordionExpanded=!0,this.setCustomPermissions=!0)},initializePermissions(){this.handleShareType(),this.handleDefaultPermissions(),this.handleCustomPermissions()},async saveShare(){var t;const e=["permissions","attributes","note","expireDate"];this.isPublicShare&&e.push("label","password","hideDownload");const i=parseInt(this.sharingPermission);if(this.setCustomPermissions?this.updateAtomicPermissions():this.share.permissions=i,this.isFolder||this.share.permissions!==Kt.ALL||(this.share.permissions=Kt.ALL_FILE),this.writeNoteToRecipientIsChecked||(this.share.note=""),this.isPasswordProtected?this.hasUnsavedPassword&&this.isValidShareAttribute(this.share.newPassword)?(this.share.password=this.share.newPassword,this.$delete(this.share,"newPassword")):this.isPasswordEnforced&&this.isNewShare&&!this.isValidShareAttribute(this.share.password)&&(this.passwordError=!0):this.share.password="",this.hasExpirationDate||(this.share.expireDate=""),this.isNewShare){const t={permissions:this.share.permissions,shareType:this.share.type,shareWith:this.share.shareWith,attributes:this.share.attributes,note:this.share.note,fileInfo:this.fileInfo};t.expireDate=this.hasExpirationDate?this.share.expireDate:"",this.isPasswordProtected&&(t.password=this.share.password),this.creating=!0;const e=await this.addShare(t);this.creating=!1,this.share=e,this.$emit("add:share",this.share)}else this.$emit("update:share",this.share),this.queueUpdate(...e);await this.getNode(),(0,Pt.Ic)("files:node:updated",this.node),(null===(t=this.$refs.externalLinkActions)||void 0===t?void 0:t.length)>0&&await Promise.allSettled(this.$refs.externalLinkActions.map((t=>{var e,i,n;return"function"!=typeof(null===(e=t.$children.at(0))||void 0===e?void 0:e.onSave)?Promise.resolve():null===(i=t.$children.at(0))||void 0===i||null===(n=i.onSave)||void 0===n?void 0:n.call(i)}))),this.$emit("close-sharing-details")},async addShare(t){Gt.debug("Adding a new share from the input for",{share:t});const e=this.path;try{return await this.createShare({path:e,shareType:t.shareType,shareWith:t.shareWith,permissions:t.permissions,expireDate:t.expireDate,attributes:JSON.stringify(t.attributes),...t.note?{note:t.note}:{},...t.password?{password:t.password}:{}})}catch(t){Gt.error("Error while adding new share",{error:t})}},async removeShare(){await this.onDelete(),await this.getNode(),(0,Pt.Ic)("files:node:updated",this.node),this.$emit("close-sharing-details")},onPasswordChange(t){if(""===t)return this.$delete(this.share,"newPassword"),void(this.passwordError=this.isNewShare&&this.isPasswordEnforced);this.passwordError=!this.isValidShareAttribute(t),this.$set(this.share,"newPassword",t)},onPasswordProtectedByTalkChange(){this.hasUnsavedPassword&&(this.share.password=this.share.newPassword.trim()),this.queueUpdate("sendPasswordByTalk","password")},isValidShareAttribute:t=>![null,void 0].includes(t)&&t.trim().length>0,getShareTypeIcon(t){switch(t){case rt.I.Link:return ui.A;case rt.I.Guest:return Ai;case rt.I.RemoteGroup:case rt.I.Group:return di.A;case rt.I.Email:return hi;case rt.I.Team:return li;case rt.I.Room:case rt.I.Deck:case rt.I.ScienceMesh:return fi;default:return null}}}};var bi=n(16581),Ei={};Ei.styleTagTransform=g(),Ei.setAttributes=u(),Ei.insert=c().bind(null,"head"),Ei.domAPI=o(),Ei.insertStyleElement=p(),a()(bi.A,Ei),bi.A&&bi.A.locals&&bi.A.locals;const xi=(0,dt.A)(_i,(function(){var t,e=this,i=e._self._c;return i("div",{staticClass:"sharingTabDetailsView"},[i("div",{staticClass:"sharingTabDetailsView__header"},[i("span",[e.isUserShare?i("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{"is-no-user":e.share.shareType!==e.ShareType.User,user:e.share.shareWith,"display-name":e.share.shareWithDisplayName,"menu-position":"left",url:e.share.shareWithAvatar}}):e._e(),e._v(" "),i(e.getShareTypeIcon(e.share.type),{tag:"component",attrs:{size:32}})],1),e._v(" "),i("span",[i("h1",[e._v(e._s(e.title))])])]),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__wrapper"},[i("div",{ref:"quickPermissions",staticClass:"sharingTabDetailsView__quick-permissions"},[i("div",[i("NcCheckboxRadioSwitch",{attrs:{"button-variant":!0,"data-cy-files-sharing-share-permissions-bundle":"read-only",checked:e.sharingPermission,value:e.bundledPermissions.READ_ONLY.toString(),name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.toggleCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("ViewIcon",{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","View only"))+"\n\t\t\t\t\t")]),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{"button-variant":!0,"data-cy-files-sharing-share-permissions-bundle":"upload-edit",checked:e.sharingPermission,value:e.bundledPermissions.ALL.toString(),name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.toggleCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("EditIcon",{attrs:{size:20}})]},proxy:!0}])},[e.allowsFileDrop?[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Allow upload and editing"))+"\n\t\t\t\t\t")]:[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Allow editing"))+"\n\t\t\t\t\t")]],2),e._v(" "),e.allowsFileDrop?i("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-sharing-share-permissions-bundle":"file-drop","button-variant":!0,checked:e.sharingPermission,value:e.bundledPermissions.FILE_DROP.toString(),name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.toggleCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("UploadIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,1083194048)},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","File drop"))+"\n\t\t\t\t\t"),i("small",{staticClass:"subline"},[e._v(e._s(e.t("files_sharing","Upload only")))])]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{"button-variant":!0,"data-cy-files-sharing-share-permissions-bundle":"custom",checked:e.sharingPermission,value:"custom",name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.expandCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("DotsHorizontalIcon",{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Custom permissions"))+"\n\t\t\t\t\t"),i("small",{staticClass:"subline"},[e._v(e._s(e.customPermissionsList))])])],1)]),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__advanced-control"},[i("NcButton",{attrs:{id:"advancedSectionAccordionAdvancedControl",type:"tertiary",alignment:"end-reverse","aria-controls":"advancedSectionAccordionAdvanced","aria-expanded":e.advancedControlExpandedValue},on:{click:function(t){e.advancedSectionAccordionExpanded=!e.advancedSectionAccordionExpanded}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.advancedSectionAccordionExpanded?i("MenuUpIcon"):i("MenuDownIcon")]},proxy:!0}])},[e._v("\n\t\t\t\t"+e._s(e.t("files_sharing","Advanced settings"))+"\n\t\t\t\t")])],1),e._v(" "),e.advancedSectionAccordionExpanded?i("div",{staticClass:"sharingTabDetailsView__advanced",attrs:{id:"advancedSectionAccordionAdvanced","aria-labelledby":"advancedSectionAccordionAdvancedControl",role:"region"}},[i("section",[e.isPublicShare?i("NcInputField",{attrs:{autocomplete:"off",label:e.t("files_sharing","Share label"),value:e.share.label},on:{"update:value":function(t){return e.$set(e.share,"label",t)}}}):e._e(),e._v(" "),e.isPublicShare?[i("NcCheckboxRadioSwitch",{attrs:{checked:e.isPasswordProtected,disabled:e.isPasswordEnforced},on:{"update:checked":function(t){e.isPasswordProtected=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Set password"))+"\n\t\t\t\t\t")]),e._v(" "),e.isPasswordProtected?i("NcPasswordField",{attrs:{autocomplete:"new-password",value:e.hasUnsavedPassword?e.share.newPassword:"",error:e.passwordError,"helper-text":e.errorPasswordLabel||e.passwordHint,required:e.isPasswordEnforced&&e.isNewShare,label:e.t("files_sharing","Password")},on:{"update:value":e.onPasswordChange}}):e._e(),e._v(" "),e.isEmailShareType&&e.passwordExpirationTime?i("span",{attrs:{icon:"icon-info"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Password expires {passwordExpirationTime}",{passwordExpirationTime:e.passwordExpirationTime}))+"\n\t\t\t\t\t")]):e.isEmailShareType&&null!==e.passwordExpirationTime?i("span",{attrs:{icon:"icon-error"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Password expired"))+"\n\t\t\t\t\t")]):e._e()]:e._e(),e._v(" "),e.canTogglePasswordProtectedByTalkAvailable?i("NcCheckboxRadioSwitch",{attrs:{checked:e.isPasswordProtectedByTalk},on:{"update:checked":[function(t){e.isPasswordProtectedByTalk=t},e.onPasswordProtectedByTalkChange]}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Video verification"))+"\n\t\t\t\t")]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{checked:e.hasExpirationDate,disabled:e.isExpiryDateEnforced},on:{"update:checked":function(t){e.hasExpirationDate=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.isExpiryDateEnforced?e.t("files_sharing","Expiration date (enforced)"):e.t("files_sharing","Set expiration date"))+"\n\t\t\t\t")]),e._v(" "),e.hasExpirationDate?i("NcDateTimePickerNative",{attrs:{id:"share-date-picker",value:new Date(null!==(t=e.share.expireDate)&&void 0!==t?t:e.dateTomorrow),min:e.dateTomorrow,max:e.maxExpirationDateEnforced,"hide-label":"",label:e.t("files_sharing","Expiration date"),placeholder:e.t("files_sharing","Expiration date"),type:"date"},on:{input:e.onExpirationChange}}):e._e(),e._v(" "),e.isPublicShare?i("NcCheckboxRadioSwitch",{attrs:{disabled:e.canChangeHideDownload,checked:e.share.hideDownload},on:{"update:checked":[function(t){return e.$set(e.share,"hideDownload",t)},function(t){return e.queueUpdate("hideDownload")}]}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Hide download"))+"\n\t\t\t\t")]):e._e(),e._v(" "),e.isPublicShare?e._e():i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetDownload,checked:e.canDownload,"data-cy-files-sharing-share-permissions-checkbox":"download"},on:{"update:checked":function(t){e.canDownload=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Allow download"))+"\n\t\t\t\t")]),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{checked:e.writeNoteToRecipientIsChecked},on:{"update:checked":function(t){e.writeNoteToRecipientIsChecked=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Note to recipient"))+"\n\t\t\t\t")]),e._v(" "),e.writeNoteToRecipientIsChecked?[i("label",{attrs:{for:"share-note-textarea"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Enter a note for the share recipient"))+"\n\t\t\t\t\t")]),e._v(" "),i("textarea",{attrs:{id:"share-note-textarea"},domProps:{value:e.share.note},on:{input:function(t){e.share.note=t.target.value}}})]:e._e(),e._v(" "),e._l(e.externalLinkActions,(function(t){return i("ExternalShareAction",{key:t.id,ref:"externalLinkActions",refInFor:!0,attrs:{id:t.id,action:t,"file-info":e.fileInfo,share:e.share}})})),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{checked:e.setCustomPermissions},on:{"update:checked":function(t){e.setCustomPermissions=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Custom permissions"))+"\n\t\t\t\t")]),e._v(" "),e.setCustomPermissions?i("section",{staticClass:"custom-permissions-group"},[i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canRemoveReadPermission,checked:e.hasRead,"data-cy-files-sharing-share-permissions-checkbox":"read"},on:{"update:checked":function(t){e.hasRead=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Read"))+"\n\t\t\t\t\t")]),e._v(" "),e.isFolder?i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetCreate,checked:e.canCreate,"data-cy-files-sharing-share-permissions-checkbox":"create"},on:{"update:checked":function(t){e.canCreate=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Create"))+"\n\t\t\t\t\t")]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetEdit,checked:e.canEdit,"data-cy-files-sharing-share-permissions-checkbox":"update"},on:{"update:checked":function(t){e.canEdit=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Edit"))+"\n\t\t\t\t\t")]),e._v(" "),e.config.isResharingAllowed&&e.share.type!==e.ShareType.Link?i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetReshare,checked:e.canReshare,"data-cy-files-sharing-share-permissions-checkbox":"share"},on:{"update:checked":function(t){e.canReshare=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Share"))+"\n\t\t\t\t\t")]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetDelete,checked:e.canDelete,"data-cy-files-sharing-share-permissions-checkbox":"delete"},on:{"update:checked":function(t){e.canDelete=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Delete"))+"\n\t\t\t\t\t")])],1):e._e(),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__delete"},[e.isNewShare?e._e():i("NcButton",{attrs:{"aria-label":e.t("files_sharing","Delete share"),disabled:!1,readonly:!1,type:"tertiary"},on:{click:function(t){return t.preventDefault(),e.removeShare.apply(null,arguments)}},scopedSlots:e._u([{key:"icon",fn:function(){return[i("CloseIcon",{attrs:{size:16}})]},proxy:!0}],null,!1,2746485232)},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Delete share"))+"\n\t\t\t\t\t")])],1)],2)]):e._e()]),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__footer"},[i("div",{staticClass:"button-group"},[i("NcButton",{attrs:{"data-cy-files-sharing-share-editor-action":"cancel"},on:{click:function(t){return e.$emit("close-sharing-details")}}},[e._v("\n\t\t\t\t"+e._s(e.t("files_sharing","Cancel"))+"\n\t\t\t")]),e._v(" "),i("NcButton",{attrs:{type:"primary","data-cy-files-sharing-share-editor-action":"save"},on:{click:e.saveShare},scopedSlots:e._u([e.creating?{key:"icon",fn:function(){return[i("NcLoadingIcon")]},proxy:!0}:null],null,!0)},[e._v("\n\t\t\t\t"+e._s(e.shareButtonText)+"\n\t\t\t\t")])],1)])])}),[],!1,null,"c452153e",null).exports;var Si=n(96763);const ki={name:"SharingTab",components:{NcAvatar:v.A,CollectionList:it,SharingEntryInternal:Et,SharingEntrySimple:yt,SharingInherited:oe,SharingInput:Ft,SharingLinkList:$e,SharingList:ti,SharingDetailsTab:xi},data:()=>({config:new ot,deleteEvent:null,error:"",expirationInterval:null,loading:!0,fileInfo:null,reshare:null,sharedWithMe:{},shares:[],linkShares:[],sections:OCA.Sharing.ShareTabSections.getSections(),projectsEnabled:(0,at.C)("core","projects_enabled",!1),showSharingDetailsView:!1,shareDetailsData:{},returnFocusElement:null}),computed:{isSharedWithMe(){return Object.keys(this.sharedWithMe).length>0},canReshare(){return!!(this.fileInfo.permissions&OC.PERMISSION_SHARE)||!!(this.reshare&&this.reshare.hasSharePermission&&this.config.isResharingAllowed)}},methods:{async update(t){this.fileInfo=t,this.resetState(),this.getShares()},async getShares(){try{this.loading=!0;const t=(0,nt.KT)("apps/files_sharing/api/v1/shares"),e="json",i=(this.fileInfo.path+"/"+this.fileInfo.name).replace("//","/"),n=$.Ay.get(t,{params:{format:e,path:i,reshares:!0}}),r=$.Ay.get(t,{params:{format:e,path:i,shared_with_me:!0}}),[a,s]=await Promise.all([n,r]);this.loading=!1,this.processSharedWithMe(s),this.processShares(a)}catch(i){var e;null!==(e=i.response.data)&&void 0!==e&&null!==(e=e.ocs)&&void 0!==e&&null!==(e=e.meta)&&void 0!==e&&e.message?this.error=i.response.data.ocs.meta.message:this.error=t("files_sharing","Unable to load the shares list"),this.loading=!1,Si.error("Error loading the shares list",i)}},resetState(){clearInterval(this.expirationInterval),this.loading=!0,this.error="",this.sharedWithMe={},this.shares=[],this.linkShares=[],this.showSharingDetailsView=!1,this.shareDetailsData={}},updateExpirationSubtitle(e){const i=moment(e.expireDate).unix();this.$set(this.sharedWithMe,"subtitle",t("files_sharing","Expires {relativetime}",{relativetime:OC.Util.relativeModifiedDate(1e3*i)})),moment().unix()>i&&(clearInterval(this.expirationInterval),this.$set(this.sharedWithMe,"subtitle",t("files_sharing","this share just expired.")))},processShares(t){let{data:e}=t;if(e.ocs&&e.ocs.data&&e.ocs.data.length>0){const t=e.ocs.data.map((t=>new ct(t))).sort(((t,e)=>e.createdTime-t.createdTime));this.linkShares=t.filter((t=>t.type===rt.I.Link||t.type===rt.I.Email)),this.shares=t.filter((t=>t.type!==rt.I.Link&&t.type!==rt.I.Email)),Si.debug("Processed",this.linkShares.length,"link share(s)"),Si.debug("Processed",this.shares.length,"share(s)")}},processSharedWithMe(e){let{data:i}=e;if(i.ocs&&i.ocs.data&&i.ocs.data[0]){const e=new ct(i),n=function(e){return e.type===rt.I.Group?t("files_sharing","Shared with you and the group {group} by {owner}",{group:e.shareWithDisplayName,owner:e.ownerDisplayName},void 0,{escape:!1}):e.type===rt.I.Team?t("files_sharing","Shared with you and {circle} by {owner}",{circle:e.shareWithDisplayName,owner:e.ownerDisplayName},void 0,{escape:!1}):e.type===rt.I.Room?e.shareWithDisplayName?t("files_sharing","Shared with you and the conversation {conversation} by {owner}",{conversation:e.shareWithDisplayName,owner:e.ownerDisplayName},void 0,{escape:!1}):t("files_sharing","Shared with you in a conversation by {owner}",{owner:e.ownerDisplayName},void 0,{escape:!1}):t("files_sharing","Shared with you by {owner}",{owner:e.ownerDisplayName},void 0,{escape:!1})}(e),r=e.ownerDisplayName,a=e.owner;this.sharedWithMe={displayName:r,title:n,user:a},this.reshare=e,e.expireDate&&moment(e.expireDate).unix()>moment().unix()&&(this.updateExpirationSubtitle(e),this.expirationInterval=setInterval(this.updateExpirationSubtitle,1e4,e))}else this.fileInfo&&void 0!==this.fileInfo.shareOwnerId&&this.fileInfo.shareOwnerId!==OC.currentUser&&(this.sharedWithMe={displayName:this.fileInfo.shareOwner,title:t("files_sharing","Shared with you by {owner}",{owner:this.fileInfo.shareOwner},void 0,{escape:!1}),user:this.fileInfo.shareOwnerId})},addShare(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:()=>{};t.type===rt.I.Email?this.linkShares.unshift(t):this.shares.unshift(t),this.awaitForShare(t,e)},removeShare(t){const e=t.type===rt.I.Email||t.type===rt.I.Link?this.linkShares:this.shares,i=e.findIndex((e=>e.id===t.id));-1!==i&&e.splice(i,1)},awaitForShare(t,e){this.$nextTick((()=>{let i=this.$refs.shareList;t.type===rt.I.Email&&(i=this.$refs.linkShareList);const n=i.$children.find((e=>e.share===t));n&&e(n)}))},toggleShareDetailsView(t){if(!this.showSharingDetailsView)if(Array.from(document.activeElement.classList).some((t=>t.startsWith("action-")))){var e;const t=null===(e=document.activeElement.closest('[role="menu"]'))||void 0===e?void 0:e.id;this.returnFocusElement=document.querySelector('[aria-controls="'.concat(t,'"]'))}else this.returnFocusElement=document.activeElement;t&&(this.shareDetailsData=t),this.showSharingDetailsView=!this.showSharingDetailsView,this.showSharingDetailsView||this.$nextTick((()=>{var t;null===(t=this.returnFocusElement)||void 0===t||t.focus(),this.returnFocusElement=null}))}}},Di=ki;var Ii=n(72127),Ti={};Ti.styleTagTransform=g(),Ti.setAttributes=u(),Ti.insert=c().bind(null,"head"),Ti.domAPI=o(),Ti.insertStyleElement=p(),a()(Ii.A,Ti),Ii.A&&Ii.A.locals&&Ii.A.locals;const Pi=(0,dt.A)(Di,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"sharingTab",class:{"icon-loading":t.loading}},[t.error?e("div",{staticClass:"emptycontent",class:{emptyContentWithSections:t.sections.length>0}},[e("div",{staticClass:"icon icon-error"}),t._v(" "),e("h2",[t._v(t._s(t.error))])]):t._e(),t._v(" "),e("div",{directives:[{name:"show",rawName:"v-show",value:!t.showSharingDetailsView,expression:"!showSharingDetailsView"}],staticClass:"sharingTab__content"},[e("ul",[t.isSharedWithMe?e("SharingEntrySimple",t._b({staticClass:"sharing-entry__reshare",scopedSlots:t._u([{key:"avatar",fn:function(){return[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{user:t.sharedWithMe.user,"display-name":t.sharedWithMe.displayName}})]},proxy:!0}],null,!1,3197855346)},"SharingEntrySimple",t.sharedWithMe,!1)):t._e()],1),t._v(" "),t.loading?t._e():e("SharingInput",{attrs:{"can-reshare":t.canReshare,"file-info":t.fileInfo,"link-shares":t.linkShares,reshare:t.reshare,shares:t.shares},on:{"open-sharing-details":t.toggleShareDetailsView}}),t._v(" "),t.loading?t._e():e("SharingLinkList",{ref:"linkShareList",attrs:{"can-reshare":t.canReshare,"file-info":t.fileInfo,shares:t.linkShares},on:{"open-sharing-details":t.toggleShareDetailsView}}),t._v(" "),t.loading?t._e():e("SharingList",{ref:"shareList",attrs:{shares:t.shares,"file-info":t.fileInfo},on:{"open-sharing-details":t.toggleShareDetailsView}}),t._v(" "),t.canReshare&&!t.loading?e("SharingInherited",{attrs:{"file-info":t.fileInfo}}):t._e(),t._v(" "),e("SharingEntryInternal",{attrs:{"file-info":t.fileInfo}}),t._v(" "),t.projectsEnabled&&t.fileInfo?e("CollectionList",{attrs:{id:"".concat(t.fileInfo.id),type:"file",name:t.fileInfo.name}}):t._e()],1),t._v(" "),t._l(t.sections,(function(i,n){return e("div",{directives:[{name:"show",rawName:"v-show",value:!t.showSharingDetailsView,expression:"!showSharingDetailsView"}],key:n,ref:"section-"+n,refInFor:!0,staticClass:"sharingTab__additionalContent"},[e(i(t.$refs["section-"+n],t.fileInfo),{tag:"component",attrs:{"file-info":t.fileInfo}})],1)})),t._v(" "),t.showSharingDetailsView?e("SharingDetailsTab",{attrs:{"file-info":t.shareDetailsData.fileInfo,share:t.shareDetailsData.share},on:{"close-sharing-details":t.toggleShareDetailsView,"add:share":t.addShare,"remove:share":t.removeShare}}):t._e()],2)}),[],!1,null,"1fa88ab1",null).exports},27518:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M15.4%2016.6L10.8%2012l4.6-4.6L14%206l-6%206%206%206%201.4-1.4z%27/%3e%3c/svg%3e"},27514:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M18.4%207.4L17%206l-6%206%206%206%201.4-1.4-4.6-4.6%204.6-4.6m-6%200L11%206l-6%206%206%206%201.4-1.4L7.8%2012l4.6-4.6z%27/%3e%3c/svg%3e"},79722:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M5.6%207.4L7%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6m6%200L13%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6z%27/%3e%3c/svg%3e"},86886:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M8.6%2016.6l4.6-4.6-4.6-4.6L10%206l6%206-6%206-1.4-1.4z%27/%3e%3c/svg%3e"}}]);
+//# sourceMappingURL=3098-3098.js.map?v=708c5ceed10a77e85209 \ No newline at end of file
diff --git a/dist/5724-5724.js.LICENSE.txt b/dist/3098-3098.js.LICENSE.txt
index ddfe3727c21..ffb872a16cf 100644
--- a/dist/5724-5724.js.LICENSE.txt
+++ b/dist/3098-3098.js.LICENSE.txt
@@ -134,29 +134,6 @@
*/
/**
- * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>
- *
- * @author John Molakvoæ <skjnldsv@protonmail.com>
- * @author Julius Härtl <jus@bitgrid.net>
- *
- * @license AGPL-3.0-or-later
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-/**
* @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
*
* @author John Molakvoæ <skjnldsv@protonmail.com>
diff --git a/dist/3098-3098.js.map b/dist/3098-3098.js.map
new file mode 100644
index 00000000000..090ad77fbae
--- /dev/null
+++ b/dist/3098-3098.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"3098-3098.js?v=708c5ceed10a77e85209","mappings":"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","sources":["webpack:///nextcloud/node_modules/@chenfengyuan/vue-qrcode/dist/vue-qrcode.js","webpack:///nextcloud/node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntry.vue?vue&type=style&index=0&id=172dde79&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryLink.vue?vue&type=style&index=0&id=3e048372&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=f3bc43ce&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingInput.vue?vue&type=style&index=0&id=66b33cc4&prod&lang=scss","webpack:///nextcloud/apps/files_sharing/src/views/SharingDetailsTab.vue?vue&type=style&index=0&id=c452153e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/views/SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/views/SharingTab.vue?vue&type=style&index=0&id=1fa88ab1&prod&scoped=true&lang=scss","webpack:///nextcloud/node_modules/nextcloud-vue-collections/node_modules/@nextcloud/router/dist/index.js","webpack:///nextcloud/node_modules/url-search-params-polyfill/index.js","webpack://nextcloud/./apps/files_sharing/src/views/SharingTab.vue?0ae8","webpack://nextcloud/./node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css?fdca","webpack:///nextcloud/node_modules/lodash-es/isObject.js","webpack:///nextcloud/node_modules/lodash-es/_freeGlobal.js","webpack:///nextcloud/node_modules/lodash-es/_root.js","webpack:///nextcloud/node_modules/lodash-es/now.js","webpack:///nextcloud/node_modules/lodash-es/_trimmedEndIndex.js","webpack:///nextcloud/node_modules/lodash-es/_baseTrim.js","webpack:///nextcloud/node_modules/lodash-es/_Symbol.js","webpack:///nextcloud/node_modules/lodash-es/_getRawTag.js","webpack:///nextcloud/node_modules/lodash-es/_objectToString.js","webpack:///nextcloud/node_modules/lodash-es/_baseGetTag.js","webpack:///nextcloud/node_modules/lodash-es/toNumber.js","webpack:///nextcloud/node_modules/lodash-es/isSymbol.js","webpack:///nextcloud/node_modules/lodash-es/isObjectLike.js","webpack:///nextcloud/node_modules/lodash-es/debounce.js","webpack:///nextcloud/node_modules/nextcloud-vue-collections/dist/index.mjs","webpack:///nextcloud/apps/files_sharing/src/services/ConfigService.js","webpack:///nextcloud/apps/files_sharing/src/models/Share.js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInternal.vue?6c02","webpack:///nextcloud/node_modules/vue-material-design-icons/CheckBold.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CheckBold.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CheckBold.vue?7500","webpack:///nextcloud/node_modules/vue-material-design-icons/CheckBold.vue?vue&type=template&id=5603f41f","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardFlow.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardFlow.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ClipboardFlow.vue?07b2","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardFlow.vue?vue&type=template&id=62186d55","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntrySimple.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntrySimple.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntrySimple.vue?9588","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntrySimple.vue?cb12","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntrySimple.vue?0c02","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInternal.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInternal.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInternal.vue?60fa","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInternal.vue?4c20","webpack://nextcloud/./apps/files_sharing/src/components/SharingInput.vue?65df","webpack:///nextcloud/apps/files_sharing/src/utils/GeneratePassword.js","webpack:///nextcloud/apps/files_sharing/src/mixins/ShareRequests.js","webpack:///nextcloud/apps/files_sharing/src/mixins/ShareDetails.js","webpack:///nextcloud/apps/files_sharing/src/components/SharingInput.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingInput.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingInput.vue?dbbe","webpack://nextcloud/./apps/files_sharing/src/components/SharingInput.vue?3d7c","webpack://nextcloud/./apps/files_sharing/src/views/SharingInherited.vue?45a6","webpack:///nextcloud/apps/files_sharing/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files_sharing/src/services/logger.ts","webpack:///nextcloud/apps/files_sharing/src/lib/SharePermissionsToolBox.js","webpack:///nextcloud/apps/files_sharing/src/mixins/SharesMixin.js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInherited.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInherited.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInherited.vue?c7aa","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInherited.vue?0e5a","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInherited.vue?77d5","webpack:///nextcloud/apps/files_sharing/src/views/SharingInherited.vue","webpack:///nextcloud/apps/files_sharing/src/views/SharingInherited.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/views/SharingInherited.vue?6882","webpack://nextcloud/./apps/files_sharing/src/views/SharingInherited.vue?1677","webpack://nextcloud/./apps/files_sharing/src/views/SharingLinkList.vue?de0b","webpack:///nextcloud/node_modules/vue-material-design-icons/Tune.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Tune.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Tune.vue?7202","webpack:///nextcloud/node_modules/vue-material-design-icons/Tune.vue?vue&type=template&id=18d04e6a","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlank.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlank.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/CalendarBlank.vue?3d12","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlank.vue?vue&type=template&id=41fe7db9","webpack:///nextcloud/node_modules/vue-material-design-icons/Qrcode.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Qrcode.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Qrcode.vue?b80a","webpack:///nextcloud/node_modules/vue-material-design-icons/Qrcode.vue?vue&type=template&id=aba87788","webpack:///nextcloud/node_modules/vue-material-design-icons/Exclamation.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Exclamation.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Exclamation.vue?46e6","webpack:///nextcloud/node_modules/vue-material-design-icons/Exclamation.vue?vue&type=template&id=03239926","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Lock.vue?93ae","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue?vue&type=template&id=6d856da2","webpack:///nextcloud/node_modules/vue-material-design-icons/TriangleSmallDown.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/TriangleSmallDown.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/TriangleSmallDown.vue?8651","webpack:///nextcloud/node_modules/vue-material-design-icons/TriangleSmallDown.vue?vue&type=template&id=1eed3dd9","webpack:///nextcloud/node_modules/vue-material-design-icons/EyeOutline.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/EyeOutline.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/EyeOutline.vue?9ce8","webpack:///nextcloud/node_modules/vue-material-design-icons/EyeOutline.vue?vue&type=template&id=e26de6f6","webpack:///nextcloud/node_modules/vue-material-design-icons/FileUpload.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FileUpload.vue?c468","webpack:///nextcloud/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=caa55e94","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?bc47","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?4441","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?0b36","webpack:///nextcloud/apps/files_sharing/src/components/ExternalShareAction.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/ExternalShareAction.vue","webpack://nextcloud/./apps/files_sharing/src/components/ExternalShareAction.vue?9bf3","webpack://nextcloud/./apps/files_sharing/src/components/ExternalShareAction.vue?82b4","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryLink.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryLink.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryLink.vue?6cfd","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryLink.vue?af90","webpack:///nextcloud/apps/files_sharing/src/views/SharingLinkList.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/views/SharingLinkList.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryLink.vue?64e9","webpack://nextcloud/./apps/files_sharing/src/views/SharingLinkList.vue?a70b","webpack://nextcloud/./apps/files_sharing/src/views/SharingList.vue?e340","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/DotsHorizontal.vue?c5a1","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=a8ba8946","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntry.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntry.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntry.vue?4c0d","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntry.vue?10a7","webpack:///nextcloud/apps/files_sharing/src/views/SharingList.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/views/SharingList.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntry.vue?f8d7","webpack://nextcloud/./apps/files_sharing/src/views/SharingList.vue?9f9c","webpack://nextcloud/./apps/files_sharing/src/views/SharingDetailsTab.vue?7f2e","webpack:///nextcloud/node_modules/vue-material-design-icons/CircleOutline.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CircleOutline.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CircleOutline.vue?68bc","webpack:///nextcloud/node_modules/vue-material-design-icons/CircleOutline.vue?vue&type=template&id=c013567c","webpack:///nextcloud/node_modules/vue-material-design-icons/Email.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Email.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Email.vue?3953","webpack:///nextcloud/node_modules/vue-material-design-icons/Email.vue?vue&type=template&id=7dd7f6aa","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareCircle.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareCircle.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ShareCircle.vue?a1b2","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareCircle.vue?vue&type=template&id=0e958886","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountCircleOutline.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountCircleOutline.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountCircleOutline.vue?a068","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountCircleOutline.vue?vue&type=template&id=5b2fe1de","webpack:///nextcloud/node_modules/vue-material-design-icons/Eye.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Eye.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Eye.vue?157b","webpack:///nextcloud/node_modules/vue-material-design-icons/Eye.vue?vue&type=template&id=4ae2345c","webpack:///nextcloud/apps/files_sharing/src/views/SharingDetailsTab.vue","webpack:///nextcloud/apps/files_sharing/src/views/SharingDetailsTab.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/views/SharingDetailsTab.vue?b38c","webpack://nextcloud/./apps/files_sharing/src/views/SharingDetailsTab.vue?10fc","webpack:///nextcloud/apps/files_sharing/src/views/SharingTab.vue","webpack:///nextcloud/apps/files_sharing/src/utils/SharedWithMe.js","webpack:///nextcloud/apps/files_sharing/src/views/SharingTab.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/views/SharingTab.vue?c432","webpack://nextcloud/./apps/files_sharing/src/views/SharingTab.vue?6997"],"sourcesContent":["/*!\n * vue-qrcode v1.0.2\n * https://fengyuanchen.github.io/vue-qrcode\n *\n * Copyright 2018-present Chen Fengyuan\n * Released under the MIT license\n *\n * Date: 2020-01-18T06:04:33.222Z\n */\n\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global = global || self, global.VueQrcode = factory());\n}(this, (function () { 'use strict';\n\n\tfunction commonjsRequire () {\n\t\tthrow new Error('Dynamic requires are not currently supported by rollup-plugin-commonjs');\n\t}\n\n\tfunction createCommonjsModule(fn, module) {\n\t\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n\t}\n\n\tvar qrcode = createCommonjsModule(function (module, exports) {\n\t(function(f){{module.exports=f();}})(function(){return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof commonjsRequire&&commonjsRequire;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t);}return n[i].exports}for(var u=\"function\"==typeof commonjsRequire&&commonjsRequire,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){\n\t// can-promise has a crash in some versions of react native that dont have\n\t// standard global objects\n\t// https://github.com/soldair/node-qrcode/issues/157\n\n\tmodule.exports = function () {\n\t return typeof Promise === 'function' && Promise.prototype && Promise.prototype.then\n\t};\n\n\t},{}],2:[function(require,module,exports){\n\t/**\n\t * Alignment pattern are fixed reference pattern in defined positions\n\t * in a matrix symbology, which enables the decode software to re-synchronise\n\t * the coordinate mapping of the image modules in the event of moderate amounts\n\t * of distortion of the image.\n\t *\n\t * Alignment patterns are present only in QR Code symbols of version 2 or larger\n\t * and their number depends on the symbol version.\n\t */\n\n\tvar getSymbolSize = require('./utils').getSymbolSize;\n\n\t/**\n\t * Calculate the row/column coordinates of the center module of each alignment pattern\n\t * for the specified QR Code version.\n\t *\n\t * The alignment patterns are positioned symmetrically on either side of the diagonal\n\t * running from the top left corner of the symbol to the bottom right corner.\n\t *\n\t * Since positions are simmetrical only half of the coordinates are returned.\n\t * Each item of the array will represent in turn the x and y coordinate.\n\t * @see {@link getPositions}\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of coordinate\n\t */\n\texports.getRowColCoords = function getRowColCoords (version) {\n\t if (version === 1) return []\n\n\t var posCount = Math.floor(version / 7) + 2;\n\t var size = getSymbolSize(version);\n\t var intervals = size === 145 ? 26 : Math.ceil((size - 13) / (2 * posCount - 2)) * 2;\n\t var positions = [size - 7]; // Last coord is always (size - 7)\n\n\t for (var i = 1; i < posCount - 1; i++) {\n\t positions[i] = positions[i - 1] - intervals;\n\t }\n\n\t positions.push(6); // First coord is always 6\n\n\t return positions.reverse()\n\t};\n\n\t/**\n\t * Returns an array containing the positions of each alignment pattern.\n\t * Each array's element represent the center point of the pattern as (x, y) coordinates\n\t *\n\t * Coordinates are calculated expanding the row/column coordinates returned by {@link getRowColCoords}\n\t * and filtering out the items that overlaps with finder pattern\n\t *\n\t * @example\n\t * For a Version 7 symbol {@link getRowColCoords} returns values 6, 22 and 38.\n\t * The alignment patterns, therefore, are to be centered on (row, column)\n\t * positions (6,22), (22,6), (22,22), (22,38), (38,22), (38,38).\n\t * Note that the coordinates (6,6), (6,38), (38,6) are occupied by finder patterns\n\t * and are not therefore used for alignment patterns.\n\t *\n\t * var pos = getPositions(7)\n\t * // [[6,22], [22,6], [22,22], [22,38], [38,22], [38,38]]\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of coordinates\n\t */\n\texports.getPositions = function getPositions (version) {\n\t var coords = [];\n\t var pos = exports.getRowColCoords(version);\n\t var posLength = pos.length;\n\n\t for (var i = 0; i < posLength; i++) {\n\t for (var j = 0; j < posLength; j++) {\n\t // Skip if position is occupied by finder patterns\n\t if ((i === 0 && j === 0) || // top-left\n\t (i === 0 && j === posLength - 1) || // bottom-left\n\t (i === posLength - 1 && j === 0)) { // top-right\n\t continue\n\t }\n\n\t coords.push([pos[i], pos[j]]);\n\t }\n\t }\n\n\t return coords\n\t};\n\n\t},{\"./utils\":21}],3:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\n\t/**\n\t * Array of characters available in alphanumeric mode\n\t *\n\t * As per QR Code specification, to each character\n\t * is assigned a value from 0 to 44 which in this case coincides\n\t * with the array index\n\t *\n\t * @type {Array}\n\t */\n\tvar ALPHA_NUM_CHARS = [\n\t '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',\n\t 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',\n\t 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',\n\t ' ', '$', '%', '*', '+', '-', '.', '/', ':'\n\t];\n\n\tfunction AlphanumericData (data) {\n\t this.mode = Mode.ALPHANUMERIC;\n\t this.data = data;\n\t}\n\n\tAlphanumericData.getBitsLength = function getBitsLength (length) {\n\t return 11 * Math.floor(length / 2) + 6 * (length % 2)\n\t};\n\n\tAlphanumericData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tAlphanumericData.prototype.getBitsLength = function getBitsLength () {\n\t return AlphanumericData.getBitsLength(this.data.length)\n\t};\n\n\tAlphanumericData.prototype.write = function write (bitBuffer) {\n\t var i;\n\n\t // Input data characters are divided into groups of two characters\n\t // and encoded as 11-bit binary codes.\n\t for (i = 0; i + 2 <= this.data.length; i += 2) {\n\t // The character value of the first character is multiplied by 45\n\t var value = ALPHA_NUM_CHARS.indexOf(this.data[i]) * 45;\n\n\t // The character value of the second digit is added to the product\n\t value += ALPHA_NUM_CHARS.indexOf(this.data[i + 1]);\n\n\t // The sum is then stored as 11-bit binary number\n\t bitBuffer.put(value, 11);\n\t }\n\n\t // If the number of input data characters is not a multiple of two,\n\t // the character value of the final character is encoded as a 6-bit binary number.\n\t if (this.data.length % 2) {\n\t bitBuffer.put(ALPHA_NUM_CHARS.indexOf(this.data[i]), 6);\n\t }\n\t};\n\n\tmodule.exports = AlphanumericData;\n\n\t},{\"./mode\":14}],4:[function(require,module,exports){\n\tfunction BitBuffer () {\n\t this.buffer = [];\n\t this.length = 0;\n\t}\n\n\tBitBuffer.prototype = {\n\n\t get: function (index) {\n\t var bufIndex = Math.floor(index / 8);\n\t return ((this.buffer[bufIndex] >>> (7 - index % 8)) & 1) === 1\n\t },\n\n\t put: function (num, length) {\n\t for (var i = 0; i < length; i++) {\n\t this.putBit(((num >>> (length - i - 1)) & 1) === 1);\n\t }\n\t },\n\n\t getLengthInBits: function () {\n\t return this.length\n\t },\n\n\t putBit: function (bit) {\n\t var bufIndex = Math.floor(this.length / 8);\n\t if (this.buffer.length <= bufIndex) {\n\t this.buffer.push(0);\n\t }\n\n\t if (bit) {\n\t this.buffer[bufIndex] |= (0x80 >>> (this.length % 8));\n\t }\n\n\t this.length++;\n\t }\n\t};\n\n\tmodule.exports = BitBuffer;\n\n\t},{}],5:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\n\t/**\n\t * Helper class to handle QR Code symbol modules\n\t *\n\t * @param {Number} size Symbol size\n\t */\n\tfunction BitMatrix (size) {\n\t if (!size || size < 1) {\n\t throw new Error('BitMatrix size must be defined and greater than 0')\n\t }\n\n\t this.size = size;\n\t this.data = BufferUtil.alloc(size * size);\n\t this.reservedBit = BufferUtil.alloc(size * size);\n\t}\n\n\t/**\n\t * Set bit value at specified location\n\t * If reserved flag is set, this bit will be ignored during masking process\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @param {Boolean} value\n\t * @param {Boolean} reserved\n\t */\n\tBitMatrix.prototype.set = function (row, col, value, reserved) {\n\t var index = row * this.size + col;\n\t this.data[index] = value;\n\t if (reserved) this.reservedBit[index] = true;\n\t};\n\n\t/**\n\t * Returns bit value at specified location\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @return {Boolean}\n\t */\n\tBitMatrix.prototype.get = function (row, col) {\n\t return this.data[row * this.size + col]\n\t};\n\n\t/**\n\t * Applies xor operator at specified location\n\t * (used during masking process)\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @param {Boolean} value\n\t */\n\tBitMatrix.prototype.xor = function (row, col, value) {\n\t this.data[row * this.size + col] ^= value;\n\t};\n\n\t/**\n\t * Check if bit at specified location is reserved\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @return {Boolean}\n\t */\n\tBitMatrix.prototype.isReserved = function (row, col) {\n\t return this.reservedBit[row * this.size + col]\n\t};\n\n\tmodule.exports = BitMatrix;\n\n\t},{\"../utils/buffer\":28}],6:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar Mode = require('./mode');\n\n\tfunction ByteData (data) {\n\t this.mode = Mode.BYTE;\n\t this.data = BufferUtil.from(data);\n\t}\n\n\tByteData.getBitsLength = function getBitsLength (length) {\n\t return length * 8\n\t};\n\n\tByteData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tByteData.prototype.getBitsLength = function getBitsLength () {\n\t return ByteData.getBitsLength(this.data.length)\n\t};\n\n\tByteData.prototype.write = function (bitBuffer) {\n\t for (var i = 0, l = this.data.length; i < l; i++) {\n\t bitBuffer.put(this.data[i], 8);\n\t }\n\t};\n\n\tmodule.exports = ByteData;\n\n\t},{\"../utils/buffer\":28,\"./mode\":14}],7:[function(require,module,exports){\n\tvar ECLevel = require('./error-correction-level');\r\n\r\n\tvar EC_BLOCKS_TABLE = [\r\n\t// L M Q H\r\n\t 1, 1, 1, 1,\r\n\t 1, 1, 1, 1,\r\n\t 1, 1, 2, 2,\r\n\t 1, 2, 2, 4,\r\n\t 1, 2, 4, 4,\r\n\t 2, 4, 4, 4,\r\n\t 2, 4, 6, 5,\r\n\t 2, 4, 6, 6,\r\n\t 2, 5, 8, 8,\r\n\t 4, 5, 8, 8,\r\n\t 4, 5, 8, 11,\r\n\t 4, 8, 10, 11,\r\n\t 4, 9, 12, 16,\r\n\t 4, 9, 16, 16,\r\n\t 6, 10, 12, 18,\r\n\t 6, 10, 17, 16,\r\n\t 6, 11, 16, 19,\r\n\t 6, 13, 18, 21,\r\n\t 7, 14, 21, 25,\r\n\t 8, 16, 20, 25,\r\n\t 8, 17, 23, 25,\r\n\t 9, 17, 23, 34,\r\n\t 9, 18, 25, 30,\r\n\t 10, 20, 27, 32,\r\n\t 12, 21, 29, 35,\r\n\t 12, 23, 34, 37,\r\n\t 12, 25, 34, 40,\r\n\t 13, 26, 35, 42,\r\n\t 14, 28, 38, 45,\r\n\t 15, 29, 40, 48,\r\n\t 16, 31, 43, 51,\r\n\t 17, 33, 45, 54,\r\n\t 18, 35, 48, 57,\r\n\t 19, 37, 51, 60,\r\n\t 19, 38, 53, 63,\r\n\t 20, 40, 56, 66,\r\n\t 21, 43, 59, 70,\r\n\t 22, 45, 62, 74,\r\n\t 24, 47, 65, 77,\r\n\t 25, 49, 68, 81\r\n\t];\r\n\r\n\tvar EC_CODEWORDS_TABLE = [\r\n\t// L M Q H\r\n\t 7, 10, 13, 17,\r\n\t 10, 16, 22, 28,\r\n\t 15, 26, 36, 44,\r\n\t 20, 36, 52, 64,\r\n\t 26, 48, 72, 88,\r\n\t 36, 64, 96, 112,\r\n\t 40, 72, 108, 130,\r\n\t 48, 88, 132, 156,\r\n\t 60, 110, 160, 192,\r\n\t 72, 130, 192, 224,\r\n\t 80, 150, 224, 264,\r\n\t 96, 176, 260, 308,\r\n\t 104, 198, 288, 352,\r\n\t 120, 216, 320, 384,\r\n\t 132, 240, 360, 432,\r\n\t 144, 280, 408, 480,\r\n\t 168, 308, 448, 532,\r\n\t 180, 338, 504, 588,\r\n\t 196, 364, 546, 650,\r\n\t 224, 416, 600, 700,\r\n\t 224, 442, 644, 750,\r\n\t 252, 476, 690, 816,\r\n\t 270, 504, 750, 900,\r\n\t 300, 560, 810, 960,\r\n\t 312, 588, 870, 1050,\r\n\t 336, 644, 952, 1110,\r\n\t 360, 700, 1020, 1200,\r\n\t 390, 728, 1050, 1260,\r\n\t 420, 784, 1140, 1350,\r\n\t 450, 812, 1200, 1440,\r\n\t 480, 868, 1290, 1530,\r\n\t 510, 924, 1350, 1620,\r\n\t 540, 980, 1440, 1710,\r\n\t 570, 1036, 1530, 1800,\r\n\t 570, 1064, 1590, 1890,\r\n\t 600, 1120, 1680, 1980,\r\n\t 630, 1204, 1770, 2100,\r\n\t 660, 1260, 1860, 2220,\r\n\t 720, 1316, 1950, 2310,\r\n\t 750, 1372, 2040, 2430\r\n\t];\r\n\r\n\t/**\r\n\t * Returns the number of error correction block that the QR Code should contain\r\n\t * for the specified version and error correction level.\r\n\t *\r\n\t * @param {Number} version QR Code version\r\n\t * @param {Number} errorCorrectionLevel Error correction level\r\n\t * @return {Number} Number of error correction blocks\r\n\t */\r\n\texports.getBlocksCount = function getBlocksCount (version, errorCorrectionLevel) {\r\n\t switch (errorCorrectionLevel) {\r\n\t case ECLevel.L:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 0]\r\n\t case ECLevel.M:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 1]\r\n\t case ECLevel.Q:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 2]\r\n\t case ECLevel.H:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 3]\r\n\t default:\r\n\t return undefined\r\n\t }\r\n\t};\r\n\r\n\t/**\r\n\t * Returns the number of error correction codewords to use for the specified\r\n\t * version and error correction level.\r\n\t *\r\n\t * @param {Number} version QR Code version\r\n\t * @param {Number} errorCorrectionLevel Error correction level\r\n\t * @return {Number} Number of error correction codewords\r\n\t */\r\n\texports.getTotalCodewordsCount = function getTotalCodewordsCount (version, errorCorrectionLevel) {\r\n\t switch (errorCorrectionLevel) {\r\n\t case ECLevel.L:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 0]\r\n\t case ECLevel.M:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 1]\r\n\t case ECLevel.Q:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 2]\r\n\t case ECLevel.H:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 3]\r\n\t default:\r\n\t return undefined\r\n\t }\r\n\t};\r\n\n\t},{\"./error-correction-level\":8}],8:[function(require,module,exports){\n\texports.L = { bit: 1 };\n\texports.M = { bit: 0 };\n\texports.Q = { bit: 3 };\n\texports.H = { bit: 2 };\n\n\tfunction fromString (string) {\n\t if (typeof string !== 'string') {\n\t throw new Error('Param is not a string')\n\t }\n\n\t var lcStr = string.toLowerCase();\n\n\t switch (lcStr) {\n\t case 'l':\n\t case 'low':\n\t return exports.L\n\n\t case 'm':\n\t case 'medium':\n\t return exports.M\n\n\t case 'q':\n\t case 'quartile':\n\t return exports.Q\n\n\t case 'h':\n\t case 'high':\n\t return exports.H\n\n\t default:\n\t throw new Error('Unknown EC Level: ' + string)\n\t }\n\t}\n\n\texports.isValid = function isValid (level) {\n\t return level && typeof level.bit !== 'undefined' &&\n\t level.bit >= 0 && level.bit < 4\n\t};\n\n\texports.from = function from (value, defaultValue) {\n\t if (exports.isValid(value)) {\n\t return value\n\t }\n\n\t try {\n\t return fromString(value)\n\t } catch (e) {\n\t return defaultValue\n\t }\n\t};\n\n\t},{}],9:[function(require,module,exports){\n\tvar getSymbolSize = require('./utils').getSymbolSize;\n\tvar FINDER_PATTERN_SIZE = 7;\n\n\t/**\n\t * Returns an array containing the positions of each finder pattern.\n\t * Each array's element represent the top-left point of the pattern as (x, y) coordinates\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of coordinates\n\t */\n\texports.getPositions = function getPositions (version) {\n\t var size = getSymbolSize(version);\n\n\t return [\n\t // top-left\n\t [0, 0],\n\t // top-right\n\t [size - FINDER_PATTERN_SIZE, 0],\n\t // bottom-left\n\t [0, size - FINDER_PATTERN_SIZE]\n\t ]\n\t};\n\n\t},{\"./utils\":21}],10:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\n\tvar G15 = (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0);\n\tvar G15_MASK = (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1);\n\tvar G15_BCH = Utils.getBCHDigit(G15);\n\n\t/**\n\t * Returns format information with relative error correction bits\n\t *\n\t * The format information is a 15-bit sequence containing 5 data bits,\n\t * with 10 error correction bits calculated using the (15, 5) BCH code.\n\t *\n\t * @param {Number} errorCorrectionLevel Error correction level\n\t * @param {Number} mask Mask pattern\n\t * @return {Number} Encoded format information bits\n\t */\n\texports.getEncodedBits = function getEncodedBits (errorCorrectionLevel, mask) {\n\t var data = ((errorCorrectionLevel.bit << 3) | mask);\n\t var d = data << 10;\n\n\t while (Utils.getBCHDigit(d) - G15_BCH >= 0) {\n\t d ^= (G15 << (Utils.getBCHDigit(d) - G15_BCH));\n\t }\n\n\t // xor final data with mask pattern in order to ensure that\n\t // no combination of Error Correction Level and data mask pattern\n\t // will result in an all-zero data string\n\t return ((data << 10) | d) ^ G15_MASK\n\t};\n\n\t},{\"./utils\":21}],11:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\n\tvar EXP_TABLE = BufferUtil.alloc(512);\n\tvar LOG_TABLE = BufferUtil.alloc(256)\n\t/**\n\t * Precompute the log and anti-log tables for faster computation later\n\t *\n\t * For each possible value in the galois field 2^8, we will pre-compute\n\t * the logarithm and anti-logarithm (exponential) of this value\n\t *\n\t * ref {@link https://en.wikiversity.org/wiki/Reed%E2%80%93Solomon_codes_for_coders#Introduction_to_mathematical_fields}\n\t */\n\t;(function initTables () {\n\t var x = 1;\n\t for (var i = 0; i < 255; i++) {\n\t EXP_TABLE[i] = x;\n\t LOG_TABLE[x] = i;\n\n\t x <<= 1; // multiply by 2\n\n\t // The QR code specification says to use byte-wise modulo 100011101 arithmetic.\n\t // This means that when a number is 256 or larger, it should be XORed with 0x11D.\n\t if (x & 0x100) { // similar to x >= 256, but a lot faster (because 0x100 == 256)\n\t x ^= 0x11D;\n\t }\n\t }\n\n\t // Optimization: double the size of the anti-log table so that we don't need to mod 255 to\n\t // stay inside the bounds (because we will mainly use this table for the multiplication of\n\t // two GF numbers, no more).\n\t // @see {@link mul}\n\t for (i = 255; i < 512; i++) {\n\t EXP_TABLE[i] = EXP_TABLE[i - 255];\n\t }\n\t}());\n\n\t/**\n\t * Returns log value of n inside Galois Field\n\t *\n\t * @param {Number} n\n\t * @return {Number}\n\t */\n\texports.log = function log (n) {\n\t if (n < 1) throw new Error('log(' + n + ')')\n\t return LOG_TABLE[n]\n\t};\n\n\t/**\n\t * Returns anti-log value of n inside Galois Field\n\t *\n\t * @param {Number} n\n\t * @return {Number}\n\t */\n\texports.exp = function exp (n) {\n\t return EXP_TABLE[n]\n\t};\n\n\t/**\n\t * Multiplies two number inside Galois Field\n\t *\n\t * @param {Number} x\n\t * @param {Number} y\n\t * @return {Number}\n\t */\n\texports.mul = function mul (x, y) {\n\t if (x === 0 || y === 0) return 0\n\n\t // should be EXP_TABLE[(LOG_TABLE[x] + LOG_TABLE[y]) % 255] if EXP_TABLE wasn't oversized\n\t // @see {@link initTables}\n\t return EXP_TABLE[LOG_TABLE[x] + LOG_TABLE[y]]\n\t};\n\n\t},{\"../utils/buffer\":28}],12:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\tvar Utils = require('./utils');\n\n\tfunction KanjiData (data) {\n\t this.mode = Mode.KANJI;\n\t this.data = data;\n\t}\n\n\tKanjiData.getBitsLength = function getBitsLength (length) {\n\t return length * 13\n\t};\n\n\tKanjiData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tKanjiData.prototype.getBitsLength = function getBitsLength () {\n\t return KanjiData.getBitsLength(this.data.length)\n\t};\n\n\tKanjiData.prototype.write = function (bitBuffer) {\n\t var i;\n\n\t // In the Shift JIS system, Kanji characters are represented by a two byte combination.\n\t // These byte values are shifted from the JIS X 0208 values.\n\t // JIS X 0208 gives details of the shift coded representation.\n\t for (i = 0; i < this.data.length; i++) {\n\t var value = Utils.toSJIS(this.data[i]);\n\n\t // For characters with Shift JIS values from 0x8140 to 0x9FFC:\n\t if (value >= 0x8140 && value <= 0x9FFC) {\n\t // Subtract 0x8140 from Shift JIS value\n\t value -= 0x8140;\n\n\t // For characters with Shift JIS values from 0xE040 to 0xEBBF\n\t } else if (value >= 0xE040 && value <= 0xEBBF) {\n\t // Subtract 0xC140 from Shift JIS value\n\t value -= 0xC140;\n\t } else {\n\t throw new Error(\n\t 'Invalid SJIS character: ' + this.data[i] + '\\n' +\n\t 'Make sure your charset is UTF-8')\n\t }\n\n\t // Multiply most significant byte of result by 0xC0\n\t // and add least significant byte to product\n\t value = (((value >>> 8) & 0xff) * 0xC0) + (value & 0xff);\n\n\t // Convert result to a 13-bit binary string\n\t bitBuffer.put(value, 13);\n\t }\n\t};\n\n\tmodule.exports = KanjiData;\n\n\t},{\"./mode\":14,\"./utils\":21}],13:[function(require,module,exports){\n\t/**\n\t * Data mask pattern reference\n\t * @type {Object}\n\t */\n\texports.Patterns = {\n\t PATTERN000: 0,\n\t PATTERN001: 1,\n\t PATTERN010: 2,\n\t PATTERN011: 3,\n\t PATTERN100: 4,\n\t PATTERN101: 5,\n\t PATTERN110: 6,\n\t PATTERN111: 7\n\t};\n\n\t/**\n\t * Weighted penalty scores for the undesirable features\n\t * @type {Object}\n\t */\n\tvar PenaltyScores = {\n\t N1: 3,\n\t N2: 3,\n\t N3: 40,\n\t N4: 10\n\t};\n\n\t/**\n\t * Check if mask pattern value is valid\n\t *\n\t * @param {Number} mask Mask pattern\n\t * @return {Boolean} true if valid, false otherwise\n\t */\n\texports.isValid = function isValid (mask) {\n\t return mask != null && mask !== '' && !isNaN(mask) && mask >= 0 && mask <= 7\n\t};\n\n\t/**\n\t * Returns mask pattern from a value.\n\t * If value is not valid, returns undefined\n\t *\n\t * @param {Number|String} value Mask pattern value\n\t * @return {Number} Valid mask pattern or undefined\n\t */\n\texports.from = function from (value) {\n\t return exports.isValid(value) ? parseInt(value, 10) : undefined\n\t};\n\n\t/**\n\t* Find adjacent modules in row/column with the same color\n\t* and assign a penalty value.\n\t*\n\t* Points: N1 + i\n\t* i is the amount by which the number of adjacent modules of the same color exceeds 5\n\t*/\n\texports.getPenaltyN1 = function getPenaltyN1 (data) {\n\t var size = data.size;\n\t var points = 0;\n\t var sameCountCol = 0;\n\t var sameCountRow = 0;\n\t var lastCol = null;\n\t var lastRow = null;\n\n\t for (var row = 0; row < size; row++) {\n\t sameCountCol = sameCountRow = 0;\n\t lastCol = lastRow = null;\n\n\t for (var col = 0; col < size; col++) {\n\t var module = data.get(row, col);\n\t if (module === lastCol) {\n\t sameCountCol++;\n\t } else {\n\t if (sameCountCol >= 5) points += PenaltyScores.N1 + (sameCountCol - 5);\n\t lastCol = module;\n\t sameCountCol = 1;\n\t }\n\n\t module = data.get(col, row);\n\t if (module === lastRow) {\n\t sameCountRow++;\n\t } else {\n\t if (sameCountRow >= 5) points += PenaltyScores.N1 + (sameCountRow - 5);\n\t lastRow = module;\n\t sameCountRow = 1;\n\t }\n\t }\n\n\t if (sameCountCol >= 5) points += PenaltyScores.N1 + (sameCountCol - 5);\n\t if (sameCountRow >= 5) points += PenaltyScores.N1 + (sameCountRow - 5);\n\t }\n\n\t return points\n\t};\n\n\t/**\n\t * Find 2x2 blocks with the same color and assign a penalty value\n\t *\n\t * Points: N2 * (m - 1) * (n - 1)\n\t */\n\texports.getPenaltyN2 = function getPenaltyN2 (data) {\n\t var size = data.size;\n\t var points = 0;\n\n\t for (var row = 0; row < size - 1; row++) {\n\t for (var col = 0; col < size - 1; col++) {\n\t var last = data.get(row, col) +\n\t data.get(row, col + 1) +\n\t data.get(row + 1, col) +\n\t data.get(row + 1, col + 1);\n\n\t if (last === 4 || last === 0) points++;\n\t }\n\t }\n\n\t return points * PenaltyScores.N2\n\t};\n\n\t/**\n\t * Find 1:1:3:1:1 ratio (dark:light:dark:light:dark) pattern in row/column,\n\t * preceded or followed by light area 4 modules wide\n\t *\n\t * Points: N3 * number of pattern found\n\t */\n\texports.getPenaltyN3 = function getPenaltyN3 (data) {\n\t var size = data.size;\n\t var points = 0;\n\t var bitsCol = 0;\n\t var bitsRow = 0;\n\n\t for (var row = 0; row < size; row++) {\n\t bitsCol = bitsRow = 0;\n\t for (var col = 0; col < size; col++) {\n\t bitsCol = ((bitsCol << 1) & 0x7FF) | data.get(row, col);\n\t if (col >= 10 && (bitsCol === 0x5D0 || bitsCol === 0x05D)) points++;\n\n\t bitsRow = ((bitsRow << 1) & 0x7FF) | data.get(col, row);\n\t if (col >= 10 && (bitsRow === 0x5D0 || bitsRow === 0x05D)) points++;\n\t }\n\t }\n\n\t return points * PenaltyScores.N3\n\t};\n\n\t/**\n\t * Calculate proportion of dark modules in entire symbol\n\t *\n\t * Points: N4 * k\n\t *\n\t * k is the rating of the deviation of the proportion of dark modules\n\t * in the symbol from 50% in steps of 5%\n\t */\n\texports.getPenaltyN4 = function getPenaltyN4 (data) {\n\t var darkCount = 0;\n\t var modulesCount = data.data.length;\n\n\t for (var i = 0; i < modulesCount; i++) darkCount += data.data[i];\n\n\t var k = Math.abs(Math.ceil((darkCount * 100 / modulesCount) / 5) - 10);\n\n\t return k * PenaltyScores.N4\n\t};\n\n\t/**\n\t * Return mask value at given position\n\t *\n\t * @param {Number} maskPattern Pattern reference value\n\t * @param {Number} i Row\n\t * @param {Number} j Column\n\t * @return {Boolean} Mask value\n\t */\n\tfunction getMaskAt (maskPattern, i, j) {\n\t switch (maskPattern) {\n\t case exports.Patterns.PATTERN000: return (i + j) % 2 === 0\n\t case exports.Patterns.PATTERN001: return i % 2 === 0\n\t case exports.Patterns.PATTERN010: return j % 3 === 0\n\t case exports.Patterns.PATTERN011: return (i + j) % 3 === 0\n\t case exports.Patterns.PATTERN100: return (Math.floor(i / 2) + Math.floor(j / 3)) % 2 === 0\n\t case exports.Patterns.PATTERN101: return (i * j) % 2 + (i * j) % 3 === 0\n\t case exports.Patterns.PATTERN110: return ((i * j) % 2 + (i * j) % 3) % 2 === 0\n\t case exports.Patterns.PATTERN111: return ((i * j) % 3 + (i + j) % 2) % 2 === 0\n\n\t default: throw new Error('bad maskPattern:' + maskPattern)\n\t }\n\t}\n\n\t/**\n\t * Apply a mask pattern to a BitMatrix\n\t *\n\t * @param {Number} pattern Pattern reference number\n\t * @param {BitMatrix} data BitMatrix data\n\t */\n\texports.applyMask = function applyMask (pattern, data) {\n\t var size = data.size;\n\n\t for (var col = 0; col < size; col++) {\n\t for (var row = 0; row < size; row++) {\n\t if (data.isReserved(row, col)) continue\n\t data.xor(row, col, getMaskAt(pattern, row, col));\n\t }\n\t }\n\t};\n\n\t/**\n\t * Returns the best mask pattern for data\n\t *\n\t * @param {BitMatrix} data\n\t * @return {Number} Mask pattern reference number\n\t */\n\texports.getBestMask = function getBestMask (data, setupFormatFunc) {\n\t var numPatterns = Object.keys(exports.Patterns).length;\n\t var bestPattern = 0;\n\t var lowerPenalty = Infinity;\n\n\t for (var p = 0; p < numPatterns; p++) {\n\t setupFormatFunc(p);\n\t exports.applyMask(p, data);\n\n\t // Calculate penalty\n\t var penalty =\n\t exports.getPenaltyN1(data) +\n\t exports.getPenaltyN2(data) +\n\t exports.getPenaltyN3(data) +\n\t exports.getPenaltyN4(data);\n\n\t // Undo previously applied mask\n\t exports.applyMask(p, data);\n\n\t if (penalty < lowerPenalty) {\n\t lowerPenalty = penalty;\n\t bestPattern = p;\n\t }\n\t }\n\n\t return bestPattern\n\t};\n\n\t},{}],14:[function(require,module,exports){\n\tvar VersionCheck = require('./version-check');\n\tvar Regex = require('./regex');\n\n\t/**\n\t * Numeric mode encodes data from the decimal digit set (0 - 9)\n\t * (byte values 30HEX to 39HEX).\n\t * Normally, 3 data characters are represented by 10 bits.\n\t *\n\t * @type {Object}\n\t */\n\texports.NUMERIC = {\n\t id: 'Numeric',\n\t bit: 1 << 0,\n\t ccBits: [10, 12, 14]\n\t};\n\n\t/**\n\t * Alphanumeric mode encodes data from a set of 45 characters,\n\t * i.e. 10 numeric digits (0 - 9),\n\t * 26 alphabetic characters (A - Z),\n\t * and 9 symbols (SP, $, %, *, +, -, ., /, :).\n\t * Normally, two input characters are represented by 11 bits.\n\t *\n\t * @type {Object}\n\t */\n\texports.ALPHANUMERIC = {\n\t id: 'Alphanumeric',\n\t bit: 1 << 1,\n\t ccBits: [9, 11, 13]\n\t};\n\n\t/**\n\t * In byte mode, data is encoded at 8 bits per character.\n\t *\n\t * @type {Object}\n\t */\n\texports.BYTE = {\n\t id: 'Byte',\n\t bit: 1 << 2,\n\t ccBits: [8, 16, 16]\n\t};\n\n\t/**\n\t * The Kanji mode efficiently encodes Kanji characters in accordance with\n\t * the Shift JIS system based on JIS X 0208.\n\t * The Shift JIS values are shifted from the JIS X 0208 values.\n\t * JIS X 0208 gives details of the shift coded representation.\n\t * Each two-byte character value is compacted to a 13-bit binary codeword.\n\t *\n\t * @type {Object}\n\t */\n\texports.KANJI = {\n\t id: 'Kanji',\n\t bit: 1 << 3,\n\t ccBits: [8, 10, 12]\n\t};\n\n\t/**\n\t * Mixed mode will contain a sequences of data in a combination of any of\n\t * the modes described above\n\t *\n\t * @type {Object}\n\t */\n\texports.MIXED = {\n\t bit: -1\n\t};\n\n\t/**\n\t * Returns the number of bits needed to store the data length\n\t * according to QR Code specifications.\n\t *\n\t * @param {Mode} mode Data mode\n\t * @param {Number} version QR Code version\n\t * @return {Number} Number of bits\n\t */\n\texports.getCharCountIndicator = function getCharCountIndicator (mode, version) {\n\t if (!mode.ccBits) throw new Error('Invalid mode: ' + mode)\n\n\t if (!VersionCheck.isValid(version)) {\n\t throw new Error('Invalid version: ' + version)\n\t }\n\n\t if (version >= 1 && version < 10) return mode.ccBits[0]\n\t else if (version < 27) return mode.ccBits[1]\n\t return mode.ccBits[2]\n\t};\n\n\t/**\n\t * Returns the most efficient mode to store the specified data\n\t *\n\t * @param {String} dataStr Input data string\n\t * @return {Mode} Best mode\n\t */\n\texports.getBestModeForData = function getBestModeForData (dataStr) {\n\t if (Regex.testNumeric(dataStr)) return exports.NUMERIC\n\t else if (Regex.testAlphanumeric(dataStr)) return exports.ALPHANUMERIC\n\t else if (Regex.testKanji(dataStr)) return exports.KANJI\n\t else return exports.BYTE\n\t};\n\n\t/**\n\t * Return mode name as string\n\t *\n\t * @param {Mode} mode Mode object\n\t * @returns {String} Mode name\n\t */\n\texports.toString = function toString (mode) {\n\t if (mode && mode.id) return mode.id\n\t throw new Error('Invalid mode')\n\t};\n\n\t/**\n\t * Check if input param is a valid mode object\n\t *\n\t * @param {Mode} mode Mode object\n\t * @returns {Boolean} True if valid mode, false otherwise\n\t */\n\texports.isValid = function isValid (mode) {\n\t return mode && mode.bit && mode.ccBits\n\t};\n\n\t/**\n\t * Get mode object from its name\n\t *\n\t * @param {String} string Mode name\n\t * @returns {Mode} Mode object\n\t */\n\tfunction fromString (string) {\n\t if (typeof string !== 'string') {\n\t throw new Error('Param is not a string')\n\t }\n\n\t var lcStr = string.toLowerCase();\n\n\t switch (lcStr) {\n\t case 'numeric':\n\t return exports.NUMERIC\n\t case 'alphanumeric':\n\t return exports.ALPHANUMERIC\n\t case 'kanji':\n\t return exports.KANJI\n\t case 'byte':\n\t return exports.BYTE\n\t default:\n\t throw new Error('Unknown mode: ' + string)\n\t }\n\t}\n\n\t/**\n\t * Returns mode from a value.\n\t * If value is not a valid mode, returns defaultValue\n\t *\n\t * @param {Mode|String} value Encoding mode\n\t * @param {Mode} defaultValue Fallback value\n\t * @return {Mode} Encoding mode\n\t */\n\texports.from = function from (value, defaultValue) {\n\t if (exports.isValid(value)) {\n\t return value\n\t }\n\n\t try {\n\t return fromString(value)\n\t } catch (e) {\n\t return defaultValue\n\t }\n\t};\n\n\t},{\"./regex\":19,\"./version-check\":22}],15:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\n\tfunction NumericData (data) {\n\t this.mode = Mode.NUMERIC;\n\t this.data = data.toString();\n\t}\n\n\tNumericData.getBitsLength = function getBitsLength (length) {\n\t return 10 * Math.floor(length / 3) + ((length % 3) ? ((length % 3) * 3 + 1) : 0)\n\t};\n\n\tNumericData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tNumericData.prototype.getBitsLength = function getBitsLength () {\n\t return NumericData.getBitsLength(this.data.length)\n\t};\n\n\tNumericData.prototype.write = function write (bitBuffer) {\n\t var i, group, value;\n\n\t // The input data string is divided into groups of three digits,\n\t // and each group is converted to its 10-bit binary equivalent.\n\t for (i = 0; i + 3 <= this.data.length; i += 3) {\n\t group = this.data.substr(i, 3);\n\t value = parseInt(group, 10);\n\n\t bitBuffer.put(value, 10);\n\t }\n\n\t // If the number of input digits is not an exact multiple of three,\n\t // the final one or two digits are converted to 4 or 7 bits respectively.\n\t var remainingNum = this.data.length - i;\n\t if (remainingNum > 0) {\n\t group = this.data.substr(i);\n\t value = parseInt(group, 10);\n\n\t bitBuffer.put(value, remainingNum * 3 + 1);\n\t }\n\t};\n\n\tmodule.exports = NumericData;\n\n\t},{\"./mode\":14}],16:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar GF = require('./galois-field');\n\n\t/**\n\t * Multiplies two polynomials inside Galois Field\n\t *\n\t * @param {Buffer} p1 Polynomial\n\t * @param {Buffer} p2 Polynomial\n\t * @return {Buffer} Product of p1 and p2\n\t */\n\texports.mul = function mul (p1, p2) {\n\t var coeff = BufferUtil.alloc(p1.length + p2.length - 1);\n\n\t for (var i = 0; i < p1.length; i++) {\n\t for (var j = 0; j < p2.length; j++) {\n\t coeff[i + j] ^= GF.mul(p1[i], p2[j]);\n\t }\n\t }\n\n\t return coeff\n\t};\n\n\t/**\n\t * Calculate the remainder of polynomials division\n\t *\n\t * @param {Buffer} divident Polynomial\n\t * @param {Buffer} divisor Polynomial\n\t * @return {Buffer} Remainder\n\t */\n\texports.mod = function mod (divident, divisor) {\n\t var result = BufferUtil.from(divident);\n\n\t while ((result.length - divisor.length) >= 0) {\n\t var coeff = result[0];\n\n\t for (var i = 0; i < divisor.length; i++) {\n\t result[i] ^= GF.mul(divisor[i], coeff);\n\t }\n\n\t // remove all zeros from buffer head\n\t var offset = 0;\n\t while (offset < result.length && result[offset] === 0) offset++;\n\t result = result.slice(offset);\n\t }\n\n\t return result\n\t};\n\n\t/**\n\t * Generate an irreducible generator polynomial of specified degree\n\t * (used by Reed-Solomon encoder)\n\t *\n\t * @param {Number} degree Degree of the generator polynomial\n\t * @return {Buffer} Buffer containing polynomial coefficients\n\t */\n\texports.generateECPolynomial = function generateECPolynomial (degree) {\n\t var poly = BufferUtil.from([1]);\n\t for (var i = 0; i < degree; i++) {\n\t poly = exports.mul(poly, [1, GF.exp(i)]);\n\t }\n\n\t return poly\n\t};\n\n\t},{\"../utils/buffer\":28,\"./galois-field\":11}],17:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar Utils = require('./utils');\n\tvar ECLevel = require('./error-correction-level');\n\tvar BitBuffer = require('./bit-buffer');\n\tvar BitMatrix = require('./bit-matrix');\n\tvar AlignmentPattern = require('./alignment-pattern');\n\tvar FinderPattern = require('./finder-pattern');\n\tvar MaskPattern = require('./mask-pattern');\n\tvar ECCode = require('./error-correction-code');\n\tvar ReedSolomonEncoder = require('./reed-solomon-encoder');\n\tvar Version = require('./version');\n\tvar FormatInfo = require('./format-info');\n\tvar Mode = require('./mode');\n\tvar Segments = require('./segments');\n\tvar isArray = require('isarray');\n\n\t/**\n\t * QRCode for JavaScript\n\t *\n\t * modified by Ryan Day for nodejs support\n\t * Copyright (c) 2011 Ryan Day\n\t *\n\t * Licensed under the MIT license:\n\t * http://www.opensource.org/licenses/mit-license.php\n\t *\n\t//---------------------------------------------------------------------\n\t// QRCode for JavaScript\n\t//\n\t// Copyright (c) 2009 Kazuhiko Arase\n\t//\n\t// URL: http://www.d-project.com/\n\t//\n\t// Licensed under the MIT license:\n\t// http://www.opensource.org/licenses/mit-license.php\n\t//\n\t// The word \"QR Code\" is registered trademark of\n\t// DENSO WAVE INCORPORATED\n\t// http://www.denso-wave.com/qrcode/faqpatent-e.html\n\t//\n\t//---------------------------------------------------------------------\n\t*/\n\n\t/**\n\t * Add finder patterns bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Number} version QR Code version\n\t */\n\tfunction setupFinderPattern (matrix, version) {\n\t var size = matrix.size;\n\t var pos = FinderPattern.getPositions(version);\n\n\t for (var i = 0; i < pos.length; i++) {\n\t var row = pos[i][0];\n\t var col = pos[i][1];\n\n\t for (var r = -1; r <= 7; r++) {\n\t if (row + r <= -1 || size <= row + r) continue\n\n\t for (var c = -1; c <= 7; c++) {\n\t if (col + c <= -1 || size <= col + c) continue\n\n\t if ((r >= 0 && r <= 6 && (c === 0 || c === 6)) ||\n\t (c >= 0 && c <= 6 && (r === 0 || r === 6)) ||\n\t (r >= 2 && r <= 4 && c >= 2 && c <= 4)) {\n\t matrix.set(row + r, col + c, true, true);\n\t } else {\n\t matrix.set(row + r, col + c, false, true);\n\t }\n\t }\n\t }\n\t }\n\t}\n\n\t/**\n\t * Add timing pattern bits to matrix\n\t *\n\t * Note: this function must be called before {@link setupAlignmentPattern}\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t */\n\tfunction setupTimingPattern (matrix) {\n\t var size = matrix.size;\n\n\t for (var r = 8; r < size - 8; r++) {\n\t var value = r % 2 === 0;\n\t matrix.set(r, 6, value, true);\n\t matrix.set(6, r, value, true);\n\t }\n\t}\n\n\t/**\n\t * Add alignment patterns bits to matrix\n\t *\n\t * Note: this function must be called after {@link setupTimingPattern}\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Number} version QR Code version\n\t */\n\tfunction setupAlignmentPattern (matrix, version) {\n\t var pos = AlignmentPattern.getPositions(version);\n\n\t for (var i = 0; i < pos.length; i++) {\n\t var row = pos[i][0];\n\t var col = pos[i][1];\n\n\t for (var r = -2; r <= 2; r++) {\n\t for (var c = -2; c <= 2; c++) {\n\t if (r === -2 || r === 2 || c === -2 || c === 2 ||\n\t (r === 0 && c === 0)) {\n\t matrix.set(row + r, col + c, true, true);\n\t } else {\n\t matrix.set(row + r, col + c, false, true);\n\t }\n\t }\n\t }\n\t }\n\t}\n\n\t/**\n\t * Add version info bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Number} version QR Code version\n\t */\n\tfunction setupVersionInfo (matrix, version) {\n\t var size = matrix.size;\n\t var bits = Version.getEncodedBits(version);\n\t var row, col, mod;\n\n\t for (var i = 0; i < 18; i++) {\n\t row = Math.floor(i / 3);\n\t col = i % 3 + size - 8 - 3;\n\t mod = ((bits >> i) & 1) === 1;\n\n\t matrix.set(row, col, mod, true);\n\t matrix.set(col, row, mod, true);\n\t }\n\t}\n\n\t/**\n\t * Add format info bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n\t * @param {Number} maskPattern Mask pattern reference value\n\t */\n\tfunction setupFormatInfo (matrix, errorCorrectionLevel, maskPattern) {\n\t var size = matrix.size;\n\t var bits = FormatInfo.getEncodedBits(errorCorrectionLevel, maskPattern);\n\t var i, mod;\n\n\t for (i = 0; i < 15; i++) {\n\t mod = ((bits >> i) & 1) === 1;\n\n\t // vertical\n\t if (i < 6) {\n\t matrix.set(i, 8, mod, true);\n\t } else if (i < 8) {\n\t matrix.set(i + 1, 8, mod, true);\n\t } else {\n\t matrix.set(size - 15 + i, 8, mod, true);\n\t }\n\n\t // horizontal\n\t if (i < 8) {\n\t matrix.set(8, size - i - 1, mod, true);\n\t } else if (i < 9) {\n\t matrix.set(8, 15 - i - 1 + 1, mod, true);\n\t } else {\n\t matrix.set(8, 15 - i - 1, mod, true);\n\t }\n\t }\n\n\t // fixed module\n\t matrix.set(size - 8, 8, 1, true);\n\t}\n\n\t/**\n\t * Add encoded data bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Buffer} data Data codewords\n\t */\n\tfunction setupData (matrix, data) {\n\t var size = matrix.size;\n\t var inc = -1;\n\t var row = size - 1;\n\t var bitIndex = 7;\n\t var byteIndex = 0;\n\n\t for (var col = size - 1; col > 0; col -= 2) {\n\t if (col === 6) col--;\n\n\t while (true) {\n\t for (var c = 0; c < 2; c++) {\n\t if (!matrix.isReserved(row, col - c)) {\n\t var dark = false;\n\n\t if (byteIndex < data.length) {\n\t dark = (((data[byteIndex] >>> bitIndex) & 1) === 1);\n\t }\n\n\t matrix.set(row, col - c, dark);\n\t bitIndex--;\n\n\t if (bitIndex === -1) {\n\t byteIndex++;\n\t bitIndex = 7;\n\t }\n\t }\n\t }\n\n\t row += inc;\n\n\t if (row < 0 || size <= row) {\n\t row -= inc;\n\t inc = -inc;\n\t break\n\t }\n\t }\n\t }\n\t}\n\n\t/**\n\t * Create encoded codewords from data input\n\t *\n\t * @param {Number} version QR Code version\n\t * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n\t * @param {ByteData} data Data input\n\t * @return {Buffer} Buffer containing encoded codewords\n\t */\n\tfunction createData (version, errorCorrectionLevel, segments) {\n\t // Prepare data buffer\n\t var buffer = new BitBuffer();\n\n\t segments.forEach(function (data) {\n\t // prefix data with mode indicator (4 bits)\n\t buffer.put(data.mode.bit, 4);\n\n\t // Prefix data with character count indicator.\n\t // The character count indicator is a string of bits that represents the\n\t // number of characters that are being encoded.\n\t // The character count indicator must be placed after the mode indicator\n\t // and must be a certain number of bits long, depending on the QR version\n\t // and data mode\n\t // @see {@link Mode.getCharCountIndicator}.\n\t buffer.put(data.getLength(), Mode.getCharCountIndicator(data.mode, version));\n\n\t // add binary data sequence to buffer\n\t data.write(buffer);\n\t });\n\n\t // Calculate required number of bits\n\t var totalCodewords = Utils.getSymbolTotalCodewords(version);\n\t var ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel);\n\t var dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8;\n\n\t // Add a terminator.\n\t // If the bit string is shorter than the total number of required bits,\n\t // a terminator of up to four 0s must be added to the right side of the string.\n\t // If the bit string is more than four bits shorter than the required number of bits,\n\t // add four 0s to the end.\n\t if (buffer.getLengthInBits() + 4 <= dataTotalCodewordsBits) {\n\t buffer.put(0, 4);\n\t }\n\n\t // If the bit string is fewer than four bits shorter, add only the number of 0s that\n\t // are needed to reach the required number of bits.\n\n\t // After adding the terminator, if the number of bits in the string is not a multiple of 8,\n\t // pad the string on the right with 0s to make the string's length a multiple of 8.\n\t while (buffer.getLengthInBits() % 8 !== 0) {\n\t buffer.putBit(0);\n\t }\n\n\t // Add pad bytes if the string is still shorter than the total number of required bits.\n\t // Extend the buffer to fill the data capacity of the symbol corresponding to\n\t // the Version and Error Correction Level by adding the Pad Codewords 11101100 (0xEC)\n\t // and 00010001 (0x11) alternately.\n\t var remainingByte = (dataTotalCodewordsBits - buffer.getLengthInBits()) / 8;\n\t for (var i = 0; i < remainingByte; i++) {\n\t buffer.put(i % 2 ? 0x11 : 0xEC, 8);\n\t }\n\n\t return createCodewords(buffer, version, errorCorrectionLevel)\n\t}\n\n\t/**\n\t * Encode input data with Reed-Solomon and return codewords with\n\t * relative error correction bits\n\t *\n\t * @param {BitBuffer} bitBuffer Data to encode\n\t * @param {Number} version QR Code version\n\t * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n\t * @return {Buffer} Buffer containing encoded codewords\n\t */\n\tfunction createCodewords (bitBuffer, version, errorCorrectionLevel) {\n\t // Total codewords for this QR code version (Data + Error correction)\n\t var totalCodewords = Utils.getSymbolTotalCodewords(version);\n\n\t // Total number of error correction codewords\n\t var ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel);\n\n\t // Total number of data codewords\n\t var dataTotalCodewords = totalCodewords - ecTotalCodewords;\n\n\t // Total number of blocks\n\t var ecTotalBlocks = ECCode.getBlocksCount(version, errorCorrectionLevel);\n\n\t // Calculate how many blocks each group should contain\n\t var blocksInGroup2 = totalCodewords % ecTotalBlocks;\n\t var blocksInGroup1 = ecTotalBlocks - blocksInGroup2;\n\n\t var totalCodewordsInGroup1 = Math.floor(totalCodewords / ecTotalBlocks);\n\n\t var dataCodewordsInGroup1 = Math.floor(dataTotalCodewords / ecTotalBlocks);\n\t var dataCodewordsInGroup2 = dataCodewordsInGroup1 + 1;\n\n\t // Number of EC codewords is the same for both groups\n\t var ecCount = totalCodewordsInGroup1 - dataCodewordsInGroup1;\n\n\t // Initialize a Reed-Solomon encoder with a generator polynomial of degree ecCount\n\t var rs = new ReedSolomonEncoder(ecCount);\n\n\t var offset = 0;\n\t var dcData = new Array(ecTotalBlocks);\n\t var ecData = new Array(ecTotalBlocks);\n\t var maxDataSize = 0;\n\t var buffer = BufferUtil.from(bitBuffer.buffer);\n\n\t // Divide the buffer into the required number of blocks\n\t for (var b = 0; b < ecTotalBlocks; b++) {\n\t var dataSize = b < blocksInGroup1 ? dataCodewordsInGroup1 : dataCodewordsInGroup2;\n\n\t // extract a block of data from buffer\n\t dcData[b] = buffer.slice(offset, offset + dataSize);\n\n\t // Calculate EC codewords for this data block\n\t ecData[b] = rs.encode(dcData[b]);\n\n\t offset += dataSize;\n\t maxDataSize = Math.max(maxDataSize, dataSize);\n\t }\n\n\t // Create final data\n\t // Interleave the data and error correction codewords from each block\n\t var data = BufferUtil.alloc(totalCodewords);\n\t var index = 0;\n\t var i, r;\n\n\t // Add data codewords\n\t for (i = 0; i < maxDataSize; i++) {\n\t for (r = 0; r < ecTotalBlocks; r++) {\n\t if (i < dcData[r].length) {\n\t data[index++] = dcData[r][i];\n\t }\n\t }\n\t }\n\n\t // Apped EC codewords\n\t for (i = 0; i < ecCount; i++) {\n\t for (r = 0; r < ecTotalBlocks; r++) {\n\t data[index++] = ecData[r][i];\n\t }\n\t }\n\n\t return data\n\t}\n\n\t/**\n\t * Build QR Code symbol\n\t *\n\t * @param {String} data Input string\n\t * @param {Number} version QR Code version\n\t * @param {ErrorCorretionLevel} errorCorrectionLevel Error level\n\t * @param {MaskPattern} maskPattern Mask pattern\n\t * @return {Object} Object containing symbol data\n\t */\n\tfunction createSymbol (data, version, errorCorrectionLevel, maskPattern) {\n\t var segments;\n\n\t if (isArray(data)) {\n\t segments = Segments.fromArray(data);\n\t } else if (typeof data === 'string') {\n\t var estimatedVersion = version;\n\n\t if (!estimatedVersion) {\n\t var rawSegments = Segments.rawSplit(data);\n\n\t // Estimate best version that can contain raw splitted segments\n\t estimatedVersion = Version.getBestVersionForData(rawSegments,\n\t errorCorrectionLevel);\n\t }\n\n\t // Build optimized segments\n\t // If estimated version is undefined, try with the highest version\n\t segments = Segments.fromString(data, estimatedVersion || 40);\n\t } else {\n\t throw new Error('Invalid data')\n\t }\n\n\t // Get the min version that can contain data\n\t var bestVersion = Version.getBestVersionForData(segments,\n\t errorCorrectionLevel);\n\n\t // If no version is found, data cannot be stored\n\t if (!bestVersion) {\n\t throw new Error('The amount of data is too big to be stored in a QR Code')\n\t }\n\n\t // If not specified, use min version as default\n\t if (!version) {\n\t version = bestVersion;\n\n\t // Check if the specified version can contain the data\n\t } else if (version < bestVersion) {\n\t throw new Error('\\n' +\n\t 'The chosen QR Code version cannot contain this amount of data.\\n' +\n\t 'Minimum version required to store current data is: ' + bestVersion + '.\\n'\n\t )\n\t }\n\n\t var dataBits = createData(version, errorCorrectionLevel, segments);\n\n\t // Allocate matrix buffer\n\t var moduleCount = Utils.getSymbolSize(version);\n\t var modules = new BitMatrix(moduleCount);\n\n\t // Add function modules\n\t setupFinderPattern(modules, version);\n\t setupTimingPattern(modules);\n\t setupAlignmentPattern(modules, version);\n\n\t // Add temporary dummy bits for format info just to set them as reserved.\n\t // This is needed to prevent these bits from being masked by {@link MaskPattern.applyMask}\n\t // since the masking operation must be performed only on the encoding region.\n\t // These blocks will be replaced with correct values later in code.\n\t setupFormatInfo(modules, errorCorrectionLevel, 0);\n\n\t if (version >= 7) {\n\t setupVersionInfo(modules, version);\n\t }\n\n\t // Add data codewords\n\t setupData(modules, dataBits);\n\n\t if (isNaN(maskPattern)) {\n\t // Find best mask pattern\n\t maskPattern = MaskPattern.getBestMask(modules,\n\t setupFormatInfo.bind(null, modules, errorCorrectionLevel));\n\t }\n\n\t // Apply mask pattern\n\t MaskPattern.applyMask(maskPattern, modules);\n\n\t // Replace format info bits with correct values\n\t setupFormatInfo(modules, errorCorrectionLevel, maskPattern);\n\n\t return {\n\t modules: modules,\n\t version: version,\n\t errorCorrectionLevel: errorCorrectionLevel,\n\t maskPattern: maskPattern,\n\t segments: segments\n\t }\n\t}\n\n\t/**\n\t * QR Code\n\t *\n\t * @param {String | Array} data Input data\n\t * @param {Object} options Optional configurations\n\t * @param {Number} options.version QR Code version\n\t * @param {String} options.errorCorrectionLevel Error correction level\n\t * @param {Function} options.toSJISFunc Helper func to convert utf8 to sjis\n\t */\n\texports.create = function create (data, options) {\n\t if (typeof data === 'undefined' || data === '') {\n\t throw new Error('No input text')\n\t }\n\n\t var errorCorrectionLevel = ECLevel.M;\n\t var version;\n\t var mask;\n\n\t if (typeof options !== 'undefined') {\n\t // Use higher error correction level as default\n\t errorCorrectionLevel = ECLevel.from(options.errorCorrectionLevel, ECLevel.M);\n\t version = Version.from(options.version);\n\t mask = MaskPattern.from(options.maskPattern);\n\n\t if (options.toSJISFunc) {\n\t Utils.setToSJISFunction(options.toSJISFunc);\n\t }\n\t }\n\n\t return createSymbol(data, version, errorCorrectionLevel, mask)\n\t};\n\n\t},{\"../utils/buffer\":28,\"./alignment-pattern\":2,\"./bit-buffer\":4,\"./bit-matrix\":5,\"./error-correction-code\":7,\"./error-correction-level\":8,\"./finder-pattern\":9,\"./format-info\":10,\"./mask-pattern\":13,\"./mode\":14,\"./reed-solomon-encoder\":18,\"./segments\":20,\"./utils\":21,\"./version\":23,\"isarray\":33}],18:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar Polynomial = require('./polynomial');\n\tvar Buffer = require('buffer').Buffer;\n\n\tfunction ReedSolomonEncoder (degree) {\n\t this.genPoly = undefined;\n\t this.degree = degree;\n\n\t if (this.degree) this.initialize(this.degree);\n\t}\n\n\t/**\n\t * Initialize the encoder.\n\t * The input param should correspond to the number of error correction codewords.\n\t *\n\t * @param {Number} degree\n\t */\n\tReedSolomonEncoder.prototype.initialize = function initialize (degree) {\n\t // create an irreducible generator polynomial\n\t this.degree = degree;\n\t this.genPoly = Polynomial.generateECPolynomial(this.degree);\n\t};\n\n\t/**\n\t * Encodes a chunk of data\n\t *\n\t * @param {Buffer} data Buffer containing input data\n\t * @return {Buffer} Buffer containing encoded data\n\t */\n\tReedSolomonEncoder.prototype.encode = function encode (data) {\n\t if (!this.genPoly) {\n\t throw new Error('Encoder not initialized')\n\t }\n\n\t // Calculate EC for this data block\n\t // extends data size to data+genPoly size\n\t var pad = BufferUtil.alloc(this.degree);\n\t var paddedData = Buffer.concat([data, pad], data.length + this.degree);\n\n\t // The error correction codewords are the remainder after dividing the data codewords\n\t // by a generator polynomial\n\t var remainder = Polynomial.mod(paddedData, this.genPoly);\n\n\t // return EC data blocks (last n byte, where n is the degree of genPoly)\n\t // If coefficients number in remainder are less than genPoly degree,\n\t // pad with 0s to the left to reach the needed number of coefficients\n\t var start = this.degree - remainder.length;\n\t if (start > 0) {\n\t var buff = BufferUtil.alloc(this.degree);\n\t remainder.copy(buff, start);\n\n\t return buff\n\t }\n\n\t return remainder\n\t};\n\n\tmodule.exports = ReedSolomonEncoder;\n\n\t},{\"../utils/buffer\":28,\"./polynomial\":16,\"buffer\":30}],19:[function(require,module,exports){\n\tvar numeric = '[0-9]+';\n\tvar alphanumeric = '[A-Z $%*+\\\\-./:]+';\n\tvar kanji = '(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|' +\n\t '[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|' +\n\t '[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|' +\n\t '[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+';\n\tkanji = kanji.replace(/u/g, '\\\\u');\n\n\tvar byte = '(?:(?![A-Z0-9 $%*+\\\\-./:]|' + kanji + ')(?:.|[\\r\\n]))+';\n\n\texports.KANJI = new RegExp(kanji, 'g');\n\texports.BYTE_KANJI = new RegExp('[^A-Z0-9 $%*+\\\\-./:]+', 'g');\n\texports.BYTE = new RegExp(byte, 'g');\n\texports.NUMERIC = new RegExp(numeric, 'g');\n\texports.ALPHANUMERIC = new RegExp(alphanumeric, 'g');\n\n\tvar TEST_KANJI = new RegExp('^' + kanji + '$');\n\tvar TEST_NUMERIC = new RegExp('^' + numeric + '$');\n\tvar TEST_ALPHANUMERIC = new RegExp('^[A-Z0-9 $%*+\\\\-./:]+$');\n\n\texports.testKanji = function testKanji (str) {\n\t return TEST_KANJI.test(str)\n\t};\n\n\texports.testNumeric = function testNumeric (str) {\n\t return TEST_NUMERIC.test(str)\n\t};\n\n\texports.testAlphanumeric = function testAlphanumeric (str) {\n\t return TEST_ALPHANUMERIC.test(str)\n\t};\n\n\t},{}],20:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\tvar NumericData = require('./numeric-data');\n\tvar AlphanumericData = require('./alphanumeric-data');\n\tvar ByteData = require('./byte-data');\n\tvar KanjiData = require('./kanji-data');\n\tvar Regex = require('./regex');\n\tvar Utils = require('./utils');\n\tvar dijkstra = require('dijkstrajs');\n\n\t/**\n\t * Returns UTF8 byte length\n\t *\n\t * @param {String} str Input string\n\t * @return {Number} Number of byte\n\t */\n\tfunction getStringByteLength (str) {\n\t return unescape(encodeURIComponent(str)).length\n\t}\n\n\t/**\n\t * Get a list of segments of the specified mode\n\t * from a string\n\t *\n\t * @param {Mode} mode Segment mode\n\t * @param {String} str String to process\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction getSegments (regex, mode, str) {\n\t var segments = [];\n\t var result;\n\n\t while ((result = regex.exec(str)) !== null) {\n\t segments.push({\n\t data: result[0],\n\t index: result.index,\n\t mode: mode,\n\t length: result[0].length\n\t });\n\t }\n\n\t return segments\n\t}\n\n\t/**\n\t * Extracts a series of segments with the appropriate\n\t * modes from a string\n\t *\n\t * @param {String} dataStr Input string\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction getSegmentsFromString (dataStr) {\n\t var numSegs = getSegments(Regex.NUMERIC, Mode.NUMERIC, dataStr);\n\t var alphaNumSegs = getSegments(Regex.ALPHANUMERIC, Mode.ALPHANUMERIC, dataStr);\n\t var byteSegs;\n\t var kanjiSegs;\n\n\t if (Utils.isKanjiModeEnabled()) {\n\t byteSegs = getSegments(Regex.BYTE, Mode.BYTE, dataStr);\n\t kanjiSegs = getSegments(Regex.KANJI, Mode.KANJI, dataStr);\n\t } else {\n\t byteSegs = getSegments(Regex.BYTE_KANJI, Mode.BYTE, dataStr);\n\t kanjiSegs = [];\n\t }\n\n\t var segs = numSegs.concat(alphaNumSegs, byteSegs, kanjiSegs);\n\n\t return segs\n\t .sort(function (s1, s2) {\n\t return s1.index - s2.index\n\t })\n\t .map(function (obj) {\n\t return {\n\t data: obj.data,\n\t mode: obj.mode,\n\t length: obj.length\n\t }\n\t })\n\t}\n\n\t/**\n\t * Returns how many bits are needed to encode a string of\n\t * specified length with the specified mode\n\t *\n\t * @param {Number} length String length\n\t * @param {Mode} mode Segment mode\n\t * @return {Number} Bit length\n\t */\n\tfunction getSegmentBitsLength (length, mode) {\n\t switch (mode) {\n\t case Mode.NUMERIC:\n\t return NumericData.getBitsLength(length)\n\t case Mode.ALPHANUMERIC:\n\t return AlphanumericData.getBitsLength(length)\n\t case Mode.KANJI:\n\t return KanjiData.getBitsLength(length)\n\t case Mode.BYTE:\n\t return ByteData.getBitsLength(length)\n\t }\n\t}\n\n\t/**\n\t * Merges adjacent segments which have the same mode\n\t *\n\t * @param {Array} segs Array of object with segments data\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction mergeSegments (segs) {\n\t return segs.reduce(function (acc, curr) {\n\t var prevSeg = acc.length - 1 >= 0 ? acc[acc.length - 1] : null;\n\t if (prevSeg && prevSeg.mode === curr.mode) {\n\t acc[acc.length - 1].data += curr.data;\n\t return acc\n\t }\n\n\t acc.push(curr);\n\t return acc\n\t }, [])\n\t}\n\n\t/**\n\t * Generates a list of all possible nodes combination which\n\t * will be used to build a segments graph.\n\t *\n\t * Nodes are divided by groups. Each group will contain a list of all the modes\n\t * in which is possible to encode the given text.\n\t *\n\t * For example the text '12345' can be encoded as Numeric, Alphanumeric or Byte.\n\t * The group for '12345' will contain then 3 objects, one for each\n\t * possible encoding mode.\n\t *\n\t * Each node represents a possible segment.\n\t *\n\t * @param {Array} segs Array of object with segments data\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction buildNodes (segs) {\n\t var nodes = [];\n\t for (var i = 0; i < segs.length; i++) {\n\t var seg = segs[i];\n\n\t switch (seg.mode) {\n\t case Mode.NUMERIC:\n\t nodes.push([seg,\n\t { data: seg.data, mode: Mode.ALPHANUMERIC, length: seg.length },\n\t { data: seg.data, mode: Mode.BYTE, length: seg.length }\n\t ]);\n\t break\n\t case Mode.ALPHANUMERIC:\n\t nodes.push([seg,\n\t { data: seg.data, mode: Mode.BYTE, length: seg.length }\n\t ]);\n\t break\n\t case Mode.KANJI:\n\t nodes.push([seg,\n\t { data: seg.data, mode: Mode.BYTE, length: getStringByteLength(seg.data) }\n\t ]);\n\t break\n\t case Mode.BYTE:\n\t nodes.push([\n\t { data: seg.data, mode: Mode.BYTE, length: getStringByteLength(seg.data) }\n\t ]);\n\t }\n\t }\n\n\t return nodes\n\t}\n\n\t/**\n\t * Builds a graph from a list of nodes.\n\t * All segments in each node group will be connected with all the segments of\n\t * the next group and so on.\n\t *\n\t * At each connection will be assigned a weight depending on the\n\t * segment's byte length.\n\t *\n\t * @param {Array} nodes Array of object with segments data\n\t * @param {Number} version QR Code version\n\t * @return {Object} Graph of all possible segments\n\t */\n\tfunction buildGraph (nodes, version) {\n\t var table = {};\n\t var graph = {'start': {}};\n\t var prevNodeIds = ['start'];\n\n\t for (var i = 0; i < nodes.length; i++) {\n\t var nodeGroup = nodes[i];\n\t var currentNodeIds = [];\n\n\t for (var j = 0; j < nodeGroup.length; j++) {\n\t var node = nodeGroup[j];\n\t var key = '' + i + j;\n\n\t currentNodeIds.push(key);\n\t table[key] = { node: node, lastCount: 0 };\n\t graph[key] = {};\n\n\t for (var n = 0; n < prevNodeIds.length; n++) {\n\t var prevNodeId = prevNodeIds[n];\n\n\t if (table[prevNodeId] && table[prevNodeId].node.mode === node.mode) {\n\t graph[prevNodeId][key] =\n\t getSegmentBitsLength(table[prevNodeId].lastCount + node.length, node.mode) -\n\t getSegmentBitsLength(table[prevNodeId].lastCount, node.mode);\n\n\t table[prevNodeId].lastCount += node.length;\n\t } else {\n\t if (table[prevNodeId]) table[prevNodeId].lastCount = node.length;\n\n\t graph[prevNodeId][key] = getSegmentBitsLength(node.length, node.mode) +\n\t 4 + Mode.getCharCountIndicator(node.mode, version); // switch cost\n\t }\n\t }\n\t }\n\n\t prevNodeIds = currentNodeIds;\n\t }\n\n\t for (n = 0; n < prevNodeIds.length; n++) {\n\t graph[prevNodeIds[n]]['end'] = 0;\n\t }\n\n\t return { map: graph, table: table }\n\t}\n\n\t/**\n\t * Builds a segment from a specified data and mode.\n\t * If a mode is not specified, the more suitable will be used.\n\t *\n\t * @param {String} data Input data\n\t * @param {Mode | String} modesHint Data mode\n\t * @return {Segment} Segment\n\t */\n\tfunction buildSingleSegment (data, modesHint) {\n\t var mode;\n\t var bestMode = Mode.getBestModeForData(data);\n\n\t mode = Mode.from(modesHint, bestMode);\n\n\t // Make sure data can be encoded\n\t if (mode !== Mode.BYTE && mode.bit < bestMode.bit) {\n\t throw new Error('\"' + data + '\"' +\n\t ' cannot be encoded with mode ' + Mode.toString(mode) +\n\t '.\\n Suggested mode is: ' + Mode.toString(bestMode))\n\t }\n\n\t // Use Mode.BYTE if Kanji support is disabled\n\t if (mode === Mode.KANJI && !Utils.isKanjiModeEnabled()) {\n\t mode = Mode.BYTE;\n\t }\n\n\t switch (mode) {\n\t case Mode.NUMERIC:\n\t return new NumericData(data)\n\n\t case Mode.ALPHANUMERIC:\n\t return new AlphanumericData(data)\n\n\t case Mode.KANJI:\n\t return new KanjiData(data)\n\n\t case Mode.BYTE:\n\t return new ByteData(data)\n\t }\n\t}\n\n\t/**\n\t * Builds a list of segments from an array.\n\t * Array can contain Strings or Objects with segment's info.\n\t *\n\t * For each item which is a string, will be generated a segment with the given\n\t * string and the more appropriate encoding mode.\n\t *\n\t * For each item which is an object, will be generated a segment with the given\n\t * data and mode.\n\t * Objects must contain at least the property \"data\".\n\t * If property \"mode\" is not present, the more suitable mode will be used.\n\t *\n\t * @param {Array} array Array of objects with segments data\n\t * @return {Array} Array of Segments\n\t */\n\texports.fromArray = function fromArray (array) {\n\t return array.reduce(function (acc, seg) {\n\t if (typeof seg === 'string') {\n\t acc.push(buildSingleSegment(seg, null));\n\t } else if (seg.data) {\n\t acc.push(buildSingleSegment(seg.data, seg.mode));\n\t }\n\n\t return acc\n\t }, [])\n\t};\n\n\t/**\n\t * Builds an optimized sequence of segments from a string,\n\t * which will produce the shortest possible bitstream.\n\t *\n\t * @param {String} data Input string\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of segments\n\t */\n\texports.fromString = function fromString (data, version) {\n\t var segs = getSegmentsFromString(data, Utils.isKanjiModeEnabled());\n\n\t var nodes = buildNodes(segs);\n\t var graph = buildGraph(nodes, version);\n\t var path = dijkstra.find_path(graph.map, 'start', 'end');\n\n\t var optimizedSegs = [];\n\t for (var i = 1; i < path.length - 1; i++) {\n\t optimizedSegs.push(graph.table[path[i]].node);\n\t }\n\n\t return exports.fromArray(mergeSegments(optimizedSegs))\n\t};\n\n\t/**\n\t * Splits a string in various segments with the modes which\n\t * best represent their content.\n\t * The produced segments are far from being optimized.\n\t * The output of this function is only used to estimate a QR Code version\n\t * which may contain the data.\n\t *\n\t * @param {string} data Input string\n\t * @return {Array} Array of segments\n\t */\n\texports.rawSplit = function rawSplit (data) {\n\t return exports.fromArray(\n\t getSegmentsFromString(data, Utils.isKanjiModeEnabled())\n\t )\n\t};\n\n\t},{\"./alphanumeric-data\":3,\"./byte-data\":6,\"./kanji-data\":12,\"./mode\":14,\"./numeric-data\":15,\"./regex\":19,\"./utils\":21,\"dijkstrajs\":31}],21:[function(require,module,exports){\n\tvar toSJISFunction;\n\tvar CODEWORDS_COUNT = [\n\t 0, // Not used\n\t 26, 44, 70, 100, 134, 172, 196, 242, 292, 346,\n\t 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085,\n\t 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185,\n\t 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706\n\t];\n\n\t/**\n\t * Returns the QR Code size for the specified version\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Number} size of QR code\n\t */\n\texports.getSymbolSize = function getSymbolSize (version) {\n\t if (!version) throw new Error('\"version\" cannot be null or undefined')\n\t if (version < 1 || version > 40) throw new Error('\"version\" should be in range from 1 to 40')\n\t return version * 4 + 17\n\t};\n\n\t/**\n\t * Returns the total number of codewords used to store data and EC information.\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Number} Data length in bits\n\t */\n\texports.getSymbolTotalCodewords = function getSymbolTotalCodewords (version) {\n\t return CODEWORDS_COUNT[version]\n\t};\n\n\t/**\n\t * Encode data with Bose-Chaudhuri-Hocquenghem\n\t *\n\t * @param {Number} data Value to encode\n\t * @return {Number} Encoded value\n\t */\n\texports.getBCHDigit = function (data) {\n\t var digit = 0;\n\n\t while (data !== 0) {\n\t digit++;\n\t data >>>= 1;\n\t }\n\n\t return digit\n\t};\n\n\texports.setToSJISFunction = function setToSJISFunction (f) {\n\t if (typeof f !== 'function') {\n\t throw new Error('\"toSJISFunc\" is not a valid function.')\n\t }\n\n\t toSJISFunction = f;\n\t};\n\n\texports.isKanjiModeEnabled = function () {\n\t return typeof toSJISFunction !== 'undefined'\n\t};\n\n\texports.toSJIS = function toSJIS (kanji) {\n\t return toSJISFunction(kanji)\n\t};\n\n\t},{}],22:[function(require,module,exports){\n\t/**\n\t * Check if QR Code version is valid\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Boolean} true if valid version, false otherwise\n\t */\n\texports.isValid = function isValid (version) {\n\t return !isNaN(version) && version >= 1 && version <= 40\n\t};\n\n\t},{}],23:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\tvar ECCode = require('./error-correction-code');\n\tvar ECLevel = require('./error-correction-level');\n\tvar Mode = require('./mode');\n\tvar VersionCheck = require('./version-check');\n\tvar isArray = require('isarray');\n\n\t// Generator polynomial used to encode version information\n\tvar G18 = (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0);\n\tvar G18_BCH = Utils.getBCHDigit(G18);\n\n\tfunction getBestVersionForDataLength (mode, length, errorCorrectionLevel) {\n\t for (var currentVersion = 1; currentVersion <= 40; currentVersion++) {\n\t if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel, mode)) {\n\t return currentVersion\n\t }\n\t }\n\n\t return undefined\n\t}\n\n\tfunction getReservedBitsCount (mode, version) {\n\t // Character count indicator + mode indicator bits\n\t return Mode.getCharCountIndicator(mode, version) + 4\n\t}\n\n\tfunction getTotalBitsFromDataArray (segments, version) {\n\t var totalBits = 0;\n\n\t segments.forEach(function (data) {\n\t var reservedBits = getReservedBitsCount(data.mode, version);\n\t totalBits += reservedBits + data.getBitsLength();\n\t });\n\n\t return totalBits\n\t}\n\n\tfunction getBestVersionForMixedData (segments, errorCorrectionLevel) {\n\t for (var currentVersion = 1; currentVersion <= 40; currentVersion++) {\n\t var length = getTotalBitsFromDataArray(segments, currentVersion);\n\t if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel, Mode.MIXED)) {\n\t return currentVersion\n\t }\n\t }\n\n\t return undefined\n\t}\n\n\t/**\n\t * Returns version number from a value.\n\t * If value is not a valid version, returns defaultValue\n\t *\n\t * @param {Number|String} value QR Code version\n\t * @param {Number} defaultValue Fallback value\n\t * @return {Number} QR Code version number\n\t */\n\texports.from = function from (value, defaultValue) {\n\t if (VersionCheck.isValid(value)) {\n\t return parseInt(value, 10)\n\t }\n\n\t return defaultValue\n\t};\n\n\t/**\n\t * Returns how much data can be stored with the specified QR code version\n\t * and error correction level\n\t *\n\t * @param {Number} version QR Code version (1-40)\n\t * @param {Number} errorCorrectionLevel Error correction level\n\t * @param {Mode} mode Data mode\n\t * @return {Number} Quantity of storable data\n\t */\n\texports.getCapacity = function getCapacity (version, errorCorrectionLevel, mode) {\n\t if (!VersionCheck.isValid(version)) {\n\t throw new Error('Invalid QR Code version')\n\t }\n\n\t // Use Byte mode as default\n\t if (typeof mode === 'undefined') mode = Mode.BYTE;\n\n\t // Total codewords for this QR code version (Data + Error correction)\n\t var totalCodewords = Utils.getSymbolTotalCodewords(version);\n\n\t // Total number of error correction codewords\n\t var ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel);\n\n\t // Total number of data codewords\n\t var dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8;\n\n\t if (mode === Mode.MIXED) return dataTotalCodewordsBits\n\n\t var usableBits = dataTotalCodewordsBits - getReservedBitsCount(mode, version);\n\n\t // Return max number of storable codewords\n\t switch (mode) {\n\t case Mode.NUMERIC:\n\t return Math.floor((usableBits / 10) * 3)\n\n\t case Mode.ALPHANUMERIC:\n\t return Math.floor((usableBits / 11) * 2)\n\n\t case Mode.KANJI:\n\t return Math.floor(usableBits / 13)\n\n\t case Mode.BYTE:\n\t default:\n\t return Math.floor(usableBits / 8)\n\t }\n\t};\n\n\t/**\n\t * Returns the minimum version needed to contain the amount of data\n\t *\n\t * @param {Segment} data Segment of data\n\t * @param {Number} [errorCorrectionLevel=H] Error correction level\n\t * @param {Mode} mode Data mode\n\t * @return {Number} QR Code version\n\t */\n\texports.getBestVersionForData = function getBestVersionForData (data, errorCorrectionLevel) {\n\t var seg;\n\n\t var ecl = ECLevel.from(errorCorrectionLevel, ECLevel.M);\n\n\t if (isArray(data)) {\n\t if (data.length > 1) {\n\t return getBestVersionForMixedData(data, ecl)\n\t }\n\n\t if (data.length === 0) {\n\t return 1\n\t }\n\n\t seg = data[0];\n\t } else {\n\t seg = data;\n\t }\n\n\t return getBestVersionForDataLength(seg.mode, seg.getLength(), ecl)\n\t};\n\n\t/**\n\t * Returns version information with relative error correction bits\n\t *\n\t * The version information is included in QR Code symbols of version 7 or larger.\n\t * It consists of an 18-bit sequence containing 6 data bits,\n\t * with 12 error correction bits calculated using the (18, 6) Golay code.\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Number} Encoded version info bits\n\t */\n\texports.getEncodedBits = function getEncodedBits (version) {\n\t if (!VersionCheck.isValid(version) || version < 7) {\n\t throw new Error('Invalid QR Code version')\n\t }\n\n\t var d = version << 12;\n\n\t while (Utils.getBCHDigit(d) - G18_BCH >= 0) {\n\t d ^= (G18 << (Utils.getBCHDigit(d) - G18_BCH));\n\t }\n\n\t return (version << 12) | d\n\t};\n\n\t},{\"./error-correction-code\":7,\"./error-correction-level\":8,\"./mode\":14,\"./utils\":21,\"./version-check\":22,\"isarray\":33}],24:[function(require,module,exports){\n\n\tvar canPromise = require('./can-promise');\n\n\tvar QRCode = require('./core/qrcode');\n\tvar CanvasRenderer = require('./renderer/canvas');\n\tvar SvgRenderer = require('./renderer/svg-tag.js');\n\n\tfunction renderCanvas (renderFunc, canvas, text, opts, cb) {\n\t var args = [].slice.call(arguments, 1);\n\t var argsNum = args.length;\n\t var isLastArgCb = typeof args[argsNum - 1] === 'function';\n\n\t if (!isLastArgCb && !canPromise()) {\n\t throw new Error('Callback required as last argument')\n\t }\n\n\t if (isLastArgCb) {\n\t if (argsNum < 2) {\n\t throw new Error('Too few arguments provided')\n\t }\n\n\t if (argsNum === 2) {\n\t cb = text;\n\t text = canvas;\n\t canvas = opts = undefined;\n\t } else if (argsNum === 3) {\n\t if (canvas.getContext && typeof cb === 'undefined') {\n\t cb = opts;\n\t opts = undefined;\n\t } else {\n\t cb = opts;\n\t opts = text;\n\t text = canvas;\n\t canvas = undefined;\n\t }\n\t }\n\t } else {\n\t if (argsNum < 1) {\n\t throw new Error('Too few arguments provided')\n\t }\n\n\t if (argsNum === 1) {\n\t text = canvas;\n\t canvas = opts = undefined;\n\t } else if (argsNum === 2 && !canvas.getContext) {\n\t opts = text;\n\t text = canvas;\n\t canvas = undefined;\n\t }\n\n\t return new Promise(function (resolve, reject) {\n\t try {\n\t var data = QRCode.create(text, opts);\n\t resolve(renderFunc(data, canvas, opts));\n\t } catch (e) {\n\t reject(e);\n\t }\n\t })\n\t }\n\n\t try {\n\t var data = QRCode.create(text, opts);\n\t cb(null, renderFunc(data, canvas, opts));\n\t } catch (e) {\n\t cb(e);\n\t }\n\t}\n\n\texports.create = QRCode.create;\n\texports.toCanvas = renderCanvas.bind(null, CanvasRenderer.render);\n\texports.toDataURL = renderCanvas.bind(null, CanvasRenderer.renderToDataURL);\n\n\t// only svg for now.\n\texports.toString = renderCanvas.bind(null, function (data, _, opts) {\n\t return SvgRenderer.render(data, opts)\n\t});\n\n\t},{\"./can-promise\":1,\"./core/qrcode\":17,\"./renderer/canvas\":25,\"./renderer/svg-tag.js\":26}],25:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\n\tfunction clearCanvas (ctx, canvas, size) {\n\t ctx.clearRect(0, 0, canvas.width, canvas.height);\n\n\t if (!canvas.style) canvas.style = {};\n\t canvas.height = size;\n\t canvas.width = size;\n\t canvas.style.height = size + 'px';\n\t canvas.style.width = size + 'px';\n\t}\n\n\tfunction getCanvasElement () {\n\t try {\n\t return document.createElement('canvas')\n\t } catch (e) {\n\t throw new Error('You need to specify a canvas element')\n\t }\n\t}\n\n\texports.render = function render (qrData, canvas, options) {\n\t var opts = options;\n\t var canvasEl = canvas;\n\n\t if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n\t opts = canvas;\n\t canvas = undefined;\n\t }\n\n\t if (!canvas) {\n\t canvasEl = getCanvasElement();\n\t }\n\n\t opts = Utils.getOptions(opts);\n\t var size = Utils.getImageWidth(qrData.modules.size, opts);\n\n\t var ctx = canvasEl.getContext('2d');\n\t var image = ctx.createImageData(size, size);\n\t Utils.qrToImageData(image.data, qrData, opts);\n\n\t clearCanvas(ctx, canvasEl, size);\n\t ctx.putImageData(image, 0, 0);\n\n\t return canvasEl\n\t};\n\n\texports.renderToDataURL = function renderToDataURL (qrData, canvas, options) {\n\t var opts = options;\n\n\t if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n\t opts = canvas;\n\t canvas = undefined;\n\t }\n\n\t if (!opts) opts = {};\n\n\t var canvasEl = exports.render(qrData, canvas, opts);\n\n\t var type = opts.type || 'image/png';\n\t var rendererOpts = opts.rendererOpts || {};\n\n\t return canvasEl.toDataURL(type, rendererOpts.quality)\n\t};\n\n\t},{\"./utils\":27}],26:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\n\tfunction getColorAttrib (color, attrib) {\n\t var alpha = color.a / 255;\n\t var str = attrib + '=\"' + color.hex + '\"';\n\n\t return alpha < 1\n\t ? str + ' ' + attrib + '-opacity=\"' + alpha.toFixed(2).slice(1) + '\"'\n\t : str\n\t}\n\n\tfunction svgCmd (cmd, x, y) {\n\t var str = cmd + x;\n\t if (typeof y !== 'undefined') str += ' ' + y;\n\n\t return str\n\t}\n\n\tfunction qrToPath (data, size, margin) {\n\t var path = '';\n\t var moveBy = 0;\n\t var newRow = false;\n\t var lineLength = 0;\n\n\t for (var i = 0; i < data.length; i++) {\n\t var col = Math.floor(i % size);\n\t var row = Math.floor(i / size);\n\n\t if (!col && !newRow) newRow = true;\n\n\t if (data[i]) {\n\t lineLength++;\n\n\t if (!(i > 0 && col > 0 && data[i - 1])) {\n\t path += newRow\n\t ? svgCmd('M', col + margin, 0.5 + row + margin)\n\t : svgCmd('m', moveBy, 0);\n\n\t moveBy = 0;\n\t newRow = false;\n\t }\n\n\t if (!(col + 1 < size && data[i + 1])) {\n\t path += svgCmd('h', lineLength);\n\t lineLength = 0;\n\t }\n\t } else {\n\t moveBy++;\n\t }\n\t }\n\n\t return path\n\t}\n\n\texports.render = function render (qrData, options, cb) {\n\t var opts = Utils.getOptions(options);\n\t var size = qrData.modules.size;\n\t var data = qrData.modules.data;\n\t var qrcodesize = size + opts.margin * 2;\n\n\t var bg = !opts.color.light.a\n\t ? ''\n\t : '<path ' + getColorAttrib(opts.color.light, 'fill') +\n\t ' d=\"M0 0h' + qrcodesize + 'v' + qrcodesize + 'H0z\"/>';\n\n\t var path =\n\t '<path ' + getColorAttrib(opts.color.dark, 'stroke') +\n\t ' d=\"' + qrToPath(data, size, opts.margin) + '\"/>';\n\n\t var viewBox = 'viewBox=\"' + '0 0 ' + qrcodesize + ' ' + qrcodesize + '\"';\n\n\t var width = !opts.width ? '' : 'width=\"' + opts.width + '\" height=\"' + opts.width + '\" ';\n\n\t var svgTag = '<svg xmlns=\"http://www.w3.org/2000/svg\" ' + width + viewBox + ' shape-rendering=\"crispEdges\">' + bg + path + '</svg>\\n';\n\n\t if (typeof cb === 'function') {\n\t cb(null, svgTag);\n\t }\n\n\t return svgTag\n\t};\n\n\t},{\"./utils\":27}],27:[function(require,module,exports){\n\tfunction hex2rgba (hex) {\n\t if (typeof hex === 'number') {\n\t hex = hex.toString();\n\t }\n\n\t if (typeof hex !== 'string') {\n\t throw new Error('Color should be defined as hex string')\n\t }\n\n\t var hexCode = hex.slice().replace('#', '').split('');\n\t if (hexCode.length < 3 || hexCode.length === 5 || hexCode.length > 8) {\n\t throw new Error('Invalid hex color: ' + hex)\n\t }\n\n\t // Convert from short to long form (fff -> ffffff)\n\t if (hexCode.length === 3 || hexCode.length === 4) {\n\t hexCode = Array.prototype.concat.apply([], hexCode.map(function (c) {\n\t return [c, c]\n\t }));\n\t }\n\n\t // Add default alpha value\n\t if (hexCode.length === 6) hexCode.push('F', 'F');\n\n\t var hexValue = parseInt(hexCode.join(''), 16);\n\n\t return {\n\t r: (hexValue >> 24) & 255,\n\t g: (hexValue >> 16) & 255,\n\t b: (hexValue >> 8) & 255,\n\t a: hexValue & 255,\n\t hex: '#' + hexCode.slice(0, 6).join('')\n\t }\n\t}\n\n\texports.getOptions = function getOptions (options) {\n\t if (!options) options = {};\n\t if (!options.color) options.color = {};\n\n\t var margin = typeof options.margin === 'undefined' ||\n\t options.margin === null ||\n\t options.margin < 0 ? 4 : options.margin;\n\n\t var width = options.width && options.width >= 21 ? options.width : undefined;\n\t var scale = options.scale || 4;\n\n\t return {\n\t width: width,\n\t scale: width ? 4 : scale,\n\t margin: margin,\n\t color: {\n\t dark: hex2rgba(options.color.dark || '#000000ff'),\n\t light: hex2rgba(options.color.light || '#ffffffff')\n\t },\n\t type: options.type,\n\t rendererOpts: options.rendererOpts || {}\n\t }\n\t};\n\n\texports.getScale = function getScale (qrSize, opts) {\n\t return opts.width && opts.width >= qrSize + opts.margin * 2\n\t ? opts.width / (qrSize + opts.margin * 2)\n\t : opts.scale\n\t};\n\n\texports.getImageWidth = function getImageWidth (qrSize, opts) {\n\t var scale = exports.getScale(qrSize, opts);\n\t return Math.floor((qrSize + opts.margin * 2) * scale)\n\t};\n\n\texports.qrToImageData = function qrToImageData (imgData, qr, opts) {\n\t var size = qr.modules.size;\n\t var data = qr.modules.data;\n\t var scale = exports.getScale(size, opts);\n\t var symbolSize = Math.floor((size + opts.margin * 2) * scale);\n\t var scaledMargin = opts.margin * scale;\n\t var palette = [opts.color.light, opts.color.dark];\n\n\t for (var i = 0; i < symbolSize; i++) {\n\t for (var j = 0; j < symbolSize; j++) {\n\t var posDst = (i * symbolSize + j) * 4;\n\t var pxColor = opts.color.light;\n\n\t if (i >= scaledMargin && j >= scaledMargin &&\n\t i < symbolSize - scaledMargin && j < symbolSize - scaledMargin) {\n\t var iSrc = Math.floor((i - scaledMargin) / scale);\n\t var jSrc = Math.floor((j - scaledMargin) / scale);\n\t pxColor = palette[data[iSrc * size + jSrc] ? 1 : 0];\n\t }\n\n\t imgData[posDst++] = pxColor.r;\n\t imgData[posDst++] = pxColor.g;\n\t imgData[posDst++] = pxColor.b;\n\t imgData[posDst] = pxColor.a;\n\t }\n\t }\n\t};\n\n\t},{}],28:[function(require,module,exports){\n\n\tvar isArray = require('isarray');\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances be augmented?\n\t try {\n\t var arr = new Uint8Array(1);\n\t arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }};\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tvar K_MAX_LENGTH = Buffer.TYPED_ARRAY_SUPPORT\n\t ? 0x7fffffff\n\t : 0x3fffffff;\n\n\tfunction Buffer (arg, offset, length) {\n\t if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n\t return new Buffer(arg, offset, length)\n\t }\n\n\t if (typeof arg === 'number') {\n\t return allocUnsafe(this, arg)\n\t }\n\n\t return from(this, arg, offset, length)\n\t}\n\n\tif (Buffer.TYPED_ARRAY_SUPPORT) {\n\t Buffer.prototype.__proto__ = Uint8Array.prototype;\n\t Buffer.__proto__ = Uint8Array;\n\n\t // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n\t if (typeof Symbol !== 'undefined' && Symbol.species &&\n\t Buffer[Symbol.species] === Buffer) {\n\t Object.defineProperty(Buffer, Symbol.species, {\n\t value: null,\n\t configurable: true,\n\t enumerable: false,\n\t writable: false\n\t });\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction isnan (val) {\n\t return val !== val // eslint-disable-line no-self-compare\n\t}\n\n\tfunction createBuffer (that, length) {\n\t var buf;\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t buf = new Uint8Array(length);\n\t buf.__proto__ = Buffer.prototype;\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t buf = that;\n\t if (buf === null) {\n\t buf = new Buffer(length);\n\t }\n\t buf.length = length;\n\t }\n\n\t return buf\n\t}\n\n\tfunction allocUnsafe (that, size) {\n\t var buf = createBuffer(that, size < 0 ? 0 : checked(size) | 0);\n\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) {\n\t for (var i = 0; i < size; ++i) {\n\t buf[i] = 0;\n\t }\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromString (that, string) {\n\t var length = byteLength(string) | 0;\n\t var buf = createBuffer(that, length);\n\n\t var actual = buf.write(string);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (that, array) {\n\t var length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t var buf = createBuffer(that, length);\n\t for (var i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayBuffer (that, array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\\'offset\\' is out of bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\\'length\\' is out of bounds')\n\t }\n\n\t var buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new Uint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new Uint8Array(array, byteOffset);\n\t } else {\n\t buf = new Uint8Array(array, byteOffset, length);\n\t }\n\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t buf.__proto__ = Buffer.prototype;\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t buf = fromArrayLike(that, buf);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromObject (that, obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t var len = checked(obj.length) | 0;\n\t var buf = createBuffer(that, len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj) {\n\t if ((typeof ArrayBuffer !== 'undefined' &&\n\t obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n\t if (typeof obj.length !== 'number' || isnan(obj.length)) {\n\t return createBuffer(that, 0)\n\t }\n\t return fromArrayLike(that, obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(that, obj.data)\n\t }\n\t }\n\n\t throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t var codePoint;\n\t var length = string.length;\n\t var leadSurrogate = null;\n\t var bytes = [];\n\n\t for (var i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction byteLength (string) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n\t (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t string = '' + string;\n\t }\n\n\t var len = string.length;\n\t if (len === 0) return 0\n\n\t return utf8ToBytes(string).length\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t for (var i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction from (that, value, offset, length) {\n\t if (typeof value === 'number') {\n\t throw new TypeError('\"value\" argument must not be a number')\n\t }\n\n\t if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n\t return fromArrayBuffer(that, value, offset, length)\n\t }\n\n\t if (typeof value === 'string') {\n\t return fromString(that, value)\n\t }\n\n\t return fromObject(that, value)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length])\n\t } else if (isFinite(offset)) {\n\t offset = offset | 0;\n\t if (isFinite(length)) {\n\t length = length | 0;\n\t } else {\n\t length = undefined;\n\t }\n\t }\n\n\t var remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t return utf8Write(this, string, offset, length)\n\t};\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t var len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t var newBuf;\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t newBuf.__proto__ = Buffer.prototype;\n\t } else {\n\t var sliceLen = end - start;\n\t newBuf = new Buffer(sliceLen, undefined);\n\t for (var i = 0; i < sliceLen; ++i) {\n\t newBuf[i] = this[i + start];\n\t }\n\t }\n\n\t return newBuf\n\t};\n\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t var len = end - start;\n\t var i;\n\n\t if (this === target && start < targetStart && targetStart < end) {\n\t // descending copy from end\n\t for (i = len - 1; i >= 0; --i) {\n\t target[i + targetStart] = this[i + start];\n\t }\n\t } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n\t // ascending copy from start\n\t for (i = 0; i < len; ++i) {\n\t target[i + targetStart] = this[i + start];\n\t }\n\t } else {\n\t Uint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, start + len),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\tBuffer.prototype.fill = function fill (val, start, end) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t end = this.length;\n\t }\n\t if (val.length === 1) {\n\t var code = val.charCodeAt(0);\n\t if (code < 256) {\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t var i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t var bytes = Buffer.isBuffer(val)\n\t ? val\n\t : new Buffer(val);\n\t var len = bytes.length;\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return createBuffer(null, 0)\n\t }\n\n\t var i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t var buffer = allocUnsafe(null, length);\n\t var pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t var buf = list[i];\n\t if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\t buf.copy(buffer, pos);\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tBuffer.byteLength = byteLength;\n\n\tBuffer.prototype._isBuffer = true;\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return !!(b != null && b._isBuffer)\n\t};\n\n\tmodule.exports.alloc = function (size) {\n\t var buffer = new Buffer(size);\n\t buffer.fill(0);\n\t return buffer\n\t};\n\n\tmodule.exports.from = function (data) {\n\t return new Buffer(data)\n\t};\n\n\t},{\"isarray\":33}],29:[function(require,module,exports){\n\n\texports.byteLength = byteLength;\n\texports.toByteArray = toByteArray;\n\texports.fromByteArray = fromByteArray;\n\n\tvar lookup = [];\n\tvar revLookup = [];\n\tvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array;\n\n\tvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\tfor (var i = 0, len = code.length; i < len; ++i) {\n\t lookup[i] = code[i];\n\t revLookup[code.charCodeAt(i)] = i;\n\t}\n\n\t// Support decoding URL-safe base64 strings, as Node.js does.\n\t// See: https://en.wikipedia.org/wiki/Base64#URL_applications\n\trevLookup['-'.charCodeAt(0)] = 62;\n\trevLookup['_'.charCodeAt(0)] = 63;\n\n\tfunction getLens (b64) {\n\t var len = b64.length;\n\n\t if (len % 4 > 0) {\n\t throw new Error('Invalid string. Length must be a multiple of 4')\n\t }\n\n\t // Trim off extra bytes after placeholder bytes are found\n\t // See: https://github.com/beatgammit/base64-js/issues/42\n\t var validLen = b64.indexOf('=');\n\t if (validLen === -1) validLen = len;\n\n\t var placeHoldersLen = validLen === len\n\t ? 0\n\t : 4 - (validLen % 4);\n\n\t return [validLen, placeHoldersLen]\n\t}\n\n\t// base64 is 4/3 + up to two characters of the original data\n\tfunction byteLength (b64) {\n\t var lens = getLens(b64);\n\t var validLen = lens[0];\n\t var placeHoldersLen = lens[1];\n\t return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n\t}\n\n\tfunction _byteLength (b64, validLen, placeHoldersLen) {\n\t return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n\t}\n\n\tfunction toByteArray (b64) {\n\t var tmp;\n\t var lens = getLens(b64);\n\t var validLen = lens[0];\n\t var placeHoldersLen = lens[1];\n\n\t var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen));\n\n\t var curByte = 0;\n\n\t // if there are placeholders, only get up to the last complete 4 chars\n\t var len = placeHoldersLen > 0\n\t ? validLen - 4\n\t : validLen;\n\n\t var i;\n\t for (i = 0; i < len; i += 4) {\n\t tmp =\n\t (revLookup[b64.charCodeAt(i)] << 18) |\n\t (revLookup[b64.charCodeAt(i + 1)] << 12) |\n\t (revLookup[b64.charCodeAt(i + 2)] << 6) |\n\t revLookup[b64.charCodeAt(i + 3)];\n\t arr[curByte++] = (tmp >> 16) & 0xFF;\n\t arr[curByte++] = (tmp >> 8) & 0xFF;\n\t arr[curByte++] = tmp & 0xFF;\n\t }\n\n\t if (placeHoldersLen === 2) {\n\t tmp =\n\t (revLookup[b64.charCodeAt(i)] << 2) |\n\t (revLookup[b64.charCodeAt(i + 1)] >> 4);\n\t arr[curByte++] = tmp & 0xFF;\n\t }\n\n\t if (placeHoldersLen === 1) {\n\t tmp =\n\t (revLookup[b64.charCodeAt(i)] << 10) |\n\t (revLookup[b64.charCodeAt(i + 1)] << 4) |\n\t (revLookup[b64.charCodeAt(i + 2)] >> 2);\n\t arr[curByte++] = (tmp >> 8) & 0xFF;\n\t arr[curByte++] = tmp & 0xFF;\n\t }\n\n\t return arr\n\t}\n\n\tfunction tripletToBase64 (num) {\n\t return lookup[num >> 18 & 0x3F] +\n\t lookup[num >> 12 & 0x3F] +\n\t lookup[num >> 6 & 0x3F] +\n\t lookup[num & 0x3F]\n\t}\n\n\tfunction encodeChunk (uint8, start, end) {\n\t var tmp;\n\t var output = [];\n\t for (var i = start; i < end; i += 3) {\n\t tmp =\n\t ((uint8[i] << 16) & 0xFF0000) +\n\t ((uint8[i + 1] << 8) & 0xFF00) +\n\t (uint8[i + 2] & 0xFF);\n\t output.push(tripletToBase64(tmp));\n\t }\n\t return output.join('')\n\t}\n\n\tfunction fromByteArray (uint8) {\n\t var tmp;\n\t var len = uint8.length;\n\t var extraBytes = len % 3; // if we have 1 byte left, pad 2 bytes\n\t var parts = [];\n\t var maxChunkLength = 16383; // must be multiple of 3\n\n\t // go through the array every three bytes, we'll deal with trailing stuff later\n\t for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n\t parts.push(encodeChunk(\n\t uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)\n\t ));\n\t }\n\n\t // pad the end with zeros, but make sure to not forget the extra bytes\n\t if (extraBytes === 1) {\n\t tmp = uint8[len - 1];\n\t parts.push(\n\t lookup[tmp >> 2] +\n\t lookup[(tmp << 4) & 0x3F] +\n\t '=='\n\t );\n\t } else if (extraBytes === 2) {\n\t tmp = (uint8[len - 2] << 8) + uint8[len - 1];\n\t parts.push(\n\t lookup[tmp >> 10] +\n\t lookup[(tmp >> 4) & 0x3F] +\n\t lookup[(tmp << 2) & 0x3F] +\n\t '='\n\t );\n\t }\n\n\t return parts.join('')\n\t}\n\n\t},{}],30:[function(require,module,exports){\n\n\tvar base64 = require('base64-js');\n\tvar ieee754 = require('ieee754');\n\tvar customInspectSymbol =\n\t (typeof Symbol === 'function' && typeof Symbol.for === 'function')\n\t ? Symbol.for('nodejs.util.inspect.custom')\n\t : null;\n\n\texports.Buffer = Buffer;\n\texports.SlowBuffer = SlowBuffer;\n\texports.INSPECT_MAX_BYTES = 50;\n\n\tvar K_MAX_LENGTH = 0x7fffffff;\n\texports.kMaxLength = K_MAX_LENGTH;\n\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Print warning and recommend using `buffer` v4.x which has an Object\n\t * implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * We report that the browser does not support typed arrays if the are not subclassable\n\t * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n\t * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n\t * for __proto__ and has a buggy typed array implementation.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n\t typeof console.error === 'function') {\n\t console.error(\n\t 'This browser lacks typed array (Uint8Array) support which is required by ' +\n\t '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n\t );\n\t}\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances can be augmented?\n\t try {\n\t var arr = new Uint8Array(1);\n\t var proto = { foo: function () { return 42 } };\n\t Object.setPrototypeOf(proto, Uint8Array.prototype);\n\t Object.setPrototypeOf(arr, proto);\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tObject.defineProperty(Buffer.prototype, 'parent', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.buffer\n\t }\n\t});\n\n\tObject.defineProperty(Buffer.prototype, 'offset', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.byteOffset\n\t }\n\t});\n\n\tfunction createBuffer (length) {\n\t if (length > K_MAX_LENGTH) {\n\t throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n\t }\n\t // Return an augmented `Uint8Array` instance\n\t var buf = new Uint8Array(length);\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\t return buf\n\t}\n\n\t/**\n\t * The Buffer constructor returns instances of `Uint8Array` that have their\n\t * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n\t * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n\t * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n\t * returns a single octet.\n\t *\n\t * The `Uint8Array` prototype remains unmodified.\n\t */\n\n\tfunction Buffer (arg, encodingOrOffset, length) {\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t if (typeof encodingOrOffset === 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be of type string. Received type number'\n\t )\n\t }\n\t return allocUnsafe(arg)\n\t }\n\t return from(arg, encodingOrOffset, length)\n\t}\n\n\t// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n\tif (typeof Symbol !== 'undefined' && Symbol.species != null &&\n\t Buffer[Symbol.species] === Buffer) {\n\t Object.defineProperty(Buffer, Symbol.species, {\n\t value: null,\n\t configurable: true,\n\t enumerable: false,\n\t writable: false\n\t });\n\t}\n\n\tBuffer.poolSize = 8192; // not used by this implementation\n\n\tfunction from (value, encodingOrOffset, length) {\n\t if (typeof value === 'string') {\n\t return fromString(value, encodingOrOffset)\n\t }\n\n\t if (ArrayBuffer.isView(value)) {\n\t return fromArrayLike(value)\n\t }\n\n\t if (value == null) {\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t }\n\n\t if (isInstance(value, ArrayBuffer) ||\n\t (value && isInstance(value.buffer, ArrayBuffer))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof value === 'number') {\n\t throw new TypeError(\n\t 'The \"value\" argument must not be of type number. Received type number'\n\t )\n\t }\n\n\t var valueOf = value.valueOf && value.valueOf();\n\t if (valueOf != null && valueOf !== value) {\n\t return Buffer.from(valueOf, encodingOrOffset, length)\n\t }\n\n\t var b = fromObject(value);\n\t if (b) return b\n\n\t if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n\t typeof value[Symbol.toPrimitive] === 'function') {\n\t return Buffer.from(\n\t value[Symbol.toPrimitive]('string'), encodingOrOffset, length\n\t )\n\t }\n\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t}\n\n\t/**\n\t * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n\t * if value is a number.\n\t * Buffer.from(str[, encoding])\n\t * Buffer.from(array)\n\t * Buffer.from(buffer)\n\t * Buffer.from(arrayBuffer[, byteOffset[, length]])\n\t **/\n\tBuffer.from = function (value, encodingOrOffset, length) {\n\t return from(value, encodingOrOffset, length)\n\t};\n\n\t// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n\t// https://github.com/feross/buffer/pull/148\n\tObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype);\n\tObject.setPrototypeOf(Buffer, Uint8Array);\n\n\tfunction assertSize (size) {\n\t if (typeof size !== 'number') {\n\t throw new TypeError('\"size\" argument must be of type number')\n\t } else if (size < 0) {\n\t throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n\t }\n\t}\n\n\tfunction alloc (size, fill, encoding) {\n\t assertSize(size);\n\t if (size <= 0) {\n\t return createBuffer(size)\n\t }\n\t if (fill !== undefined) {\n\t // Only pay attention to encoding if it's a string. This\n\t // prevents accidentally sending in a number that would\n\t // be interpretted as a start offset.\n\t return typeof encoding === 'string'\n\t ? createBuffer(size).fill(fill, encoding)\n\t : createBuffer(size).fill(fill)\n\t }\n\t return createBuffer(size)\n\t}\n\n\t/**\n\t * Creates a new filled Buffer instance.\n\t * alloc(size[, fill[, encoding]])\n\t **/\n\tBuffer.alloc = function (size, fill, encoding) {\n\t return alloc(size, fill, encoding)\n\t};\n\n\tfunction allocUnsafe (size) {\n\t assertSize(size);\n\t return createBuffer(size < 0 ? 0 : checked(size) | 0)\n\t}\n\n\t/**\n\t * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n\t * */\n\tBuffer.allocUnsafe = function (size) {\n\t return allocUnsafe(size)\n\t};\n\t/**\n\t * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n\t */\n\tBuffer.allocUnsafeSlow = function (size) {\n\t return allocUnsafe(size)\n\t};\n\n\tfunction fromString (string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') {\n\t encoding = 'utf8';\n\t }\n\n\t if (!Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\n\t var length = byteLength(string, encoding) | 0;\n\t var buf = createBuffer(length);\n\n\t var actual = buf.write(string, encoding);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (array) {\n\t var length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t var buf = createBuffer(length);\n\t for (var i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayBuffer (array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\"offset\" is outside of buffer bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\"length\" is outside of buffer bounds')\n\t }\n\n\t var buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new Uint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new Uint8Array(array, byteOffset);\n\t } else {\n\t buf = new Uint8Array(array, byteOffset, length);\n\t }\n\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\n\t return buf\n\t}\n\n\tfunction fromObject (obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t var len = checked(obj.length) | 0;\n\t var buf = createBuffer(len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj.length !== undefined) {\n\t if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n\t return createBuffer(0)\n\t }\n\t return fromArrayLike(obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(obj.data)\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction SlowBuffer (length) {\n\t if (+length != length) { // eslint-disable-line eqeqeq\n\t length = 0;\n\t }\n\t return Buffer.alloc(+length)\n\t}\n\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return b != null && b._isBuffer === true &&\n\t b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n\t};\n\n\tBuffer.compare = function compare (a, b) {\n\t if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength);\n\t if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength);\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError(\n\t 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n\t )\n\t }\n\n\t if (a === b) return 0\n\n\t var x = a.length;\n\t var y = b.length;\n\n\t for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n\t if (a[i] !== b[i]) {\n\t x = a[i];\n\t y = b[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t case 'base64':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!Array.isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return Buffer.alloc(0)\n\t }\n\n\t var i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t var buffer = Buffer.allocUnsafe(length);\n\t var pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t var buf = list[i];\n\t if (isInstance(buf, Uint8Array)) {\n\t buf = Buffer.from(buf);\n\t }\n\t if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\t buf.copy(buffer, pos);\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tfunction byteLength (string, encoding) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n\t 'Received type ' + typeof string\n\t )\n\t }\n\n\t var len = string.length;\n\t var mustMatch = (arguments.length > 2 && arguments[2] === true);\n\t if (!mustMatch && len === 0) return 0\n\n\t // Use a for loop to avoid recursion\n\t var loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) {\n\t return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n\t }\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength;\n\n\tfunction slowToString (encoding, start, end) {\n\t var loweredCase = false;\n\n\t // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n\t // property of a typed array.\n\n\t // This behaves neither like String nor Uint8Array in that we set start/end\n\t // to their upper/lower bounds if the value passed is out of range.\n\t // undefined is handled specially as per ECMA-262 6th Edition,\n\t // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n\t if (start === undefined || start < 0) {\n\t start = 0;\n\t }\n\t // Return early if start > this.length. Done here to prevent potential uint32\n\t // coercion fail below.\n\t if (start > this.length) {\n\t return ''\n\t }\n\n\t if (end === undefined || end > this.length) {\n\t end = this.length;\n\t }\n\n\t if (end <= 0) {\n\t return ''\n\t }\n\n\t // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n\t end >>>= 0;\n\t start >>>= 0;\n\n\t if (end <= start) {\n\t return ''\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Slice(this, start, end)\n\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\n\t// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n\t// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n\t// reliably in a browserify context because there could be multiple different\n\t// copies of the 'buffer' package in use. This method works even for Buffer\n\t// instances that were created from another copy of the `buffer` package.\n\t// See: https://github.com/feross/buffer/issues/154\n\tBuffer.prototype._isBuffer = true;\n\n\tfunction swap (b, n, m) {\n\t var i = b[n];\n\t b[n] = b[m];\n\t b[m] = i;\n\t}\n\n\tBuffer.prototype.swap16 = function swap16 () {\n\t var len = this.length;\n\t if (len % 2 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 16-bits')\n\t }\n\t for (var i = 0; i < len; i += 2) {\n\t swap(this, i, i + 1);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap32 = function swap32 () {\n\t var len = this.length;\n\t if (len % 4 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 32-bits')\n\t }\n\t for (var i = 0; i < len; i += 4) {\n\t swap(this, i, i + 3);\n\t swap(this, i + 1, i + 2);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap64 = function swap64 () {\n\t var len = this.length;\n\t if (len % 8 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 64-bits')\n\t }\n\t for (var i = 0; i < len; i += 8) {\n\t swap(this, i, i + 7);\n\t swap(this, i + 1, i + 6);\n\t swap(this, i + 2, i + 5);\n\t swap(this, i + 3, i + 4);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.toString = function toString () {\n\t var length = this.length;\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t};\n\n\tBuffer.prototype.toLocaleString = Buffer.prototype.toString;\n\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t};\n\n\tBuffer.prototype.inspect = function inspect () {\n\t var str = '';\n\t var max = exports.INSPECT_MAX_BYTES;\n\t str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim();\n\t if (this.length > max) str += ' ... ';\n\t return '<Buffer ' + str + '>'\n\t};\n\tif (customInspectSymbol) {\n\t Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect;\n\t}\n\n\tBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n\t if (isInstance(target, Uint8Array)) {\n\t target = Buffer.from(target, target.offset, target.byteLength);\n\t }\n\t if (!Buffer.isBuffer(target)) {\n\t throw new TypeError(\n\t 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n\t 'Received type ' + (typeof target)\n\t )\n\t }\n\n\t if (start === undefined) {\n\t start = 0;\n\t }\n\t if (end === undefined) {\n\t end = target ? target.length : 0;\n\t }\n\t if (thisStart === undefined) {\n\t thisStart = 0;\n\t }\n\t if (thisEnd === undefined) {\n\t thisEnd = this.length;\n\t }\n\n\t if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n\t throw new RangeError('out of range index')\n\t }\n\n\t if (thisStart >= thisEnd && start >= end) {\n\t return 0\n\t }\n\t if (thisStart >= thisEnd) {\n\t return -1\n\t }\n\t if (start >= end) {\n\t return 1\n\t }\n\n\t start >>>= 0;\n\t end >>>= 0;\n\t thisStart >>>= 0;\n\t thisEnd >>>= 0;\n\n\t if (this === target) return 0\n\n\t var x = thisEnd - thisStart;\n\t var y = end - start;\n\t var len = Math.min(x, y);\n\n\t var thisCopy = this.slice(thisStart, thisEnd);\n\t var targetCopy = target.slice(start, end);\n\n\t for (var i = 0; i < len; ++i) {\n\t if (thisCopy[i] !== targetCopy[i]) {\n\t x = thisCopy[i];\n\t y = targetCopy[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\t// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n\t// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n\t//\n\t// Arguments:\n\t// - buffer - a Buffer to search\n\t// - val - a string, Buffer, or number\n\t// - byteOffset - an index into `buffer`; will be clamped to an int32\n\t// - encoding - an optional encoding, relevant is val is a string\n\t// - dir - true for indexOf, false for lastIndexOf\n\tfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n\t // Empty buffer means no match\n\t if (buffer.length === 0) return -1\n\n\t // Normalize byteOffset\n\t if (typeof byteOffset === 'string') {\n\t encoding = byteOffset;\n\t byteOffset = 0;\n\t } else if (byteOffset > 0x7fffffff) {\n\t byteOffset = 0x7fffffff;\n\t } else if (byteOffset < -0x80000000) {\n\t byteOffset = -0x80000000;\n\t }\n\t byteOffset = +byteOffset; // Coerce to Number.\n\t if (numberIsNaN(byteOffset)) {\n\t // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n\t byteOffset = dir ? 0 : (buffer.length - 1);\n\t }\n\n\t // Normalize byteOffset: negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = buffer.length + byteOffset;\n\t if (byteOffset >= buffer.length) {\n\t if (dir) return -1\n\t else byteOffset = buffer.length - 1;\n\t } else if (byteOffset < 0) {\n\t if (dir) byteOffset = 0;\n\t else return -1\n\t }\n\n\t // Normalize val\n\t if (typeof val === 'string') {\n\t val = Buffer.from(val, encoding);\n\t }\n\n\t // Finally, search either indexOf (if dir is true) or lastIndexOf\n\t if (Buffer.isBuffer(val)) {\n\t // Special case: looking for empty string/buffer always fails\n\t if (val.length === 0) {\n\t return -1\n\t }\n\t return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n\t } else if (typeof val === 'number') {\n\t val = val & 0xFF; // Search for a byte value [0-255]\n\t if (typeof Uint8Array.prototype.indexOf === 'function') {\n\t if (dir) {\n\t return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n\t } else {\n\t return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n\t }\n\t }\n\t return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n\t }\n\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\n\tfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n\t var indexSize = 1;\n\t var arrLength = arr.length;\n\t var valLength = val.length;\n\n\t if (encoding !== undefined) {\n\t encoding = String(encoding).toLowerCase();\n\t if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n\t encoding === 'utf16le' || encoding === 'utf-16le') {\n\t if (arr.length < 2 || val.length < 2) {\n\t return -1\n\t }\n\t indexSize = 2;\n\t arrLength /= 2;\n\t valLength /= 2;\n\t byteOffset /= 2;\n\t }\n\t }\n\n\t function read (buf, i) {\n\t if (indexSize === 1) {\n\t return buf[i]\n\t } else {\n\t return buf.readUInt16BE(i * indexSize)\n\t }\n\t }\n\n\t var i;\n\t if (dir) {\n\t var foundIndex = -1;\n\t for (i = byteOffset; i < arrLength; i++) {\n\t if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n\t if (foundIndex === -1) foundIndex = i;\n\t if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n\t } else {\n\t if (foundIndex !== -1) i -= i - foundIndex;\n\t foundIndex = -1;\n\t }\n\t }\n\t } else {\n\t if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength;\n\t for (i = byteOffset; i >= 0; i--) {\n\t var found = true;\n\t for (var j = 0; j < valLength; j++) {\n\t if (read(arr, i + j) !== read(val, j)) {\n\t found = false;\n\t break\n\t }\n\t }\n\t if (found) return i\n\t }\n\t }\n\n\t return -1\n\t}\n\n\tBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n\t return this.indexOf(val, byteOffset, encoding) !== -1\n\t};\n\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n\t};\n\n\tBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n\t};\n\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0;\n\t var remaining = buf.length - offset;\n\t if (!length) {\n\t length = remaining;\n\t } else {\n\t length = Number(length);\n\t if (length > remaining) {\n\t length = remaining;\n\t }\n\t }\n\n\t var strLen = string.length;\n\n\t if (length > strLen / 2) {\n\t length = strLen / 2;\n\t }\n\t for (var i = 0; i < length; ++i) {\n\t var parsed = parseInt(string.substr(i * 2, 2), 16);\n\t if (numberIsNaN(parsed)) return i\n\t buf[offset + i] = parsed;\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\n\tfunction latin1Write (buf, string, offset, length) {\n\t return asciiWrite(buf, string, offset, length)\n\t}\n\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8';\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset;\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset >>> 0;\n\t if (isFinite(length)) {\n\t length = length >>> 0;\n\t if (encoding === undefined) encoding = 'utf8';\n\t } else {\n\t encoding = length;\n\t length = undefined;\n\t }\n\t } else {\n\t throw new Error(\n\t 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n\t )\n\t }\n\n\t var remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t var loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\n\t case 'ascii':\n\t return asciiWrite(this, string, offset, length)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Write(this, string, offset, length)\n\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t};\n\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t};\n\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end);\n\t var res = [];\n\n\t var i = start;\n\t while (i < end) {\n\t var firstByte = buf[i];\n\t var codePoint = null;\n\t var bytesPerSequence = (firstByte > 0xEF) ? 4\n\t : (firstByte > 0xDF) ? 3\n\t : (firstByte > 0xBF) ? 2\n\t : 1;\n\n\t if (i + bytesPerSequence <= end) {\n\t var secondByte, thirdByte, fourthByte, tempCodePoint;\n\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte;\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1];\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F);\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F);\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t fourthByte = buf[i + 3];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F);\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t }\n\t }\n\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD;\n\t bytesPerSequence = 1;\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000;\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800);\n\t codePoint = 0xDC00 | codePoint & 0x3FF;\n\t }\n\n\t res.push(codePoint);\n\t i += bytesPerSequence;\n\t }\n\n\t return decodeCodePointsArray(res)\n\t}\n\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tvar MAX_ARGUMENTS_LENGTH = 0x1000;\n\n\tfunction decodeCodePointsArray (codePoints) {\n\t var len = codePoints.length;\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t var res = '';\n\t var i = 0;\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t );\n\t }\n\t return res\n\t}\n\n\tfunction asciiSlice (buf, start, end) {\n\t var ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (var i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i] & 0x7F);\n\t }\n\t return ret\n\t}\n\n\tfunction latin1Slice (buf, start, end) {\n\t var ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (var i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i]);\n\t }\n\t return ret\n\t}\n\n\tfunction hexSlice (buf, start, end) {\n\t var len = buf.length;\n\n\t if (!start || start < 0) start = 0;\n\t if (!end || end < 0 || end > len) end = len;\n\n\t var out = '';\n\t for (var i = start; i < end; ++i) {\n\t out += hexSliceLookupTable[buf[i]];\n\t }\n\t return out\n\t}\n\n\tfunction utf16leSlice (buf, start, end) {\n\t var bytes = buf.slice(start, end);\n\t var res = '';\n\t for (var i = 0; i < bytes.length; i += 2) {\n\t res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256));\n\t }\n\t return res\n\t}\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t var len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t var newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(newBuf, Buffer.prototype);\n\n\t return newBuf\n\t};\n\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t var val = this[offset];\n\t var mul = 1;\n\t var i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length);\n\t }\n\n\t var val = this[offset + --byteLength];\n\t var mul = 1;\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t return this[offset]\n\t};\n\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return this[offset] | (this[offset + 1] << 8)\n\t};\n\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return (this[offset] << 8) | this[offset + 1]\n\t};\n\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t};\n\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t};\n\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t var val = this[offset];\n\t var mul = 1;\n\t var i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t var i = byteLength;\n\t var mul = 1;\n\t var val = this[offset + --i];\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t};\n\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t var val = this[offset] | (this[offset + 1] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t var val = this[offset + 1] | (this[offset] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t};\n\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t};\n\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754.read(this, offset, true, 23, 4)\n\t};\n\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754.read(this, offset, false, 23, 4)\n\t};\n\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754.read(this, offset, true, 52, 8)\n\t};\n\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754.read(this, offset, false, 52, 8)\n\t};\n\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t}\n\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t var maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t var mul = 1;\n\t var i = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t var maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t var i = byteLength - 1;\n\t var mul = 1;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0);\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset + 3] = (value >>> 24);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t var limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t var i = 0;\n\t var mul = 1;\n\t var sub = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t var limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t var i = byteLength - 1;\n\t var mul = 1;\n\t var sub = 0;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80);\n\t if (value < 0) value = 0xff + value + 1;\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 3] = (value >>> 24);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t if (value < 0) value = 0xffffffff + value + 1;\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t if (offset < 0) throw new RangeError('Index out of range')\n\t}\n\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4);\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 23, 4);\n\t return offset + 4\n\t}\n\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t};\n\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8);\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 52, 8);\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t};\n\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t var len = end - start;\n\n\t if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n\t // Use built-in when available, missing from IE11\n\t this.copyWithin(targetStart, start, end);\n\t } else if (this === target && start < targetStart && targetStart < end) {\n\t // descending copy from end\n\t for (var i = len - 1; i >= 0; --i) {\n\t target[i + targetStart] = this[i + start];\n\t }\n\t } else {\n\t Uint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, end),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\t// Usage:\n\t// buffer.fill(number[, offset[, end]])\n\t// buffer.fill(buffer[, offset[, end]])\n\t// buffer.fill(string[, offset[, end]][, encoding])\n\tBuffer.prototype.fill = function fill (val, start, end, encoding) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t encoding = start;\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t encoding = end;\n\t end = this.length;\n\t }\n\t if (encoding !== undefined && typeof encoding !== 'string') {\n\t throw new TypeError('encoding must be a string')\n\t }\n\t if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\t if (val.length === 1) {\n\t var code = val.charCodeAt(0);\n\t if ((encoding === 'utf8' && code < 128) ||\n\t encoding === 'latin1') {\n\t // Fast path: If `val` fits into a single byte, use that numeric value.\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t } else if (typeof val === 'boolean') {\n\t val = Number(val);\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t var i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t var bytes = Buffer.isBuffer(val)\n\t ? val\n\t : Buffer.from(val, encoding);\n\t var len = bytes.length;\n\t if (len === 0) {\n\t throw new TypeError('The value \"' + val +\n\t '\" is invalid for argument \"value\"')\n\t }\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\t// HELPER FUNCTIONS\n\t// ================\n\n\tvar INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\n\n\tfunction base64clean (str) {\n\t // Node takes equal signs as end of the Base64 encoding\n\t str = str.split('=')[0];\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = str.trim().replace(INVALID_BASE64_RE, '');\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '=';\n\t }\n\t return str\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t var codePoint;\n\t var length = string.length;\n\t var leadSurrogate = null;\n\t var bytes = [];\n\n\t for (var i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction asciiToBytes (str) {\n\t var byteArray = [];\n\t for (var i = 0; i < str.length; ++i) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF);\n\t }\n\t return byteArray\n\t}\n\n\tfunction utf16leToBytes (str, units) {\n\t var c, hi, lo;\n\t var byteArray = [];\n\t for (var i = 0; i < str.length; ++i) {\n\t if ((units -= 2) < 0) break\n\n\t c = str.charCodeAt(i);\n\t hi = c >> 8;\n\t lo = c % 256;\n\t byteArray.push(lo);\n\t byteArray.push(hi);\n\t }\n\n\t return byteArray\n\t}\n\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t for (var i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\t// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n\t// the `instanceof` check but they should be treated as of that type.\n\t// See: https://github.com/feross/buffer/issues/166\n\tfunction isInstance (obj, type) {\n\t return obj instanceof type ||\n\t (obj != null && obj.constructor != null && obj.constructor.name != null &&\n\t obj.constructor.name === type.name)\n\t}\n\tfunction numberIsNaN (obj) {\n\t // For IE11 support\n\t return obj !== obj // eslint-disable-line no-self-compare\n\t}\n\n\t// Create lookup table for `toString('hex')`\n\t// See: https://github.com/feross/buffer/issues/219\n\tvar hexSliceLookupTable = (function () {\n\t var alphabet = '0123456789abcdef';\n\t var table = new Array(256);\n\t for (var i = 0; i < 16; ++i) {\n\t var i16 = i * 16;\n\t for (var j = 0; j < 16; ++j) {\n\t table[i16 + j] = alphabet[i] + alphabet[j];\n\t }\n\t }\n\t return table\n\t})();\n\n\t},{\"base64-js\":29,\"ieee754\":32}],31:[function(require,module,exports){\n\n\t/******************************************************************************\n\t * Created 2008-08-19.\n\t *\n\t * Dijkstra path-finding functions. Adapted from the Dijkstar Python project.\n\t *\n\t * Copyright (C) 2008\n\t * Wyatt Baldwin <self@wyattbaldwin.com>\n\t * All rights reserved\n\t *\n\t * Licensed under the MIT license.\n\t *\n\t * http://www.opensource.org/licenses/mit-license.php\n\t *\n\t * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n\t * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n\t * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n\t * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n\t * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n\t * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n\t * THE SOFTWARE.\n\t *****************************************************************************/\n\tvar dijkstra = {\n\t single_source_shortest_paths: function(graph, s, d) {\n\t // Predecessor map for each node that has been encountered.\n\t // node ID => predecessor node ID\n\t var predecessors = {};\n\n\t // Costs of shortest paths from s to all nodes encountered.\n\t // node ID => cost\n\t var costs = {};\n\t costs[s] = 0;\n\n\t // Costs of shortest paths from s to all nodes encountered; differs from\n\t // `costs` in that it provides easy access to the node that currently has\n\t // the known shortest path from s.\n\t // XXX: Do we actually need both `costs` and `open`?\n\t var open = dijkstra.PriorityQueue.make();\n\t open.push(s, 0);\n\n\t var closest,\n\t u, v,\n\t cost_of_s_to_u,\n\t adjacent_nodes,\n\t cost_of_e,\n\t cost_of_s_to_u_plus_cost_of_e,\n\t cost_of_s_to_v,\n\t first_visit;\n\t while (!open.empty()) {\n\t // In the nodes remaining in graph that have a known cost from s,\n\t // find the node, u, that currently has the shortest path from s.\n\t closest = open.pop();\n\t u = closest.value;\n\t cost_of_s_to_u = closest.cost;\n\n\t // Get nodes adjacent to u...\n\t adjacent_nodes = graph[u] || {};\n\n\t // ...and explore the edges that connect u to those nodes, updating\n\t // the cost of the shortest paths to any or all of those nodes as\n\t // necessary. v is the node across the current edge from u.\n\t for (v in adjacent_nodes) {\n\t if (adjacent_nodes.hasOwnProperty(v)) {\n\t // Get the cost of the edge running from u to v.\n\t cost_of_e = adjacent_nodes[v];\n\n\t // Cost of s to u plus the cost of u to v across e--this is *a*\n\t // cost from s to v that may or may not be less than the current\n\t // known cost to v.\n\t cost_of_s_to_u_plus_cost_of_e = cost_of_s_to_u + cost_of_e;\n\n\t // If we haven't visited v yet OR if the current known cost from s to\n\t // v is greater than the new cost we just found (cost of s to u plus\n\t // cost of u to v across e), update v's cost in the cost list and\n\t // update v's predecessor in the predecessor list (it's now u).\n\t cost_of_s_to_v = costs[v];\n\t first_visit = (typeof costs[v] === 'undefined');\n\t if (first_visit || cost_of_s_to_v > cost_of_s_to_u_plus_cost_of_e) {\n\t costs[v] = cost_of_s_to_u_plus_cost_of_e;\n\t open.push(v, cost_of_s_to_u_plus_cost_of_e);\n\t predecessors[v] = u;\n\t }\n\t }\n\t }\n\t }\n\n\t if (typeof d !== 'undefined' && typeof costs[d] === 'undefined') {\n\t var msg = ['Could not find a path from ', s, ' to ', d, '.'].join('');\n\t throw new Error(msg);\n\t }\n\n\t return predecessors;\n\t },\n\n\t extract_shortest_path_from_predecessor_list: function(predecessors, d) {\n\t var nodes = [];\n\t var u = d;\n\t var predecessor;\n\t while (u) {\n\t nodes.push(u);\n\t predecessor = predecessors[u];\n\t u = predecessors[u];\n\t }\n\t nodes.reverse();\n\t return nodes;\n\t },\n\n\t find_path: function(graph, s, d) {\n\t var predecessors = dijkstra.single_source_shortest_paths(graph, s, d);\n\t return dijkstra.extract_shortest_path_from_predecessor_list(\n\t predecessors, d);\n\t },\n\n\t /**\n\t * A very naive priority queue implementation.\n\t */\n\t PriorityQueue: {\n\t make: function (opts) {\n\t var T = dijkstra.PriorityQueue,\n\t t = {},\n\t key;\n\t opts = opts || {};\n\t for (key in T) {\n\t if (T.hasOwnProperty(key)) {\n\t t[key] = T[key];\n\t }\n\t }\n\t t.queue = [];\n\t t.sorter = opts.sorter || T.default_sorter;\n\t return t;\n\t },\n\n\t default_sorter: function (a, b) {\n\t return a.cost - b.cost;\n\t },\n\n\t /**\n\t * Add a new item to the queue and ensure the highest priority element\n\t * is at the front of the queue.\n\t */\n\t push: function (value, cost) {\n\t var item = {value: value, cost: cost};\n\t this.queue.push(item);\n\t this.queue.sort(this.sorter);\n\t },\n\n\t /**\n\t * Return the highest priority element in the queue.\n\t */\n\t pop: function () {\n\t return this.queue.shift();\n\t },\n\n\t empty: function () {\n\t return this.queue.length === 0;\n\t }\n\t }\n\t};\n\n\n\t// node.js module exports\n\tif (typeof module !== 'undefined') {\n\t module.exports = dijkstra;\n\t}\n\n\t},{}],32:[function(require,module,exports){\n\texports.read = function (buffer, offset, isLE, mLen, nBytes) {\n\t var e, m;\n\t var eLen = (nBytes * 8) - mLen - 1;\n\t var eMax = (1 << eLen) - 1;\n\t var eBias = eMax >> 1;\n\t var nBits = -7;\n\t var i = isLE ? (nBytes - 1) : 0;\n\t var d = isLE ? -1 : 1;\n\t var s = buffer[offset + i];\n\n\t i += d;\n\n\t e = s & ((1 << (-nBits)) - 1);\n\t s >>= (-nBits);\n\t nBits += eLen;\n\t for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n\t m = e & ((1 << (-nBits)) - 1);\n\t e >>= (-nBits);\n\t nBits += mLen;\n\t for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n\t if (e === 0) {\n\t e = 1 - eBias;\n\t } else if (e === eMax) {\n\t return m ? NaN : ((s ? -1 : 1) * Infinity)\n\t } else {\n\t m = m + Math.pow(2, mLen);\n\t e = e - eBias;\n\t }\n\t return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n\t};\n\n\texports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n\t var e, m, c;\n\t var eLen = (nBytes * 8) - mLen - 1;\n\t var eMax = (1 << eLen) - 1;\n\t var eBias = eMax >> 1;\n\t var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0);\n\t var i = isLE ? 0 : (nBytes - 1);\n\t var d = isLE ? 1 : -1;\n\t var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\n\n\t value = Math.abs(value);\n\n\t if (isNaN(value) || value === Infinity) {\n\t m = isNaN(value) ? 1 : 0;\n\t e = eMax;\n\t } else {\n\t e = Math.floor(Math.log(value) / Math.LN2);\n\t if (value * (c = Math.pow(2, -e)) < 1) {\n\t e--;\n\t c *= 2;\n\t }\n\t if (e + eBias >= 1) {\n\t value += rt / c;\n\t } else {\n\t value += rt * Math.pow(2, 1 - eBias);\n\t }\n\t if (value * c >= 2) {\n\t e++;\n\t c /= 2;\n\t }\n\n\t if (e + eBias >= eMax) {\n\t m = 0;\n\t e = eMax;\n\t } else if (e + eBias >= 1) {\n\t m = ((value * c) - 1) * Math.pow(2, mLen);\n\t e = e + eBias;\n\t } else {\n\t m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\n\t e = 0;\n\t }\n\t }\n\n\t for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n\t e = (e << mLen) | m;\n\t eLen += mLen;\n\t for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n\t buffer[offset + i - d] |= s * 128;\n\t};\n\n\t},{}],33:[function(require,module,exports){\n\tvar toString = {}.toString;\n\n\tmodule.exports = Array.isArray || function (arr) {\n\t return toString.call(arr) == '[object Array]';\n\t};\n\n\t},{}]},{},[24])(24)\n\t});\n\n\n\t});\n\n\tvar index = {\n\t name: 'qrcode',\n\t props: {\n\t /**\n\t * The value of the QR code.\n\t */\n\t value: null,\n\n\t /**\n\t * The options for the QR code generator.\n\t * {@link https://github.com/soldair/node-qrcode#qr-code-options}\n\t */\n\t options: Object,\n\n\t /**\n\t * The tag name of the component's root element.\n\t */\n\t tag: {\n\t type: String,\n\t default: 'canvas'\n\t }\n\t },\n\t render: function render(createElement) {\n\t return createElement(this.tag, this.$slots.default);\n\t },\n\t watch: {\n\t $props: {\n\t deep: true,\n\t immediate: true,\n\n\t /**\n\t * Update the QR code when props changed.\n\t */\n\t handler: function handler() {\n\t if (this.$el) {\n\t this.generate();\n\t }\n\t }\n\t }\n\t },\n\t methods: {\n\t /**\n\t * Generate QR code.\n\t */\n\t generate: function generate() {\n\t var _this = this;\n\n\t var options = this.options,\n\t tag = this.tag;\n\t var value = String(this.value);\n\n\t if (tag === 'canvas') {\n\t qrcode.toCanvas(this.$el, value, options, function (error) {\n\t /* istanbul ignore if */\n\t if (error) {\n\t throw error;\n\t }\n\t });\n\t } else if (tag === 'img') {\n\t qrcode.toDataURL(value, options, function (error, url) {\n\t /* istanbul ignore if */\n\t if (error) {\n\t throw error;\n\t }\n\n\t _this.$el.src = url;\n\t });\n\t } else {\n\t qrcode.toString(value, options, function (error, string) {\n\t /* istanbul ignore if */\n\t if (error) {\n\t throw error;\n\t }\n\n\t _this.$el.innerHTML = string;\n\t });\n\t }\n\t }\n\t },\n\t mounted: function mounted() {\n\t this.generate();\n\t }\n\t};\n\n\treturn index;\n\n})));\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../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, `.fade-enter-active[data-v-8e58e0a5],\n.fade-leave-active[data-v-8e58e0a5] {\n transition: opacity .3s ease;\n}\n.fade-enter[data-v-8e58e0a5],\n.fade-leave-to[data-v-8e58e0a5] {\n opacity: 0;\n}\n.linked-icons[data-v-8e58e0a5] {\n display: flex;\n}\n.linked-icons img[data-v-8e58e0a5] {\n padding: 12px;\n height: 44px;\n display: block;\n background-repeat: no-repeat;\n background-position: center;\n opacity: .7;\n}\n.linked-icons img[data-v-8e58e0a5]:hover {\n opacity: 1;\n}\n.popovermenu[data-v-8e58e0a5] {\n display: none;\n}\n.popovermenu.open[data-v-8e58e0a5] {\n display: block;\n}\nli.collection-list-item[data-v-8e58e0a5] {\n flex-wrap: wrap;\n height: auto;\n cursor: pointer;\n margin-bottom: 0 !important;\n}\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\n margin-top: 6px;\n}\nli.collection-list-item form[data-v-8e58e0a5],\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n flex-basis: 10%;\n flex-grow: 1;\n display: flex;\n}\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n padding: 12px 9px;\n}\nli.collection-list-item input[data-v-8e58e0a5] {\n margin-top: 4px;\n border-color: var(--color-border-maxcontrast);\n}\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\n flex-grow: 1;\n}\nli.collection-list-item .error[data-v-8e58e0a5],\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\n flex-basis: 100%;\n width: 100%;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\n display: flex;\n margin-left: 44px;\n border-radius: 3px;\n cursor: pointer;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\n background-color: var(--color-background-dark);\n}\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\n flex-grow: 1;\n padding: 3px;\n max-width: calc(100% - 30px);\n display: flex;\n}\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\n display: inline-block;\n vertical-align: top;\n margin-right: 10px;\n}\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\n text-overflow: ellipsis;\n overflow: hidden;\n position: relative;\n vertical-align: top;\n white-space: nowrap;\n flex-grow: 1;\n padding: 4px;\n}\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\n width: 24px;\n height: 24px;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\n opacity: .7;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\n opacity: 1;\n}\n.shouldshake[data-v-8e58e0a5] {\n animation: shake-8e58e0a5 .6s 1 linear;\n}\n@keyframes shake-8e58e0a5 {\n 0% {\n transform: translate(15px);\n }\n 20% {\n transform: translate(-15px);\n }\n 40% {\n transform: translate(7px);\n }\n 60% {\n transform: translate(-7px);\n }\n 80% {\n transform: translate(3px);\n }\n to {\n transform: translate(0);\n }\n}\n.collection-list *[data-v-75a4370b] {\n box-sizing: border-box;\n}\n.collection-list > li[data-v-75a4370b] {\n display: flex;\n align-items: start;\n gap: 12px;\n}\n.collection-list > li > .avatar[data-v-75a4370b] {\n margin-top: auto;\n}\n#collection-select-container[data-v-75a4370b] {\n display: flex;\n flex-direction: column;\n}\n.v-select span.avatar[data-v-75a4370b] {\n display: block;\n padding: 16px;\n opacity: .7;\n background-repeat: no-repeat;\n background-position: center;\n}\n.v-select span.avatar[data-v-75a4370b]:hover {\n opacity: 1;\n}\np.hint[data-v-75a4370b] {\n z-index: 1;\n margin-top: -16px;\n padding: 8px;\n color: var(--color-text-maxcontrast);\n line-height: normal;\n}\ndiv.avatar[data-v-75a4370b] {\n width: 32px;\n height: 32px;\n margin: 30px 0 0;\n padding: 8px;\n background-color: var(--color-background-dark);\n}\n.icon-projects[data-v-75a4370b] {\n display: block;\n padding: 8px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.option__wrapper[data-v-75a4370b] {\n display: flex;\n}\n.option__wrapper .avatar[data-v-75a4370b] {\n display: block;\n background-color: var(--color-background-darker) !important;\n}\n.option__wrapper .option__title[data-v-75a4370b] {\n padding: 4px;\n}\n.fade-enter-active[data-v-75a4370b],\n.fade-leave-active[data-v-75a4370b] {\n transition: opacity .5s;\n}\n.fade-enter[data-v-75a4370b],\n.fade-leave-to[data-v-75a4370b] {\n opacity: 0;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css\"],\"names\":[],\"mappings\":\"AAAA;;EAEE,4BAA4B;AAC9B;AACA;;EAEE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,aAAa;EACb,YAAY;EACZ,cAAc;EACd,4BAA4B;EAC5B,2BAA2B;EAC3B,WAAW;AACb;AACA;EACE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;AAChB;AACA;EACE,eAAe;EACf,YAAY;EACZ,eAAe;EACf,2BAA2B;AAC7B;AACA;EACE,eAAe;AACjB;AACA;;EAEE,eAAe;EACf,YAAY;EACZ,aAAa;AACf;AACA;EACE,iBAAiB;AACnB;AACA;EACE,eAAe;EACf,6CAA6C;AAC/C;AACA;EACE,YAAY;AACd;AACA;;EAEE,gBAAgB;EAChB,WAAW;AACb;AACA;EACE,aAAa;EACb,iBAAiB;EACjB,kBAAkB;EAClB,eAAe;AACjB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,YAAY;EACZ,YAAY;EACZ,4BAA4B;EAC5B,aAAa;AACf;AACA;EACE,qBAAqB;EACrB,mBAAmB;EACnB,kBAAkB;AACpB;AACA;EACE,uBAAuB;EACvB,gBAAgB;EAChB,kBAAkB;EAClB,mBAAmB;EACnB,mBAAmB;EACnB,YAAY;EACZ,YAAY;AACd;AACA;EACE,WAAW;EACX,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;;EAEE,UAAU;AACZ;AACA;EACE,sCAAsC;AACxC;AACA;EACE;IACE,0BAA0B;EAC5B;EACA;IACE,2BAA2B;EAC7B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,0BAA0B;EAC5B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,uBAAuB;EACzB;AACF;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,kBAAkB;EAClB,SAAS;AACX;AACA;EACE,gBAAgB;AAClB;AACA;EACE,aAAa;EACb,sBAAsB;AACxB;AACA;EACE,cAAc;EACd,aAAa;EACb,WAAW;EACX,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,UAAU;AACZ;AACA;EACE,UAAU;EACV,iBAAiB;EACjB,YAAY;EACZ,oCAAoC;EACpC,mBAAmB;AACrB;AACA;EACE,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;EACZ,8CAA8C;AAChD;AACA;EACE,cAAc;EACd,YAAY;EACZ,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;EACd,2DAA2D;AAC7D;AACA;EACE,YAAY;AACd;AACA;;EAEE,uBAAuB;AACzB;AACA;;EAEE,UAAU;AACZ\",\"sourcesContent\":[\".fade-enter-active[data-v-8e58e0a5],\\n.fade-leave-active[data-v-8e58e0a5] {\\n transition: opacity .3s ease;\\n}\\n.fade-enter[data-v-8e58e0a5],\\n.fade-leave-to[data-v-8e58e0a5] {\\n opacity: 0;\\n}\\n.linked-icons[data-v-8e58e0a5] {\\n display: flex;\\n}\\n.linked-icons img[data-v-8e58e0a5] {\\n padding: 12px;\\n height: 44px;\\n display: block;\\n background-repeat: no-repeat;\\n background-position: center;\\n opacity: .7;\\n}\\n.linked-icons img[data-v-8e58e0a5]:hover {\\n opacity: 1;\\n}\\n.popovermenu[data-v-8e58e0a5] {\\n display: none;\\n}\\n.popovermenu.open[data-v-8e58e0a5] {\\n display: block;\\n}\\nli.collection-list-item[data-v-8e58e0a5] {\\n flex-wrap: wrap;\\n height: auto;\\n cursor: pointer;\\n margin-bottom: 0 !important;\\n}\\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\\n margin-top: 6px;\\n}\\nli.collection-list-item form[data-v-8e58e0a5],\\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\\n flex-basis: 10%;\\n flex-grow: 1;\\n display: flex;\\n}\\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\\n padding: 12px 9px;\\n}\\nli.collection-list-item input[data-v-8e58e0a5] {\\n margin-top: 4px;\\n border-color: var(--color-border-maxcontrast);\\n}\\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\\n flex-grow: 1;\\n}\\nli.collection-list-item .error[data-v-8e58e0a5],\\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\\n flex-basis: 100%;\\n width: 100%;\\n}\\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\\n display: flex;\\n margin-left: 44px;\\n border-radius: 3px;\\n cursor: pointer;\\n}\\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\\n background-color: var(--color-background-dark);\\n}\\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\\n flex-grow: 1;\\n padding: 3px;\\n max-width: calc(100% - 30px);\\n display: flex;\\n}\\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\\n display: inline-block;\\n vertical-align: top;\\n margin-right: 10px;\\n}\\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\\n text-overflow: ellipsis;\\n overflow: hidden;\\n position: relative;\\n vertical-align: top;\\n white-space: nowrap;\\n flex-grow: 1;\\n padding: 4px;\\n}\\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\\n width: 24px;\\n height: 24px;\\n}\\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\\n opacity: .7;\\n}\\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\\n opacity: 1;\\n}\\n.shouldshake[data-v-8e58e0a5] {\\n animation: shake-8e58e0a5 .6s 1 linear;\\n}\\n@keyframes shake-8e58e0a5 {\\n 0% {\\n transform: translate(15px);\\n }\\n 20% {\\n transform: translate(-15px);\\n }\\n 40% {\\n transform: translate(7px);\\n }\\n 60% {\\n transform: translate(-7px);\\n }\\n 80% {\\n transform: translate(3px);\\n }\\n to {\\n transform: translate(0);\\n }\\n}\\n.collection-list *[data-v-75a4370b] {\\n box-sizing: border-box;\\n}\\n.collection-list > li[data-v-75a4370b] {\\n display: flex;\\n align-items: start;\\n gap: 12px;\\n}\\n.collection-list > li > .avatar[data-v-75a4370b] {\\n margin-top: auto;\\n}\\n#collection-select-container[data-v-75a4370b] {\\n display: flex;\\n flex-direction: column;\\n}\\n.v-select span.avatar[data-v-75a4370b] {\\n display: block;\\n padding: 16px;\\n opacity: .7;\\n background-repeat: no-repeat;\\n background-position: center;\\n}\\n.v-select span.avatar[data-v-75a4370b]:hover {\\n opacity: 1;\\n}\\np.hint[data-v-75a4370b] {\\n z-index: 1;\\n margin-top: -16px;\\n padding: 8px;\\n color: var(--color-text-maxcontrast);\\n line-height: normal;\\n}\\ndiv.avatar[data-v-75a4370b] {\\n width: 32px;\\n height: 32px;\\n margin: 30px 0 0;\\n padding: 8px;\\n background-color: var(--color-background-dark);\\n}\\n.icon-projects[data-v-75a4370b] {\\n display: block;\\n padding: 8px;\\n background-repeat: no-repeat;\\n background-position: center;\\n}\\n.option__wrapper[data-v-75a4370b] {\\n display: flex;\\n}\\n.option__wrapper .avatar[data-v-75a4370b] {\\n display: block;\\n background-color: var(--color-background-darker) !important;\\n}\\n.option__wrapper .option__title[data-v-75a4370b] {\\n padding: 4px;\\n}\\n.fade-enter-active[data-v-75a4370b],\\n.fade-leave-active[data-v-75a4370b] {\\n transition: opacity .5s;\\n}\\n.fade-enter[data-v-75a4370b],\\n.fade-leave-to[data-v-75a4370b] {\\n opacity: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-172dde79]{display:flex;align-items:center;height:44px}.sharing-entry__summary[data-v-172dde79]{padding:8px;padding-left:10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0;min-width:0}.sharing-entry__summary__desc[data-v-172dde79]{display:inline-block;padding-bottom:0;line-height:1.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sharing-entry__summary__desc p[data-v-172dde79],.sharing-entry__summary__desc small[data-v-172dde79]{color:var(--color-text-maxcontrast)}.sharing-entry__summary__desc-unique[data-v-172dde79]{color:var(--color-text-maxcontrast)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntry.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,sBAAA,CACA,QAAA,CACA,WAAA,CAEA,+CACC,oBAAA,CACA,gBAAA,CACA,iBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAEA,sGAEC,mCAAA,CAGD,sDACC,mCAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\t&__summary {\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\talign-items: flex-start;\\n\\t\\tflex: 1 0;\\n\\t\\tmin-width: 0;\\n\\n\\t\\t&__desc {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\tpadding-bottom: 0;\\n\\t\\t\\tline-height: 1.2em;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\n\\t\\t\\tp,\\n\\t\\t\\tsmall {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-unique {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-283ca89e]{display:flex;align-items:center;height:44px}.sharing-entry__desc[data-v-283ca89e]{display:flex;flex-direction:column;justify-content:space-between;padding:8px;padding-left:10px;line-height:1.2em}.sharing-entry__desc p[data-v-283ca89e]{color:var(--color-text-maxcontrast)}.sharing-entry__actions[data-v-283ca89e]{margin-left:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryInherited.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,sCACC,YAAA,CACA,qBAAA,CACA,6BAAA,CACA,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,wCACC,mCAAA,CAGF,yCACC,gBAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\t&__desc {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: space-between;\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tline-height: 1.2em;\\n\\t\\tp {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t}\\n\\t&__actions {\\n\\t\\tmargin-left: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry__internal .avatar-external[data-v-e40cd936]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}.sharing-entry__internal .icon-checkmark-color[data-v-e40cd936]{opacity:1;color:var(--color-success)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryInternal.vue\"],\"names\":[],\"mappings\":\"AAEC,2DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA,CAED,gEACC,SAAA,CACA,0BAAA\",\"sourcesContent\":[\"\\n.sharing-entry__internal {\\n\\t.avatar-external {\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tline-height: 32px;\\n\\t\\tfont-size: 18px;\\n\\t\\tbackground-color: var(--color-text-maxcontrast);\\n\\t\\tborder-radius: 50%;\\n\\t\\tflex-shrink: 0;\\n\\t}\\n\\t.icon-checkmark-color {\\n\\t\\topacity: 1;\\n\\t\\tcolor: var(--color-success);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-3e048372]{display:flex;align-items:center;min-height:44px}.sharing-entry__summary[data-v-3e048372]{padding:8px;padding-left:10px;display:flex;justify-content:space-between;flex:1 0;min-width:0}.sharing-entry__desc[data-v-3e048372]{display:flex;flex-direction:column;line-height:1.2em}.sharing-entry__desc p[data-v-3e048372]{color:var(--color-text-maxcontrast)}.sharing-entry__desc__title[data-v-3e048372]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.sharing-entry:not(.sharing-entry--share) .sharing-entry__actions .new-share-link[data-v-3e048372]{border-top:1px solid var(--color-border)}.sharing-entry[data-v-3e048372] .avatar-link-share{background-color:var(--color-primary-element)}.sharing-entry .sharing-entry__action--public-upload[data-v-3e048372]{border-bottom:1px solid var(--color-border)}.sharing-entry__loading[data-v-3e048372]{width:44px;height:44px;margin:0;padding:14px;margin-left:auto}.sharing-entry .action-item~.action-item[data-v-3e048372],.sharing-entry .action-item~.sharing-entry__loading[data-v-3e048372]{margin-left:0}.sharing-entry .icon-checkmark-color[data-v-3e048372]{opacity:1;color:var(--color-success)}.qr-code-dialog[data-v-3e048372]{display:flex;width:100%;justify-content:center}.qr-code-dialog__img[data-v-3e048372]{width:100%;height:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryLink.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,6BAAA,CACA,QAAA,CACA,WAAA,CAGA,sCACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,wCACC,mCAAA,CAGD,6CACC,sBAAA,CACA,eAAA,CACA,kBAAA,CAKF,mGACC,wCAAA,CAIF,mDACC,6CAAA,CAGD,sEACC,2CAAA,CAGD,yCACC,UAAA,CACA,WAAA,CACA,QAAA,CACA,YAAA,CACA,gBAAA,CAOA,+HAEC,aAAA,CAIF,sDACC,SAAA,CACA,0BAAA,CAKF,iCACC,YAAA,CACA,UAAA,CACA,sBAAA,CAEA,sCACC,UAAA,CACA,WAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tmin-height: 44px;\\n\\n\\t&__summary {\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\t\\tflex: 1 0;\\n\\t\\tmin-width: 0;\\n\\t}\\n\\n\\t\\t&__desc {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tline-height: 1.2em;\\n\\n\\t\\t\\tp {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&__title {\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t&:not(.sharing-entry--share) &__actions {\\n\\t\\t.new-share-link {\\n\\t\\t\\tborder-top: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t::v-deep .avatar-link-share {\\n\\t\\tbackground-color: var(--color-primary-element);\\n\\t}\\n\\n\\t.sharing-entry__action--public-upload {\\n\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t}\\n\\n\\t&__loading {\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 14px;\\n\\t\\tmargin-left: auto;\\n\\t}\\n\\n\\t// put menus to the left\\n\\t// but only the first one\\n\\t.action-item {\\n\\n\\t\\t~.action-item,\\n\\t\\t~.sharing-entry__loading {\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t.icon-checkmark-color {\\n\\t\\topacity: 1;\\n\\t\\tcolor: var(--color-success);\\n\\t}\\n}\\n\\n// styling for the qr-code container\\n.qr-code-dialog {\\n\\tdisplay: flex;\\n\\twidth: 100%;\\n\\tjustify-content: center;\\n\\n\\t&__img {\\n\\t\\twidth: 100%;\\n\\t\\theight: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.share-select[data-v-f3bc43ce]{display:block}.share-select[data-v-f3bc43ce] .action-item__menutoggle{color:var(--color-primary-element) !important;font-size:12.5px !important;height:auto !important;min-height:auto !important}.share-select[data-v-f3bc43ce] .action-item__menutoggle .button-vue__text{font-weight:normal !important}.share-select[data-v-f3bc43ce] .action-item__menutoggle .button-vue__icon{height:24px !important;min-height:24px !important;width:24px !important;min-width:24px !important}.share-select[data-v-f3bc43ce] .action-item__menutoggle .button-vue__wrapper{flex-direction:row-reverse !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue\"],\"names\":[],\"mappings\":\"AACA,+BACC,aAAA,CAIA,wDACC,6CAAA,CACA,2BAAA,CACA,sBAAA,CACA,0BAAA,CAEA,0EACC,6BAAA,CAGD,0EACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAGD,6EAEC,qCAAA\",\"sourcesContent\":[\"\\n.share-select {\\n\\tdisplay: block;\\n\\n\\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\\n\\t// Overrider NcActionms button to make it small\\n\\t:deep(.action-item__menutoggle) {\\n\\t\\tcolor: var(--color-primary-element) !important;\\n\\t\\tfont-size: 12.5px !important;\\n\\t\\theight: auto !important;\\n\\t\\tmin-height: auto !important;\\n\\n\\t\\t.button-vue__text {\\n\\t\\t\\tfont-weight: normal !important;\\n\\t\\t}\\n\\n\\t\\t.button-vue__icon {\\n\\t\\t\\theight: 24px !important;\\n\\t\\t\\tmin-height: 24px !important;\\n\\t\\t\\twidth: 24px !important;\\n\\t\\t\\tmin-width: 24px !important;\\n\\t\\t}\\n\\n\\t\\t.button-vue__wrapper {\\n\\t\\t\\t// Emulate NcButton's alignment=center-reverse\\n\\t\\t\\tflex-direction: row-reverse !important;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-1852ea78]{display:flex;align-items:center;min-height:44px}.sharing-entry__desc[data-v-1852ea78]{padding:8px;padding-left:10px;line-height:1.2em;position:relative;flex:1 1;min-width:0}.sharing-entry__desc p[data-v-1852ea78]{color:var(--color-text-maxcontrast)}.sharing-entry__title[data-v-1852ea78]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:inherit}.sharing-entry__actions[data-v-1852ea78]{margin-left:auto !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntrySimple.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CACA,sCACC,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,wCACC,mCAAA,CAGF,uCACC,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,iBAAA,CAED,yCACC,2BAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tmin-height: 44px;\\n\\t&__desc {\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tline-height: 1.2em;\\n\\t\\tposition: relative;\\n\\t\\tflex: 1 1;\\n\\t\\tmin-width: 0;\\n\\t\\tp {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t}\\n\\t&__title {\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\toverflow: hidden;\\n\\t\\tmax-width: inherit;\\n\\t}\\n\\t&__actions {\\n\\t\\tmargin-left: auto !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-search{display:flex;flex-direction:column;margin-bottom:4px}.sharing-search label[for=sharing-search-input]{margin-bottom:2px}.sharing-search__input{width:100%;margin:10px 0}.vs__dropdown-menu span[lookup] .avatardiv{background-image:var(--icon-search-white);background-repeat:no-repeat;background-position:center;background-color:var(--color-text-maxcontrast) !important}.vs__dropdown-menu span[lookup] .avatardiv .avatardiv__initials-wrapper{display:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingInput.vue\"],\"names\":[],\"mappings\":\"AACA,gBACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,gDACC,iBAAA,CAGD,uBACC,UAAA,CACA,aAAA,CAOA,2CACC,yCAAA,CACA,2BAAA,CACA,0BAAA,CACA,yDAAA,CACA,wEACC,YAAA\",\"sourcesContent\":[\"\\n.sharing-search {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tmargin-bottom: 4px;\\n\\n\\tlabel[for=\\\"sharing-search-input\\\"] {\\n\\t\\tmargin-bottom: 2px;\\n\\t}\\n\\n\\t&__input {\\n\\t\\twidth: 100%;\\n\\t\\tmargin: 10px 0;\\n\\t}\\n}\\n\\n.vs__dropdown-menu {\\n\\t// properly style the lookup entry\\n\\tspan[lookup] {\\n\\t\\t.avatardiv {\\n\\t\\t\\tbackground-image: var(--icon-search-white);\\n\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-color: var(--color-text-maxcontrast) !important;\\n\\t\\t\\t.avatardiv__initials-wrapper {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharingTabDetailsView[data-v-c452153e]{display:flex;flex-direction:column;width:100%;margin:0 auto;position:relative;height:100%;overflow:hidden}.sharingTabDetailsView__header[data-v-c452153e]{display:flex;align-items:center;box-sizing:border-box;margin:.2em}.sharingTabDetailsView__header span[data-v-c452153e]{display:flex;align-items:center}.sharingTabDetailsView__header span h1[data-v-c452153e]{font-size:15px;padding-left:.3em}.sharingTabDetailsView__wrapper[data-v-c452153e]{position:relative;overflow:scroll;flex-shrink:1;padding:4px;padding-right:12px}.sharingTabDetailsView__quick-permissions[data-v-c452153e]{display:flex;justify-content:center;width:100%;margin:0 auto;border-radius:0}.sharingTabDetailsView__quick-permissions div[data-v-c452153e]{width:100%}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e]{width:100%}.sharingTabDetailsView__quick-permissions div span span[data-v-c452153e]:nth-child(1){align-items:center;justify-content:center;padding:.1em}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e] label span{display:flex;flex-direction:column}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e] span.checkbox-content__text.checkbox-radio-switch__text{flex-wrap:wrap}.sharingTabDetailsView__quick-permissions div span[data-v-c452153e] span.checkbox-content__text.checkbox-radio-switch__text .subline{display:block;flex-basis:100%}.sharingTabDetailsView__advanced-control[data-v-c452153e]{width:100%}.sharingTabDetailsView__advanced-control button[data-v-c452153e]{margin-top:.5em}.sharingTabDetailsView__advanced[data-v-c452153e]{width:100%;margin-bottom:.5em;text-align:left;padding-left:0}.sharingTabDetailsView__advanced section textarea[data-v-c452153e],.sharingTabDetailsView__advanced section div.mx-datepicker[data-v-c452153e]{width:100%}.sharingTabDetailsView__advanced section textarea[data-v-c452153e]{height:80px;margin:0}.sharingTabDetailsView__advanced section span[data-v-c452153e] label{padding-left:0 !important;background-color:initial !important;border:none !important}.sharingTabDetailsView__advanced section section.custom-permissions-group[data-v-c452153e]{padding-left:1.5em}.sharingTabDetailsView__delete>button[data-v-c452153e]:first-child{color:#df0707}.sharingTabDetailsView__footer[data-v-c452153e]{width:100%;display:flex;position:sticky;bottom:0;flex-direction:column;justify-content:space-between;align-items:flex-start;background:linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background))}.sharingTabDetailsView__footer .button-group[data-v-c452153e]{display:flex;justify-content:space-between;width:100%;margin-top:16px}.sharingTabDetailsView__footer .button-group button[data-v-c452153e]{margin-left:16px}.sharingTabDetailsView__footer .button-group button[data-v-c452153e]:first-child{margin-left:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/SharingDetailsTab.vue\"],\"names\":[],\"mappings\":\"AACA,wCACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,eAAA,CAEA,gDACC,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,wDACC,cAAA,CACA,iBAAA,CAMH,iDACC,iBAAA,CACA,eAAA,CACA,aAAA,CACA,WAAA,CACA,kBAAA,CAGD,2DACC,YAAA,CACA,sBAAA,CACA,UAAA,CACA,aAAA,CACA,eAAA,CAEA,+DACC,UAAA,CAEA,oEACC,UAAA,CAEA,sFACC,kBAAA,CACA,sBAAA,CACA,YAAA,CAKA,+EACC,YAAA,CACA,qBAAA,CAKF,4HACC,cAAA,CAEA,qIACC,aAAA,CACA,eAAA,CAQL,0DACC,UAAA,CAEA,iEACC,eAAA,CAKF,kDACC,UAAA,CACA,kBAAA,CACA,eAAA,CACA,cAAA,CAIC,+IAEC,UAAA,CAGD,mEACC,WAAA,CACA,QAAA,CAaA,qEACC,yBAAA,CACA,mCAAA,CACA,sBAAA,CAIF,2FACC,kBAAA,CAMF,mEACC,aAAA,CAIF,gDACC,UAAA,CACA,YAAA,CACA,eAAA,CACA,QAAA,CACA,qBAAA,CACA,6BAAA,CACA,sBAAA,CACA,2FAAA,CAEA,8DACC,YAAA,CACA,6BAAA,CACA,UAAA,CACA,eAAA,CAEA,qEACC,gBAAA,CAEA,iFACC,aAAA\",\"sourcesContent\":[\"\\n.sharingTabDetailsView {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\twidth: 100%;\\n\\tmargin: 0 auto;\\n\\tposition: relative;\\n\\theight: 100%;\\n\\toverflow: hidden;\\n\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tbox-sizing: border-box;\\n\\t\\tmargin: 0.2em;\\n\\n\\t\\tspan {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\th1 {\\n\\t\\t\\t\\tfont-size: 15px;\\n\\t\\t\\t\\tpadding-left: 0.3em;\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\t}\\n\\n\\t&__wrapper {\\n\\t\\tposition: relative;\\n\\t\\toverflow: scroll;\\n\\t\\tflex-shrink: 1;\\n\\t\\tpadding: 4px;\\n\\t\\tpadding-right: 12px;\\n\\t}\\n\\n\\t&__quick-permissions {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 100%;\\n\\t\\tmargin: 0 auto;\\n\\t\\tborder-radius: 0;\\n\\n\\t\\tdiv {\\n\\t\\t\\twidth: 100%;\\n\\n\\t\\t\\tspan {\\n\\t\\t\\t\\twidth: 100%;\\n\\n\\t\\t\\t\\tspan:nth-child(1) {\\n\\t\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\t\\tjustify-content: center;\\n\\t\\t\\t\\t\\tpadding: 0.1em;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t::v-deep label {\\n\\n\\t\\t\\t\\t\\tspan {\\n\\t\\t\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\t\\t\\tflex-direction: column;\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\\n\\t\\t\\t\\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\\n\\t\\t\\t\\t\\tflex-wrap: wrap;\\n\\n\\t\\t\\t\\t\\t.subline {\\n\\t\\t\\t\\t\\t\\tdisplay: block;\\n\\t\\t\\t\\t\\t\\tflex-basis: 100%;\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\t}\\n\\n\\t&__advanced-control {\\n\\t\\twidth: 100%;\\n\\n\\t\\tbutton {\\n\\t\\t\\tmargin-top: 0.5em;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__advanced {\\n\\t\\twidth: 100%;\\n\\t\\tmargin-bottom: 0.5em;\\n\\t\\ttext-align: left;\\n\\t\\tpadding-left: 0;\\n\\n\\t\\tsection {\\n\\n\\t\\t\\ttextarea,\\n\\t\\t\\tdiv.mx-datepicker {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\n\\t\\t\\ttextarea {\\n\\t\\t\\t\\theight: 80px;\\n\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t/*\\n The following style is applied out of the component's scope\\n to remove padding from the label.checkbox-radio-switch__label,\\n which is used to group radio checkbox items. The use of ::v-deep\\n ensures that the padding is modified without being affected by\\n the component's scoping.\\n Without this achieving left alignment for the checkboxes would not\\n be possible.\\n */\\n\\t\\t\\tspan {\\n\\t\\t\\t\\t::v-deep label {\\n\\t\\t\\t\\t\\tpadding-left: 0 !important;\\n\\t\\t\\t\\t\\tbackground-color: initial !important;\\n\\t\\t\\t\\t\\tborder: none !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\tsection.custom-permissions-group {\\n\\t\\t\\t\\tpadding-left: 1.5em;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__delete {\\n\\t\\t>button:first-child {\\n\\t\\t\\tcolor: rgb(223, 7, 7);\\n\\t\\t}\\n\\t}\\n\\n\\t&__footer {\\n\\t\\twidth: 100%;\\n\\t\\tdisplay: flex;\\n\\t\\tposition: sticky;\\n\\t\\tbottom: 0;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: space-between;\\n\\t\\talign-items: flex-start;\\n\\t\\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\\n\\n\\t\\t.button-group {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tjustify-content: space-between;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmargin-top: 16px;\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\tmargin-left: 16px;\\n\\n\\t\\t\\t\\t&:first-child {\\n\\t\\t\\t\\t\\tmargin-left: 0;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry__inherited .avatar-shared[data-v-50f9af8c]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/SharingInherited.vue\"],\"names\":[],\"mappings\":\"AAEC,0DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA\",\"sourcesContent\":[\"\\n.sharing-entry__inherited {\\n\\t.avatar-shared {\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tline-height: 32px;\\n\\t\\tfont-size: 18px;\\n\\t\\tbackground-color: var(--color-text-maxcontrast);\\n\\t\\tborder-radius: 50%;\\n\\t\\tflex-shrink: 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.emptyContentWithSections[data-v-1fa88ab1]{margin:1rem auto}.sharingTab[data-v-1fa88ab1]{position:relative;height:100%}.sharingTab__content[data-v-1fa88ab1]{padding:0 6px}.sharingTab__additionalContent[data-v-1fa88ab1]{margin:44px 0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/SharingTab.vue\"],\"names\":[],\"mappings\":\"AACA,2CACC,gBAAA,CAGD,6BACC,iBAAA,CACA,WAAA,CAEA,sCACC,aAAA,CAGD,gDACC,aAAA\",\"sourcesContent\":[\"\\n.emptyContentWithSections {\\n\\tmargin: 1rem auto;\\n}\\n\\n.sharingTab {\\n\\tposition: relative;\\n\\theight: 100%;\\n\\n\\t&__content {\\n\\t\\tpadding: 0 6px;\\n\\t}\\n\\n\\t&__additionalContent {\\n\\t\\tmargin: 44px 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.generateUrl = exports.generateRemoteUrl = exports.generateOcsUrl = exports.generateFilePath = void 0;\nexports.getAppRootUrl = getAppRootUrl;\nexports.getRootUrl = getRootUrl;\nexports.linkTo = exports.imagePath = void 0;\nrequire(\"core-js/modules/es.string.replace.js\");\n/**\n * Get an url with webroot to a file in an app\n *\n * @param {string} app the id of the app the file belongs to\n * @param {string} file the file path relative to the app folder\n * @return {string} URL with webroot to a file\n */\nconst linkTo = (app, file) => generateFilePath(app, '', file);\n\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\nexports.linkTo = linkTo;\nconst linkToRemoteBase = service => getRootUrl() + '/remote.php/' + service;\n\n/**\n * @brief Creates an absolute url for remote use\n * @param {string} service id\n * @return {string} the url\n */\nconst generateRemoteUrl = service => window.location.protocol + '//' + window.location.host + linkToRemoteBase(service);\n\n/**\n * Get the base path for the given OCS API service\n *\n * @param {string} url OCS API service url\n * @param {object} params parameters to be replaced into the service url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @param {Number} options.ocsVersion OCS version to use (defaults to 2)\n * @return {string} Absolute path for the OCS URL\n */\nexports.generateRemoteUrl = generateRemoteUrl;\nconst generateOcsUrl = (url, params, options) => {\n const allOptions = Object.assign({\n ocsVersion: 2\n }, options || {});\n const version = allOptions.ocsVersion === 1 ? 1 : 2;\n return window.location.protocol + '//' + window.location.host + getRootUrl() + '/ocs/v' + version + '.php' + _generateUrlPath(url, params, options);\n};\nexports.generateOcsUrl = generateOcsUrl;\n/**\n * Generate a url path, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the address\n * @param {UrlOptions} options options for the parameter replacement\n * @return {string} Path part for the given URL\n */\nconst _generateUrlPath = (url, params, options) => {\n const allOptions = Object.assign({\n escape: true\n }, options || {});\n const _build = function (text, vars) {\n vars = vars || {};\n return text.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n if (allOptions.escape) {\n return typeof r === 'string' || typeof r === 'number' ? encodeURIComponent(r.toString()) : encodeURIComponent(a);\n } else {\n return typeof r === 'string' || typeof r === 'number' ? r.toString() : a;\n }\n });\n };\n if (url.charAt(0) !== '/') {\n url = '/' + url;\n }\n return _build(url, params || {});\n};\n\n/**\n * Generate the url with webroot for the given relative url, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.noRewrite True if you want to force index.php being added\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @return {string} URL with webroot for the given relative URL\n */\nconst generateUrl = (url, params, options) => {\n var _window;\n const allOptions = Object.assign({\n noRewrite: false\n }, options || {});\n if (((_window = window) === null || _window === void 0 || (_window = _window.OC) === null || _window === void 0 || (_window = _window.config) === null || _window === void 0 ? void 0 : _window.modRewriteWorking) === true && !allOptions.noRewrite) {\n return getRootUrl() + _generateUrlPath(url, params, options);\n }\n return getRootUrl() + '/index.php' + _generateUrlPath(url, params, options);\n};\n\n/**\n * Get the path with webroot to an image file\n * if no extension is given for the image, it will automatically decide\n * between .png and .svg based on what the browser supports\n *\n * @param {string} app the app id to which the image belongs\n * @param {string} file the name of the image file\n * @return {string}\n */\nexports.generateUrl = generateUrl;\nconst imagePath = (app, file) => {\n if (file.indexOf('.') === -1) {\n //if no extension is given, use svg\n return generateFilePath(app, 'img', file + '.svg');\n }\n return generateFilePath(app, 'img', file);\n};\n\n/**\n * Get the url with webroot for a file in an app\n *\n * @param {string} app the id of the app\n * @param {string} type the type of the file to link to (e.g. css,img,ajax.template)\n * @param {string} file the filename\n * @return {string} URL with webroot for a file in an app\n */\nexports.imagePath = imagePath;\nconst generateFilePath = (app, type, file) => {\n var _window2;\n const isCore = ((_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.OC) === null || _window2 === void 0 || (_window2 = _window2.coreApps) === null || _window2 === void 0 ? void 0 : _window2.indexOf(app)) !== -1;\n let link = getRootUrl();\n if (file.substring(file.length - 3) === 'php' && !isCore) {\n link += '/index.php/apps/' + app;\n if (file !== 'index.php') {\n link += '/';\n if (type) {\n link += encodeURI(type + '/');\n }\n link += file;\n }\n } else if (file.substring(file.length - 3) !== 'php' && !isCore) {\n link = getAppRootUrl(app);\n if (type) {\n link += '/' + type + '/';\n }\n if (link.substring(link.length - 1) !== '/') {\n link += '/';\n }\n link += file;\n } else {\n if ((app === 'settings' || app === 'core' || app === 'search') && type === 'ajax') {\n link += '/index.php/';\n } else {\n link += '/';\n }\n if (!isCore) {\n link += 'apps/';\n }\n if (app !== '') {\n app += '/';\n link += app;\n }\n if (type) {\n link += type + '/';\n }\n link += file;\n }\n return link;\n};\n\n/**\n * Return the web root path where this Nextcloud instance\n * is accessible, with a leading slash.\n * For example \"/nextcloud\".\n *\n * @return {string} web root path\n */\nexports.generateFilePath = generateFilePath;\nfunction getRootUrl() {\n let webroot = window._oc_webroot;\n if (typeof webroot === 'undefined') {\n webroot = location.pathname;\n const pos = webroot.indexOf('/index.php/');\n if (pos !== -1) {\n webroot = webroot.substr(0, pos);\n } else {\n webroot = webroot.substr(0, webroot.lastIndexOf('/'));\n }\n }\n return webroot;\n}\n\n/**\n * Return the web root path for a given app\n * @param {string} app The ID of the app\n */\nfunction getAppRootUrl(app) {\n var _window$_oc_appswebro, _webroots$app;\n const webroots = (_window$_oc_appswebro = window._oc_appswebroots) !== null && _window$_oc_appswebro !== void 0 ? _window$_oc_appswebro : {};\n return (_webroots$app = webroots[app]) !== null && _webroots$app !== void 0 ? _webroots$app : '';\n}\n//# sourceMappingURL=index.js.map","/**!\n * url-search-params-polyfill\n *\n * @author Jerry Bendy (https://github.com/jerrybendy)\n * @licence MIT\n */\n(function(self) {\n 'use strict';\n\n var nativeURLSearchParams = (function() {\n // #41 Fix issue in RN\n try {\n if (self.URLSearchParams && (new self.URLSearchParams('foo=bar')).get('foo') === 'bar') {\n return self.URLSearchParams;\n }\n } catch (e) {}\n return null;\n })(),\n isSupportObjectConstructor = nativeURLSearchParams && (new nativeURLSearchParams({a: 1})).toString() === 'a=1',\n // There is a bug in safari 10.1 (and earlier) that incorrectly decodes `%2B` as an empty space and not a plus.\n decodesPlusesCorrectly = nativeURLSearchParams && (new nativeURLSearchParams('s=%2B').get('s') === '+'),\n isSupportSize = nativeURLSearchParams && 'size' in nativeURLSearchParams.prototype,\n __URLSearchParams__ = \"__URLSearchParams__\",\n // Fix bug in Edge which cannot encode ' &' correctly\n encodesAmpersandsCorrectly = nativeURLSearchParams ? (function() {\n var ampersandTest = new nativeURLSearchParams();\n ampersandTest.append('s', ' &');\n return ampersandTest.toString() === 's=+%26';\n })() : true,\n prototype = URLSearchParamsPolyfill.prototype,\n iterable = !!(self.Symbol && self.Symbol.iterator);\n\n if (nativeURLSearchParams && isSupportObjectConstructor && decodesPlusesCorrectly && encodesAmpersandsCorrectly && isSupportSize) {\n return;\n }\n\n\n /**\n * Make a URLSearchParams instance\n *\n * @param {object|string|URLSearchParams} search\n * @constructor\n */\n function URLSearchParamsPolyfill(search) {\n search = search || \"\";\n\n // support construct object with another URLSearchParams instance\n if (search instanceof URLSearchParams || search instanceof URLSearchParamsPolyfill) {\n search = search.toString();\n }\n this [__URLSearchParams__] = parseToDict(search);\n }\n\n\n /**\n * Appends a specified key/value pair as a new search parameter.\n *\n * @param {string} name\n * @param {string} value\n */\n prototype.append = function(name, value) {\n appendTo(this [__URLSearchParams__], name, value);\n };\n\n /**\n * Deletes the given search parameter, and its associated value,\n * from the list of all search parameters.\n *\n * @param {string} name\n */\n prototype['delete'] = function(name) {\n delete this [__URLSearchParams__] [name];\n };\n\n /**\n * Returns the first value associated to the given search parameter.\n *\n * @param {string} name\n * @returns {string|null}\n */\n prototype.get = function(name) {\n var dict = this [__URLSearchParams__];\n return this.has(name) ? dict[name][0] : null;\n };\n\n /**\n * Returns all the values association with a given search parameter.\n *\n * @param {string} name\n * @returns {Array}\n */\n prototype.getAll = function(name) {\n var dict = this [__URLSearchParams__];\n return this.has(name) ? dict [name].slice(0) : [];\n };\n\n /**\n * Returns a Boolean indicating if such a search parameter exists.\n *\n * @param {string} name\n * @returns {boolean}\n */\n prototype.has = function(name) {\n return hasOwnProperty(this [__URLSearchParams__], name);\n };\n\n /**\n * Sets the value associated to a given search parameter to\n * the given value. If there were several values, delete the\n * others.\n *\n * @param {string} name\n * @param {string} value\n */\n prototype.set = function set(name, value) {\n this [__URLSearchParams__][name] = ['' + value];\n };\n\n /**\n * Returns a string containg a query string suitable for use in a URL.\n *\n * @returns {string}\n */\n prototype.toString = function() {\n var dict = this[__URLSearchParams__], query = [], i, key, name, value;\n for (key in dict) {\n name = encode(key);\n for (i = 0, value = dict[key]; i < value.length; i++) {\n query.push(name + '=' + encode(value[i]));\n }\n }\n return query.join('&');\n };\n\n // There is a bug in Safari 10.1 and `Proxy`ing it is not enough.\n var useProxy = self.Proxy && nativeURLSearchParams && (!decodesPlusesCorrectly || !encodesAmpersandsCorrectly || !isSupportObjectConstructor || !isSupportSize);\n var propValue;\n if (useProxy) {\n // Safari 10.0 doesn't support Proxy, so it won't extend URLSearchParams on safari 10.0\n propValue = new Proxy(nativeURLSearchParams, {\n construct: function (target, args) {\n return new target((new URLSearchParamsPolyfill(args[0]).toString()));\n }\n })\n // Chrome <=60 .toString() on a function proxy got error \"Function.prototype.toString is not generic\"\n propValue.toString = Function.prototype.toString.bind(URLSearchParamsPolyfill);\n } else {\n propValue = URLSearchParamsPolyfill;\n }\n\n /*\n * Apply polyfill to global object and append other prototype into it\n */\n Object.defineProperty(self, 'URLSearchParams', {\n value: propValue\n });\n\n var USPProto = self.URLSearchParams.prototype;\n\n USPProto.polyfill = true;\n\n // Fix #54, `toString.call(new URLSearchParams)` will return correct value when Proxy not used\n if (!useProxy && self.Symbol) {\n USPProto[self.Symbol.toStringTag] = 'URLSearchParams';\n }\n\n /**\n *\n * @param {function} callback\n * @param {object} thisArg\n */\n if (!('forEach' in USPProto)) {\n USPProto.forEach = function(callback, thisArg) {\n var dict = parseToDict(this.toString());\n Object.getOwnPropertyNames(dict).forEach(function(name) {\n dict[name].forEach(function(value) {\n callback.call(thisArg, value, name, this);\n }, this);\n }, this);\n };\n }\n\n /**\n * Sort all name-value pairs\n */\n if (!('sort' in USPProto)) {\n USPProto.sort = function() {\n var dict = parseToDict(this.toString()), keys = [], k, i, j;\n for (k in dict) {\n keys.push(k);\n }\n keys.sort();\n\n for (i = 0; i < keys.length; i++) {\n this['delete'](keys[i]);\n }\n for (i = 0; i < keys.length; i++) {\n var key = keys[i], values = dict[key];\n for (j = 0; j < values.length; j++) {\n this.append(key, values[j]);\n }\n }\n };\n }\n\n /**\n * Returns an iterator allowing to go through all keys of\n * the key/value pairs contained in this object.\n *\n * @returns {function}\n */\n if (!('keys' in USPProto)) {\n USPProto.keys = function() {\n var items = [];\n this.forEach(function(item, name) {\n items.push(name);\n });\n return makeIterator(items);\n };\n }\n\n /**\n * Returns an iterator allowing to go through all values of\n * the key/value pairs contained in this object.\n *\n * @returns {function}\n */\n if (!('values' in USPProto)) {\n USPProto.values = function() {\n var items = [];\n this.forEach(function(item) {\n items.push(item);\n });\n return makeIterator(items);\n };\n }\n\n /**\n * Returns an iterator allowing to go through all key/value\n * pairs contained in this object.\n *\n * @returns {function}\n */\n if (!('entries' in USPProto)) {\n USPProto.entries = function() {\n var items = [];\n this.forEach(function(item, name) {\n items.push([name, item]);\n });\n return makeIterator(items);\n };\n }\n\n if (iterable) {\n USPProto[self.Symbol.iterator] = USPProto[self.Symbol.iterator] || USPProto.entries;\n }\n\n if (!('size' in USPProto)) {\n Object.defineProperty(USPProto, 'size', {\n get: function () {\n var dict = parseToDict(this.toString())\n if (USPProto === this) {\n throw new TypeError('Illegal invocation at URLSearchParams.invokeGetter')\n }\n return Object.keys(dict).reduce(function (prev, cur) {\n return prev + dict[cur].length;\n }, 0);\n }\n });\n }\n\n function encode(str) {\n var replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'\\(\\)~]|%20|%00/g, function(match) {\n return replace[match];\n });\n }\n\n function decode(str) {\n return str\n .replace(/[ +]/g, '%20')\n .replace(/(%[a-f0-9]{2})+/ig, function(match) {\n return decodeURIComponent(match);\n });\n }\n\n function makeIterator(arr) {\n var iterator = {\n next: function() {\n var value = arr.shift();\n return {done: value === undefined, value: value};\n }\n };\n\n if (iterable) {\n iterator[self.Symbol.iterator] = function() {\n return iterator;\n };\n }\n\n return iterator;\n }\n\n function parseToDict(search) {\n var dict = {};\n\n if (typeof search === \"object\") {\n // if `search` is an array, treat it as a sequence\n if (isArray(search)) {\n for (var i = 0; i < search.length; i++) {\n var item = search[i];\n if (isArray(item) && item.length === 2) {\n appendTo(dict, item[0], item[1]);\n } else {\n throw new TypeError(\"Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements\");\n }\n }\n\n } else {\n for (var key in search) {\n if (search.hasOwnProperty(key)) {\n appendTo(dict, key, search[key]);\n }\n }\n }\n\n } else {\n // remove first '?'\n if (search.indexOf(\"?\") === 0) {\n search = search.slice(1);\n }\n\n var pairs = search.split(\"&\");\n for (var j = 0; j < pairs.length; j++) {\n var value = pairs [j],\n index = value.indexOf('=');\n\n if (-1 < index) {\n appendTo(dict, decode(value.slice(0, index)), decode(value.slice(index + 1)));\n\n } else {\n if (value) {\n appendTo(dict, decode(value), '');\n }\n }\n }\n }\n\n return dict;\n }\n\n function appendTo(dict, name, value) {\n var val = typeof value === 'string' ? value : (\n value !== null && value !== undefined && typeof value.toString === 'function' ? value.toString() : JSON.stringify(value)\n );\n\n // #47 Prevent using `hasOwnProperty` as a property name\n if (hasOwnProperty(dict, name)) {\n dict[name].push(val);\n } else {\n dict[name] = [val];\n }\n }\n\n function isArray(val) {\n return !!val && '[object Array]' === Object.prototype.toString.call(val);\n }\n\n function hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n\n})(typeof global !== 'undefined' ? global : (typeof window !== 'undefined' ? window : this));\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTab\",class:{ 'icon-loading': _vm.loading }},[(_vm.error)?_c('div',{staticClass:\"emptycontent\",class:{ emptyContentWithSections: _vm.sections.length > 0 }},[_c('div',{staticClass:\"icon icon-error\"}),_vm._v(\" \"),_c('h2',[_vm._v(_vm._s(_vm.error))])]):_vm._e(),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView),expression:\"!showSharingDetailsView\"}],staticClass:\"sharingTab__content\"},[_c('ul',[(_vm.isSharedWithMe)?_c('SharingEntrySimple',_vm._b({staticClass:\"sharing-entry__reshare\",scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.sharedWithMe.user,\"display-name\":_vm.sharedWithMe.displayName}})]},proxy:true}],null,false,3197855346)},'SharingEntrySimple',_vm.sharedWithMe,false)):_vm._e()],1),_vm._v(\" \"),(!_vm.loading)?_c('SharingInput',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"link-shares\":_vm.linkShares,\"reshare\":_vm.reshare,\"shares\":_vm.shares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingLinkList',{ref:\"linkShareList\",attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"shares\":_vm.linkShares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingList',{ref:\"shareList\",attrs:{\"shares\":_vm.shares,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(_vm.canReshare && !_vm.loading)?_c('SharingInherited',{attrs:{\"file-info\":_vm.fileInfo}}):_vm._e(),_vm._v(\" \"),_c('SharingEntryInternal',{attrs:{\"file-info\":_vm.fileInfo}}),_vm._v(\" \"),(_vm.projectsEnabled && _vm.fileInfo)?_c('CollectionList',{attrs:{\"id\":`${_vm.fileInfo.id}`,\"type\":\"file\",\"name\":_vm.fileInfo.name}}):_vm._e()],1),_vm._v(\" \"),_vm._l((_vm.sections),function(section,index){return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView),expression:\"!showSharingDetailsView\"}],key:index,ref:'section-' + index,refInFor:true,staticClass:\"sharingTab__additionalContent\"},[_c(section(_vm.$refs['section-'+index], _vm.fileInfo),{tag:\"component\",attrs:{\"file-info\":_vm.fileInfo}})],1)}),_vm._v(\" \"),(_vm.showSharingDetailsView)?_c('SharingDetailsTab',{attrs:{\"file-info\":_vm.shareDetailsData.fileInfo,\"share\":_vm.shareDetailsData.share},on:{\"close-sharing-details\":_vm.toggleShareDetailsView,\"add:share\":_vm.addShare,\"remove:share\":_vm.removeShare}}):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../css-loader/dist/cjs.js!./index-Au1Gr_G6.css\";\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 \"!!../../../css-loader/dist/cjs.js!./index-Au1Gr_G6.css\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nexport default now;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nexport default trimmedEndIndex;\n","import trimmedEndIndex from './_trimmedEndIndex.js';\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nexport default baseTrim;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","import baseTrim from './_baseTrim.js';\nimport isObject from './isObject.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nexport default toNumber;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import isObject from './isObject.js';\nimport now from './now.js';\nimport toNumber from './toNumber.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nexport default debounce;\n","import './assets/index-Au1Gr_G6.css';\nimport w from \"@nextcloud/vue/dist/Components/NcAvatar.js\";\nimport O from \"@nextcloud/vue/dist/Components/NcSelect.js\";\nimport T from \"lodash-es/debounce.js\";\nimport S from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport k from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport A, { set as f } from \"vue\";\nimport $ from \"@nextcloud/axios\";\nimport { generateOcsUrl as d } from \"@nextcloud/router\";\n/*\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass D {\n constructor() {\n this.http = $;\n }\n listCollection(e) {\n return this.http.get(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }));\n }\n renameCollection(e, o) {\n return this.http.put(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }), {\n collectionName: o\n }).then((n) => n.data.ocs.data);\n }\n getCollectionsByResource(e, o) {\n return this.http.get(d(\"collaboration/resources/{resourceType}/{resourceId}\", { resourceType: e, resourceId: o })).then((n) => n.data.ocs.data);\n }\n createCollection(e, o, n) {\n return this.http.post(d(\"collaboration/resources/{resourceType}/{resourceId}\", { resourceType: e, resourceId: o }), {\n name: n\n }).then((r) => r.data.ocs.data);\n }\n addResource(e, o, n) {\n return n = \"\" + n, this.http.post(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }), {\n resourceType: o,\n resourceId: n\n }).then((r) => r.data.ocs.data);\n }\n removeResource(e, o, n) {\n return this.http.delete(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }), { params: { resourceType: o, resourceId: n } }).then((r) => r.data.ocs.data);\n }\n search(e) {\n return this.http.get(d(\"collaboration/resources/collections/search/{query}\", { query: e })).then((o) => o.data.ocs.data);\n }\n}\nconst p = new D();\n/*\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst u = A.observable({\n collections: []\n}), h = {\n addCollections(s) {\n f(u, \"collections\", s);\n },\n addCollection(s) {\n u.collections.push(s);\n },\n removeCollection(s) {\n f(u, \"collections\", u.collections.filter((e) => e.id !== s));\n },\n updateCollection(s) {\n const e = u.collections.findIndex((o) => o.id === s.id);\n e !== -1 ? f(u.collections, e, s) : u.collections.push(s);\n }\n}, l = {\n fetchCollectionsByResource({ resourceType: s, resourceId: e }) {\n return p.getCollectionsByResource(s, e).then((o) => (h.addCollections(o), o));\n },\n createCollection({ baseResourceType: s, baseResourceId: e, resourceType: o, resourceId: n, name: r }) {\n return p.createCollection(s, e, r).then((m) => {\n h.addCollection(m), l.addResourceToCollection({\n collectionId: m.id,\n resourceType: o,\n resourceId: n\n });\n });\n },\n renameCollection({ collectionId: s, name: e }) {\n return p.renameCollection(s, e).then((o) => (h.updateCollection(o), o));\n },\n addResourceToCollection({ collectionId: s, resourceType: e, resourceId: o }) {\n return p.addResource(s, e, o).then((n) => (h.updateCollection(n), n));\n },\n removeResource({ collectionId: s, resourceType: e, resourceId: o }) {\n return p.removeResource(s, e, o).then((n) => {\n n.resources.length > 0 ? h.updateCollection(n) : h.removeCollection(n);\n });\n },\n search(s) {\n return p.search(s);\n }\n};\nfunction R(s, e, o, n, r, m, _, I) {\n var i = typeof s == \"function\" ? s.options : s;\n e && (i.render = e, i.staticRenderFns = o, i._compiled = !0), n && (i.functional = !0), m && (i._scopeId = \"data-v-\" + m);\n var a;\n if (_ ? (a = function(c) {\n c = c || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, !c && typeof __VUE_SSR_CONTEXT__ < \"u\" && (c = __VUE_SSR_CONTEXT__), r && r.call(this, c), c && c._registeredComponents && c._registeredComponents.add(_);\n }, i._ssrRegister = a) : r && (a = I ? function() {\n r.call(\n this,\n (i.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : r), a)\n if (i.functional) {\n i._injectStyles = a;\n var b = i.render;\n i.render = function(N, v) {\n return a.call(v), b(N, v);\n };\n } else {\n var C = i.beforeCreate;\n i.beforeCreate = C ? [].concat(C, a) : [a];\n }\n return {\n exports: s,\n options: i\n };\n}\nconst B = {\n name: \"CollectionListItem\",\n components: {\n NcAvatar: w,\n NcActions: S,\n NcActionButton: k\n },\n props: {\n collection: {\n type: Object,\n default: null\n }\n },\n data() {\n return {\n detailsOpen: !1,\n newName: null,\n error: {}\n };\n },\n computed: {\n getIcon() {\n return (s) => [s.iconClass];\n },\n typeClass() {\n return (s) => \"resource-type-\" + s.type;\n },\n limitedResources() {\n return (s) => s.resources ? s.resources.slice(0, 2) : [];\n },\n iconUrl() {\n return (s) => s.mimetype ? OC.MimeType.getIconUrl(s.mimetype) : s.iconUrl ? s.iconUrl : \"\";\n }\n },\n methods: {\n toggleDetails() {\n this.detailsOpen = !this.detailsOpen;\n },\n showDetails() {\n this.detailsOpen = !0;\n },\n hideDetails() {\n this.detailsOpen = !1;\n },\n removeResource(s, e) {\n l.removeResource({\n collectionId: s.id,\n resourceType: e.type,\n resourceId: e.id\n });\n },\n openRename() {\n this.newName = this.collection.name;\n },\n renameCollection() {\n if (this.newName === \"\") {\n this.newName = null;\n return;\n }\n l.renameCollection({\n collectionId: this.collection.id,\n name: this.newName\n }).then((s) => {\n this.newName = null;\n }).catch((s) => {\n this.$set(this.error, \"rename\", t(\"core\", \"Failed to rename the project\")), console.error(s), setTimeout(() => {\n f(this.error, \"rename\", null);\n }, 3e3);\n });\n }\n }\n};\nvar E = function() {\n var e = this, o = e._self._c;\n return o(\"li\", { staticClass: \"collection-list-item\" }, [o(\"NcAvatar\", { staticClass: \"collection-avatar\", attrs: { \"display-name\": e.collection.name, \"allow-placeholder\": \"\" } }), e.newName === null ? o(\"span\", { staticClass: \"collection-item-name\", attrs: { title: \"\" }, on: { click: e.showDetails } }, [e._v(e._s(e.collection.name))]) : o(\"form\", { class: { shouldshake: e.error.rename }, on: { submit: function(n) {\n return n.preventDefault(), e.renameCollection.apply(null, arguments);\n } } }, [o(\"input\", { directives: [{ name: \"model\", rawName: \"v-model\", value: e.newName, expression: \"newName\" }], attrs: { type: \"text\", autocomplete: \"off\", autocapitalize: \"off\" }, domProps: { value: e.newName }, on: { input: function(n) {\n n.target.composing || (e.newName = n.target.value);\n } } }), o(\"input\", { staticClass: \"icon-confirm\", attrs: { type: \"submit\", value: \"\" } })]), !e.detailsOpen && e.newName === null ? o(\"div\", { staticClass: \"linked-icons\" }, e._l(e.limitedResources(e.collection), function(n) {\n return o(\"a\", { key: n.type + \"|\" + n.id, class: e.typeClass(n), attrs: { title: n.name, href: n.link } }, [o(\"img\", { attrs: { src: e.iconUrl(n) } })]);\n }), 0) : e._e(), e.newName === null ? o(\"span\", { staticClass: \"sharingOptionsGroup\" }, [o(\"NcActions\", [o(\"NcActionButton\", { attrs: { icon: \"icon-info\" }, on: { click: function(n) {\n return n.preventDefault(), e.toggleDetails.apply(null, arguments);\n } } }, [e._v(\" \" + e._s(e.detailsOpen ? e.t(\"core\", \"Hide details\") : e.t(\"core\", \"Show details\")) + \" \")]), o(\"NcActionButton\", { attrs: { icon: \"icon-rename\" }, on: { click: function(n) {\n return n.preventDefault(), e.openRename.apply(null, arguments);\n } } }, [e._v(\" \" + e._s(e.t(\"core\", \"Rename project\")) + \" \")])], 1)], 1) : e._e(), o(\"transition\", { attrs: { name: \"fade\" } }, [e.error.rename ? o(\"div\", { staticClass: \"error\" }, [e._v(\" \" + e._s(e.error.rename) + \" \")]) : e._e()]), o(\"transition\", { attrs: { name: \"fade\" } }, [e.detailsOpen ? o(\"ul\", { staticClass: \"resource-list-details\" }, e._l(e.collection.resources, function(n) {\n return o(\"li\", { key: n.type + \"|\" + n.id, class: e.typeClass(n) }, [o(\"a\", { attrs: { href: n.link } }, [o(\"img\", { attrs: { src: e.iconUrl(n) } }), o(\"span\", { staticClass: \"resource-name\" }, [e._v(e._s(n.name || \"\"))])]), o(\"span\", { staticClass: \"icon-close\", on: { click: function(r) {\n return e.removeResource(e.collection, n);\n } } })]);\n }), 0) : e._e()])], 1);\n}, L = [], U = /* @__PURE__ */ R(\n B,\n E,\n L,\n !1,\n null,\n \"8e58e0a5\",\n null,\n null\n);\nconst j = U.exports, y = 0, g = 1, F = T(\n function(s, e) {\n s !== \"\" && (e(!0), l.search(s).then((o) => {\n this.searchCollections = o;\n }).catch((o) => {\n console.error(\"Failed to search for collections\", o);\n }).finally(() => {\n e(!1);\n }));\n },\n 500,\n {}\n), P = {\n name: \"CollectionList\",\n components: {\n CollectionListItem: j,\n NcAvatar: w,\n NcSelect: O\n },\n props: {\n /**\n * Resource type identifier\n */\n type: {\n type: String,\n default: null\n },\n /**\n * Unique id of the resource\n */\n id: {\n type: String,\n default: null\n },\n /**\n * Name of the resource\n */\n name: {\n type: String,\n default: \"\"\n },\n isActive: {\n type: Boolean,\n default: !0\n }\n },\n data() {\n return {\n selectIsOpen: !1,\n generatingCodes: !1,\n codes: void 0,\n value: null,\n model: {},\n searchCollections: [],\n error: null,\n state: u,\n isSelectOpen: !1\n };\n },\n computed: {\n collections() {\n return this.state.collections.filter((s) => typeof s.resources.find((e) => e && e.id === \"\" + this.id && e.type === this.type) < \"u\");\n },\n placeholder() {\n return this.isSelectOpen ? t(\"core\", \"Type to search for existing projects\") : t(\"core\", \"Add to a project\");\n },\n options() {\n const s = [];\n window.OCP.Collaboration.getTypes().sort().forEach((e) => {\n s.push({\n method: y,\n type: e,\n title: window.OCP.Collaboration.getLabel(e),\n class: window.OCP.Collaboration.getIcon(e),\n action: () => window.OCP.Collaboration.trigger(e)\n });\n });\n for (const e in this.searchCollections)\n this.collections.findIndex((o) => o.id === this.searchCollections[e].id) === -1 && s.push({\n method: g,\n title: this.searchCollections[e].name,\n collectionId: this.searchCollections[e].id\n });\n return s;\n }\n },\n watch: {\n type() {\n this.isActive && l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n },\n id() {\n this.isActive && l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n },\n isActive(s) {\n s && l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n }\n },\n mounted() {\n l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n },\n methods: {\n select(s, e) {\n s.method === y && s.action().then((o) => {\n l.createCollection({\n baseResourceType: this.type,\n baseResourceId: this.id,\n resourceType: s.type,\n resourceId: o,\n name: this.name\n }).catch((n) => {\n this.setError(t(\"core\", \"Failed to create a project\"), n);\n });\n }).catch((o) => {\n console.error(\"No resource selected\", o);\n }), s.method === g && l.addResourceToCollection({\n collectionId: s.collectionId,\n resourceType: this.type,\n resourceId: this.id\n }).catch((o) => {\n this.setError(t(\"core\", \"Failed to add the item to the project\"), o);\n });\n },\n search(s, e) {\n F.bind(this)(s, e);\n },\n showSelect() {\n this.selectIsOpen = !0, this.$refs.select.$el.focus();\n },\n hideSelect() {\n this.selectIsOpen = !1;\n },\n isVueComponent(s) {\n return s._isVue;\n },\n setError(s, e) {\n console.error(s, e), this.error = s, setTimeout(() => {\n this.error = null;\n }, 5e3);\n }\n }\n};\nvar V = function() {\n var e = this, o = e._self._c;\n return e.collections && e.type && e.id ? o(\"ul\", { staticClass: \"collection-list\", attrs: { id: \"collection-list\" } }, [o(\"li\", { on: { click: e.showSelect } }, [e._m(0), o(\"div\", { attrs: { id: \"collection-select-container\" } }, [o(\"NcSelect\", { ref: \"select\", attrs: { \"aria-label-combobox\": e.t(\"core\", \"Add to a project\"), options: e.options, placeholder: e.placeholder, label: \"title\", limit: 5 }, on: { close: function(n) {\n e.isSelectOpen = !1;\n }, open: function(n) {\n e.isSelectOpen = !0;\n }, \"option:selected\": e.select, search: e.search }, scopedSlots: e._u([{ key: \"selected-option\", fn: function(n) {\n return [o(\"span\", { staticClass: \"option__desc\" }, [o(\"span\", { staticClass: \"option__title\" }, [e._v(e._s(n.title))])])];\n } }, { key: \"option\", fn: function(n) {\n return [o(\"span\", { staticClass: \"option__wrapper\" }, [n.class ? o(\"span\", { staticClass: \"avatar\", class: n.class }) : n.method !== 2 ? o(\"NcAvatar\", { attrs: { \"allow-placeholder\": \"\", \"display-name\": n.title } }) : e._e(), o(\"span\", { staticClass: \"option__title\" }, [e._v(e._s(n.title))])], 1)];\n } }], null, !1, 2397208459), model: { value: e.value, callback: function(n) {\n e.value = n;\n }, expression: \"value\" } }, [o(\"p\", { staticClass: \"hint\" }, [e._v(\" \" + e._s(e.t(\"core\", \"Connect items to a project to make them easier to find\")) + \" \")])])], 1)]), o(\"transition\", { attrs: { name: \"fade\" } }, [e.error ? o(\"li\", { staticClass: \"error\" }, [e._v(\" \" + e._s(e.error) + \" \")]) : e._e()]), e._l(e.collections, function(n) {\n return o(\"CollectionListItem\", { key: n.id, attrs: { collection: n } });\n })], 2) : e._e();\n}, x = [function() {\n var s = this, e = s._self._c;\n return e(\"div\", { staticClass: \"avatar\" }, [e(\"span\", { staticClass: \"icon-projects\" })]);\n}], H = /* @__PURE__ */ R(\n P,\n V,\n x,\n !1,\n null,\n \"75a4370b\",\n null,\n null\n);\nconst Q = H.exports;\nexport {\n Q as CollectionList,\n j as CollectionListItem\n};\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Arthur Schiwon <blizzz@arthur-schiwon.de>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getCapabilities } from '@nextcloud/capabilities'\n\nexport default class Config {\n\n\tconstructor() {\n\t\tthis._capabilities = getCapabilities()\n\t}\n\n\t/**\n\t * Get default share permissions, if any\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\t get defaultPermissions() {\n\t\treturn this._capabilities.files_sharing?.default_permissions\n\t}\n\n\t/**\n\t * Is public upload allowed on link shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isPublicUploadEnabled() {\n\t\treturn this._capabilities.files_sharing?.public.upload\n\t}\n\n\t/**\n\t * Are link share allowed ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isShareWithLinkAllowed() {\n\t\treturn document.getElementById('allowShareWithLink')\n\t\t\t&& document.getElementById('allowShareWithLink').value === 'yes'\n\t}\n\n\t/**\n\t * Get the federated sharing documentation link\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget federatedShareDocLink() {\n\t\treturn OC.appConfig.core.federatedCloudShareDoc\n\t}\n\n\t/**\n\t * Get the default link share expiration date\n\t *\n\t * @return {Date|null}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultExpirationDate() {\n\t\tif (this.isDefaultExpireDateEnabled) {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + this.defaultExpireDate))\n\t\t}\n\t\treturn null\n\t}\n\n\t/**\n\t * Get the default internal expiration date\n\t *\n\t * @return {Date|null}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultInternalExpirationDate() {\n\t\tif (this.isDefaultInternalExpireDateEnabled) {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + this.defaultInternalExpireDate))\n\t\t}\n\t\treturn null\n\t}\n\n\t/**\n\t * Get the default remote expiration date\n\t *\n\t * @return {Date|null}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultRemoteExpirationDateString() {\n\t\tif (this.isDefaultRemoteExpireDateEnabled) {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + this.defaultRemoteExpireDate))\n\t\t}\n\t\treturn null\n\t}\n\n\t/**\n\t * Are link shares password-enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget enforcePasswordForPublicLink() {\n\t\treturn OC.appConfig.core.enforcePasswordForPublicLink === true\n\t}\n\n\t/**\n\t * Is password asked by default on link shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget enableLinkPasswordByDefault() {\n\t\treturn OC.appConfig.core.enableLinkPasswordByDefault === true\n\t}\n\n\t/**\n\t * Is link shares expiration enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultExpireDateEnforced() {\n\t\treturn OC.appConfig.core.defaultExpireDateEnforced === true\n\t}\n\n\t/**\n\t * Is there a default expiration date for new link shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultExpireDateEnabled() {\n\t\treturn OC.appConfig.core.defaultExpireDateEnabled === true\n\t}\n\n\t/**\n\t * Is internal shares expiration enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultInternalExpireDateEnforced() {\n\t\treturn OC.appConfig.core.defaultInternalExpireDateEnforced === true\n\t}\n\n\t/**\n\t * Is remote shares expiration enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultRemoteExpireDateEnforced() {\n\t\treturn OC.appConfig.core.defaultRemoteExpireDateEnforced === true\n\t}\n\n\t/**\n\t * Is there a default expiration date for new internal shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultInternalExpireDateEnabled() {\n\t\treturn OC.appConfig.core.defaultInternalExpireDateEnabled === true\n\t}\n\n\t/**\n\t * Is there a default expiration date for new remote shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultRemoteExpireDateEnabled() {\n\t\treturn OC.appConfig.core.defaultRemoteExpireDateEnabled === true\n\t}\n\n\t/**\n\t * Are users on this server allowed to send shares to other servers ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isRemoteShareAllowed() {\n\t\treturn OC.appConfig.core.remoteShareAllowed === true\n\t}\n\n\t/**\n\t * Is sharing my mail (link share) enabled ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isMailShareAllowed() {\n\t\t// eslint-disable-next-line camelcase\n\t\treturn this._capabilities?.files_sharing?.sharebymail !== undefined\n\t\t\t// eslint-disable-next-line camelcase\n\t\t\t&& this._capabilities?.files_sharing?.public?.enabled === true\n\t}\n\n\t/**\n\t * Get the default days to link shares expiration\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultExpireDate() {\n\t\treturn OC.appConfig.core.defaultExpireDate\n\t}\n\n\t/**\n\t * Get the default days to internal shares expiration\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultInternalExpireDate() {\n\t\treturn OC.appConfig.core.defaultInternalExpireDate\n\t}\n\n\t/**\n\t * Get the default days to remote shares expiration\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultRemoteExpireDate() {\n\t\treturn OC.appConfig.core.defaultRemoteExpireDate\n\t}\n\n\t/**\n\t * Is resharing allowed ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isResharingAllowed() {\n\t\treturn OC.appConfig.core.resharingAllowed === true\n\t}\n\n\t/**\n\t * Is password enforced for mail shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isPasswordForMailSharesRequired() {\n\t\treturn (this._capabilities.files_sharing.sharebymail === undefined) ? false : this._capabilities.files_sharing.sharebymail.password.enforced\n\t}\n\n\t/**\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget shouldAlwaysShowUnique() {\n\t\treturn (this._capabilities.files_sharing?.sharee?.always_show_unique === true)\n\t}\n\n\t/**\n\t * Is sharing with groups allowed ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget allowGroupSharing() {\n\t\treturn OC.appConfig.core.allowGroupSharing === true\n\t}\n\n\t/**\n\t * Get the maximum results of a share search\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget maxAutocompleteResults() {\n\t\treturn parseInt(OC.config['sharing.maxAutocompleteResults'], 10) || 25\n\t}\n\n\t/**\n\t * Get the minimal string length\n\t * to initiate a share search\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget minSearchStringLength() {\n\t\treturn parseInt(OC.config['sharing.minSearchStringLength'], 10) || 0\n\t}\n\n\t/**\n\t * Get the password policy config\n\t *\n\t * @return {object}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget passwordPolicy() {\n\t\treturn this._capabilities.password_policy ? this._capabilities.password_policy : {}\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Gary Kim <gary@garykim.dev>\n * @author Georg Ehrke <oc.list@georgehrke.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class Share {\n\n\t_share\n\n\t/**\n\t * Create the share object\n\t *\n\t * @param {object} ocsData ocs request response\n\t */\n\tconstructor(ocsData) {\n\t\tif (ocsData.ocs && ocsData.ocs.data && ocsData.ocs.data[0]) {\n\t\t\tocsData = ocsData.ocs.data[0]\n\t\t}\n\n\t\t// convert int into boolean\n\t\tocsData.hide_download = !!ocsData.hide_download\n\t\tocsData.mail_send = !!ocsData.mail_send\n\n\t\tif (ocsData.attributes && typeof ocsData.attributes === 'string') {\n\t\t\ttry {\n\t\t\t\tocsData.attributes = JSON.parse(ocsData.attributes)\n\t\t\t} catch (e) {\n\t\t\t\tconsole.warn('Could not parse share attributes returned by server', ocsData.attributes)\n\t\t\t}\n\t\t}\n\t\tocsData.attributes = ocsData.attributes ?? []\n\n\t\t// store state\n\t\tthis._share = ocsData\n\t}\n\n\t/**\n\t * Get the share state\n\t * ! used for reactivity purpose\n\t * Do not remove. It allow vuejs to\n\t * inject its watchers into the #share\n\t * state and make the whole class reactive\n\t *\n\t * @return {object} the share raw state\n\t * @readonly\n\t * @memberof Sidebar\n\t */\n\tget state() {\n\t\treturn this._share\n\t}\n\n\t/**\n\t * get the share id\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget id() {\n\t\treturn this._share.id\n\t}\n\n\t/**\n\t * Get the share type\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget type() {\n\t\treturn this._share.share_type\n\t}\n\n\t/**\n\t * Get the share permissions\n\t * See OC.PERMISSION_* variables\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget permissions() {\n\t\treturn this._share.permissions\n\t}\n\n\t/**\n\t * Get the share attributes\n\t *\n\t * @return {Array}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget attributes() {\n\t\treturn this._share.attributes\n\t}\n\n\t/**\n\t * Set the share permissions\n\t * See OC.PERMISSION_* variables\n\t *\n\t * @param {number} permissions valid permission, See OC.PERMISSION_* variables\n\t * @memberof Share\n\t */\n\tset permissions(permissions) {\n\t\tthis._share.permissions = permissions\n\t}\n\n\t// SHARE OWNER --------------------------------------------------\n\t/**\n\t * Get the share owner uid\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget owner() {\n\t\treturn this._share.uid_owner\n\t}\n\n\t/**\n\t * Get the share owner's display name\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget ownerDisplayName() {\n\t\treturn this._share.displayname_owner\n\t}\n\n\t// SHARED WITH --------------------------------------------------\n\t/**\n\t * Get the share with entity uid\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWith() {\n\t\treturn this._share.share_with\n\t}\n\n\t/**\n\t * Get the share with entity display name\n\t * fallback to its uid if none\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithDisplayName() {\n\t\treturn this._share.share_with_displayname\n\t\t\t|| this._share.share_with\n\t}\n\n\t/**\n\t * Unique display name in case of multiple\n\t * duplicates results with the same name.\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithDisplayNameUnique() {\n\t\treturn this._share.share_with_displayname_unique\n\t\t\t|| this._share.share_with\n\t}\n\n\t/**\n\t * Get the share with entity link\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithLink() {\n\t\treturn this._share.share_with_link\n\t}\n\n\t/**\n\t * Get the share with avatar if any\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithAvatar() {\n\t\treturn this._share.share_with_avatar\n\t}\n\n\t// SHARED FILE OR FOLDER OWNER ----------------------------------\n\t/**\n\t * Get the shared item owner uid\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget uidFileOwner() {\n\t\treturn this._share.uid_file_owner\n\t}\n\n\t/**\n\t * Get the shared item display name\n\t * fallback to its uid if none\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget displaynameFileOwner() {\n\t\treturn this._share.displayname_file_owner\n\t\t\t|| this._share.uid_file_owner\n\t}\n\n\t// TIME DATA ----------------------------------------------------\n\t/**\n\t * Get the share creation timestamp\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget createdTime() {\n\t\treturn this._share.stime\n\t}\n\n\t/**\n\t * Get the expiration date\n\t *\n\t * @return {string} date with YYYY-MM-DD format\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget expireDate() {\n\t\treturn this._share.expiration\n\t}\n\n\t/**\n\t * Set the expiration date\n\t *\n\t * @param {string} date the share expiration date with YYYY-MM-DD format\n\t * @memberof Share\n\t */\n\tset expireDate(date) {\n\t\tthis._share.expiration = date\n\t}\n\n\t// EXTRA DATA ---------------------------------------------------\n\t/**\n\t * Get the public share token\n\t *\n\t * @return {string} the token\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget token() {\n\t\treturn this._share.token\n\t}\n\n\t/**\n\t * Get the share note if any\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget note() {\n\t\treturn this._share.note\n\t}\n\n\t/**\n\t * Set the share note if any\n\t *\n\t * @param {string} note the note\n\t * @memberof Share\n\t */\n\tset note(note) {\n\t\tthis._share.note = note\n\t}\n\n\t/**\n\t * Get the share label if any\n\t * Should only exist on link shares\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget label() {\n\t\treturn this._share.label ?? ''\n\t}\n\n\t/**\n\t * Set the share label if any\n\t * Should only be set on link shares\n\t *\n\t * @param {string} label the label\n\t * @memberof Share\n\t */\n\tset label(label) {\n\t\tthis._share.label = label\n\t}\n\n\t/**\n\t * Have a mail been sent\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget mailSend() {\n\t\treturn this._share.mail_send === true\n\t}\n\n\t/**\n\t * Hide the download button on public page\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hideDownload() {\n\t\treturn this._share.hide_download === true\n\t}\n\n\t/**\n\t * Hide the download button on public page\n\t *\n\t * @param {boolean} state hide the button ?\n\t * @memberof Share\n\t */\n\tset hideDownload(state) {\n\t\tthis._share.hide_download = state === true\n\t}\n\n\t/**\n\t * Password protection of the share\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget password() {\n\t\treturn this._share.password\n\t}\n\n\t/**\n\t * Password protection of the share\n\t *\n\t * @param {string} password the share password\n\t * @memberof Share\n\t */\n\tset password(password) {\n\t\tthis._share.password = password\n\t}\n\n\t/**\n\t * Password expiration time\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget passwordExpirationTime() {\n\t\treturn this._share.password_expiration_time\n\t}\n\n\t/**\n\t * Password expiration time\n\t *\n\t * @param {string} password expiration time\n\t * @memberof Share\n\t */\n\tset passwordExpirationTime(passwordExpirationTime) {\n\t\tthis._share.password_expiration_time = passwordExpirationTime\n\t}\n\n\t/**\n\t * Password protection by Talk of the share\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget sendPasswordByTalk() {\n\t\treturn this._share.send_password_by_talk\n\t}\n\n\t/**\n\t * Password protection by Talk of the share\n\t *\n\t * @param {boolean} sendPasswordByTalk whether to send the password by Talk\n\t * or not\n\t * @memberof Share\n\t */\n\tset sendPasswordByTalk(sendPasswordByTalk) {\n\t\tthis._share.send_password_by_talk = sendPasswordByTalk\n\t}\n\n\t// SHARED ITEM DATA ---------------------------------------------\n\t/**\n\t * Get the shared item absolute full path\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget path() {\n\t\treturn this._share.path\n\t}\n\n\t/**\n\t * Return the item type: file or folder\n\t *\n\t * @return {string} 'folder' or 'file'\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget itemType() {\n\t\treturn this._share.item_type\n\t}\n\n\t/**\n\t * Get the shared item mimetype\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget mimetype() {\n\t\treturn this._share.mimetype\n\t}\n\n\t/**\n\t * Get the shared item id\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget fileSource() {\n\t\treturn this._share.file_source\n\t}\n\n\t/**\n\t * Get the target path on the receiving end\n\t * e.g the file /xxx/aaa will be shared in\n\t * the receiving root as /aaa, the fileTarget is /aaa\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget fileTarget() {\n\t\treturn this._share.file_target\n\t}\n\n\t/**\n\t * Get the parent folder id if any\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget fileParent() {\n\t\treturn this._share.file_parent\n\t}\n\n\t// PERMISSIONS Shortcuts\n\n\t/**\n\t * Does this share have READ permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasReadPermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_READ))\n\t}\n\n\t/**\n\t * Does this share have CREATE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasCreatePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_CREATE))\n\t}\n\n\t/**\n\t * Does this share have DELETE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasDeletePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_DELETE))\n\t}\n\n\t/**\n\t * Does this share have UPDATE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasUpdatePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_UPDATE))\n\t}\n\n\t/**\n\t * Does this share have SHARE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasSharePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_SHARE))\n\t}\n\n\t/**\n\t * Does this share have download permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasDownloadPermission() {\n\t\tfor (const i in this._share.attributes) {\n\t\t\tconst attr = this._share.attributes[i]\n\t\t\tif (attr.scope === 'permissions' && attr.key === 'download') {\n\t\t\t\treturn attr.enabled\n\t\t\t}\n\t\t}\n\n\t\treturn true\n\t}\n\n\tset hasDownloadPermission(enabled) {\n\t\tthis.setAttribute('permissions', 'download', !!enabled)\n\t}\n\n\tsetAttribute(scope, key, enabled) {\n\t\tconst attrUpdate = {\n\t\t\tscope,\n\t\t\tkey,\n\t\t\tenabled,\n\t\t}\n\n\t\t// try and replace existing\n\t\tfor (const i in this._share.attributes) {\n\t\t\tconst attr = this._share.attributes[i]\n\t\t\tif (attr.scope === attrUpdate.scope && attr.key === attrUpdate.key) {\n\t\t\t\tthis._share.attributes.splice(i, 1, attrUpdate)\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\n\t\tthis._share.attributes.push(attrUpdate)\n\t}\n\n\t// PERMISSIONS Shortcuts for the CURRENT USER\n\t// ! the permissions above are the share settings,\n\t// ! meaning the permissions for the recipient\n\t/**\n\t * Can the current user EDIT this share ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget canEdit() {\n\t\treturn this._share.can_edit === true\n\t}\n\n\t/**\n\t * Can the current user DELETE this share ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget canDelete() {\n\t\treturn this._share.can_delete === true\n\t}\n\n\t/**\n\t * Top level accessible shared folder fileid for the current user\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget viaFileid() {\n\t\treturn this._share.via_fileid\n\t}\n\n\t/**\n\t * Top level accessible shared folder path for the current user\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget viaPath() {\n\t\treturn this._share.via_path\n\t}\n\n\t// TODO: SORT THOSE PROPERTIES\n\n\tget parent() {\n\t\treturn this._share.parent\n\t}\n\n\tget storageId() {\n\t\treturn this._share.storage_id\n\t}\n\n\tget storage() {\n\t\treturn this._share.storage\n\t}\n\n\tget itemSource() {\n\t\treturn this._share.item_source\n\t}\n\n\tget status() {\n\t\treturn this._share.status\n\t}\n\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',[_c('SharingEntrySimple',{ref:\"shareEntrySimple\",staticClass:\"sharing-entry__internal\",attrs:{\"title\":_vm.t('files_sharing', 'Internal link'),\"subtitle\":_vm.internalLinkSubtitle},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-external icon-external-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"title\":_vm.copyLinkTooltip,\"aria-label\":_vm.copyLinkTooltip},on:{\"click\":_vm.copyLink},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.copied && _vm.copySuccess)?_c('CheckIcon',{staticClass:\"icon-checkmark-color\",attrs:{\"size\":20}}):_c('ClipboardIcon',{attrs:{\"size\":20}})]},proxy:true}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon check-bold-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CheckBoldIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CheckBold.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CheckBold.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CheckBold.vue?vue&type=template&id=5603f41f\"\nimport script from \"./CheckBold.vue?vue&type=script&lang=js\"\nexport * from \"./CheckBold.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon check-bold-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardFlow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardFlow.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon clipboard-flow-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M15,19L11,15H14V8H16V15H19L15,19M10,16H8V9H5L9,5L13,9H10V16\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ClipboardFlowIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./ClipboardFlow.vue?vue&type=template&id=62186d55\"\nimport script from \"./ClipboardFlow.vue?vue&type=script&lang=js\"\nexport * from \"./ClipboardFlow.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-flow-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M15,19L11,15H14V8H16V15H19L15,19M10,16H8V9H5L9,5L13,9H10V16\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<li class=\"sharing-entry\">\n\t\t<slot name=\"avatar\" />\n\t\t<div class=\"sharing-entry__desc\">\n\t\t\t<span class=\"sharing-entry__title\">{{ title }}</span>\n\t\t\t<p v-if=\"subtitle\">\n\t\t\t\t{{ subtitle }}\n\t\t\t</p>\n\t\t</div>\n\t\t<NcActions v-if=\"$slots['default']\"\n\t\t\tref=\"actionsComponent\"\n\t\t\tclass=\"sharing-entry__actions\"\n\t\t\tmenu-align=\"right\"\n\t\t\t:aria-expanded=\"ariaExpandedValue\">\n\t\t\t<slot />\n\t\t</NcActions>\n\t</li>\n</template>\n\n<script>\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\n\nexport default {\n\tname: 'SharingEntrySimple',\n\n\tcomponents: {\n\t\tNcActions,\n\t},\n\n\tprops: {\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tsubtitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tisUnique: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\tariaExpanded: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tariaExpandedValue() {\n\t\t\tif (this.ariaExpanded === null) {\n\t\t\t\treturn this.ariaExpanded\n\t\t\t}\n\t\t\treturn this.ariaExpanded ? 'true' : 'false'\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\t&__desc {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tposition: relative;\n\t\tflex: 1 1;\n\t\tmin-width: 0;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__title {\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tmax-width: inherit;\n\t}\n\t&__actions {\n\t\tmargin-left: auto !important;\n\t}\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntrySimple.vue?vue&type=template&id=1852ea78&scoped=true\"\nimport script from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1852ea78\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry\"},[_vm._t(\"avatar\"),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\"},[_vm._v(_vm._s(_vm.title))]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\")]):_vm._e()]),_vm._v(\" \"),(_vm.$slots['default'])?_c('NcActions',{ref:\"actionsComponent\",staticClass:\"sharing-entry__actions\",attrs:{\"menu-align\":\"right\",\"aria-expanded\":_vm.ariaExpandedValue}},[_vm._t(\"default\")],2):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<ul>\n\t\t<SharingEntrySimple ref=\"shareEntrySimple\"\n\t\t\tclass=\"sharing-entry__internal\"\n\t\t\t:title=\"t('files_sharing', 'Internal link')\"\n\t\t\t:subtitle=\"internalLinkSubtitle\">\n\t\t\t<template #avatar>\n\t\t\t\t<div class=\"avatar-external icon-external-white\" />\n\t\t\t</template>\n\n\t\t\t<NcActionButton :title=\"copyLinkTooltip\"\n\t\t\t\t:aria-label=\"copyLinkTooltip\"\n\t\t\t\t@click=\"copyLink\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CheckIcon v-if=\"copied && copySuccess\"\n\t\t\t\t\t\t:size=\"20\"\n\t\t\t\t\t\tclass=\"icon-checkmark-color\" />\n\t\t\t\t\t<ClipboardIcon v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionButton>\n\t\t</SharingEntrySimple>\n\t</ul>\n</template>\n\n<script>\nimport { generateUrl } from '@nextcloud/router'\nimport { showSuccess } from '@nextcloud/dialogs'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\n\nimport CheckIcon from 'vue-material-design-icons/CheckBold.vue'\nimport ClipboardIcon from 'vue-material-design-icons/ClipboardFlow.vue'\n\nimport SharingEntrySimple from './SharingEntrySimple.vue'\n\nexport default {\n\tname: 'SharingEntryInternal',\n\n\tcomponents: {\n\t\tNcActionButton,\n\t\tSharingEntrySimple,\n\t\tCheckIcon,\n\t\tClipboardIcon,\n\t},\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcopied: false,\n\t\t\tcopySuccess: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Get the internal link to this file id\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tinternalLink() {\n\t\t\treturn window.location.protocol + '//' + window.location.host + generateUrl('/f/') + this.fileInfo.id\n\t\t},\n\n\t\t/**\n\t\t * Tooltip message\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tcopyLinkTooltip() {\n\t\t\tif (this.copied) {\n\t\t\t\tif (this.copySuccess) {\n\t\t\t\t\treturn ''\n\t\t\t\t}\n\t\t\t\treturn t('files_sharing', 'Cannot copy, please copy the link manually')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Copy internal link to clipboard')\n\t\t},\n\n\t\tinternalLinkSubtitle() {\n\t\t\tif (this.fileInfo.type === 'dir') {\n\t\t\t\treturn t('files_sharing', 'Only works for people with access to this folder')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Only works for people with access to this file')\n\t\t},\n\t},\n\n\tmethods: {\n\t\tasync copyLink() {\n\t\t\ttry {\n\t\t\t\tawait navigator.clipboard.writeText(this.internalLink)\n\t\t\t\tshowSuccess(t('files_sharing', 'Link copied'))\n\t\t\t\tthis.$refs.shareEntrySimple.$refs.actionsComponent.$el.focus()\n\t\t\t\tthis.copySuccess = true\n\t\t\t\tthis.copied = true\n\t\t\t} catch (error) {\n\t\t\t\tthis.copySuccess = false\n\t\t\t\tthis.copied = true\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.copySuccess = false\n\t\t\t\t\tthis.copied = false\n\t\t\t\t}, 4000)\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry__internal {\n\t.avatar-external {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInternal.vue?vue&type=template&id=e40cd936&scoped=true\"\nimport script from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e40cd936\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharing-search\"},[_c('label',{attrs:{\"for\":\"sharing-search-input\"}},[_vm._v(_vm._s(_vm.t('files_sharing', 'Search for share recipients')))]),_vm._v(\" \"),_c('NcSelect',{ref:\"select\",staticClass:\"sharing-search__input\",attrs:{\"input-id\":\"sharing-search-input\",\"disabled\":!_vm.canReshare,\"loading\":_vm.loading,\"filterable\":false,\"placeholder\":_vm.inputPlaceholder,\"clear-search-on-blur\":() => false,\"user-select\":true,\"options\":_vm.options},on:{\"search\":_vm.asyncFind,\"option:selected\":_vm.onSelected},scopedSlots:_vm._u([{key:\"no-options\",fn:function({ search }){return [_vm._v(\"\\n\\t\\t\\t\"+_vm._s(search ? _vm.noResultText : _vm.t('files_sharing', 'No recommendations. Start typing.'))+\"\\n\\t\\t\")]}}]),model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport Config from '../services/ConfigService.js'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\n\nconst config = new Config()\n// note: some chars removed on purpose to make them human friendly when read out\nconst passwordSet = 'abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789'\n\n/**\n * Generate a valid policy password or\n * request a valid password if password_policy\n * is enabled\n *\n * @return {string} a valid password\n */\nexport default async function() {\n\t// password policy is enabled, let's request a pass\n\tif (config.passwordPolicy.api && config.passwordPolicy.api.generate) {\n\t\ttry {\n\t\t\tconst request = await axios.get(config.passwordPolicy.api.generate)\n\t\t\tif (request.data.ocs.data.password) {\n\t\t\t\tshowSuccess(t('files_sharing', 'Password created successfully'))\n\t\t\t\treturn request.data.ocs.data.password\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.info('Error generating password from password_policy', error)\n\t\t\tshowError(t('files_sharing', 'Error generating password from password policy'))\n\t\t}\n\t}\n\n\tconst array = new Uint8Array(10)\n\tconst ratio = passwordSet.length / 255\n\tself.crypto.getRandomValues(array)\n\tlet password = ''\n\tfor (let i = 0; i < array.length; i++) {\n\t\tpassword += passwordSet.charAt(array[i] * ratio)\n\t}\n\treturn password\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// TODO: remove when ie not supported\nimport 'url-search-params-polyfill'\n\nimport { generateOcsUrl } from '@nextcloud/router'\nimport axios from '@nextcloud/axios'\nimport Share from '../models/Share.js'\nimport { emit } from '@nextcloud/event-bus'\n\nconst shareUrl = generateOcsUrl('apps/files_sharing/api/v1/shares')\n\nexport default {\n\tmethods: {\n\t\t/**\n\t\t * Create a new share\n\t\t *\n\t\t * @param {object} data destructuring object\n\t\t * @param {string} data.path path to the file/folder which should be shared\n\t\t * @param {number} data.shareType 0 = user; 1 = group; 3 = public link; 6 = federated cloud share\n\t\t * @param {string} data.shareWith user/group id with which the file should be shared (optional for shareType > 1)\n\t\t * @param {boolean} [data.publicUpload] allow public upload to a public shared folder\n\t\t * @param {string} [data.password] password to protect public link Share with\n\t\t * @param {number} [data.permissions] 1 = read; 2 = update; 4 = create; 8 = delete; 16 = share; 31 = all (default: 31, for public shares: 1)\n\t\t * @param {boolean} [data.sendPasswordByTalk] send the password via a talk conversation\n\t\t * @param {string} [data.expireDate] expire the shareautomatically after\n\t\t * @param {string} [data.label] custom label\n\t\t * @param {string} [data.attributes] Share attributes encoded as json\n\t\t * @param data.note\n\t\t * @return {Share} the new share\n\t\t * @throws {Error}\n\t\t */\n\t\tasync createShare({ path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes }) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.post(shareUrl, { path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\tconst share = new Share(request.data.ocs.data)\n\t\t\t\temit('files_sharing:share:created', { share })\n\t\t\t\treturn share\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error while creating share', error)\n\t\t\t\tconst errorMessage = error?.response?.data?.ocs?.meta?.message\n\t\t\t\tOC.Notification.showTemporary(\n\t\t\t\t\terrorMessage ? t('files_sharing', 'Error creating the share: {errorMessage}', { errorMessage }) : t('files_sharing', 'Error creating the share'),\n\t\t\t\t\t{ type: 'error' },\n\t\t\t\t)\n\t\t\t\tthrow error\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @throws {Error}\n\t\t */\n\t\tasync deleteShare(id) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.delete(shareUrl + `/${id}`)\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\temit('files_sharing:share:deleted', { id })\n\t\t\t\treturn true\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error while deleting share', error)\n\t\t\t\tconst errorMessage = error?.response?.data?.ocs?.meta?.message\n\t\t\t\tOC.Notification.showTemporary(\n\t\t\t\t\terrorMessage ? t('files_sharing', 'Error deleting the share: {errorMessage}', { errorMessage }) : t('files_sharing', 'Error deleting the share'),\n\t\t\t\t\t{ type: 'error' },\n\t\t\t\t)\n\t\t\t\tthrow error\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @param {object} properties key-value object of the properties to update\n\t\t */\n\t\tasync updateShare(id, properties) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.put(shareUrl + `/${id}`, properties)\n\t\t\t\temit('files_sharing:share:updated', { id })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t} else {\n\t\t\t\t\treturn request.data.ocs.data\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error while updating share', error)\n\t\t\t\tif (error.response.status !== 400) {\n\t\t\t\t\tconst errorMessage = error?.response?.data?.ocs?.meta?.message\n\t\t\t\t\tOC.Notification.showTemporary(\n\t\t\t\t\t\terrorMessage ? t('files_sharing', 'Error updating the share: {errorMessage}', { errorMessage }) : t('files_sharing', 'Error updating the share'),\n\t\t\t\t\t\t{ type: 'error' },\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tconst message = error.response.data.ocs.meta.message\n\t\t\t\tthrow new Error(message)\n\t\t\t}\n\t\t},\n\t},\n}\n","import Share from '../models/Share.js'\nimport Config from '../services/ConfigService.js'\n\nexport default {\n\tmethods: {\n\t\tasync openSharingDetails(shareRequestObject) {\n\t\t\tlet share = {}\n\t\t\t// handle externalResults from OCA.Sharing.ShareSearch\n\t\t\t// TODO : Better name/interface for handler required\n\t\t\t// For example `externalAppCreateShareHook` with proper documentation\n\t\t\tif (shareRequestObject.handler) {\n\t\t\t\tconst handlerInput = {}\n\t\t\t\tif (this.suggestions) {\n\t\t\t\t\thandlerInput.suggestions = this.suggestions\n\t\t\t\t\thandlerInput.fileInfo = this.fileInfo\n\t\t\t\t\thandlerInput.query = this.query\n\t\t\t\t}\n\t\t\t\tconst externalShareRequestObject = await shareRequestObject.handler(handlerInput)\n\t\t\t\tshare = this.mapShareRequestToShareObject(externalShareRequestObject)\n\t\t\t} else {\n\t\t\t\tshare = this.mapShareRequestToShareObject(shareRequestObject)\n\t\t\t}\n\n\t\t\tconst shareDetails = {\n\t\t\t\tfileInfo: this.fileInfo,\n\t\t\t\tshare,\n\t\t\t}\n\n\t\t\tthis.$emit('open-sharing-details', shareDetails)\n\t\t},\n\t\topenShareDetailsForCustomSettings(share) {\n\t\t\tshare.setCustomPermissions = true\n\t\t\tthis.openSharingDetails(share)\n\t\t},\n\t\tmapShareRequestToShareObject(shareRequestObject) {\n\n\t\t\tif (shareRequestObject.id) {\n\t\t\t\treturn shareRequestObject\n\t\t\t}\n\n\t\t\tconst share = {\n\t\t\t\tattributes: [\n\t\t\t\t\t{\n\t\t\t\t\t\tenabled: true,\n\t\t\t\t\t\tkey: 'download',\n\t\t\t\t\t\tscope: 'permissions',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tshare_type: shareRequestObject.shareType,\n\t\t\t\tshare_with: shareRequestObject.shareWith,\n\t\t\t\tis_no_user: shareRequestObject.isNoUser,\n\t\t\t\tuser: shareRequestObject.shareWith,\n\t\t\t\tshare_with_displayname: shareRequestObject.displayName,\n\t\t\t\tsubtitle: shareRequestObject.subtitle,\n\t\t\t\tpermissions: shareRequestObject.permissions ?? new Config().defaultPermissions,\n\t\t\t\texpiration: '',\n\t\t\t}\n\n\t\t\treturn new Share(share)\n\t\t},\n\t},\n}\n","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div class=\"sharing-search\">\n\t\t<label for=\"sharing-search-input\">{{ t('files_sharing', 'Search for share recipients') }}</label>\n\t\t<NcSelect ref=\"select\"\n\t\t\tv-model=\"value\"\n\t\t\tinput-id=\"sharing-search-input\"\n\t\t\tclass=\"sharing-search__input\"\n\t\t\t:disabled=\"!canReshare\"\n\t\t\t:loading=\"loading\"\n\t\t\t:filterable=\"false\"\n\t\t\t:placeholder=\"inputPlaceholder\"\n\t\t\t:clear-search-on-blur=\"() => false\"\n\t\t\t:user-select=\"true\"\n\t\t\t:options=\"options\"\n\t\t\t@search=\"asyncFind\"\n\t\t\t@option:selected=\"onSelected\">\n\t\t\t<template #no-options=\"{ search }\">\n\t\t\t\t{{ search ? noResultText : t('files_sharing', 'No recommendations. Start typing.') }}\n\t\t\t</template>\n\t\t</NcSelect>\n\t</div>\n</template>\n\n<script>\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getCapabilities } from '@nextcloud/capabilities'\nimport axios from '@nextcloud/axios'\nimport debounce from 'debounce'\nimport NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'\n\nimport Config from '../services/ConfigService.js'\nimport GeneratePassword from '../utils/GeneratePassword.js'\nimport Share from '../models/Share.js'\nimport ShareRequests from '../mixins/ShareRequests.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\nimport { ShareType } from '@nextcloud/sharing'\n\nexport default {\n\tname: 'SharingInput',\n\n\tcomponents: {\n\t\tNcSelect,\n\t},\n\n\tmixins: [ShareRequests, ShareDetails],\n\n\tprops: {\n\t\tshares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t\tlinkShares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t\treshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t\tcanReshare: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tloading: false,\n\t\t\tquery: '',\n\t\t\trecommendations: [],\n\t\t\tShareSearch: OCA.Sharing.ShareSearch.state,\n\t\t\tsuggestions: [],\n\t\t\tvalue: null,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Implement ShareSearch\n\t\t * allows external appas to inject new\n\t\t * results into the autocomplete dropdown\n\t\t * Used for the guests app\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\texternalResults() {\n\t\t\treturn this.ShareSearch.results\n\t\t},\n\t\tinputPlaceholder() {\n\t\t\tconst allowRemoteSharing = this.config.isRemoteShareAllowed\n\n\t\t\tif (!this.canReshare) {\n\t\t\t\treturn t('files_sharing', 'Resharing is not allowed')\n\t\t\t}\n\t\t\t// We can always search with email addresses for users too\n\t\t\tif (!allowRemoteSharing) {\n\t\t\t\treturn t('files_sharing', 'Name or email …')\n\t\t\t}\n\n\t\t\treturn t('files_sharing', 'Name, email, or Federated Cloud ID …')\n\t\t},\n\n\t\tisValidQuery() {\n\t\t\treturn this.query && this.query.trim() !== '' && this.query.length > this.config.minSearchStringLength\n\t\t},\n\n\t\toptions() {\n\t\t\tif (this.isValidQuery) {\n\t\t\t\treturn this.suggestions\n\t\t\t}\n\t\t\treturn this.recommendations\n\t\t},\n\n\t\tnoResultText() {\n\t\t\tif (this.loading) {\n\t\t\t\treturn t('files_sharing', 'Searching …')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'No elements found.')\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.getRecommendations()\n\t},\n\n\tmethods: {\n\t\tonSelected(option) {\n\t\t\tthis.value = null // Reset selected option\n\t\t\tthis.openSharingDetails(option)\n\t\t},\n\n\t\tasync asyncFind(query) {\n\t\t\t// save current query to check if we display\n\t\t\t// recommendations or search results\n\t\t\tthis.query = query.trim()\n\t\t\tif (this.isValidQuery) {\n\t\t\t\t// start loading now to have proper ux feedback\n\t\t\t\t// during the debounce\n\t\t\t\tthis.loading = true\n\t\t\t\tawait this.debounceGetSuggestions(query)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Get suggestions\n\t\t *\n\t\t * @param {string} search the search query\n\t\t * @param {boolean} [lookup] search on lookup server\n\t\t */\n\t\tasync getSuggestions(search, lookup = false) {\n\t\t\tthis.loading = true\n\n\t\t\tif (getCapabilities().files_sharing.sharee.query_lookup_default === true) {\n\t\t\t\tlookup = true\n\t\t\t}\n\n\t\t\tconst shareType = Object.values(ShareType)\n\n\t\t\tif (getCapabilities().files_sharing.public.enabled === true) {\n\t\t\t\tshareType.push(ShareType.Email)\n\t\t\t}\n\n\t\t\tlet request = null\n\t\t\ttry {\n\t\t\t\trequest = await axios.get(generateOcsUrl('apps/files_sharing/api/v1/sharees'), {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat: 'json',\n\t\t\t\t\t\titemType: this.fileInfo.type === 'dir' ? 'folder' : 'file',\n\t\t\t\t\t\tsearch,\n\t\t\t\t\t\tlookup,\n\t\t\t\t\t\tperPage: this.config.maxAutocompleteResults,\n\t\t\t\t\t\tshareType,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error fetching suggestions', error)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst data = request.data.ocs.data\n\t\t\tconst exact = request.data.ocs.data.exact\n\t\t\tdata.exact = [] // removing exact from general results\n\n\t\t\t// flatten array of arrays\n\t\t\tconst rawExactSuggestions = Object.values(exact).reduce((arr, elem) => arr.concat(elem), [])\n\t\t\tconst rawSuggestions = Object.values(data).reduce((arr, elem) => arr.concat(elem), [])\n\n\t\t\t// remove invalid data and format to user-select layout\n\t\t\tconst exactSuggestions = this.filterOutExistingShares(rawExactSuggestions)\n\t\t\t\t.map(share => this.formatForMultiselect(share))\n\t\t\t\t// sort by type so we can get user&groups first...\n\t\t\t\t.sort((a, b) => a.shareType - b.shareType)\n\t\t\tconst suggestions = this.filterOutExistingShares(rawSuggestions)\n\t\t\t\t.map(share => this.formatForMultiselect(share))\n\t\t\t\t// sort by type so we can get user&groups first...\n\t\t\t\t.sort((a, b) => a.shareType - b.shareType)\n\n\t\t\t// lookup clickable entry\n\t\t\t// show if enabled and not already requested\n\t\t\tconst lookupEntry = []\n\t\t\tif (data.lookupEnabled && !lookup) {\n\t\t\t\tlookupEntry.push({\n\t\t\t\t\tid: 'global-lookup',\n\t\t\t\t\tisNoUser: true,\n\t\t\t\t\tdisplayName: t('files_sharing', 'Search globally'),\n\t\t\t\t\tlookup: true,\n\t\t\t\t})\n\t\t\t}\n\n\t\t\t// if there is a condition specified, filter it\n\t\t\tconst externalResults = this.externalResults.filter(result => !result.condition || result.condition(this))\n\n\t\t\tconst allSuggestions = exactSuggestions.concat(suggestions).concat(externalResults).concat(lookupEntry)\n\n\t\t\t// Count occurrences of display names in order to provide a distinguishable description if needed\n\t\t\tconst nameCounts = allSuggestions.reduce((nameCounts, result) => {\n\t\t\t\tif (!result.displayName) {\n\t\t\t\t\treturn nameCounts\n\t\t\t\t}\n\t\t\t\tif (!nameCounts[result.displayName]) {\n\t\t\t\t\tnameCounts[result.displayName] = 0\n\t\t\t\t}\n\t\t\t\tnameCounts[result.displayName]++\n\t\t\t\treturn nameCounts\n\t\t\t}, {})\n\n\t\t\tthis.suggestions = allSuggestions.map(item => {\n\t\t\t\t// Make sure that items with duplicate displayName get the shareWith applied as a description\n\t\t\t\tif (nameCounts[item.displayName] > 1 && !item.desc) {\n\t\t\t\t\treturn { ...item, desc: item.shareWithDisplayNameUnique }\n\t\t\t\t}\n\t\t\t\treturn item\n\t\t\t})\n\n\t\t\tthis.loading = false\n\t\t\tconsole.info('suggestions', this.suggestions)\n\t\t},\n\n\t\t/**\n\t\t * Debounce getSuggestions\n\t\t *\n\t\t * @param {...*} args the arguments\n\t\t */\n\t\tdebounceGetSuggestions: debounce(function(...args) {\n\t\t\tthis.getSuggestions(...args)\n\t\t}, 300),\n\n\t\t/**\n\t\t * Get the sharing recommendations\n\t\t */\n\t\tasync getRecommendations() {\n\t\t\tthis.loading = true\n\n\t\t\tlet request = null\n\t\t\ttry {\n\t\t\t\trequest = await axios.get(generateOcsUrl('apps/files_sharing/api/v1/sharees_recommended'), {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat: 'json',\n\t\t\t\t\t\titemType: this.fileInfo.type,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error fetching recommendations', error)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Add external results from the OCA.Sharing.ShareSearch api\n\t\t\tconst externalResults = this.externalResults.filter(result => !result.condition || result.condition(this))\n\n\t\t\t// flatten array of arrays\n\t\t\tconst rawRecommendations = Object.values(request.data.ocs.data.exact)\n\t\t\t\t.reduce((arr, elem) => arr.concat(elem), [])\n\n\t\t\t// remove invalid data and format to user-select layout\n\t\t\tthis.recommendations = this.filterOutExistingShares(rawRecommendations)\n\t\t\t\t.map(share => this.formatForMultiselect(share))\n\t\t\t\t.concat(externalResults)\n\n\t\t\tthis.loading = false\n\t\t\tconsole.info('recommendations', this.recommendations)\n\t\t},\n\n\t\t/**\n\t\t * Filter out existing shares from\n\t\t * the provided shares search results\n\t\t *\n\t\t * @param {object[]} shares the array of shares object\n\t\t * @return {object[]}\n\t\t */\n\t\tfilterOutExistingShares(shares) {\n\t\t\treturn shares.reduce((arr, share) => {\n\t\t\t\t// only check proper objects\n\t\t\t\tif (typeof share !== 'object') {\n\t\t\t\t\treturn arr\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tif (share.value.shareType === ShareType.User) {\n\t\t\t\t\t\t// filter out current user\n\t\t\t\t\t\tif (share.value.shareWith === getCurrentUser().uid) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// filter out the owner of the share\n\t\t\t\t\t\tif (this.reshare && share.value.shareWith === this.reshare.owner) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// filter out existing mail shares\n\t\t\t\t\tif (share.value.shareType === ShareType.Email) {\n\t\t\t\t\t\tconst emails = this.linkShares.map(elem => elem.shareWith)\n\t\t\t\t\t\tif (emails.indexOf(share.value.shareWith.trim()) !== -1) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\t\t\t\t\t} else { // filter out existing shares\n\t\t\t\t\t\t// creating an object of uid => type\n\t\t\t\t\t\tconst sharesObj = this.shares.reduce((obj, elem) => {\n\t\t\t\t\t\t\tobj[elem.shareWith] = elem.type\n\t\t\t\t\t\t\treturn obj\n\t\t\t\t\t\t}, {})\n\n\t\t\t\t\t\t// if shareWith is the same and the share type too, ignore it\n\t\t\t\t\t\tconst key = share.value.shareWith.trim()\n\t\t\t\t\t\tif (key in sharesObj\n\t\t\t\t\t\t\t&& sharesObj[key] === share.value.shareType) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// ALL GOOD\n\t\t\t\t\t// let's add the suggestion\n\t\t\t\t\tarr.push(share)\n\t\t\t\t} catch {\n\t\t\t\t\treturn arr\n\t\t\t\t}\n\t\t\t\treturn arr\n\t\t\t}, [])\n\t\t},\n\n\t\t/**\n\t\t * Get the icon based on the share type\n\t\t *\n\t\t * @param {number} type the share type\n\t\t * @return {string} the icon class\n\t\t */\n\t\tshareTypeToIcon(type) {\n\t\t\tswitch (type) {\n\t\t\tcase ShareType.Guest:\n\t\t\t\t// default is a user, other icons are here to differentiate\n\t\t\t\t// themselves from it, so let's not display the user icon\n\t\t\t\t// case ShareType.Remote:\n\t\t\t\t// case ShareType.User:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-user',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Guest'),\n\t\t\t\t}\n\t\t\tcase ShareType.RemoteGroup:\n\t\t\tcase ShareType.Group:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-group',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Group'),\n\t\t\t\t}\n\t\t\tcase ShareType.Email:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-mail',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Email'),\n\t\t\t\t}\n\t\t\tcase ShareType.Team:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-teams',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Team'),\n\t\t\t\t}\n\t\t\tcase ShareType.Room:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-room',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Talk conversation'),\n\t\t\t\t}\n\t\t\tcase ShareType.Deck:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-deck',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Deck board'),\n\t\t\t\t}\n\t\t\tcase ShareType.Sciencemesh:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-sciencemesh',\n\t\t\t\t\ticonTitle: t('files_sharing', 'ScienceMesh'),\n\t\t\t\t}\n\t\t\tdefault:\n\t\t\t\treturn {}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Format shares for the multiselect options\n\t\t *\n\t\t * @param {object} result select entry item\n\t\t * @return {object}\n\t\t */\n\t\tformatForMultiselect(result) {\n\t\t\tlet subname\n\t\t\tif (result.value.shareType === ShareType.User && this.config.shouldAlwaysShowUnique) {\n\t\t\t\tsubname = result.shareWithDisplayNameUnique ?? ''\n\t\t\t} else if ((result.value.shareType === ShareType.Remote\n\t\t\t\t\t|| result.value.shareType === ShareType.RemoteGroup\n\t\t\t) && result.value.server) {\n\t\t\t\tsubname = t('files_sharing', 'on {server}', { server: result.value.server })\n\t\t\t} else if (result.value.shareType === ShareType.Email) {\n\t\t\t\tsubname = result.value.shareWith\n\t\t\t} else {\n\t\t\t\tsubname = result.shareWithDescription ?? ''\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tshareWith: result.value.shareWith,\n\t\t\t\tshareType: result.value.shareType,\n\t\t\t\tuser: result.uuid || result.value.shareWith,\n\t\t\t\tisNoUser: result.value.shareType !== ShareType.User,\n\t\t\t\tdisplayName: result.name || result.label,\n\t\t\t\tsubname,\n\t\t\t\tshareWithDisplayNameUnique: result.shareWithDisplayNameUnique || '',\n\t\t\t\t...this.shareTypeToIcon(result.value.shareType),\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\">\n.sharing-search {\n\tdisplay: flex;\n\tflex-direction: column;\n\tmargin-bottom: 4px;\n\n\tlabel[for=\"sharing-search-input\"] {\n\t\tmargin-bottom: 2px;\n\t}\n\n\t&__input {\n\t\twidth: 100%;\n\t\tmargin: 10px 0;\n\t}\n}\n\n.vs__dropdown-menu {\n\t// properly style the lookup entry\n\tspan[lookup] {\n\t\t.avatardiv {\n\t\t\tbackground-image: var(--icon-search-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-color: var(--color-text-maxcontrast) !important;\n\t\t\t.avatardiv__initials-wrapper {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=style&index=0&id=66b33cc4&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=style&index=0&id=66b33cc4&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInput.vue?vue&type=template&id=66b33cc4\"\nimport script from \"./SharingInput.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInput.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInput.vue?vue&type=style&index=0&id=66b33cc4&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{attrs:{\"id\":\"sharing-inherited-shares\"}},[_c('SharingEntrySimple',{staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.mainTitle,\"subtitle\":_vm.subTitle,\"aria-expanded\":_vm.showInheritedShares},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-shared icon-more-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"icon\":_vm.showInheritedSharesIcon,\"aria-label\":_vm.toggleTooltip,\"title\":_vm.toggleTooltip},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.toggleInheritedShares.apply(null, arguments)}}})],1),_vm._v(\" \"),_vm._l((_vm.shares),function(share){return _c('SharingEntryInherited',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share},on:{\"remove:share\":_vm.removeShare}})})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nexport const client = davGetClient();\nexport const fetchNode = async (node) => {\n const propfindPayload = davGetDefaultPropfind();\n const result = await client.stat(`${davRootPath}${node.path}`, {\n details: true,\n data: propfindPayload,\n });\n return davResultToNode(result.data);\n};\n","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport default getLoggerBuilder()\n .setApp('files_sharing')\n .detectUser()\n .build();\n","/**\n * @copyright 2022 Louis Chmn <louis@chmn.me>\n *\n * @author Louis Chmn <louis@chmn.me>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport const ATOMIC_PERMISSIONS = {\n\tNONE: 0,\n\tREAD: 1,\n\tUPDATE: 2,\n\tCREATE: 4,\n\tDELETE: 8,\n\tSHARE: 16,\n}\n\nexport const BUNDLED_PERMISSIONS = {\n\tREAD_ONLY: ATOMIC_PERMISSIONS.READ,\n\tUPLOAD_AND_UPDATE: ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.DELETE,\n\tFILE_DROP: ATOMIC_PERMISSIONS.CREATE,\n\tALL: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.DELETE | ATOMIC_PERMISSIONS.SHARE,\n\tALL_FILE: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.SHARE,\n}\n\n/**\n * Return whether a given permissions set contains some permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToCheck - the permissions to check.\n * @return {boolean}\n */\nexport function hasPermissions(initialPermissionSet, permissionsToCheck) {\n\treturn initialPermissionSet !== ATOMIC_PERMISSIONS.NONE && (initialPermissionSet & permissionsToCheck) === permissionsToCheck\n}\n\n/**\n * Return whether a given permissions set is valid.\n *\n * @param {number} permissionsSet - the permissions set.\n *\n * @return {boolean}\n */\nexport function permissionsSetIsValid(permissionsSet) {\n\t// Must have at least READ or CREATE permission.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && !hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.CREATE)) {\n\t\treturn false\n\t}\n\n\t// Must have READ permission if have UPDATE or DELETE.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && (\n\t\thasPermissions(permissionsSet, ATOMIC_PERMISSIONS.UPDATE) || hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.DELETE)\n\t)) {\n\t\treturn false\n\t}\n\n\treturn true\n}\n\n/**\n * Add some permissions to an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToAdd - the permissions to add.\n *\n * @return {number}\n */\nexport function addPermissions(initialPermissionSet, permissionsToAdd) {\n\treturn initialPermissionSet | permissionsToAdd\n}\n\n/**\n * Remove some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToSubtract - the permissions to remove.\n *\n * @return {number}\n */\nexport function subtractPermissions(initialPermissionSet, permissionsToSubtract) {\n\treturn initialPermissionSet & ~permissionsToSubtract\n}\n\n/**\n * Toggle some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {number}\n */\nexport function togglePermissions(initialPermissionSet, permissionsToToggle) {\n\tif (hasPermissions(initialPermissionSet, permissionsToToggle)) {\n\t\treturn subtractPermissions(initialPermissionSet, permissionsToToggle)\n\t} else {\n\t\treturn addPermissions(initialPermissionSet, permissionsToToggle)\n\t}\n}\n\n/**\n * Return whether some given permissions can be toggled from a permission set.\n *\n * @param {number} permissionSet - the initial permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {boolean}\n */\nexport function canTogglePermissions(permissionSet, permissionsToToggle) {\n\treturn permissionsSetIsValid(togglePermissions(permissionSet, permissionsToToggle))\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Gary Kim <gary@garykim.dev>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Vincent Petry <vincent@nextcloud.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { ShareType } from '@nextcloud/sharing'\nimport { emit } from '@nextcloud/event-bus'\nimport { fetchNode } from '../services/WebdavClient.ts'\n\nimport PQueue from 'p-queue'\nimport debounce from 'debounce'\n\nimport Share from '../models/Share.js'\nimport SharesRequests from './ShareRequests.js'\nimport Config from '../services/ConfigService.js'\nimport logger from '../services/logger.ts'\n\nimport {\n\tBUNDLED_PERMISSIONS,\n} from '../lib/SharePermissionsToolBox.js'\n\nexport default {\n\tmixins: [SharesRequests],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { },\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t\tisUnique: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tnode: null,\n\t\t\tShareType,\n\n\t\t\t// errors helpers\n\t\t\terrors: {},\n\n\t\t\t// component status toggles\n\t\t\tloading: false,\n\t\t\tsaving: false,\n\t\t\topen: false,\n\n\t\t\t// concurrency management queue\n\t\t\t// we want one queue per share\n\t\t\tupdateQueue: new PQueue({ concurrency: 1 }),\n\n\t\t\t/**\n\t\t\t * ! This allow vue to make the Share class state reactive\n\t\t\t * ! do not remove it ot you'll lose all reactivity here\n\t\t\t */\n\t\t\treactiveState: this.share?.state,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tpath() {\n\t\t\treturn (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\t\t},\n\t\t/**\n\t\t * Does the current share have a note\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasNote: {\n\t\t\tget() {\n\t\t\t\treturn this.share.note !== ''\n\t\t\t},\n\t\t\tset(enabled) {\n\t\t\t\tthis.share.note = enabled\n\t\t\t\t\t? null // enabled but user did not changed the content yet\n\t\t\t\t\t: '' // empty = no note = disabled\n\t\t\t},\n\t\t},\n\n\t\tdateTomorrow() {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + 1))\n\t\t},\n\n\t\t// Datepicker language\n\t\tlang() {\n\t\t\tconst weekdaysShort = window.dayNamesShort\n\t\t\t\t? window.dayNamesShort // provided by Nextcloud\n\t\t\t\t: ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.']\n\t\t\tconst monthsShort = window.monthNamesShort\n\t\t\t\t? window.monthNamesShort // provided by Nextcloud\n\t\t\t\t: ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.']\n\t\t\tconst firstDayOfWeek = window.firstDay ? window.firstDay : 0\n\n\t\t\treturn {\n\t\t\t\tformatLocale: {\n\t\t\t\t\tfirstDayOfWeek,\n\t\t\t\t\tmonthsShort,\n\t\t\t\t\tweekdaysMin: weekdaysShort,\n\t\t\t\t\tweekdaysShort,\n\t\t\t\t},\n\t\t\t\tmonthFormat: 'MMM',\n\t\t\t}\n\t\t},\n\t\tisFolder() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t},\n\t\tisPublicShare() {\n\t\t\tconst shareType = this.share.shareType ?? this.share.type\n\t\t\treturn [ShareType.Link, ShareType.Email].includes(shareType)\n\t\t},\n\t\tisRemoteShare() {\n\t\t\treturn this.share.type === ShareType.RemoteGroup || this.share.type === ShareType.Remote\n\t\t},\n\t\tisShareOwner() {\n\t\t\treturn this.share && this.share.owner === getCurrentUser().uid\n\t\t},\n\t\tisExpiryDateEnforced() {\n\t\t\tif (this.isPublicShare) {\n\t\t\t\treturn this.config.isDefaultExpireDateEnforced\n\t\t\t}\n\t\t\tif (this.isRemoteShare) {\n\t\t\t\treturn this.config.isDefaultRemoteExpireDateEnforced\n\t\t\t}\n\t\t\treturn this.config.isDefaultInternalExpireDateEnforced\n\t\t},\n\t\thasCustomPermissions() {\n\t\t\tconst bundledPermissions = [\n\t\t\t\tBUNDLED_PERMISSIONS.ALL,\n\t\t\t\tBUNDLED_PERMISSIONS.READ_ONLY,\n\t\t\t\tBUNDLED_PERMISSIONS.FILE_DROP,\n\t\t\t]\n\t\t\treturn !bundledPermissions.includes(this.share.permissions)\n\t\t},\n\t\tmaxExpirationDateEnforced() {\n\t\t\tif (this.isExpiryDateEnforced) {\n\t\t\t\tif (this.isPublicShare) {\n\t\t\t\t\treturn this.config.defaultExpirationDate\n\t\t\t\t}\n\t\t\t\tif (this.isRemoteShare) {\n\t\t\t\t\treturn this.config.defaultRemoteExpirationDateString\n\t\t\t\t}\n\t\t\t\t// If it get's here then it must be an internal share\n\t\t\t\treturn this.config.defaultInternalExpirationDate\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Fetch WebDAV node\n\t\t *\n\t\t * @return {Node}\n\t\t */\n\t\tasync getNode() {\n\t\t\tconst node = { path: this.path }\n\t\t\ttry {\n\t\t\t\tthis.node = await fetchNode(node)\n\t\t\t\tlogger.info('Fetched node:', { node: this.node })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error:', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if a share is valid before\n\t\t * firing the request\n\t\t *\n\t\t * @param {Share} share the share to check\n\t\t * @return {boolean}\n\t\t */\n\t\tcheckShare(share) {\n\t\t\tif (share.password) {\n\t\t\t\tif (typeof share.password !== 'string' || share.password.trim() === '') {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (share.expirationDate) {\n\t\t\t\tconst date = share.expirationDate\n\t\t\t\tif (!date.isValid()) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true\n\t\t},\n\n\t\t/**\n\t\t * @param {Date} date the date to format\n\t\t * @return {string} date a date with YYYY-MM-DD format\n\t\t */\n\t\tformatDateToString(date) {\n\t\t\t// Force utc time. Drop time information to be timezone-less\n\t\t\tconst utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))\n\t\t\t// Format to YYYY-MM-DD\n\t\t\treturn utcDate.toISOString().split('T')[0]\n\t\t},\n\n\t\t/**\n\t\t * Save given value to expireDate and trigger queueUpdate\n\t\t *\n\t\t * @param {Date} date\n\t\t */\n\t\tonExpirationChange(date) {\n\t\t\tthis.share.expireDate = this.formatDateToString(new Date(date))\n\t\t},\n\n\t\t/**\n\t\t * Uncheck expire date\n\t\t * We need this method because @update:checked\n\t\t * is ran simultaneously as @uncheck, so\n\t\t * so we cannot ensure data is up-to-date\n\t\t */\n\t\tonExpirationDisable() {\n\t\t\tthis.share.expireDate = ''\n\t\t},\n\n\t\t/**\n\t\t * Note changed, let's save it to a different key\n\t\t *\n\t\t * @param {string} note the share note\n\t\t */\n\t\tonNoteChange(note) {\n\t\t\tthis.$set(this.share, 'newNote', note.trim())\n\t\t},\n\n\t\t/**\n\t\t * When the note change, we trim, save and dispatch\n\t\t *\n\t\t */\n\t\tonNoteSubmit() {\n\t\t\tif (this.share.newNote) {\n\t\t\t\tthis.share.note = this.share.newNote\n\t\t\t\tthis.$delete(this.share, 'newNote')\n\t\t\t\tthis.queueUpdate('note')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete share button handler\n\t\t */\n\t\tasync onDelete() {\n\t\t\ttry {\n\t\t\t\tthis.loading = true\n\t\t\t\tthis.open = false\n\t\t\t\tawait this.deleteShare(this.share.id)\n\t\t\t\tconsole.debug('Share deleted', this.share.id)\n\t\t\t\tconst message = this.share.itemType === 'file'\n\t\t\t\t\t? t('files_sharing', 'File \"{path}\" has been unshared', { path: this.share.path })\n\t\t\t\t\t: t('files_sharing', 'Folder \"{path}\" has been unshared', { path: this.share.path })\n\t\t\t\tshowSuccess(message)\n\t\t\t\tthis.$emit('remove:share', this.share)\n\t\t\t\tawait this.getNode()\n\t\t\t\temit('files:node:updated', this.node)\n\t\t\t} catch (error) {\n\t\t\t\t// re-open menu if error\n\t\t\t\tthis.open = true\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Send an update of the share to the queue\n\t\t *\n\t\t * @param {Array<string>} propertyNames the properties to sync\n\t\t */\n\t\tqueueUpdate(...propertyNames) {\n\t\t\tif (propertyNames.length === 0) {\n\t\t\t\t// Nothing to update\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.share.id) {\n\t\t\t\tconst properties = {}\n\t\t\t\t// force value to string because that is what our\n\t\t\t\t// share api controller accepts\n\t\t\t\tpropertyNames.forEach(name => {\n\t\t\t\t\tif ((typeof this.share[name]) === 'object') {\n\t\t\t\t\t\tproperties[name] = JSON.stringify(this.share[name])\n\t\t\t\t\t} else {\n\t\t\t\t\t\tproperties[name] = this.share[name].toString()\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis.updateQueue.add(async () => {\n\t\t\t\t\tthis.saving = true\n\t\t\t\t\tthis.errors = {}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst updatedShare = await this.updateShare(this.share.id, properties)\n\n\t\t\t\t\t\tif (propertyNames.indexOf('password') >= 0) {\n\t\t\t\t\t\t\t// reset password state after sync\n\t\t\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\n\t\t\t\t\t\t\t// updates password expiration time after sync\n\t\t\t\t\t\t\tthis.share.passwordExpirationTime = updatedShare.password_expiration_time\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// clear any previous errors\n\t\t\t\t\t\tthis.$delete(this.errors, propertyNames[0])\n\t\t\t\t\t\tshowSuccess(this.updateSuccessMessage(propertyNames))\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tlogger.error('Could not update share', { error, share: this.share, propertyNames })\n\n\t\t\t\t\t\tconst { message } = error\n\t\t\t\t\t\tif (message && message !== '') {\n\t\t\t\t\t\t\tthis.onSyncError(propertyNames[0], message)\n\t\t\t\t\t\t\tshowError(message)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// We do not have information what happened, but we should still inform the user\n\t\t\t\t\t\t\tshowError(t('files_sharing', 'Could not update share'))\n\t\t\t\t\t\t}\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tthis.saving = false\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// This share does not exists on the server yet\n\t\t\tconsole.debug('Updated local share', this.share)\n\t\t},\n\n\t\t/**\n\t\t * @param {string[]} names Properties changed\n\t\t */\n\t\tupdateSuccessMessage(names) {\n\t\t\tif (names.length !== 1) {\n\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\n\t\t\tswitch (names[0]) {\n\t\t\tcase 'expireDate':\n\t\t\t\treturn t('files_sharing', 'Share expire date saved')\n\t\t\tcase 'hideDownload':\n\t\t\t\treturn t('files_sharing', 'Share hide-download state saved')\n\t\t\tcase 'label':\n\t\t\t\treturn t('files_sharing', 'Share label saved')\n\t\t\tcase 'note':\n\t\t\t\treturn t('files_sharing', 'Share note for recipient saved')\n\t\t\tcase 'password':\n\t\t\t\treturn t('files_sharing', 'Share password saved')\n\t\t\tcase 'permissions':\n\t\t\t\treturn t('files_sharing', 'Share permissions saved')\n\t\t\tdefault:\n\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Manage sync errors\n\t\t *\n\t\t * @param {string} property the errored property, e.g. 'password'\n\t\t * @param {string} message the error message\n\t\t */\n\t\tonSyncError(property, message) {\n\t\t\t// re-open menu if closed\n\t\t\tthis.open = true\n\t\t\tswitch (property) {\n\t\t\tcase 'password':\n\t\t\tcase 'pending':\n\t\t\tcase 'expireDate':\n\t\t\tcase 'label':\n\t\t\tcase 'note': {\n\t\t\t\t// show error\n\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\tlet propertyEl = this.$refs[property]\n\t\t\t\tif (propertyEl) {\n\t\t\t\t\tif (propertyEl.$el) {\n\t\t\t\t\t\tpropertyEl = propertyEl.$el\n\t\t\t\t\t}\n\t\t\t\t\t// focus if there is a focusable action element\n\t\t\t\t\tconst focusable = propertyEl.querySelector('.focusable')\n\t\t\t\t\tif (focusable) {\n\t\t\t\t\t\tfocusable.focus()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tcase 'sendPasswordByTalk': {\n\t\t\t\t// show error\n\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\t// Restore previous state\n\t\t\t\tthis.share.sendPasswordByTalk = !this.share.sendPasswordByTalk\n\t\t\t\tbreak\n\t\t\t}\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Debounce queueUpdate to avoid requests spamming\n\t\t * more importantly for text data\n\t\t *\n\t\t * @param {string} property the property to sync\n\t\t */\n\t\tdebounceQueueUpdate: debounce(function(property) {\n\t\t\tthis.queueUpdate(property)\n\t\t}, 500),\n\t},\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<SharingEntrySimple :key=\"share.id\"\n\t\tclass=\"sharing-entry__inherited\"\n\t\t:title=\"share.shareWithDisplayName\">\n\t\t<template #avatar>\n\t\t\t<NcAvatar :user=\"share.shareWith\"\n\t\t\t\t:display-name=\"share.shareWithDisplayName\"\n\t\t\t\tclass=\"sharing-entry__avatar\" />\n\t\t</template>\n\t\t<NcActionText icon=\"icon-user\">\n\t\t\t{{ t('files_sharing', 'Added by {initiator}', { initiator: share.ownerDisplayName }) }}\n\t\t</NcActionText>\n\t\t<NcActionLink v-if=\"share.viaPath && share.viaFileid\"\n\t\t\ticon=\"icon-folder\"\n\t\t\t:href=\"viaFileTargetUrl\">\n\t\t\t{{ t('files_sharing', 'Via “{folder}”', {folder: viaFolderName} ) }}\n\t\t</NcActionLink>\n\t\t<NcActionButton v-if=\"share.canDelete\"\n\t\t\ticon=\"icon-close\"\n\t\t\t@click.prevent=\"onDelete\">\n\t\t\t{{ t('files_sharing', 'Unshare') }}\n\t\t</NcActionButton>\n\t</SharingEntrySimple>\n</template>\n\n<script>\nimport { generateUrl } from '@nextcloud/router'\nimport { basename } from '@nextcloud/paths'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcActionLink from '@nextcloud/vue/dist/Components/NcActionLink.js'\nimport NcActionText from '@nextcloud/vue/dist/Components/NcActionText.js'\n\n// eslint-disable-next-line no-unused-vars\nimport Share from '../models/Share.js'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport SharingEntrySimple from '../components/SharingEntrySimple.vue'\n\nexport default {\n\tname: 'SharingEntryInherited',\n\n\tcomponents: {\n\t\tNcActionButton,\n\t\tNcActionLink,\n\t\tNcActionText,\n\t\tNcAvatar,\n\t\tSharingEntrySimple,\n\t},\n\n\tmixins: [SharesMixin],\n\n\tprops: {\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tviaFileTargetUrl() {\n\t\t\treturn generateUrl('/f/{fileid}', {\n\t\t\t\tfileid: this.share.viaFileid,\n\t\t\t})\n\t\t},\n\n\t\tviaFolderName() {\n\t\t\treturn basename(this.share.viaPath)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__desc {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__actions {\n\t\tmargin-left: auto;\n\t}\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInherited.vue?vue&type=template&id=283ca89e&scoped=true\"\nimport script from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"283ca89e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('SharingEntrySimple',{key:_vm.share.id,staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.share.shareWithDisplayName},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName}})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionText',{attrs:{\"icon\":\"icon-user\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Added by {initiator}', { initiator: _vm.share.ownerDisplayName }))+\"\\n\\t\")]),_vm._v(\" \"),(_vm.share.viaPath && _vm.share.viaFileid)?_c('NcActionLink',{attrs:{\"icon\":\"icon-folder\",\"href\":_vm.viaFileTargetUrl}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Via “{folder}”', {folder: _vm.viaFolderName} ))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"icon\":\"icon-close\"},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\")]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<ul id=\"sharing-inherited-shares\">\n\t\t<!-- Main collapsible entry -->\n\t\t<SharingEntrySimple class=\"sharing-entry__inherited\"\n\t\t\t:title=\"mainTitle\"\n\t\t\t:subtitle=\"subTitle\"\n\t\t\t:aria-expanded=\"showInheritedShares\">\n\t\t\t<template #avatar>\n\t\t\t\t<div class=\"avatar-shared icon-more-white\" />\n\t\t\t</template>\n\t\t\t<NcActionButton :icon=\"showInheritedSharesIcon\"\n\t\t\t\t:aria-label=\"toggleTooltip\"\n\t\t\t\t:title=\"toggleTooltip\"\n\t\t\t\t@click.prevent.stop=\"toggleInheritedShares\" />\n\t\t</SharingEntrySimple>\n\n\t\t<!-- Inherited shares list -->\n\t\t<SharingEntryInherited v-for=\"share in shares\"\n\t\t\t:key=\"share.id\"\n\t\t\t:file-info=\"fileInfo\"\n\t\t\t:share=\"share\"\n\t\t\t@remove:share=\"removeShare\" />\n\t</ul>\n</template>\n\n<script>\nimport { generateOcsUrl } from '@nextcloud/router'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport axios from '@nextcloud/axios'\n\nimport Share from '../models/Share.js'\nimport SharingEntryInherited from '../components/SharingEntryInherited.vue'\nimport SharingEntrySimple from '../components/SharingEntrySimple.vue'\n\nexport default {\n\tname: 'SharingInherited',\n\n\tcomponents: {\n\t\tNcActionButton,\n\t\tSharingEntryInherited,\n\t\tSharingEntrySimple,\n\t},\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tloaded: false,\n\t\t\tloading: false,\n\t\t\tshowInheritedShares: false,\n\t\t\tshares: [],\n\t\t}\n\t},\n\tcomputed: {\n\t\tshowInheritedSharesIcon() {\n\t\t\tif (this.loading) {\n\t\t\t\treturn 'icon-loading-small'\n\t\t\t}\n\t\t\tif (this.showInheritedShares) {\n\t\t\t\treturn 'icon-triangle-n'\n\t\t\t}\n\t\t\treturn 'icon-triangle-s'\n\t\t},\n\t\tmainTitle() {\n\t\t\treturn t('files_sharing', 'Others with access')\n\t\t},\n\t\tsubTitle() {\n\t\t\treturn (this.showInheritedShares && this.shares.length === 0)\n\t\t\t\t? t('files_sharing', 'No other accounts with access found')\n\t\t\t\t: ''\n\t\t},\n\t\ttoggleTooltip() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t\t\t? t('files_sharing', 'Toggle list of others with access to this directory')\n\t\t\t\t: t('files_sharing', 'Toggle list of others with access to this file')\n\t\t},\n\t\tfullPath() {\n\t\t\tconst path = `${this.fileInfo.path}/${this.fileInfo.name}`\n\t\t\treturn path.replace('//', '/')\n\t\t},\n\t},\n\twatch: {\n\t\tfileInfo() {\n\t\t\tthis.resetState()\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Toggle the list view and fetch/reset the state\n\t\t */\n\t\ttoggleInheritedShares() {\n\t\t\tthis.showInheritedShares = !this.showInheritedShares\n\t\t\tif (this.showInheritedShares) {\n\t\t\t\tthis.fetchInheritedShares()\n\t\t\t} else {\n\t\t\t\tthis.resetState()\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Fetch the Inherited Shares array\n\t\t */\n\t\tasync fetchInheritedShares() {\n\t\t\tthis.loading = true\n\t\t\ttry {\n\t\t\t\tconst url = generateOcsUrl('apps/files_sharing/api/v1/shares/inherited?format=json&path={path}', { path: this.fullPath })\n\t\t\t\tconst shares = await axios.get(url)\n\t\t\t\tthis.shares = shares.data.ocs.data\n\t\t\t\t\t.map(share => new Share(share))\n\t\t\t\t\t.sort((a, b) => b.createdTime - a.createdTime)\n\t\t\t\tconsole.info(this.shares)\n\t\t\t\tthis.loaded = true\n\t\t\t} catch (error) {\n\t\t\t\tOC.Notification.showTemporary(t('files_sharing', 'Unable to fetch inherited shares'), { type: 'error' })\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Reset current component state\n\t\t */\n\t\tresetState() {\n\t\t\tthis.loaded = false\n\t\t\tthis.loading = false\n\t\t\tthis.showInheritedShares = false\n\t\t\tthis.shares = []\n\t\t},\n\t\t/**\n\t\t * Remove a share from the shares list\n\t\t *\n\t\t * @param {Share} share the share to remove\n\t\t */\n\t\tremoveShare(share) {\n\t\t\tconst index = this.shares.findIndex(item => item === share)\n\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\tthis.shares.splice(index, 1)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry__inherited {\n\t.avatar-shared {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInherited.vue?vue&type=template&id=50f9af8c&scoped=true\"\nimport script from \"./SharingInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"50f9af8c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.canLinkShare)?_c('ul',{staticClass:\"sharing-link-list\"},[(!_vm.hasLinkShares && _vm.canReshare)?_c('SharingEntryLink',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo},on:{\"add:share\":_vm.addShare}}):_vm._e(),_vm._v(\" \"),(_vm.hasShares)?_vm._l((_vm.shares),function(share,index){return _c('SharingEntryLink',{key:share.id,attrs:{\"index\":_vm.shares.length > 1 ? index + 1 : null,\"can-reshare\":_vm.canReshare,\"share\":_vm.shares[index],\"file-info\":_vm.fileInfo},on:{\"update:share\":[function($event){return _vm.$set(_vm.shares, index, $event)},function($event){return _vm.awaitForShare(...arguments)}],\"add:share\":function($event){return _vm.addShare(...arguments)},\"remove:share\":_vm.removeShare,\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}):_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon tune-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TuneIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tune.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tune.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Tune.vue?vue&type=template&id=18d04e6a\"\nimport script from \"./Tune.vue?vue&type=script&lang=js\"\nexport * from \"./Tune.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tune-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlank.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlank.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon calendar-blank-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CalendarBlankIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./CalendarBlank.vue?vue&type=template&id=41fe7db9\"\nimport script from \"./CalendarBlank.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarBlank.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon calendar-blank-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Qrcode.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Qrcode.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon qrcode-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"QrcodeIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Qrcode.vue?vue&type=template&id=aba87788\"\nimport script from \"./Qrcode.vue?vue&type=script&lang=js\"\nexport * from \"./Qrcode.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon qrcode-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Exclamation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Exclamation.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon exclamation-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ExclamationIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Exclamation.vue?vue&type=template&id=03239926\"\nimport script from \"./Exclamation.vue?vue&type=script&lang=js\"\nexport * from \"./Exclamation.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon exclamation-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon lock-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"LockIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Lock.vue?vue&type=template&id=6d856da2\"\nimport script from \"./Lock.vue?vue&type=script&lang=js\"\nexport * from \"./Lock.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon lock-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon triangle-small-down-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M8 9H16L12 16\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TriangleSmallDownIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./TriangleSmallDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TriangleSmallDown.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TriangleSmallDown.vue?vue&type=template&id=1eed3dd9\"\nimport script from \"./TriangleSmallDown.vue?vue&type=script&lang=js\"\nexport * from \"./TriangleSmallDown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon triangle-small-down-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M8 9H16L12 16\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon eye-outline-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"EyeOutlineIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./EyeOutline.vue?vue&type=template&id=e26de6f6\"\nimport script from \"./EyeOutline.vue?vue&type=script&lang=js\"\nexport * from \"./EyeOutline.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon eye-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon file-upload-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FileUploadIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FileUpload.vue?vue&type=template&id=caa55e94\"\nimport script from \"./FileUpload.vue?vue&type=script&lang=js\"\nexport * from \"./FileUpload.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-upload-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<NcActions ref=\"quickShareActions\"\n\t\tclass=\"share-select\"\n\t\t:menu-name=\"selectedOption\"\n\t\t:aria-label=\"ariaLabel\"\n\t\ttype=\"tertiary-no-background\"\n\t\t:disabled=\"!share.canEdit\"\n\t\tforce-name>\n\t\t<template #icon>\n\t\t\t<DropdownIcon :size=\"15\" />\n\t\t</template>\n\t\t<NcActionButton v-for=\"option in options\"\n\t\t\t:key=\"option.label\"\n\t\t\ttype=\"radio\"\n\t\t\t:model-value=\"option.label === selectedOption\"\n\t\t\tclose-after-click\n\t\t\t@click=\"selectOption(option.label)\">\n\t\t\t<template #icon>\n\t\t\t\t<component :is=\"option.icon\" />\n\t\t\t</template>\n\t\t\t{{ option.label }}\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n\n<script>\nimport { ShareType } from '@nextcloud/sharing'\nimport DropdownIcon from 'vue-material-design-icons/TriangleSmallDown.vue'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport IconEyeOutline from 'vue-material-design-icons/EyeOutline.vue'\nimport IconPencil from 'vue-material-design-icons/Pencil.vue'\nimport IconFileUpload from 'vue-material-design-icons/FileUpload.vue'\nimport IconTune from 'vue-material-design-icons/Tune.vue'\n\nimport {\n\tBUNDLED_PERMISSIONS,\n\tATOMIC_PERMISSIONS,\n} from '../lib/SharePermissionsToolBox.js'\n\nexport default {\n\tname: 'SharingEntryQuickShareSelect',\n\n\tcomponents: {\n\t\tDropdownIcon,\n\t\tNcActions,\n\t\tNcActionButton,\n\t},\n\n\tmixins: [SharesMixin, ShareDetails],\n\n\tprops: {\n\t\tshare: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['open-sharing-details'],\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedOption: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tariaLabel() {\n\t\t\treturn t('files_sharing', 'Quick share options, the current selected is \"{selectedOption}\"', { selectedOption: this.selectedOption })\n\t\t},\n\t\tcanViewText() {\n\t\t\treturn t('files_sharing', 'View only')\n\t\t},\n\t\tcanEditText() {\n\t\t\treturn t('files_sharing', 'Can edit')\n\t\t},\n\t\tfileDropText() {\n\t\t\treturn t('files_sharing', 'File drop')\n\t\t},\n\t\tcustomPermissionsText() {\n\t\t\treturn t('files_sharing', 'Custom permissions')\n\t\t},\n\t\tpreSelectedOption() {\n\t\t\t// We remove the share permission for the comparison as it is not relevant for bundled permissions.\n\t\t\tif ((this.share.permissions & ~ATOMIC_PERMISSIONS.SHARE) === BUNDLED_PERMISSIONS.READ_ONLY) {\n\t\t\t\treturn this.canViewText\n\t\t\t} else if (this.share.permissions === BUNDLED_PERMISSIONS.ALL || this.share.permissions === BUNDLED_PERMISSIONS.ALL_FILE) {\n\t\t\t\treturn this.canEditText\n\t\t\t} else if ((this.share.permissions & ~ATOMIC_PERMISSIONS.SHARE) === BUNDLED_PERMISSIONS.FILE_DROP) {\n\t\t\t\treturn this.fileDropText\n\t\t\t}\n\n\t\t\treturn this.customPermissionsText\n\n\t\t},\n\t\toptions() {\n\t\t\tconst options = [{\n\t\t\t\tlabel: this.canViewText,\n\t\t\t\ticon: IconEyeOutline,\n\t\t\t}, {\n\t\t\t\tlabel: this.canEditText,\n\t\t\t\ticon: IconPencil,\n\t\t\t}]\n\t\t\tif (this.supportsFileDrop) {\n\t\t\t\toptions.push({\n\t\t\t\t\tlabel: this.fileDropText,\n\t\t\t\t\ticon: IconFileUpload,\n\t\t\t\t})\n\t\t\t}\n\t\t\toptions.push({\n\t\t\t\tlabel: this.customPermissionsText,\n\t\t\t\ticon: IconTune,\n\t\t\t})\n\n\t\t\treturn options\n\t\t},\n\t\tsupportsFileDrop() {\n\t\t\tif (this.isFolder && this.config.isPublicUploadEnabled) {\n\t\t\t\tconst shareType = this.share.type ?? this.share.shareType\n\t\t\t\treturn [ShareType.Link, ShareType.Email].includes(shareType)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tdropDownPermissionValue() {\n\t\t\tswitch (this.selectedOption) {\n\t\t\tcase this.canEditText:\n\t\t\t\treturn this.isFolder ? BUNDLED_PERMISSIONS.ALL : BUNDLED_PERMISSIONS.ALL_FILE\n\t\t\tcase this.fileDropText:\n\t\t\t\treturn BUNDLED_PERMISSIONS.FILE_DROP\n\t\t\tcase this.customPermissionsText:\n\t\t\t\treturn 'custom'\n\t\t\tcase this.canViewText:\n\t\t\tdefault:\n\t\t\t\treturn BUNDLED_PERMISSIONS.READ_ONLY\n\t\t\t}\n\t\t},\n\t},\n\n\tcreated() {\n\t\tthis.selectedOption = this.preSelectedOption\n\t},\n\n\tmethods: {\n\t\tselectOption(optionLabel) {\n\t\t\tthis.selectedOption = optionLabel\n\t\t\tif (optionLabel === this.customPermissionsText) {\n\t\t\t\tthis.$emit('open-sharing-details')\n\t\t\t} else {\n\t\t\t\tthis.share.permissions = this.dropDownPermissionValue\n\t\t\t\tthis.queueUpdate('permissions')\n\t\t\t\t// TODO: Add a focus method to NcActions or configurable returnFocus enabling to NcActionButton with closeAfterClick\n\t\t\t\tthis.$refs.quickShareActions.$refs.menuButton.$el.focus()\n\t\t\t}\n\t\t},\n\t},\n\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.share-select {\n\tdisplay: block;\n\n\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\n\t// Overrider NcActionms button to make it small\n\t:deep(.action-item__menutoggle) {\n\t\tcolor: var(--color-primary-element) !important;\n\t\tfont-size: 12.5px !important;\n\t\theight: auto !important;\n\t\tmin-height: auto !important;\n\n\t\t.button-vue__text {\n\t\t\tfont-weight: normal !important;\n\t\t}\n\n\t\t.button-vue__icon {\n\t\t\theight: 24px !important;\n\t\t\tmin-height: 24px !important;\n\t\t\twidth: 24px !important;\n\t\t\tmin-width: 24px !important;\n\t\t}\n\n\t\t.button-vue__wrapper {\n\t\t\t// Emulate NcButton's alignment=center-reverse\n\t\t\tflex-direction: row-reverse !important;\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=f3bc43ce&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=f3bc43ce&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryQuickShareSelect.vue?vue&type=template&id=f3bc43ce&scoped=true\"\nimport script from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=f3bc43ce&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f3bc43ce\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcActions',{ref:\"quickShareActions\",staticClass:\"share-select\",attrs:{\"menu-name\":_vm.selectedOption,\"aria-label\":_vm.ariaLabel,\"type\":\"tertiary-no-background\",\"disabled\":!_vm.share.canEdit,\"force-name\":\"\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DropdownIcon',{attrs:{\"size\":15}})]},proxy:true}])},[_vm._v(\" \"),_vm._l((_vm.options),function(option){return _c('NcActionButton',{key:option.label,attrs:{\"type\":\"radio\",\"model-value\":option.label === _vm.selectedOption,\"close-after-click\":\"\"},on:{\"click\":function($event){return _vm.selectOption(option.label)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(option.icon,{tag:\"component\"})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\"+_vm._s(option.label)+\"\\n\\t\")])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExternalShareAction.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExternalShareAction.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Component :is=\"data.is\"\n\t\tv-bind=\"data\"\n\t\tv-on=\"action.handlers\">\n\t\t{{ data.text }}\n\t</Component>\n</template>\n\n<script>\nimport Share from '../models/Share.js'\n\nexport default {\n\tname: 'ExternalShareAction',\n\n\tprops: {\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\taction: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => ({}),\n\t\t},\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tdata() {\n\t\t\treturn this.action.data(this)\n\t\t},\n\t},\n}\n</script>\n","import { render, staticRenderFns } from \"./ExternalShareAction.vue?vue&type=template&id=0f0e27d0\"\nimport script from \"./ExternalShareAction.vue?vue&type=script&lang=js\"\nexport * from \"./ExternalShareAction.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c(_vm.data.is,_vm._g(_vm._b({tag:\"Component\"},'Component',_vm.data,false),_vm.action.handlers),[_vm._v(\"\\n\\t\"+_vm._s(_vm.data.text)+\"\\n\")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<li :class=\"{ 'sharing-entry--share': share }\"\n\t\tclass=\"sharing-entry sharing-entry__link\">\n\t\t<NcAvatar :is-no-user=\"true\"\n\t\t\t:icon-class=\"isEmailShareType ? 'avatar-link-share icon-mail-white' : 'avatar-link-share icon-public-white'\"\n\t\t\tclass=\"sharing-entry__avatar\" />\n\n\t\t<div class=\"sharing-entry__summary\">\n\t\t\t<div class=\"sharing-entry__desc\">\n\t\t\t\t<span class=\"sharing-entry__title\" :title=\"title\">\n\t\t\t\t\t{{ title }}\n\t\t\t\t</span>\n\t\t\t\t<p v-if=\"subtitle\">\n\t\t\t\t\t{{ subtitle }}\n\t\t\t\t</p>\n\t\t\t\t<SharingEntryQuickShareSelect v-if=\"share && share.permissions !== undefined\"\n\t\t\t\t\t:share=\"share\"\n\t\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t\t@open-sharing-details=\"openShareDetailsForCustomSettings(share)\" />\n\t\t\t</div>\n\n\t\t\t<!-- clipboard -->\n\t\t\t<NcActions v-if=\"share && !isEmailShareType && share.token\" ref=\"copyButton\" class=\"sharing-entry__copy\">\n\t\t\t\t<NcActionButton\t:title=\"copyLinkTooltip\"\n\t\t\t\t\t:aria-label=\"copyLinkTooltip\"\n\t\t\t\t\t@click.prevent=\"copyLink\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CheckIcon v-if=\"copied && copySuccess\"\n\t\t\t\t\t\t\t:size=\"20\"\n\t\t\t\t\t\t\tclass=\"icon-checkmark-color\" />\n\t\t\t\t\t\t<ClipboardIcon v-else :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActions>\n\t\t</div>\n\n\t\t<!-- pending actions -->\n\t\t<NcActions v-if=\"!pending && pendingDataIsMissing\"\n\t\t\tclass=\"sharing-entry__actions\"\n\t\t\t:aria-label=\"actionsTooltip\"\n\t\t\tmenu-align=\"right\"\n\t\t\t:open.sync=\"open\"\n\t\t\t@close=\"onCancel\">\n\t\t\t<!-- pending data menu -->\n\t\t\t<NcActionText v-if=\"errors.pending\"\n\t\t\t\tclass=\"error\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<ErrorIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ errors.pending }}\n\t\t\t</NcActionText>\n\t\t\t<NcActionText v-else icon=\"icon-info\">\n\t\t\t\t{{ t('files_sharing', 'Please enter the following required information before creating the share') }}\n\t\t\t</NcActionText>\n\n\t\t\t<!-- password -->\n\t\t\t<NcActionCheckbox v-if=\"pendingPassword\"\n\t\t\t\t:checked.sync=\"isPasswordProtected\"\n\t\t\t\t:disabled=\"config.enforcePasswordForPublicLink || saving\"\n\t\t\t\tclass=\"share-link-password-checkbox\"\n\t\t\t\t@uncheck=\"onPasswordDisable\">\n\t\t\t\t{{ config.enforcePasswordForPublicLink ? t('files_sharing', 'Password protection (enforced)') : t('files_sharing', 'Password protection') }}\n\t\t\t</NcActionCheckbox>\n\n\t\t\t<NcActionInput v-if=\"pendingEnforcedPassword || share.password\"\n\t\t\t\tclass=\"share-link-password\"\n\t\t\t\t:label=\"t('files_sharing', 'Enter a password')\"\n\t\t\t\t:value.sync=\"share.password\"\n\t\t\t\t:disabled=\"saving\"\n\t\t\t\t:required=\"config.enableLinkPasswordByDefault || config.enforcePasswordForPublicLink\"\n\t\t\t\t:minlength=\"isPasswordPolicyEnabled && config.passwordPolicy.minLength\"\n\t\t\t\tautocomplete=\"new-password\"\n\t\t\t\t@submit=\"onNewLinkShare(true)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<LockIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionInput>\n\n\t\t\t<NcActionCheckbox v-if=\"pendingDefaultExpirationDate\"\n\t\t\t\t:checked.sync=\"defaultExpirationDateEnabled\"\n\t\t\t\t:disabled=\"pendingEnforcedExpirationDate || saving\"\n\t\t\t\tclass=\"share-link-expiration-date-checkbox\"\n\t\t\t\t@change=\"onDefaultExpirationDateEnabledChange\">\n\t\t\t\t{{ config.enforcePasswordForPublicLink ? t('files_sharing', 'Enable link expiration (enforced)') : t('files_sharing', 'Enable link expiration') }}\n\t\t\t</NcActionCheckbox>\n\n\t\t\t<!-- expiration date -->\n\t\t\t<NcActionInput v-if=\"(pendingDefaultExpirationDate || pendingEnforcedExpirationDate) && defaultExpirationDateEnabled\"\n\t\t\t\tclass=\"share-link-expire-date\"\n\t\t\t\t:label=\"pendingEnforcedExpirationDate ? t('files_sharing', 'Enter expiration date (enforced)') : t('files_sharing', 'Enter expiration date')\"\n\t\t\t\t:disabled=\"saving\"\n\t\t\t\t:is-native-picker=\"true\"\n\t\t\t\t:hide-label=\"true\"\n\t\t\t\t:value=\"new Date(share.expireDate)\"\n\t\t\t\ttype=\"date\"\n\t\t\t\t:min=\"dateTomorrow\"\n\t\t\t\t:max=\"maxExpirationDateEnforced\"\n\t\t\t\t@input=\"onExpirationChange /* let's not submit when picked, the user might want to still edit or copy the password */\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconCalendarBlank :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionInput>\n\n\t\t\t<NcActionButton @click.prevent.stop=\"onNewLinkShare(true)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CheckIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ t('files_sharing', 'Create share') }}\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton @click.prevent.stop=\"onCancel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CloseIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ t('files_sharing', 'Cancel') }}\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\n\t\t<!-- actions -->\n\t\t<NcActions v-else-if=\"!loading\"\n\t\t\tclass=\"sharing-entry__actions\"\n\t\t\t:aria-label=\"actionsTooltip\"\n\t\t\tmenu-align=\"right\"\n\t\t\t:open.sync=\"open\"\n\t\t\t@close=\"onMenuClose\">\n\t\t\t<template v-if=\"share\">\n\t\t\t\t<template v-if=\"share.canEdit && canReshare\">\n\t\t\t\t\t<NcActionButton :disabled=\"saving\"\n\t\t\t\t\t\t:close-after-click=\"true\"\n\t\t\t\t\t\t@click.prevent=\"openSharingDetails\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Tune :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ t('files_sharing', 'Customize link') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</template>\n\n\t\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t\t@click.prevent=\"showQRCode = true\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconQr :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('files_sharing', 'Generate QR code') }}\n\t\t\t\t</NcActionButton>\n\n\t\t\t\t<NcActionSeparator />\n\n\t\t\t\t<!-- external actions -->\n\t\t\t\t<ExternalShareAction v-for=\"action in externalLinkActions\"\n\t\t\t\t\t:id=\"action.id\"\n\t\t\t\t\t:key=\"action.id\"\n\t\t\t\t\t:action=\"action\"\n\t\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t\t:share=\"share\" />\n\n\t\t\t\t<!-- external legacy sharing via url (social...) -->\n\t\t\t\t<NcActionLink v-for=\"({ icon, url, name }, index) in externalLegacyLinkActions\"\n\t\t\t\t\t:key=\"index\"\n\t\t\t\t\t:href=\"url(shareLink)\"\n\t\t\t\t\t:icon=\"icon\"\n\t\t\t\t\ttarget=\"_blank\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</NcActionLink>\n\n\t\t\t\t<NcActionButton v-if=\"!isEmailShareType && canReshare\"\n\t\t\t\t\tclass=\"new-share-link\"\n\t\t\t\t\t@click.prevent.stop=\"onNewLinkShare\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<PlusIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('files_sharing', 'Add another link') }}\n\t\t\t\t</NcActionButton>\n\n\t\t\t\t<NcActionButton v-if=\"share.canDelete\"\n\t\t\t\t\t:disabled=\"saving\"\n\t\t\t\t\t@click.prevent=\"onDelete\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CloseIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('files_sharing', 'Unshare') }}\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\n\t\t\t<!-- Create new share -->\n\t\t\t<NcActionButton v-else-if=\"canReshare\"\n\t\t\t\tclass=\"new-share-link\"\n\t\t\t\t:title=\"t('files_sharing', 'Create a new share link')\"\n\t\t\t\t:aria-label=\"t('files_sharing', 'Create a new share link')\"\n\t\t\t\t:icon=\"loading ? 'icon-loading-small' : 'icon-add'\"\n\t\t\t\t@click.prevent.stop=\"onNewLinkShare\" />\n\t\t</NcActions>\n\n\t\t<!-- loading indicator to replace the menu -->\n\t\t<div v-else class=\"icon-loading-small sharing-entry__loading\" />\n\n\t\t<!-- Modal to open whenever we have a QR code -->\n\t\t<NcDialog v-if=\"showQRCode\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showQRCode\"\n\t\t\t:name=\"title\"\n\t\t\t:close-on-click-outside=\"true\"\n\t\t\t@close=\"showQRCode = false\">\n\t\t\t<div class=\"qr-code-dialog\">\n\t\t\t\t<VueQrcode tag=\"img\"\n\t\t\t\t\t:value=\"shareLink\"\n\t\t\t\t\tclass=\"qr-code-dialog__img\" />\n\t\t\t</div>\n\t\t</NcDialog>\n\t</li>\n</template>\n\n<script>\nimport { emit } from '@nextcloud/event-bus'\nimport { generateUrl } from '@nextcloud/router'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { ShareType } from '@nextcloud/sharing'\nimport Vue from 'vue'\nimport VueQrcode from '@chenfengyuan/vue-qrcode'\n\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcActionCheckbox from '@nextcloud/vue/dist/Components/NcActionCheckbox.js'\nimport NcActionInput from '@nextcloud/vue/dist/Components/NcActionInput.js'\nimport NcActionLink from '@nextcloud/vue/dist/Components/NcActionLink.js'\nimport NcActionText from '@nextcloud/vue/dist/Components/NcActionText.js'\nimport NcActionSeparator from '@nextcloud/vue/dist/Components/NcActionSeparator.js'\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcDialog from '@nextcloud/vue/dist/Components/NcDialog.js'\n\nimport Tune from 'vue-material-design-icons/Tune.vue'\nimport IconCalendarBlank from 'vue-material-design-icons/CalendarBlank.vue'\nimport IconQr from 'vue-material-design-icons/Qrcode.vue'\nimport ErrorIcon from 'vue-material-design-icons/Exclamation.vue'\nimport LockIcon from 'vue-material-design-icons/Lock.vue'\nimport CheckIcon from 'vue-material-design-icons/CheckBold.vue'\nimport ClipboardIcon from 'vue-material-design-icons/ClipboardFlow.vue'\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\nimport PlusIcon from 'vue-material-design-icons/Plus.vue'\n\nimport SharingEntryQuickShareSelect from './SharingEntryQuickShareSelect.vue'\n\nimport ExternalShareAction from './ExternalShareAction.vue'\nimport GeneratePassword from '../utils/GeneratePassword.js'\nimport Share from '../models/Share.js'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default {\n\tname: 'SharingEntryLink',\n\n\tcomponents: {\n\t\tExternalShareAction,\n\t\tNcActions,\n\t\tNcActionButton,\n\t\tNcActionCheckbox,\n\t\tNcActionInput,\n\t\tNcActionLink,\n\t\tNcActionText,\n\t\tNcActionSeparator,\n\t\tNcAvatar,\n\t\tNcDialog,\n\t\tVueQrcode,\n\t\tTune,\n\t\tIconCalendarBlank,\n\t\tIconQr,\n\t\tErrorIcon,\n\t\tLockIcon,\n\t\tCheckIcon,\n\t\tClipboardIcon,\n\t\tCloseIcon,\n\t\tPlusIcon,\n\t\tSharingEntryQuickShareSelect,\n\t},\n\n\tmixins: [SharesMixin, ShareDetails],\n\n\tprops: {\n\t\tcanReshare: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\tindex: {\n\t\t\ttype: Number,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshareCreationComplete: false,\n\t\t\tcopySuccess: true,\n\t\t\tcopied: false,\n\t\t\tdefaultExpirationDateEnabled: false,\n\n\t\t\t// Are we waiting for password/expiration date\n\t\t\tpending: false,\n\n\t\t\tExternalLegacyLinkActions: OCA.Sharing.ExternalLinkActions.state,\n\t\t\tExternalShareActions: OCA.Sharing.ExternalShareActions.state,\n\t\t\tlogger: getLoggerBuilder()\n\t\t\t\t.setApp('files_sharing')\n\t\t\t\t.detectUser()\n\t\t\t\t.build(),\n\n\t\t\t// tracks whether modal should be opened or not\n\t\t\tshowQRCode: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Link share label\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\ttitle() {\n\t\t\t// if we have a valid existing share (not pending)\n\t\t\tif (this.share && this.share.id) {\n\t\t\t\tif (!this.isShareOwner && this.share.ownerDisplayName) {\n\t\t\t\t\tif (this.isEmailShareType) {\n\t\t\t\t\t\treturn t('files_sharing', '{shareWith} by {initiator}', {\n\t\t\t\t\t\t\tshareWith: this.share.shareWith,\n\t\t\t\t\t\t\tinitiator: this.share.ownerDisplayName,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\treturn t('files_sharing', 'Shared via link by {initiator}', {\n\t\t\t\t\t\tinitiator: this.share.ownerDisplayName,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (this.share.label && this.share.label.trim() !== '') {\n\t\t\t\t\tif (this.isEmailShareType) {\n\t\t\t\t\t\treturn t('files_sharing', 'Mail share ({label})', {\n\t\t\t\t\t\t\tlabel: this.share.label.trim(),\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\treturn t('files_sharing', 'Share link ({label})', {\n\t\t\t\t\t\tlabel: this.share.label.trim(),\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (this.isEmailShareType) {\n\t\t\t\t\treturn this.share.shareWith\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (this.index > 1) {\n\t\t\t\treturn t('files_sharing', 'Share link ({index})', { index: this.index })\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Share link')\n\t\t},\n\n\t\t/**\n\t\t * Show the email on a second line if a label is set for mail shares\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tsubtitle() {\n\t\t\tif (this.isEmailShareType\n\t\t\t\t&& this.title !== this.share.shareWith) {\n\t\t\t\treturn this.share.shareWith\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtected: {\n\t\t\tget() {\n\t\t\t\treturn this.config.enforcePasswordForPublicLink\n\t\t\t\t\t|| !!this.share.password\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\t// TODO: directly save after generation to make sure the share is always protected\n\t\t\t\tVue.set(this.share, 'password', enabled ? await GeneratePassword() : '')\n\t\t\t\tVue.set(this.share, 'newPassword', this.share.password)\n\t\t\t},\n\t\t},\n\n\t\tpasswordExpirationTime() {\n\t\t\tif (this.share.passwordExpirationTime === null) {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst expirationTime = moment(this.share.passwordExpirationTime)\n\n\t\t\tif (expirationTime.diff(moment()) < 0) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn expirationTime.fromNow()\n\t\t},\n\n\t\t/**\n\t\t * Is Talk enabled?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisTalkEnabled() {\n\t\t\treturn OC.appswebroots.spreed !== undefined\n\t\t},\n\n\t\t/**\n\t\t * Is it possible to protect the password by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalkAvailable() {\n\t\t\treturn this.isPasswordProtected && this.isTalkEnabled\n\t\t},\n\n\t\t/**\n\t\t * Is the current share password protected by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalk: {\n\t\t\tget() {\n\t\t\t\treturn this.share.sendPasswordByTalk\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tthis.share.sendPasswordByTalk = enabled\n\t\t\t},\n\t\t},\n\n\t\t/**\n\t\t * Is the current share an email share ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisEmailShareType() {\n\t\t\treturn this.share\n\t\t\t\t? this.share.type === ShareType.Email\n\t\t\t\t: false\n\t\t},\n\n\t\tcanTogglePasswordProtectedByTalkAvailable() {\n\t\t\tif (!this.isPasswordProtected) {\n\t\t\t\t// Makes no sense\n\t\t\t\treturn false\n\t\t\t} else if (this.isEmailShareType && !this.hasUnsavedPassword) {\n\t\t\t\t// For email shares we need a new password in order to enable or\n\t\t\t\t// disable\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\t// Anything else should be fine\n\t\t\treturn true\n\t\t},\n\n\t\t/**\n\t\t * Pending data.\n\t\t * If the share still doesn't have an id, it is not synced\n\t\t * Therefore this is still not valid and requires user input\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tpendingDataIsMissing() {\n\t\t\treturn this.pendingPassword || this.pendingEnforcedPassword || this.pendingDefaultExpirationDate || this.pendingEnforcedExpirationDate\n\t\t},\n\t\tpendingPassword() {\n\t\t\treturn this.config.enableLinkPasswordByDefault && this.isPendingShare\n\t\t},\n\t\tpendingEnforcedPassword() {\n\t\t\treturn this.config.enforcePasswordForPublicLink && this.isPendingShare\n\t\t},\n\t\tpendingEnforcedExpirationDate() {\n\t\t\treturn this.config.isDefaultExpireDateEnforced && this.isPendingShare\n\t\t},\n\t\tpendingDefaultExpirationDate() {\n\t\t\treturn (this.config.defaultExpirationDate instanceof Date || !isNaN(new Date(this.config.defaultExpirationDate).getTime())) && this.isPendingShare\n\t\t},\n\t\tisPendingShare() {\n\t\t\treturn !!(this.share && !this.share.id)\n\t\t},\n\t\tsharePolicyHasEnforcedProperties() {\n\t\t\treturn this.config.enforcePasswordForPublicLink || this.config.isDefaultExpireDateEnforced\n\t\t},\n\n\t\tenforcedPropertiesMissing() {\n\t\t\t// Ensure share exist and the share policy has required properties\n\t\t\tif (!this.sharePolicyHasEnforcedProperties) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tif (!this.share) {\n\t\t\t\t// if no share, we can't tell if properties are missing or not so we assume properties are missing\n\t\t\t\treturn true\n\t\t\t}\n\n\t\t\t// If share has ID, then this is an incoming link share created from the existing link share\n\t\t\t// Hence assume required properties\n\t\t\tif (this.share.id) {\n\t\t\t\treturn true\n\t\t\t}\n\t\t\t// Check if either password or expiration date is missing and enforced\n\t\t\tconst isPasswordMissing = this.config.enforcePasswordForPublicLink && !this.share.password\n\t\t\tconst isExpireDateMissing = this.config.isDefaultExpireDateEnforced && !this.share.expireDate\n\n\t\t\treturn isPasswordMissing || isExpireDateMissing\n\t\t},\n\t\t// if newPassword exists, but is empty, it means\n\t\t// the user deleted the original password\n\t\thasUnsavedPassword() {\n\t\t\treturn this.share.newPassword !== undefined\n\t\t},\n\n\t\t/**\n\t\t * Return the public share link\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tshareLink() {\n\t\t\treturn window.location.protocol + '//' + window.location.host + generateUrl('/s/') + this.share.token\n\t\t},\n\n\t\t/**\n\t\t * Tooltip message for actions button\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tactionsTooltip() {\n\t\t\treturn t('files_sharing', 'Actions for \"{title}\"', { title: this.title })\n\t\t},\n\n\t\t/**\n\t\t * Tooltip message for copy button\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tcopyLinkTooltip() {\n\t\t\tif (this.copied) {\n\t\t\t\tif (this.copySuccess) {\n\t\t\t\t\treturn ''\n\t\t\t\t}\n\t\t\t\treturn t('files_sharing', 'Cannot copy, please copy the link manually')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Copy public link of \"{title}\" to clipboard', { title: this.title })\n\t\t},\n\n\t\t/**\n\t\t * External additionnai actions for the menu\n\t\t *\n\t\t * @deprecated use OCA.Sharing.ExternalShareActions\n\t\t * @return {Array}\n\t\t */\n\t\texternalLegacyLinkActions() {\n\t\t\treturn this.ExternalLegacyLinkActions.actions\n\t\t},\n\n\t\t/**\n\t\t * Additional actions for the menu\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\texternalLinkActions() {\n\t\t\tconst filterValidAction = (action) => (action.shareType.includes(ShareType.Link) || action.shareType.includes(ShareType.Email)) && !action.advanced\n\t\t\t// filter only the registered actions for said link\n\t\t\treturn this.ExternalShareActions.actions\n\t\t\t\t.filter(filterValidAction)\n\t\t},\n\n\t\tisPasswordPolicyEnabled() {\n\t\t\treturn typeof this.config.passwordPolicy === 'object'\n\t\t},\n\n\t\tcanChangeHideDownload() {\n\t\t\tconst hasDisabledDownload = (shareAttribute) => shareAttribute.key === 'download' && shareAttribute.scope === 'permissions' && shareAttribute.enabled === false\n\t\t\treturn this.fileInfo.shareAttributes.some(hasDisabledDownload)\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.defaultExpirationDateEnabled = this.config.defaultExpirationDate instanceof Date\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Check if the share requires review\n\t\t *\n\t\t * @param {boolean} shareReviewComplete if the share was reviewed\n\t\t * @return {boolean}\n\t\t */\n\t\tshareRequiresReview(shareReviewComplete) {\n\t\t\t// If a user clicks 'Create share' it means they have reviewed the share\n\t\t\tif (shareReviewComplete) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\treturn this.defaultExpirationDateEnabled || this.config.enableLinkPasswordByDefault\n\t\t},\n\t\t/**\n\t\t * Create a new share link and append it to the list\n\t\t * @param {boolean} shareReviewComplete if the share was reviewed\n\t\t */\n\t\tasync onNewLinkShare(shareReviewComplete = false) {\n\t\t\tthis.logger.debug('onNewLinkShare called (with this.share)', this.share)\n\t\t\t// do not run again if already loading\n\t\t\tif (this.loading) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst shareDefaults = {\n\t\t\t\tshare_type: ShareType.Link,\n\t\t\t}\n\t\t\tif (this.config.isDefaultExpireDateEnforced) {\n\t\t\t\t// default is empty string if not set\n\t\t\t\t// expiration is the share object key, not expireDate\n\t\t\t\tshareDefaults.expiration = this.formatDateToString(this.config.defaultExpirationDate)\n\t\t\t}\n\n\t\t\tthis.logger.debug('Missing required properties?', this.enforcedPropertiesMissing)\n\t\t\t// Do not push yet if we need a password or an expiration date: show pending menu\n\t\t\t// A share would require a review for example is default expiration date is set but not enforced, this allows\n\t\t\t// the user to review the share and remove the expiration date if they don't want it\n\t\t\tif ((this.sharePolicyHasEnforcedProperties && this.enforcedPropertiesMissing) || this.shareRequiresReview(shareReviewComplete === true)) {\n\t\t\t\tthis.pending = true\n\t\t\t\tthis.shareCreationComplete = false\n\n\t\t\t\tthis.logger.info('Share policy requires a review or has mandated properties (password, expirationDate)...')\n\n\t\t\t\t// ELSE, show the pending popovermenu\n\t\t\t\t// if password default or enforced, pre-fill with random one\n\t\t\t\tif (this.config.enableLinkPasswordByDefault || this.config.enforcePasswordForPublicLink) {\n\t\t\t\t\tshareDefaults.password = await GeneratePassword()\n\t\t\t\t}\n\n\t\t\t\t// create share & close menu\n\t\t\t\tconst share = new Share(shareDefaults)\n\t\t\t\tconst component = await new Promise(resolve => {\n\t\t\t\t\tthis.$emit('add:share', share, resolve)\n\t\t\t\t})\n\n\t\t\t\t// open the menu on the\n\t\t\t\t// freshly created share component\n\t\t\t\tthis.open = false\n\t\t\t\tthis.pending = false\n\t\t\t\tcomponent.open = true\n\n\t\t\t\t// Nothing is enforced, creating share directly\n\t\t\t} else {\n\n\t\t\t\t// if a share already exists, pushing it\n\t\t\t\tif (this.share && !this.share.id) {\n\t\t\t\t\t// if the share is valid, create it on the server\n\t\t\t\t\tif (this.checkShare(this.share)) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tthis.logger.info('Sending existing share to server', this.share)\n\t\t\t\t\t\t\tawait this.pushNewLinkShare(this.share, true)\n\t\t\t\t\t\t\tthis.shareCreationComplete = true\n\t\t\t\t\t\t\tthis.logger.info('Share created on server', this.share)\n\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\tthis.pending = false\n\t\t\t\t\t\t\tthis.logger.error('Error creating share', e)\n\t\t\t\t\t\t\treturn false\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn true\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.open = true\n\t\t\t\t\t\tshowError(t('files_sharing', 'Error, please enter proper password and/or expiration date'))\n\t\t\t\t\t\treturn false\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst share = new Share(shareDefaults)\n\t\t\t\tawait this.pushNewLinkShare(share)\n\t\t\t\tthis.shareCreationComplete = true\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Push a new link share to the server\n\t\t * And update or append to the list\n\t\t * accordingly\n\t\t *\n\t\t * @param {Share} share the new share\n\t\t * @param {boolean} [update] do we update the current share ?\n\t\t */\n\t\tasync pushNewLinkShare(share, update) {\n\t\t\ttry {\n\t\t\t\t// do nothing if we're already pending creation\n\t\t\t\tif (this.loading) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\n\t\t\t\tthis.loading = true\n\t\t\t\tthis.errors = {}\n\n\t\t\t\tconst path = (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\t\t\t\tconst options = {\n\t\t\t\t\tpath,\n\t\t\t\t\tshareType: ShareType.Link,\n\t\t\t\t\tpassword: share.password,\n\t\t\t\t\texpireDate: share.expireDate,\n\t\t\t\t\tattributes: JSON.stringify(this.fileInfo.shareAttributes),\n\t\t\t\t\t// we do not allow setting the publicUpload\n\t\t\t\t\t// before the share creation.\n\t\t\t\t\t// Todo: We also need to fix the createShare method in\n\t\t\t\t\t// lib/Controller/ShareAPIController.php to allow file drop\n\t\t\t\t\t// (currently not supported on create, only update)\n\t\t\t\t}\n\n\t\t\t\tconsole.debug('Creating link share with options', options)\n\t\t\t\tconst newShare = await this.createShare(options)\n\n\t\t\t\tthis.open = false\n\t\t\t\tthis.shareCreationComplete = true\n\t\t\t\tconsole.debug('Link share created', newShare)\n\t\t\t\t// if share already exists, copy link directly on next tick\n\t\t\t\tlet component\n\t\t\t\tif (update) {\n\t\t\t\t\tcomponent = await new Promise(resolve => {\n\t\t\t\t\t\tthis.$emit('update:share', newShare, resolve)\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\t// adding new share to the array and copying link to clipboard\n\t\t\t\t\t// using promise so that we can copy link in the same click function\n\t\t\t\t\t// and avoid firefox copy permissions issue\n\t\t\t\t\tcomponent = await new Promise(resolve => {\n\t\t\t\t\t\tthis.$emit('add:share', newShare, resolve)\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tawait this.getNode()\n\t\t\t\temit('files:node:updated', this.node)\n\n\t\t\t\t// Execute the copy link method\n\t\t\t\t// freshly created share component\n\t\t\t\t// ! somehow does not works on firefox !\n\t\t\t\tif (!this.config.enforcePasswordForPublicLink) {\n\t\t\t\t\t// Only copy the link when the password was not forced,\n\t\t\t\t\t// otherwise the user needs to copy/paste the password before finishing the share.\n\t\t\t\t\tcomponent.copyLink()\n\t\t\t\t}\n\t\t\t\tshowSuccess(t('files_sharing', 'Link share created'))\n\n\t\t\t} catch (data) {\n\t\t\t\tconst message = data?.response?.data?.ocs?.meta?.message\n\t\t\t\tif (!message) {\n\t\t\t\t\tshowError(t('files_sharing', 'Error while creating the share'))\n\t\t\t\t\tconsole.error(data)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif (message.match(/password/i)) {\n\t\t\t\t\tthis.onSyncError('password', message)\n\t\t\t\t} else if (message.match(/date/i)) {\n\t\t\t\t\tthis.onSyncError('expireDate', message)\n\t\t\t\t} else {\n\t\t\t\t\tthis.onSyncError('pending', message)\n\t\t\t\t}\n\t\t\t\tthrow data\n\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t\tthis.shareCreationComplete = true\n\t\t\t}\n\t\t},\n\t\tasync copyLink() {\n\t\t\ttry {\n\t\t\t\tawait navigator.clipboard.writeText(this.shareLink)\n\t\t\t\tshowSuccess(t('files_sharing', 'Link copied'))\n\t\t\t\t// focus and show the tooltip\n\t\t\t\tthis.$refs.copyButton.$el.focus()\n\t\t\t\tthis.copySuccess = true\n\t\t\t\tthis.copied = true\n\t\t\t} catch (error) {\n\t\t\t\tthis.copySuccess = false\n\t\t\t\tthis.copied = true\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.copySuccess = false\n\t\t\t\t\tthis.copied = false\n\t\t\t\t}, 4000)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update newPassword values\n\t\t * of share. If password is set but not newPassword\n\t\t * then the user did not changed the password\n\t\t * If both co-exists, the password have changed and\n\t\t * we show it in plain text.\n\t\t * Then on submit (or menu close), we sync it.\n\t\t *\n\t\t * @param {string} password the changed password\n\t\t */\n\t\tonPasswordChange(password) {\n\t\t\tthis.$set(this.share, 'newPassword', password)\n\t\t},\n\n\t\t/**\n\t\t * Uncheck password protection\n\t\t * We need this method because @update:checked\n\t\t * is ran simultaneously as @uncheck, so we\n\t\t * cannot ensure data is up-to-date\n\t\t */\n\t\tonPasswordDisable() {\n\t\t\tthis.share.password = ''\n\n\t\t\t// reset password state after sync\n\t\t\tthis.$delete(this.share, 'newPassword')\n\n\t\t\t// only update if valid share.\n\t\t\tif (this.share.id) {\n\t\t\t\tthis.queueUpdate('password')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Menu have been closed or password has been submitted.\n\t\t * The only property that does not get\n\t\t * synced automatically is the password\n\t\t * So let's check if we have an unsaved\n\t\t * password.\n\t\t * expireDate is saved on datepicker pick\n\t\t * or close.\n\t\t */\n\t\tonPasswordSubmit() {\n\t\t\tif (this.hasUnsavedPassword) {\n\t\t\t\tthis.share.password = this.share.newPassword.trim()\n\t\t\t\tthis.queueUpdate('password')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update the password along with \"sendPasswordByTalk\".\n\t\t *\n\t\t * If the password was modified the new password is sent; otherwise\n\t\t * updating a mail share would fail, as in that case it is required that\n\t\t * a new password is set when enabling or disabling\n\t\t * \"sendPasswordByTalk\".\n\t\t */\n\t\tonPasswordProtectedByTalkChange() {\n\t\t\tif (this.hasUnsavedPassword) {\n\t\t\t\tthis.share.password = this.share.newPassword.trim()\n\t\t\t}\n\n\t\t\tthis.queueUpdate('sendPasswordByTalk', 'password')\n\t\t},\n\n\t\t/**\n\t\t * Save potential changed data on menu close\n\t\t */\n\t\tonMenuClose() {\n\t\t\tthis.onPasswordSubmit()\n\t\t\tthis.onNoteSubmit()\n\t\t},\n\t\tonDefaultExpirationDateEnabledChange(enabled) {\n\t\t\tthis.share.expireDate = enabled ? this.formatDateToString(this.config.defaultExpirationDate) : ''\n\t\t},\n\n\t\t/**\n\t\t * Cancel the share creation\n\t\t * Used in the pending popover\n\t\t */\n\t\tonCancel() {\n\t\t\t// this.share already exists at this point,\n\t\t\t// but is incomplete as not pushed to server\n\t\t\t// YET. We can safely delete the share :)\n\t\t\tif (!this.shareCreationComplete) {\n\t\t\t\tthis.$emit('remove:share', this.share)\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\t}\n\n\t\t&__desc {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tline-height: 1.2em;\n\n\t\t\tp {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&__title {\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\t\t}\n\n\t&:not(.sharing-entry--share) &__actions {\n\t\t.new-share-link {\n\t\t\tborder-top: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t::v-deep .avatar-link-share {\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t.sharing-entry__action--public-upload {\n\t\tborder-bottom: 1px solid var(--color-border);\n\t}\n\n\t&__loading {\n\t\twidth: 44px;\n\t\theight: 44px;\n\t\tmargin: 0;\n\t\tpadding: 14px;\n\t\tmargin-left: auto;\n\t}\n\n\t// put menus to the left\n\t// but only the first one\n\t.action-item {\n\n\t\t~.action-item,\n\t\t~.sharing-entry__loading {\n\t\t\tmargin-left: 0;\n\t\t}\n\t}\n\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n\n// styling for the qr-code container\n.qr-code-dialog {\n\tdisplay: flex;\n\twidth: 100%;\n\tjustify-content: center;\n\n\t&__img {\n\t\twidth: 100%;\n\t\theight: auto;\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=style&index=0&id=3e048372&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=style&index=0&id=3e048372&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryLink.vue?vue&type=template&id=3e048372&scoped=true\"\nimport script from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryLink.vue?vue&type=style&index=0&id=3e048372&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e048372\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingLinkList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingLinkList.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<ul v-if=\"canLinkShare\" class=\"sharing-link-list\">\n\t\t<!-- If no link shares, show the add link default entry -->\n\t\t<SharingEntryLink v-if=\"!hasLinkShares && canReshare\"\n\t\t\t:can-reshare=\"canReshare\"\n\t\t\t:file-info=\"fileInfo\"\n\t\t\t@add:share=\"addShare\" />\n\n\t\t<!-- Else we display the list -->\n\t\t<template v-if=\"hasShares\">\n\t\t\t<!-- using shares[index] to work with .sync -->\n\t\t\t<SharingEntryLink v-for=\"(share, index) in shares\"\n\t\t\t\t:key=\"share.id\"\n\t\t\t\t:index=\"shares.length > 1 ? index + 1 : null\"\n\t\t\t\t:can-reshare=\"canReshare\"\n\t\t\t\t:share.sync=\"shares[index]\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t@add:share=\"addShare(...arguments)\"\n\t\t\t\t@update:share=\"awaitForShare(...arguments)\"\n\t\t\t\t@remove:share=\"removeShare\"\n\t\t\t\t@open-sharing-details=\"openSharingDetails(share)\" />\n\t\t</template>\n\t</ul>\n</template>\n\n<script>\nimport { getCapabilities } from '@nextcloud/capabilities'\n\n// eslint-disable-next-line no-unused-vars\nimport Share from '../models/Share.js'\nimport SharingEntryLink from '../components/SharingEntryLink.vue'\nimport ShareDetails from '../mixins/ShareDetails.js'\nimport { ShareType } from '@nextcloud/sharing'\n\nexport default {\n\tname: 'SharingLinkList',\n\n\tcomponents: {\n\t\tSharingEntryLink,\n\t},\n\n\tmixins: [ShareDetails],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t\tshares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t\tcanReshare: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcanLinkShare: getCapabilities().files_sharing.public.enabled,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Do we have link shares?\n\t\t * Using this to still show the `new link share`\n\t\t * button regardless of mail shares\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\thasLinkShares() {\n\t\t\treturn this.shares.filter(share => share.type === ShareType.Link).length > 0\n\t\t},\n\n\t\t/**\n\t\t * Do we have any link or email shares?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasShares() {\n\t\t\treturn this.shares.length > 0\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Add a new share into the link shares list\n\t\t * and return the newly created share component\n\t\t *\n\t\t * @param {Share} share the share to add to the array\n\t\t * @param {Function} resolve a function to run after the share is added and its component initialized\n\t\t */\n\t\taddShare(share, resolve) {\n\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\tthis.shares.push(share)\n\t\t\tthis.awaitForShare(share, resolve)\n\t\t},\n\n\t\t/**\n\t\t * Await for next tick and render after the list updated\n\t\t * Then resolve with the matched vue component of the\n\t\t * provided share object\n\t\t *\n\t\t * @param {Share} share newly created share\n\t\t * @param {Function} resolve a function to execute after\n\t\t */\n\t\tawaitForShare(share, resolve) {\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tconst newShare = this.$children.find(component => component.share === share)\n\t\t\t\tif (newShare) {\n\t\t\t\t\tresolve(newShare)\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Remove a share from the shares list\n\t\t *\n\t\t * @param {Share} share the share to remove\n\t\t */\n\t\tremoveShare(share) {\n\t\t\tconst index = this.shares.findIndex(item => item === share)\n\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\tthis.shares.splice(index, 1)\n\t\t},\n\t},\n}\n</script>\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry sharing-entry__link\",class:{ 'sharing-entry--share': _vm.share }},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":true,\"icon-class\":_vm.isEmailShareType ? 'avatar-link-share icon-mail-white' : 'avatar-link-share icon-public-white'}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\",attrs:{\"title\":_vm.title}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.title)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share && _vm.share.permissions !== undefined)?_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}}):_vm._e()],1),_vm._v(\" \"),(_vm.share && !_vm.isEmailShareType && _vm.share.token)?_c('NcActions',{ref:\"copyButton\",staticClass:\"sharing-entry__copy\"},[_c('NcActionButton',{attrs:{\"title\":_vm.copyLinkTooltip,\"aria-label\":_vm.copyLinkTooltip},on:{\"click\":function($event){$event.preventDefault();return _vm.copyLink.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.copied && _vm.copySuccess)?_c('CheckIcon',{staticClass:\"icon-checkmark-color\",attrs:{\"size\":20}}):_c('ClipboardIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,4269614823)})],1):_vm._e()],1),_vm._v(\" \"),(!_vm.pending && _vm.pendingDataIsMissing)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onCancel}},[(_vm.errors.pending)?_c('NcActionText',{staticClass:\"error\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ErrorIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1966124155)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.errors.pending)+\"\\n\\t\\t\")]):_c('NcActionText',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Please enter the following required information before creating the share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.pendingPassword)?_c('NcActionCheckbox',{staticClass:\"share-link-password-checkbox\",attrs:{\"checked\":_vm.isPasswordProtected,\"disabled\":_vm.config.enforcePasswordForPublicLink || _vm.saving},on:{\"update:checked\":function($event){_vm.isPasswordProtected=$event},\"uncheck\":_vm.onPasswordDisable}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.enforcePasswordForPublicLink ? _vm.t('files_sharing', 'Password protection (enforced)') : _vm.t('files_sharing', 'Password protection'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.pendingEnforcedPassword || _vm.share.password)?_c('NcActionInput',{staticClass:\"share-link-password\",attrs:{\"label\":_vm.t('files_sharing', 'Enter a password'),\"value\":_vm.share.password,\"disabled\":_vm.saving,\"required\":_vm.config.enableLinkPasswordByDefault || _vm.config.enforcePasswordForPublicLink,\"minlength\":_vm.isPasswordPolicyEnabled && _vm.config.passwordPolicy.minLength,\"autocomplete\":\"new-password\"},on:{\"update:value\":function($event){return _vm.$set(_vm.share, \"password\", $event)},\"submit\":function($event){return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('LockIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2056568168)}):_vm._e(),_vm._v(\" \"),(_vm.pendingDefaultExpirationDate)?_c('NcActionCheckbox',{staticClass:\"share-link-expiration-date-checkbox\",attrs:{\"checked\":_vm.defaultExpirationDateEnabled,\"disabled\":_vm.pendingEnforcedExpirationDate || _vm.saving},on:{\"update:checked\":function($event){_vm.defaultExpirationDateEnabled=$event},\"change\":_vm.onDefaultExpirationDateEnabledChange}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.enforcePasswordForPublicLink ? _vm.t('files_sharing', 'Enable link expiration (enforced)') : _vm.t('files_sharing', 'Enable link expiration'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),((_vm.pendingDefaultExpirationDate || _vm.pendingEnforcedExpirationDate) && _vm.defaultExpirationDateEnabled)?_c('NcActionInput',{staticClass:\"share-link-expire-date\",attrs:{\"label\":_vm.pendingEnforcedExpirationDate ? _vm.t('files_sharing', 'Enter expiration date (enforced)') : _vm.t('files_sharing', 'Enter expiration date'),\"disabled\":_vm.saving,\"is-native-picker\":true,\"hide-label\":true,\"value\":new Date(_vm.share.expireDate),\"type\":\"date\",\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced},on:{\"input\":function($event){_vm.onExpirationChange /* let's not submit when picked, the user might want to still edit or copy the password */}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconCalendarBlank',{attrs:{\"size\":20}})]},proxy:true}],null,false,3418578971)}):_vm._e(),_vm._v(\" \"),_c('NcActionButton',{on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CheckIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2630571749)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onCancel.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\")])],1):(!_vm.loading)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onMenuClose}},[(_vm.share)?[(_vm.share.canEdit && _vm.canReshare)?[_c('NcActionButton',{attrs:{\"disabled\":_vm.saving,\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();return _vm.openSharingDetails.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Tune',{attrs:{\"size\":20}})]},proxy:true}],null,false,1300586850)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Customize link'))+\"\\n\\t\\t\\t\\t\")])]:_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();_vm.showQRCode = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconQr',{attrs:{\"size\":20}})]},proxy:true}],null,false,1082198240)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Generate QR code'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.externalLinkActions),function(action){return _c('ExternalShareAction',{key:action.id,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),_vm._l((_vm.externalLegacyLinkActions),function({ icon, url, name },index){return _c('NcActionLink',{key:index,attrs:{\"href\":url(_vm.shareLink),\"icon\":icon,\"target\":\"_blank\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(name)+\"\\n\\t\\t\\t\")])}),_vm._v(\" \"),(!_vm.isEmailShareType && _vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('PlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2953566425)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Add another link'))+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"disabled\":_vm.saving},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\\t\\t\")]):_vm._e()]:(_vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",attrs:{\"title\":_vm.t('files_sharing', 'Create a new share link'),\"aria-label\":_vm.t('files_sharing', 'Create a new share link'),\"icon\":_vm.loading ? 'icon-loading-small' : 'icon-add'},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}}}):_vm._e()],2):_c('div',{staticClass:\"icon-loading-small sharing-entry__loading\"}),_vm._v(\" \"),(_vm.showQRCode)?_c('NcDialog',{attrs:{\"size\":\"normal\",\"open\":_vm.showQRCode,\"name\":_vm.title,\"close-on-click-outside\":true},on:{\"update:open\":function($event){_vm.showQRCode=$event},\"close\":function($event){_vm.showQRCode = false}}},[_c('div',{staticClass:\"qr-code-dialog\"},[_c('VueQrcode',{staticClass:\"qr-code-dialog__img\",attrs:{\"tag\":\"img\",\"value\":_vm.shareLink}})],1)]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SharingLinkList.vue?vue&type=template&id=47287144\"\nimport script from \"./SharingLinkList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingLinkList.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{staticClass:\"sharing-sharee-list\"},_vm._l((_vm.shares),function(share){return _c('SharingEntry',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share,\"is-unique\":_vm.isUnique(share)},on:{\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon dots-horizontal-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"DotsHorizontalIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DotsHorizontal.vue?vue&type=template&id=a8ba8946\"\nimport script from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\nexport * from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon dots-horizontal-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<li class=\"sharing-entry\">\n\t\t<NcAvatar class=\"sharing-entry__avatar\"\n\t\t\t:is-no-user=\"share.type !== ShareType.User\"\n\t\t\t:user=\"share.shareWith\"\n\t\t\t:display-name=\"share.shareWithDisplayName\"\n\t\t\t:menu-position=\"'left'\"\n\t\t\t:url=\"share.shareWithAvatar\" />\n\n\t\t<div class=\"sharing-entry__summary\">\n\t\t\t<component :is=\"share.shareWithLink ? 'a' : 'div'\"\n\t\t\t\t:title=\"tooltip\"\n\t\t\t\t:aria-label=\"tooltip\"\n\t\t\t\t:href=\"share.shareWithLink\"\n\t\t\t\tclass=\"sharing-entry__summary__desc\">\n\t\t\t\t<span>{{ title }}\n\t\t\t\t\t<span v-if=\"!isUnique\" class=\"sharing-entry__summary__desc-unique\"> ({{\n\t\t\t\t\t\tshare.shareWithDisplayNameUnique }})</span>\n\t\t\t\t\t<small v-if=\"hasStatus && share.status.message\">({{ share.status.message }})</small>\n\t\t\t\t</span>\n\t\t\t</component>\n\t\t\t<SharingEntryQuickShareSelect :share=\"share\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t@open-sharing-details=\"openShareDetailsForCustomSettings(share)\" />\n\t\t</div>\n\t\t<NcButton v-if=\"share.canEdit\"\n\t\t\tclass=\"sharing-entry__action\"\n\t\t\tdata-cy-files-sharing-share-actions\n\t\t\t:aria-label=\"t('files_sharing', 'Open Sharing Details')\"\n\t\t\ttype=\"tertiary\"\n\t\t\t@click=\"openSharingDetails(share)\">\n\t\t\t<template #icon>\n\t\t\t\t<DotsHorizontalIcon :size=\"20\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t</li>\n</template>\n\n<script>\nimport { ShareType } from '@nextcloud/sharing'\n\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\n\nimport SharingEntryQuickShareSelect from './SharingEntryQuickShareSelect.vue'\n\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\n\nexport default {\n\tname: 'SharingEntry',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tNcAvatar,\n\t\tDotsHorizontalIcon,\n\t\tNcSelect,\n\t\tSharingEntryQuickShareSelect,\n\t},\n\n\tmixins: [SharesMixin, ShareDetails],\n\n\tcomputed: {\n\t\ttitle() {\n\t\t\tlet title = this.share.shareWithDisplayName\n\t\t\tif (this.share.type === ShareType.Group) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'group')})`\n\t\t\t} else if (this.share.type === ShareType.Room) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'conversation')})`\n\t\t\t} else if (this.share.type === ShareType.Remote) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'remote')})`\n\t\t\t} else if (this.share.type === ShareType.RemoteGroup) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'remote group')})`\n\t\t\t} else if (this.share.type === ShareType.Guest) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'guest')})`\n\t\t\t}\n\t\t\treturn title\n\t\t},\n\t\ttooltip() {\n\t\t\tif (this.share.owner !== this.share.uidFileOwner) {\n\t\t\t\tconst data = {\n\t\t\t\t\t// todo: strong or italic?\n\t\t\t\t\t// but the t function escape any html from the data :/\n\t\t\t\t\tuser: this.share.shareWithDisplayName,\n\t\t\t\t\towner: this.share.ownerDisplayName,\n\t\t\t\t}\n\t\t\t\tif (this.share.type === ShareType.Group) {\n\t\t\t\t\treturn t('files_sharing', 'Shared with the group {user} by {owner}', data)\n\t\t\t\t} else if (this.share.type === ShareType.Room) {\n\t\t\t\t\treturn t('files_sharing', 'Shared with the conversation {user} by {owner}', data)\n\t\t\t\t}\n\n\t\t\t\treturn t('files_sharing', 'Shared with {user} by {owner}', data)\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\n\t\t/**\n\t\t * @return {boolean}\n\t\t */\n\t\thasStatus() {\n\t\t\tif (this.share.type !== ShareType.User) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn (typeof this.share.status === 'object' && !Array.isArray(this.share.status))\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Save potential changed data on menu close\n\t\t */\n\t\tonMenuClose() {\n\t\t\tthis.onNoteSubmit()\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\talign-items: flex-start;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\n\t\t&__desc {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding-bottom: 0;\n\t\t\tline-height: 1.2em;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\tp,\n\t\t\tsmall {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&-unique {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\t\t}\n\t}\n\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=style&index=0&id=172dde79&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=style&index=0&id=172dde79&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntry.vue?vue&type=template&id=172dde79&scoped=true\"\nimport script from \"./SharingEntry.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntry.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntry.vue?vue&type=style&index=0&id=172dde79&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"172dde79\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingList.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<ul class=\"sharing-sharee-list\">\n\t\t<SharingEntry v-for=\"share in shares\"\n\t\t\t:key=\"share.id\"\n\t\t\t:file-info=\"fileInfo\"\n\t\t\t:share=\"share\"\n\t\t\t:is-unique=\"isUnique(share)\"\n\t\t\t@open-sharing-details=\"openSharingDetails(share)\" />\n\t</ul>\n</template>\n\n<script>\n// eslint-disable-next-line no-unused-vars\nimport SharingEntry from '../components/SharingEntry.vue'\nimport ShareDetails from '../mixins/ShareDetails.js'\nimport { ShareType } from '@nextcloud/sharing'\n\nexport default {\n\tname: 'SharingList',\n\n\tcomponents: {\n\t\tSharingEntry,\n\t},\n\n\tmixins: [ShareDetails],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { },\n\t\t\trequired: true,\n\t\t},\n\t\tshares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t},\n\tcomputed: {\n\t\thasShares() {\n\t\t\treturn this.shares.length === 0\n\t\t},\n\t\tisUnique() {\n\t\t\treturn (share) => {\n\t\t\t\treturn [...this.shares].filter((item) => {\n\t\t\t\t\treturn share.type === ShareType.User && share.shareWithDisplayName === item.shareWithDisplayName\n\t\t\t\t}).length <= 1\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry\"},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.type !== _vm.ShareType.User,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":'left',\"url\":_vm.share.shareWithAvatar}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c(_vm.share.shareWithLink ? 'a' : 'div',{tag:\"component\",staticClass:\"sharing-entry__summary__desc\",attrs:{\"title\":_vm.tooltip,\"aria-label\":_vm.tooltip,\"href\":_vm.share.shareWithLink}},[_c('span',[_vm._v(_vm._s(_vm.title)+\"\\n\\t\\t\\t\\t\"),(!_vm.isUnique)?_c('span',{staticClass:\"sharing-entry__summary__desc-unique\"},[_vm._v(\" (\"+_vm._s(_vm.share.shareWithDisplayNameUnique)+\")\")]):_vm._e(),_vm._v(\" \"),(_vm.hasStatus && _vm.share.status.message)?_c('small',[_vm._v(\"(\"+_vm._s(_vm.share.status.message)+\")\")]):_vm._e()])]),_vm._v(\" \"),_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}})],1),_vm._v(\" \"),(_vm.share.canEdit)?_c('NcButton',{staticClass:\"sharing-entry__action\",attrs:{\"data-cy-files-sharing-share-actions\":\"\",\"aria-label\":_vm.t('files_sharing', 'Open Sharing Details'),\"type\":\"tertiary\"},on:{\"click\":function($event){return _vm.openSharingDetails(_vm.share)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1700783217)}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SharingList.vue?vue&type=template&id=fa381572\"\nimport script from \"./SharingList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingList.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTabDetailsView\"},[_c('div',{staticClass:\"sharingTabDetailsView__header\"},[_c('span',[(_vm.isUserShare)?_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.shareType !== _vm.ShareType.User,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":'left',\"url\":_vm.share.shareWithAvatar}}):_vm._e(),_vm._v(\" \"),_c(_vm.getShareTypeIcon(_vm.share.type),{tag:\"component\",attrs:{\"size\":32}})],1),_vm._v(\" \"),_c('span',[_c('h1',[_vm._v(_vm._s(_vm.title))])])]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__wrapper\"},[_c('div',{ref:\"quickPermissions\",staticClass:\"sharingTabDetailsView__quick-permissions\"},[_c('div',[_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"read-only\",\"checked\":_vm.sharingPermission,\"value\":_vm.bundledPermissions.READ_ONLY.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.toggleCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ViewIcon',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'View only'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"upload-edit\",\"checked\":_vm.sharingPermission,\"value\":_vm.bundledPermissions.ALL.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.toggleCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('EditIcon',{attrs:{\"size\":20}})]},proxy:true}])},[(_vm.allowsFileDrop)?[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow upload and editing'))+\"\\n\\t\\t\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow editing'))+\"\\n\\t\\t\\t\\t\\t\")]],2),_vm._v(\" \"),(_vm.allowsFileDrop)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-sharing-share-permissions-bundle\":\"file-drop\",\"button-variant\":true,\"checked\":_vm.sharingPermission,\"value\":_vm.bundledPermissions.FILE_DROP.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.toggleCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('UploadIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1083194048)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'File drop'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.t('files_sharing', 'Upload only')))])]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"custom\",\"checked\":_vm.sharingPermission,\"value\":'custom',\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.expandCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.customPermissionsList))])])],1)]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__advanced-control\"},[_c('NcButton',{attrs:{\"id\":\"advancedSectionAccordionAdvancedControl\",\"type\":\"tertiary\",\"alignment\":\"end-reverse\",\"aria-controls\":\"advancedSectionAccordionAdvanced\",\"aria-expanded\":_vm.advancedControlExpandedValue},on:{\"click\":function($event){_vm.advancedSectionAccordionExpanded = !_vm.advancedSectionAccordionExpanded}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.advancedSectionAccordionExpanded)?_c('MenuDownIcon'):_c('MenuUpIcon')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Advanced settings'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),(_vm.advancedSectionAccordionExpanded)?_c('div',{staticClass:\"sharingTabDetailsView__advanced\",attrs:{\"id\":\"advancedSectionAccordionAdvanced\",\"aria-labelledby\":\"advancedSectionAccordionAdvancedControl\",\"role\":\"region\"}},[_c('section',[(_vm.isPublicShare)?_c('NcInputField',{attrs:{\"autocomplete\":\"off\",\"label\":_vm.t('files_sharing', 'Share label'),\"value\":_vm.share.label},on:{\"update:value\":function($event){return _vm.$set(_vm.share, \"label\", $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?[_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.isPasswordProtected,\"disabled\":_vm.isPasswordEnforced},on:{\"update:checked\":function($event){_vm.isPasswordProtected=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set password'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isPasswordProtected)?_c('NcPasswordField',{attrs:{\"autocomplete\":\"new-password\",\"value\":_vm.hasUnsavedPassword ? _vm.share.newPassword : '',\"error\":_vm.passwordError,\"helper-text\":_vm.errorPasswordLabel || _vm.passwordHint,\"required\":_vm.isPasswordEnforced && _vm.isNewShare,\"label\":_vm.t('files_sharing', 'Password')},on:{\"update:value\":_vm.onPasswordChange}}):_vm._e(),_vm._v(\" \"),(_vm.isEmailShareType && _vm.passwordExpirationTime)?_c('span',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expires {passwordExpirationTime}', { passwordExpirationTime: _vm.passwordExpirationTime }))+\"\\n\\t\\t\\t\\t\\t\")]):(_vm.isEmailShareType && _vm.passwordExpirationTime !== null)?_c('span',{attrs:{\"icon\":\"icon-error\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expired'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e()]:_vm._e(),_vm._v(\" \"),(_vm.canTogglePasswordProtectedByTalkAvailable)?_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.isPasswordProtectedByTalk},on:{\"update:checked\":[function($event){_vm.isPasswordProtectedByTalk=$event},_vm.onPasswordProtectedByTalkChange]}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Video verification'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.hasExpirationDate,\"disabled\":_vm.isExpiryDateEnforced},on:{\"update:checked\":function($event){_vm.hasExpirationDate=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.isExpiryDateEnforced\n\t\t\t\t\t\t? _vm.t('files_sharing', 'Expiration date (enforced)')\n\t\t\t\t\t\t: _vm.t('files_sharing', 'Set expiration date'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.hasExpirationDate)?_c('NcDateTimePickerNative',{attrs:{\"id\":\"share-date-picker\",\"value\":new Date(_vm.share.expireDate ?? _vm.dateTomorrow),\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced,\"hide-label\":\"\",\"label\":_vm.t('files_sharing', 'Expiration date'),\"placeholder\":_vm.t('files_sharing', 'Expiration date'),\"type\":\"date\"},on:{\"input\":_vm.onExpirationChange}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.canChangeHideDownload,\"checked\":_vm.share.hideDownload},on:{\"update:checked\":[function($event){return _vm.$set(_vm.share, \"hideDownload\", $event)},function($event){return _vm.queueUpdate('hideDownload')}]}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Hide download'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isPublicShare)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDownload,\"checked\":_vm.canDownload,\"data-cy-files-sharing-share-permissions-checkbox\":\"download\"},on:{\"update:checked\":function($event){_vm.canDownload=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow download'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.writeNoteToRecipientIsChecked},on:{\"update:checked\":function($event){_vm.writeNoteToRecipientIsChecked=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Note to recipient'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.writeNoteToRecipientIsChecked)?[_c('label',{attrs:{\"for\":\"share-note-textarea\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Enter a note for the share recipient'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('textarea',{attrs:{\"id\":\"share-note-textarea\"},domProps:{\"value\":_vm.share.note},on:{\"input\":function($event){_vm.share.note = $event.target.value}}})]:_vm._e(),_vm._v(\" \"),_vm._l((_vm.externalLinkActions),function(action){return _c('ExternalShareAction',{key:action.id,ref:\"externalLinkActions\",refInFor:true,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.setCustomPermissions},on:{\"update:checked\":function($event){_vm.setCustomPermissions=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.setCustomPermissions)?_c('section',{staticClass:\"custom-permissions-group\"},[_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canRemoveReadPermission,\"checked\":_vm.hasRead,\"data-cy-files-sharing-share-permissions-checkbox\":\"read\"},on:{\"update:checked\":function($event){_vm.hasRead=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Read'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isFolder)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetCreate,\"checked\":_vm.canCreate,\"data-cy-files-sharing-share-permissions-checkbox\":\"create\"},on:{\"update:checked\":function($event){_vm.canCreate=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetEdit,\"checked\":_vm.canEdit,\"data-cy-files-sharing-share-permissions-checkbox\":\"update\"},on:{\"update:checked\":function($event){_vm.canEdit=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Edit'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.config.isResharingAllowed && _vm.share.type !== _vm.ShareType.Link)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetReshare,\"checked\":_vm.canReshare,\"data-cy-files-sharing-share-permissions-checkbox\":\"share\"},on:{\"update:checked\":function($event){_vm.canReshare=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Share'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDelete,\"checked\":_vm.canDelete,\"data-cy-files-sharing-share-permissions-checkbox\":\"delete\"},on:{\"update:checked\":function($event){_vm.canDelete=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete'))+\"\\n\\t\\t\\t\\t\\t\")])],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__delete\"},[(!_vm.isNewShare)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Delete share'),\"disabled\":false,\"readonly\":false,\"type\":\"tertiary\"},on:{\"click\":function($event){$event.preventDefault();return _vm.removeShare.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":16}})]},proxy:true}],null,false,2746485232)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete share'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e()],1)],2)]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__footer\"},[_c('div',{staticClass:\"button-group\"},[_c('NcButton',{attrs:{\"data-cy-files-sharing-share-editor-action\":\"cancel\"},on:{\"click\":function($event){return _vm.$emit('close-sharing-details')}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\",\"data-cy-files-sharing-share-editor-action\":\"save\"},on:{\"click\":_vm.saveShare},scopedSlots:_vm._u([(_vm.creating)?{key:\"icon\",fn:function(){return [_c('NcLoadingIcon')]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.shareButtonText)+\"\\n\\t\\t\\t\\t\")])],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon circle-outline-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CircleOutlineIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CircleOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CircleOutline.vue?vue&type=template&id=c013567c\"\nimport script from \"./CircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CircleOutline.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon circle-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon email-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"EmailIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Email.vue?vue&type=template&id=7dd7f6aa\"\nimport script from \"./Email.vue?vue&type=script&lang=js\"\nexport * from \"./Email.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon email-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon share-circle-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ShareCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShareCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShareCircle.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ShareCircle.vue?vue&type=template&id=0e958886\"\nimport script from \"./ShareCircle.vue?vue&type=script&lang=js\"\nexport * from \"./ShareCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon share-circle-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon account-circle-outline-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"AccountCircleOutlineIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./AccountCircleOutline.vue?vue&type=template&id=5b2fe1de\"\nimport script from \"./AccountCircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./AccountCircleOutline.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-circle-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Eye.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Eye.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon eye-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"EyeIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Eye.vue?vue&type=template&id=4ae2345c\"\nimport script from \"./Eye.vue?vue&type=script&lang=js\"\nexport * from \"./Eye.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon eye-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div class=\"sharingTabDetailsView\">\n\t\t<div class=\"sharingTabDetailsView__header\">\n\t\t\t<span>\n\t\t\t\t<NcAvatar v-if=\"isUserShare\"\n\t\t\t\t\tclass=\"sharing-entry__avatar\"\n\t\t\t\t\t:is-no-user=\"share.shareType !== ShareType.User\"\n\t\t\t\t\t:user=\"share.shareWith\"\n\t\t\t\t\t:display-name=\"share.shareWithDisplayName\"\n\t\t\t\t\t:menu-position=\"'left'\"\n\t\t\t\t\t:url=\"share.shareWithAvatar\" />\n\t\t\t\t<component :is=\"getShareTypeIcon(share.type)\" :size=\"32\" />\n\t\t\t</span>\n\t\t\t<span>\n\t\t\t\t<h1>{{ title }}</h1>\n\t\t\t</span>\n\t\t</div>\n\t\t<div class=\"sharingTabDetailsView__wrapper\">\n\t\t\t<div ref=\"quickPermissions\" class=\"sharingTabDetailsView__quick-permissions\">\n\t\t\t\t<div>\n\t\t\t\t\t<NcCheckboxRadioSwitch :button-variant=\"true\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"read-only\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"bundledPermissions.READ_ONLY.toString()\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"toggleCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'View only') }}\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<ViewIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :button-variant=\"true\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"upload-edit\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"bundledPermissions.ALL.toString()\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"toggleCustomPermissions\">\n\t\t\t\t\t\t<template v-if=\"allowsFileDrop\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Allow upload and editing') }}\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Allow editing') }}\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<EditIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"allowsFileDrop\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"file-drop\"\n\t\t\t\t\t\t:button-variant=\"true\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"bundledPermissions.FILE_DROP.toString()\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"toggleCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'File drop') }}\n\t\t\t\t\t\t<small class=\"subline\">{{ t('files_sharing', 'Upload only') }}</small>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<UploadIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :button-variant=\"true\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"custom\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"'custom'\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"expandCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Custom permissions') }}\n\t\t\t\t\t\t<small class=\"subline\">{{ customPermissionsList }}</small>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<DotsHorizontalIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=\"sharingTabDetailsView__advanced-control\">\n\t\t\t\t<NcButton id=\"advancedSectionAccordionAdvancedControl\"\n\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\talignment=\"end-reverse\"\n\t\t\t\t\taria-controls=\"advancedSectionAccordionAdvanced\"\n\t\t\t\t\t:aria-expanded=\"advancedControlExpandedValue\"\n\t\t\t\t\t@click=\"advancedSectionAccordionExpanded = !advancedSectionAccordionExpanded\">\n\t\t\t\t\t{{ t('files_sharing', 'Advanced settings') }}\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<MenuDownIcon v-if=\"!advancedSectionAccordionExpanded\" />\n\t\t\t\t\t\t<MenuUpIcon v-else />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t\t<div v-if=\"advancedSectionAccordionExpanded\"\n\t\t\t\tid=\"advancedSectionAccordionAdvanced\"\n\t\t\t\tclass=\"sharingTabDetailsView__advanced\"\n\t\t\t\taria-labelledby=\"advancedSectionAccordionAdvancedControl\"\n\t\t\t\trole=\"region\">\n\t\t\t\t<section>\n\t\t\t\t\t<NcInputField v-if=\"isPublicShare\"\n\t\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t\t:label=\"t('files_sharing', 'Share label')\"\n\t\t\t\t\t\t:value.sync=\"share.label\" />\n\t\t\t\t\t<template v-if=\"isPublicShare\">\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"isPasswordProtected\" :disabled=\"isPasswordEnforced\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Set password') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcPasswordField v-if=\"isPasswordProtected\"\n\t\t\t\t\t\t\tautocomplete=\"new-password\"\n\t\t\t\t\t\t\t:value=\"hasUnsavedPassword ? share.newPassword : ''\"\n\t\t\t\t\t\t\t:error=\"passwordError\"\n\t\t\t\t\t\t\t:helper-text=\"errorPasswordLabel || passwordHint\"\n\t\t\t\t\t\t\t:required=\"isPasswordEnforced && isNewShare\"\n\t\t\t\t\t\t\t:label=\"t('files_sharing', 'Password')\"\n\t\t\t\t\t\t\t@update:value=\"onPasswordChange\" />\n\n\t\t\t\t\t\t<!-- Migrate icons and remote -> icon=\"icon-info\"-->\n\t\t\t\t\t\t<span v-if=\"isEmailShareType && passwordExpirationTime\" icon=\"icon-info\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Password expires {passwordExpirationTime}', { passwordExpirationTime }) }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span v-else-if=\"isEmailShareType && passwordExpirationTime !== null\" icon=\"icon-error\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Password expired') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</template>\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"canTogglePasswordProtectedByTalkAvailable\"\n\t\t\t\t\t\t:checked.sync=\"isPasswordProtectedByTalk\"\n\t\t\t\t\t\t@update:checked=\"onPasswordProtectedByTalkChange\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Video verification') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"hasExpirationDate\" :disabled=\"isExpiryDateEnforced\">\n\t\t\t\t\t\t{{ isExpiryDateEnforced\n\t\t\t\t\t\t\t? t('files_sharing', 'Expiration date (enforced)')\n\t\t\t\t\t\t\t: t('files_sharing', 'Set expiration date') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcDateTimePickerNative v-if=\"hasExpirationDate\"\n\t\t\t\t\t\tid=\"share-date-picker\"\n\t\t\t\t\t\t:value=\"new Date(share.expireDate ?? dateTomorrow)\"\n\t\t\t\t\t\t:min=\"dateTomorrow\"\n\t\t\t\t\t\t:max=\"maxExpirationDateEnforced\"\n\t\t\t\t\t\thide-label\n\t\t\t\t\t\t:label=\"t('files_sharing', 'Expiration date')\"\n\t\t\t\t\t\t:placeholder=\"t('files_sharing', 'Expiration date')\"\n\t\t\t\t\t\ttype=\"date\"\n\t\t\t\t\t\t@input=\"onExpirationChange\" />\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"isPublicShare\"\n\t\t\t\t\t\t:disabled=\"canChangeHideDownload\"\n\t\t\t\t\t\t:checked.sync=\"share.hideDownload\"\n\t\t\t\t\t\t@update:checked=\"queueUpdate('hideDownload')\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Hide download') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"!isPublicShare\"\n\t\t\t\t\t\t:disabled=\"!canSetDownload\"\n\t\t\t\t\t\t:checked.sync=\"canDownload\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"download\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Allow download') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"writeNoteToRecipientIsChecked\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Note to recipient') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<template v-if=\"writeNoteToRecipientIsChecked\">\n\t\t\t\t\t\t<label for=\"share-note-textarea\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Enter a note for the share recipient') }}\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<textarea id=\"share-note-textarea\" :value=\"share.note\" @input=\"share.note = $event.target.value\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t<ExternalShareAction v-for=\"action in externalLinkActions\"\n\t\t\t\t\t\t:id=\"action.id\"\n\t\t\t\t\t\tref=\"externalLinkActions\"\n\t\t\t\t\t\t:key=\"action.id\"\n\t\t\t\t\t\t:action=\"action\"\n\t\t\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t\t\t:share=\"share\" />\n\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"setCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Custom permissions') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<section v-if=\"setCustomPermissions\" class=\"custom-permissions-group\">\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :disabled=\"!canRemoveReadPermission\"\n\t\t\t\t\t\t\t:checked.sync=\"hasRead\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"read\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Read') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"isFolder\"\n\t\t\t\t\t\t\t:disabled=\"!canSetCreate\"\n\t\t\t\t\t\t\t:checked.sync=\"canCreate\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"create\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Create') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :disabled=\"!canSetEdit\"\n\t\t\t\t\t\t\t:checked.sync=\"canEdit\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"update\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Edit') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"config.isResharingAllowed && share.type !== ShareType.Link\"\n\t\t\t\t\t\t\t:disabled=\"!canSetReshare\"\n\t\t\t\t\t\t\t:checked.sync=\"canReshare\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"share\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Share') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :disabled=\"!canSetDelete\"\n\t\t\t\t\t\t\t:checked.sync=\"canDelete\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"delete\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Delete') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t</section>\n\t\t\t\t\t<div class=\"sharingTabDetailsView__delete\">\n\t\t\t\t\t\t<NcButton v-if=\"!isNewShare\"\n\t\t\t\t\t\t\t:aria-label=\"t('files_sharing', 'Delete share')\"\n\t\t\t\t\t\t\t:disabled=\"false\"\n\t\t\t\t\t\t\t:readonly=\"false\"\n\t\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t\t@click.prevent=\"removeShare\">\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<CloseIcon :size=\"16\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Delete share') }}\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t</div>\n\t\t\t\t</section>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"sharingTabDetailsView__footer\">\n\t\t\t<div class=\"button-group\">\n\t\t\t\t<NcButton data-cy-files-sharing-share-editor-action=\"cancel\"\n\t\t\t\t\t@click=\"$emit('close-sharing-details')\">\n\t\t\t\t\t{{ t('files_sharing', 'Cancel') }}\n\t\t\t\t</NcButton>\n\t\t\t\t<NcButton type=\"primary\"\n\t\t\t\t\tdata-cy-files-sharing-share-editor-action=\"save\"\n\t\t\t\t\t@click=\"saveShare\">\n\t\t\t\t\t{{ shareButtonText }}\n\t\t\t\t\t<template v-if=\"creating\" #icon>\n\t\t\t\t\t\t<NcLoadingIcon />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport { emit } from '@nextcloud/event-bus'\nimport { getLanguage } from '@nextcloud/l10n'\nimport { ShareType } from '@nextcloud/sharing'\n\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'\nimport NcPasswordField from '@nextcloud/vue/dist/Components/NcPasswordField.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcDateTimePickerNative from '@nextcloud/vue/dist/Components/NcDateTimePickerNative.js'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport NcLoadingIcon from '@nextcloud/vue/dist/Components/NcLoadingIcon.js'\nimport CircleIcon from 'vue-material-design-icons/CircleOutline.vue'\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\nimport EditIcon from 'vue-material-design-icons/Pencil.vue'\nimport EmailIcon from 'vue-material-design-icons/Email.vue'\nimport LinkIcon from 'vue-material-design-icons/Link.vue'\nimport GroupIcon from 'vue-material-design-icons/AccountGroup.vue'\nimport ShareIcon from 'vue-material-design-icons/ShareCircle.vue'\nimport UserIcon from 'vue-material-design-icons/AccountCircleOutline.vue'\nimport ViewIcon from 'vue-material-design-icons/Eye.vue'\nimport UploadIcon from 'vue-material-design-icons/Upload.vue'\nimport MenuDownIcon from 'vue-material-design-icons/MenuDown.vue'\nimport MenuUpIcon from 'vue-material-design-icons/MenuUp.vue'\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\n\nimport ExternalShareAction from '../components/ExternalShareAction.vue'\n\nimport GeneratePassword from '../utils/GeneratePassword.js'\nimport Share from '../models/Share.js'\nimport ShareRequests from '../mixins/ShareRequests.js'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport logger from '../services/logger.ts'\n\nimport {\n\tATOMIC_PERMISSIONS,\n\tBUNDLED_PERMISSIONS,\n\thasPermissions,\n} from '../lib/SharePermissionsToolBox.js'\n\nexport default {\n\tname: 'SharingDetailsTab',\n\tcomponents: {\n\t\tNcAvatar,\n\t\tNcButton,\n\t\tNcInputField,\n\t\tNcPasswordField,\n\t\tNcDateTimePickerNative,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcLoadingIcon,\n\t\tCloseIcon,\n\t\tCircleIcon,\n\t\tEditIcon,\n\t\tExternalShareAction,\n\t\tLinkIcon,\n\t\tGroupIcon,\n\t\tShareIcon,\n\t\tUserIcon,\n\t\tUploadIcon,\n\t\tViewIcon,\n\t\tMenuDownIcon,\n\t\tMenuUpIcon,\n\t\tDotsHorizontalIcon,\n\t},\n\tmixins: [ShareRequests, SharesMixin],\n\tprops: {\n\t\tshareRequestValue: {\n\t\t\ttype: Object,\n\t\t\trequired: false,\n\t\t},\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\twriteNoteToRecipientIsChecked: false,\n\t\t\tsharingPermission: BUNDLED_PERMISSIONS.ALL.toString(),\n\t\t\trevertSharingPermission: BUNDLED_PERMISSIONS.ALL.toString(),\n\t\t\tsetCustomPermissions: false,\n\t\t\tpasswordError: false,\n\t\t\tadvancedSectionAccordionExpanded: false,\n\t\t\tbundledPermissions: BUNDLED_PERMISSIONS,\n\t\t\tisFirstComponentLoad: true,\n\t\t\ttest: false,\n\t\t\tcreating: false,\n\n\t\t\tExternalShareActions: OCA.Sharing.ExternalShareActions.state,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\ttitle() {\n\t\t\tswitch (this.share.type) {\n\t\t\tcase ShareType.User:\n\t\t\t\treturn t('files_sharing', 'Share with {userName}', { userName: this.share.shareWithDisplayName })\n\t\t\tcase ShareType.Email:\n\t\t\t return t('files_sharing', 'Share with email {email}', { email: this.share.shareWith })\n\t\t\tcase ShareType.Link:\n\t\t\t\treturn t('files_sharing', 'Share link')\n\t\t\tcase ShareType.Group:\n\t\t\t\treturn t('files_sharing', 'Share with group')\n\t\t\tcase ShareType.Room:\n\t\t\t\treturn t('files_sharing', 'Share in conversation')\n\t\t\tcase ShareType.Remote: {\n\t\t\t\tconst [user, server] = this.share.shareWith.split('@')\n\t\t\t\treturn t('files_sharing', 'Share with {user} on remote server {server}', { user, server })\n\t\t\t}\n\t\t\tcase ShareType.RemoteGroup:\n\t\t\t\treturn t('files_sharing', 'Share with remote group')\n\t\t\tcase ShareType.Guest:\n\t\t\t\treturn t('files_sharing', 'Share with guest')\n\t\t\tdefault: {\n\t\t\t if (this.share.id) {\n\t\t\t\t\t // Share already exists\n\t\t\t\t\t return t('files_sharing', 'Update share')\n\t\t\t\t } else {\n\t\t\t\t\t return t('files_sharing', 'Create share')\n\t\t\t\t }\n\t\t\t}\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Can the sharee edit the shared file ?\n\t\t */\n\t\tcanEdit: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasUpdatePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isEditChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee create the shared file ?\n\t\t */\n\t\tcanCreate: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasCreatePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isCreateChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee delete the shared file ?\n\t\t */\n\t\tcanDelete: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasDeletePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isDeleteChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee reshare the file ?\n\t\t */\n\t\tcanReshare: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasSharePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isReshareChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee download files or only view them ?\n\t\t */\n\t\tcanDownload: {\n\t\t\tget() {\n\t\t\t\treturn this.share.attributes.find(attr => attr.key === 'download')?.enabled || false\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\t// Find the 'download' attribute and update its value\n\t\t\t\tconst downloadAttr = this.share.attributes.find(attr => attr.key === 'download')\n\t\t\t\tif (downloadAttr) {\n\t\t\t\t\tdownloadAttr.enabled = checked\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is this share readable\n\t\t * Needed for some federated shares that might have been added from file drop links\n\t\t */\n\t\thasRead: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasReadPermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isReadChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Does the current share have an expiration date\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasExpirationDate: {\n\t\t\tget() {\n\t\t\t\treturn this.isValidShareAttribute(this.share.expireDate)\n\t\t\t},\n\t\t\tset(enabled) {\n\t\t\t\tthis.share.expireDate = enabled\n\t\t\t\t\t? this.formatDateToString(this.defaultExpiryDate)\n\t\t\t\t\t: ''\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtected: {\n\t\t\tget() {\n\t\t\t\treturn this.config.enforcePasswordForPublicLink\n\t\t\t\t\t|| !!this.share.password\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tif (enabled) {\n\t\t\t\t\tthis.share.password = await GeneratePassword()\n\t\t\t\t\tthis.$set(this.share, 'newPassword', this.share.password)\n\t\t\t\t} else {\n\t\t\t\t\tthis.share.password = ''\n\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is the current share a folder ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisFolder() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t},\n\t\t/**\n\t\t * @return {boolean}\n\t\t */\n\t\tisSetDownloadButtonVisible() {\n\t\t\tconst allowedMimetypes = [\n\t\t\t\t// Office documents\n\t\t\t\t'application/msword',\n\t\t\t\t'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n\t\t\t\t'application/vnd.ms-powerpoint',\n\t\t\t\t'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n\t\t\t\t'application/vnd.ms-excel',\n\t\t\t\t'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n\t\t\t\t'application/vnd.oasis.opendocument.text',\n\t\t\t\t'application/vnd.oasis.opendocument.spreadsheet',\n\t\t\t\t'application/vnd.oasis.opendocument.presentation',\n\t\t\t]\n\n\t\t\treturn this.isFolder || allowedMimetypes.includes(this.fileInfo.mimetype)\n\t\t},\n\t\tisPasswordEnforced() {\n\t\t\treturn this.isPublicShare && this.config.enforcePasswordForPublicLink\n\t\t},\n\t\tdefaultExpiryDate() {\n\t\t\tif ((this.isGroupShare || this.isUserShare) && this.config.isDefaultInternalExpireDateEnabled) {\n\t\t\t\treturn new Date(this.config.defaultInternalExpirationDate)\n\t\t\t} else if (this.isRemoteShare && this.config.isDefaultRemoteExpireDateEnabled) {\n\t\t\t\treturn new Date(this.config.defaultRemoteExpireDateEnabled)\n\t\t\t} else if (this.isPublicShare && this.config.isDefaultExpireDateEnabled) {\n\t\t\t\treturn new Date(this.config.defaultExpirationDate)\n\t\t\t}\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + 1))\n\t\t},\n\t\tisUserShare() {\n\t\t\treturn this.share.type === ShareType.User\n\t\t},\n\t\tisGroupShare() {\n\t\t\treturn this.share.type === ShareType.Group\n\t\t},\n\t\tisNewShare() {\n\t\t\treturn !this.share.id\n\t\t},\n\t\tallowsFileDrop() {\n\t\t\tif (this.isFolder && this.config.isPublicUploadEnabled) {\n\t\t\t\tif (this.share.type === ShareType.Link || this.share.type === ShareType.Email) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\thasFileDropPermissions() {\n\t\t\treturn this.share.permissions === this.bundledPermissions.FILE_DROP\n\t\t},\n\t\tshareButtonText() {\n\t\t\tif (this.isNewShare) {\n\t\t\t\treturn t('files_sharing', 'Save share')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Update share')\n\n\t\t},\n\t\t/**\n\t\t * Can the sharer set whether the sharee can edit the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetEdit() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_UPDATE) || this.canEdit\n\t\t},\n\n\t\t/**\n\t\t * Can the sharer set whether the sharee can create the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetCreate() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_CREATE) || this.canCreate\n\t\t},\n\n\t\t/**\n\t\t * Can the sharer set whether the sharee can delete the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetDelete() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_DELETE) || this.canDelete\n\t\t},\n\t\t/**\n\t\t * Can the sharer set whether the sharee can reshare the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetReshare() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_SHARE) || this.canReshare\n\t\t},\n\t\t/**\n\t\t * Can the sharer set whether the sharee can download the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetDownload() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.canDownload() || this.canDownload)\n\t\t},\n\t\tcanRemoveReadPermission() {\n\t\t\treturn this.allowsFileDrop && (\n\t\t\t\tthis.share.type === ShareType.Link\n\t\t\t\t\t|| this.share.type === ShareType.Email\n\t\t\t)\n\t\t},\n\t\t// if newPassword exists, but is empty, it means\n\t\t// the user deleted the original password\n\t\thasUnsavedPassword() {\n\t\t\treturn this.share.newPassword !== undefined\n\t\t},\n\t\tpasswordExpirationTime() {\n\t\t\tif (!this.isValidShareAttribute(this.share.passwordExpirationTime)) {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst expirationTime = moment(this.share.passwordExpirationTime)\n\n\t\t\tif (expirationTime.diff(moment()) < 0) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn expirationTime.fromNow()\n\t\t},\n\n\t\t/**\n\t\t * Is Talk enabled?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisTalkEnabled() {\n\t\t\treturn OC.appswebroots.spreed !== undefined\n\t\t},\n\n\t\t/**\n\t\t * Is it possible to protect the password by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalkAvailable() {\n\t\t\treturn this.isPasswordProtected && this.isTalkEnabled\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalk: {\n\t\t\tget() {\n\t\t\t\treturn this.share.sendPasswordByTalk\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tthis.share.sendPasswordByTalk = enabled\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is the current share an email share ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisEmailShareType() {\n\t\t\treturn this.share\n\t\t\t\t? this.share.type === ShareType.Email\n\t\t\t\t: false\n\t\t},\n\t\tcanTogglePasswordProtectedByTalkAvailable() {\n\t\t\tif (!this.isPublicShare || !this.isPasswordProtected) {\n\t\t\t\t// Makes no sense\n\t\t\t\treturn false\n\t\t\t} else if (this.isEmailShareType && !this.hasUnsavedPassword) {\n\t\t\t\t// For email shares we need a new password in order to enable or\n\t\t\t\t// disable\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\t// Is Talk enabled?\n\t\t\treturn OC.appswebroots.spreed !== undefined\n\t\t},\n\t\tcanChangeHideDownload() {\n\t\t\tconst hasDisabledDownload = (shareAttribute) => shareAttribute.key === 'download' && shareAttribute.scope === 'permissions' && shareAttribute.enabled === false\n\t\t\treturn this.fileInfo.shareAttributes.some(hasDisabledDownload)\n\t\t},\n\t\tcustomPermissionsList() {\n\t\t\t// Key order will be different, because ATOMIC_PERMISSIONS are numbers\n\t\t\tconst translatedPermissions = {\n\t\t\t\t[ATOMIC_PERMISSIONS.READ]: this.t('files_sharing', 'Read'),\n\t\t\t\t[ATOMIC_PERMISSIONS.CREATE]: this.t('files_sharing', 'Create'),\n\t\t\t\t[ATOMIC_PERMISSIONS.UPDATE]: this.t('files_sharing', 'Edit'),\n\t\t\t\t[ATOMIC_PERMISSIONS.SHARE]: this.t('files_sharing', 'Share'),\n\t\t\t\t[ATOMIC_PERMISSIONS.DELETE]: this.t('files_sharing', 'Delete'),\n\t\t\t}\n\n\t\t\treturn [ATOMIC_PERMISSIONS.READ, ATOMIC_PERMISSIONS.CREATE, ATOMIC_PERMISSIONS.UPDATE, ATOMIC_PERMISSIONS.SHARE, ATOMIC_PERMISSIONS.DELETE]\n\t\t\t\t.filter((permission) => hasPermissions(this.share.permissions, permission))\n\t\t\t\t.map((permission, index) => index === 0\n\t\t\t\t\t? translatedPermissions[permission]\n\t\t\t\t\t: translatedPermissions[permission].toLocaleLowerCase(getLanguage()))\n\t\t\t\t.join(', ')\n\t\t},\n\t\tadvancedControlExpandedValue() {\n\t\t\treturn this.advancedSectionAccordionExpanded ? 'true' : 'false'\n\t\t},\n\t\terrorPasswordLabel() {\n\t\t\tif (this.passwordError) {\n\t\t\t\treturn t('files_sharing', \"Password field can't be empty\")\n\t\t\t}\n\t\t\treturn undefined\n\t\t},\n\n\t\tpasswordHint() {\n\t\t\tif (this.isNewShare || this.hasUnsavedPassword) {\n\t\t\t\treturn undefined\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Replace current password')\n\t\t},\n\n\t\t/**\n\t\t * Additional actions for the menu\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\texternalLinkActions() {\n\t\t\tconst filterValidAction = (action) => (action.shareType.includes(ShareType.SHARE_TYPE_LINK) || action.shareType.includes(ShareType.SHARE_TYPE_EMAIL)) && action.advanced\n\t\t\t// filter only the advanced registered actions for said link\n\t\t\treturn this.ExternalShareActions.actions\n\t\t\t\t.filter(filterValidAction)\n\t\t},\n\t},\n\twatch: {\n\t\tsetCustomPermissions(isChecked) {\n\t\t\tif (isChecked) {\n\t\t\t\tthis.sharingPermission = 'custom'\n\t\t\t} else {\n\t\t\t\tthis.sharingPermission = this.revertSharingPermission\n\t\t\t}\n\t\t},\n\t},\n\tbeforeMount() {\n\t\tthis.initializePermissions()\n\t\tthis.initializeAttributes()\n\t\tlogger.debug('Share object received', { share: this.share })\n\t\tlogger.debug('Configuration object received', { config: this.config })\n\t},\n\n\tmounted() {\n\t\tthis.$refs.quickPermissions?.querySelector('input:checked')?.focus()\n\t},\n\n\tmethods: {\n\t\tupdateAtomicPermissions({\n\t\t\tisReadChecked = this.hasRead,\n\t\t\tisEditChecked = this.canEdit,\n\t\t\tisCreateChecked = this.canCreate,\n\t\t\tisDeleteChecked = this.canDelete,\n\t\t\tisReshareChecked = this.canReshare,\n\t\t} = {}) {\n\t\t\t// calc permissions if checked\n\t\t\tconst permissions = 0\n\t\t\t\t| (isReadChecked ? ATOMIC_PERMISSIONS.READ : 0)\n\t\t\t\t| (isCreateChecked ? ATOMIC_PERMISSIONS.CREATE : 0)\n\t\t\t\t| (isDeleteChecked ? ATOMIC_PERMISSIONS.DELETE : 0)\n\t\t\t\t| (isEditChecked ? ATOMIC_PERMISSIONS.UPDATE : 0)\n\t\t\t\t| (isReshareChecked ? ATOMIC_PERMISSIONS.SHARE : 0)\n\t\t\tthis.share.permissions = permissions\n\t\t},\n\t\texpandCustomPermissions() {\n\t\t\tif (!this.advancedSectionAccordionExpanded) {\n\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t}\n\t\t\tthis.toggleCustomPermissions()\n\t\t},\n\t\ttoggleCustomPermissions(selectedPermission) {\n\t\t\tconst isCustomPermissions = this.sharingPermission === 'custom'\n\t\t\tthis.revertSharingPermission = !isCustomPermissions ? selectedPermission : 'custom'\n\t\t\tthis.setCustomPermissions = isCustomPermissions\n\t\t},\n\t\tasync initializeAttributes() {\n\n\t\t\tif (this.isNewShare) {\n\t\t\t\tif (this.isPasswordEnforced && this.isPublicShare) {\n\t\t\t\t\tthis.$set(this.share, 'newPassword', await GeneratePassword())\n\t\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\t}\n\t\t\t\t/* Set default expiration dates if configured */\n\t\t\t\tif (this.isPublicShare && this.config.isDefaultExpireDateEnabled) {\n\t\t\t\t\tthis.share.expireDate = this.config.defaultExpirationDate.toDateString()\n\t\t\t\t} else if (this.isRemoteShare && this.config.isDefaultRemoteExpireDateEnabled) {\n\t\t\t\t\tthis.share.expireDate = this.config.defaultRemoteExpirationDateString.toDateString()\n\t\t\t\t} else if (this.config.isDefaultInternalExpireDateEnabled) {\n\t\t\t\t\tthis.share.expireDate = this.config.defaultInternalExpirationDate.toDateString()\n\t\t\t\t}\n\n\t\t\t\tif (this.isValidShareAttribute(this.share.expireDate)) {\n\t\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\t}\n\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// If there is an enforced expiry date, then existing shares created before enforcement\n\t\t\t// have no expiry date, hence we set it here.\n\t\t\tif (!this.isValidShareAttribute(this.share.expireDate) && this.isExpiryDateEnforced) {\n\t\t\t\tthis.hasExpirationDate = true\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tthis.isValidShareAttribute(this.share.password)\n\t\t\t\t|| this.isValidShareAttribute(this.share.expireDate)\n\t\t\t\t|| this.isValidShareAttribute(this.share.label)\n\t\t\t) {\n\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t}\n\n\t\t},\n\t\thandleShareType() {\n\t\t\tif ('shareType' in this.share) {\n\t\t\t\tthis.share.type = this.share.shareType\n\t\t\t} else if (this.share.share_type) {\n\t\t\t\tthis.share.type = this.share.share_type\n\t\t\t}\n\t\t},\n\t\thandleDefaultPermissions() {\n\t\t\tif (this.isNewShare) {\n\t\t\t\tconst defaultPermissions = this.config.defaultPermissions\n\t\t\t\tif (defaultPermissions === BUNDLED_PERMISSIONS.READ_ONLY || defaultPermissions === BUNDLED_PERMISSIONS.ALL) {\n\t\t\t\t\tthis.sharingPermission = defaultPermissions.toString()\n\t\t\t\t} else {\n\t\t\t\t\tthis.sharingPermission = 'custom'\n\t\t\t\t\tthis.share.permissions = defaultPermissions\n\t\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\t\tthis.setCustomPermissions = true\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Read permission required for share creation\n\t\t\tif (!this.canRemoveReadPermission) {\n\t\t\t\tthis.hasRead = true\n\t\t\t}\n\t\t},\n\t\thandleCustomPermissions() {\n\t\t\tif (!this.isNewShare && (this.hasCustomPermissions || this.share.setCustomPermissions)) {\n\t\t\t\tthis.sharingPermission = 'custom'\n\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\tthis.setCustomPermissions = true\n\t\t\t} else if (this.share.permissions) {\n\t\t\t\tthis.sharingPermission = this.share.permissions.toString()\n\t\t\t}\n\t\t},\n\t\tinitializePermissions() {\n\t\t\tthis.handleShareType()\n\t\t\tthis.handleDefaultPermissions()\n\t\t\tthis.handleCustomPermissions()\n\t\t},\n\t\tasync saveShare() {\n\t\t\tconst permissionsAndAttributes = ['permissions', 'attributes', 'note', 'expireDate']\n\t\t\tconst publicShareAttributes = ['label', 'password', 'hideDownload']\n\t\t\tif (this.isPublicShare) {\n\t\t\t\tpermissionsAndAttributes.push(...publicShareAttributes)\n\t\t\t}\n\t\t\tconst sharePermissionsSet = parseInt(this.sharingPermission)\n\t\t\tif (this.setCustomPermissions) {\n\t\t\t\tthis.updateAtomicPermissions()\n\t\t\t} else {\n\t\t\t\tthis.share.permissions = sharePermissionsSet\n\t\t\t}\n\n\t\t\tif (!this.isFolder && this.share.permissions === BUNDLED_PERMISSIONS.ALL) {\n\t\t\t\t// It's not possible to create an existing file.\n\t\t\t\tthis.share.permissions = BUNDLED_PERMISSIONS.ALL_FILE\n\t\t\t}\n\t\t\tif (!this.writeNoteToRecipientIsChecked) {\n\t\t\t\tthis.share.note = ''\n\t\t\t}\n\t\t\tif (this.isPasswordProtected) {\n\t\t\t\tif (this.hasUnsavedPassword && this.isValidShareAttribute(this.share.newPassword)) {\n\t\t\t\t\tthis.share.password = this.share.newPassword\n\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t\t} else if (this.isPasswordEnforced && this.isNewShare && !this.isValidShareAttribute(this.share.password)) {\n\t\t\t\t\tthis.passwordError = true\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.share.password = ''\n\t\t\t}\n\n\t\t\tif (!this.hasExpirationDate) {\n\t\t\t\tthis.share.expireDate = ''\n\t\t\t}\n\n\t\t\tif (this.isNewShare) {\n\t\t\t\tconst incomingShare = {\n\t\t\t\t\tpermissions: this.share.permissions,\n\t\t\t\t\tshareType: this.share.type,\n\t\t\t\t\tshareWith: this.share.shareWith,\n\t\t\t\t\tattributes: this.share.attributes,\n\t\t\t\t\tnote: this.share.note,\n\t\t\t\t\tfileInfo: this.fileInfo,\n\t\t\t\t}\n\n\t\t\t\tincomingShare.expireDate = this.hasExpirationDate ? this.share.expireDate : ''\n\n\t\t\t\tif (this.isPasswordProtected) {\n\t\t\t\t\tincomingShare.password = this.share.password\n\t\t\t\t}\n\n\t\t\t\tthis.creating = true\n\t\t\t\tconst share = await this.addShare(incomingShare)\n\t\t\t\tthis.creating = false\n\t\t\t\tthis.share = share\n\t\t\t\tthis.$emit('add:share', this.share)\n\t\t\t} else {\n\t\t\t\tthis.$emit('update:share', this.share)\n\t\t\t\tthis.queueUpdate(...permissionsAndAttributes)\n\t\t\t}\n\n\t\t\tawait this.getNode()\n\t\t\temit('files:node:updated', this.node)\n\n\t\t\tif (this.$refs.externalLinkActions?.length > 0) {\n\t\t\t\tawait Promise.allSettled(this.$refs.externalLinkActions.map((action) => {\n\t\t\t\t\tif (typeof action.$children.at(0)?.onSave !== 'function') {\n\t\t\t\t\t\treturn Promise.resolve()\n\t\t\t\t\t}\n\t\t\t\t\treturn action.$children.at(0)?.onSave?.()\n\t\t\t\t}))\n\t\t\t}\n\n\t\t\tthis.$emit('close-sharing-details')\n\t\t},\n\t\t/**\n\t\t * Process the new share request\n\t\t *\n\t\t * @param {Share} share incoming share object\n\t\t */\n\t\tasync addShare(share) {\n\t\t\tlogger.debug('Adding a new share from the input for', { share })\n\t\t\tconst path = this.path\n\t\t\ttry {\n\t\t\t\tconst resultingShare = await this.createShare({\n\t\t\t\t\tpath,\n\t\t\t\t\tshareType: share.shareType,\n\t\t\t\t\tshareWith: share.shareWith,\n\t\t\t\t\tpermissions: share.permissions,\n\t\t\t\t\texpireDate: share.expireDate,\n\t\t\t\t\tattributes: JSON.stringify(share.attributes),\n\t\t\t\t\t...(share.note ? { note: share.note } : {}),\n\t\t\t\t\t...(share.password ? { password: share.password } : {}),\n\t\t\t\t})\n\t\t\t\treturn resultingShare\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error while adding new share', { error })\n\t\t\t} finally {\n\t\t\t\t// this.loading = false // No loader here yet\n\t\t\t}\n\t\t},\n\t\tasync removeShare() {\n\t\t\tawait this.onDelete()\n\t\t\tawait this.getNode()\n\t\t\temit('files:node:updated', this.node)\n\t\t\tthis.$emit('close-sharing-details')\n\t\t},\n\t\t/**\n\t\t * Update newPassword values\n\t\t * of share. If password is set but not newPassword\n\t\t * then the user did not changed the password\n\t\t * If both co-exists, the password have changed and\n\t\t * we show it in plain text.\n\t\t * Then on submit (or menu close), we sync it.\n\t\t *\n\t\t * @param {string} password the changed password\n\t\t */\n\t\tonPasswordChange(password) {\n\t\t\tif (password === '') {\n\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t\tthis.passwordError = this.isNewShare && this.isPasswordEnforced\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.passwordError = !this.isValidShareAttribute(password)\n\t\t\tthis.$set(this.share, 'newPassword', password)\n\t\t},\n\t\t/**\n\t\t * Update the password along with \"sendPasswordByTalk\".\n\t\t *\n\t\t * If the password was modified the new password is sent; otherwise\n\t\t * updating a mail share would fail, as in that case it is required that\n\t\t * a new password is set when enabling or disabling\n\t\t * \"sendPasswordByTalk\".\n\t\t */\n\t\tonPasswordProtectedByTalkChange() {\n\t\t\tif (this.hasUnsavedPassword) {\n\t\t\t\tthis.share.password = this.share.newPassword.trim()\n\t\t\t}\n\n\t\t\tthis.queueUpdate('sendPasswordByTalk', 'password')\n\t\t},\n\t\tisValidShareAttribute(value) {\n\t\t\tif ([null, undefined].includes(value)) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tif (!(value.trim().length > 0)) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn true\n\t\t},\n\t\tgetShareTypeIcon(type) {\n\t\t\tswitch (type) {\n\t\t\tcase ShareType.Link:\n\t\t\t\treturn LinkIcon\n\t\t\tcase ShareType.Guest:\n\t\t\t\treturn UserIcon\n\t\t\tcase ShareType.RemoteGroup:\n\t\t\tcase ShareType.Group:\n\t\t\t\treturn GroupIcon\n\t\t\tcase ShareType.Email:\n\t\t\t\treturn EmailIcon\n\t\t\tcase ShareType.Team:\n\t\t\t\treturn CircleIcon\n\t\t\tcase ShareType.Room:\n\t\t\t\treturn ShareIcon\n\t\t\tcase ShareType.Deck:\n\t\t\t\treturn ShareIcon\n\t\t\tcase ShareType.ScienceMesh:\n\t\t\t\treturn ShareIcon\n\t\t\tdefault:\n\t\t\t\treturn null // Or a default icon component if needed\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharingTabDetailsView {\n\tdisplay: flex;\n\tflex-direction: column;\n\twidth: 100%;\n\tmargin: 0 auto;\n\tposition: relative;\n\theight: 100%;\n\toverflow: hidden;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tbox-sizing: border-box;\n\t\tmargin: 0.2em;\n\n\t\tspan {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\th1 {\n\t\t\t\tfont-size: 15px;\n\t\t\t\tpadding-left: 0.3em;\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\toverflow: scroll;\n\t\tflex-shrink: 1;\n\t\tpadding: 4px;\n\t\tpadding-right: 12px;\n\t}\n\n\t&__quick-permissions {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\tmargin: 0 auto;\n\t\tborder-radius: 0;\n\n\t\tdiv {\n\t\t\twidth: 100%;\n\n\t\t\tspan {\n\t\t\t\twidth: 100%;\n\n\t\t\t\tspan:nth-child(1) {\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tjustify-content: center;\n\t\t\t\t\tpadding: 0.1em;\n\t\t\t\t}\n\n\t\t\t\t::v-deep label {\n\n\t\t\t\t\tspan {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-direction: column;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\n\t\t\t\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\n\t\t\t\t\tflex-wrap: wrap;\n\n\t\t\t\t\t.subline {\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\tflex-basis: 100%;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__advanced-control {\n\t\twidth: 100%;\n\n\t\tbutton {\n\t\t\tmargin-top: 0.5em;\n\t\t}\n\n\t}\n\n\t&__advanced {\n\t\twidth: 100%;\n\t\tmargin-bottom: 0.5em;\n\t\ttext-align: left;\n\t\tpadding-left: 0;\n\n\t\tsection {\n\n\t\t\ttextarea,\n\t\t\tdiv.mx-datepicker {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttextarea {\n\t\t\t\theight: 80px;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t/*\n The following style is applied out of the component's scope\n to remove padding from the label.checkbox-radio-switch__label,\n which is used to group radio checkbox items. The use of ::v-deep\n ensures that the padding is modified without being affected by\n the component's scoping.\n Without this achieving left alignment for the checkboxes would not\n be possible.\n */\n\t\t\tspan {\n\t\t\t\t::v-deep label {\n\t\t\t\t\tpadding-left: 0 !important;\n\t\t\t\t\tbackground-color: initial !important;\n\t\t\t\t\tborder: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsection.custom-permissions-group {\n\t\t\t\tpadding-left: 1.5em;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__delete {\n\t\t>button:first-child {\n\t\t\tcolor: rgb(223, 7, 7);\n\t\t}\n\t}\n\n\t&__footer {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\talign-items: flex-start;\n\t\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\n\n\t\t.button-group {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t\tmargin-top: 16px;\n\n\t\t\tbutton {\n\t\t\t\tmargin-left: 16px;\n\n\t\t\t\t&:first-child {\n\t\t\t\t\tmargin-left: 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=style&index=0&id=c452153e&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=style&index=0&id=c452153e&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingDetailsTab.vue?vue&type=template&id=c452153e&scoped=true\"\nimport script from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingDetailsTab.vue?vue&type=style&index=0&id=c452153e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c452153e\",\n null\n \n)\n\nexport default component.exports","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div class=\"sharingTab\" :class=\"{ 'icon-loading': loading }\">\n\t\t<!-- error message -->\n\t\t<div v-if=\"error\" class=\"emptycontent\" :class=\"{ emptyContentWithSections: sections.length > 0 }\">\n\t\t\t<div class=\"icon icon-error\" />\n\t\t\t<h2>{{ error }}</h2>\n\t\t</div>\n\n\t\t<!-- shares content -->\n\t\t<div v-show=\"!showSharingDetailsView\"\n\t\t\tclass=\"sharingTab__content\">\n\t\t\t<!-- shared with me information -->\n\t\t\t<ul>\n\t\t\t\t<SharingEntrySimple v-if=\"isSharedWithMe\" v-bind=\"sharedWithMe\" class=\"sharing-entry__reshare\">\n\t\t\t\t\t<template #avatar>\n\t\t\t\t\t\t<NcAvatar :user=\"sharedWithMe.user\"\n\t\t\t\t\t\t\t:display-name=\"sharedWithMe.displayName\"\n\t\t\t\t\t\t\tclass=\"sharing-entry__avatar\" />\n\t\t\t\t\t</template>\n\t\t\t\t</SharingEntrySimple>\n\t\t\t</ul>\n\n\t\t\t<!-- add new share input -->\n\t\t\t<SharingInput v-if=\"!loading\"\n\t\t\t\t:can-reshare=\"canReshare\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t:link-shares=\"linkShares\"\n\t\t\t\t:reshare=\"reshare\"\n\t\t\t\t:shares=\"shares\"\n\t\t\t\t@open-sharing-details=\"toggleShareDetailsView\" />\n\n\t\t\t<!-- link shares list -->\n\t\t\t<SharingLinkList v-if=\"!loading\"\n\t\t\t\tref=\"linkShareList\"\n\t\t\t\t:can-reshare=\"canReshare\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t:shares=\"linkShares\"\n\t\t\t\t@open-sharing-details=\"toggleShareDetailsView\" />\n\n\t\t\t<!-- other shares list -->\n\t\t\t<SharingList v-if=\"!loading\"\n\t\t\t\tref=\"shareList\"\n\t\t\t\t:shares=\"shares\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t@open-sharing-details=\"toggleShareDetailsView\" />\n\n\t\t\t<!-- inherited shares -->\n\t\t\t<SharingInherited v-if=\"canReshare && !loading\" :file-info=\"fileInfo\" />\n\n\t\t\t<!-- internal link copy -->\n\t\t\t<SharingEntryInternal :file-info=\"fileInfo\" />\n\n\t\t\t<!-- projects -->\n\t\t\t<CollectionList v-if=\"projectsEnabled && fileInfo\"\n\t\t\t\t:id=\"`${fileInfo.id}`\"\n\t\t\t\ttype=\"file\"\n\t\t\t\t:name=\"fileInfo.name\" />\n\t\t</div>\n\n\t\t<!-- additional entries, use it with cautious -->\n\t\t<div v-for=\"(section, index) in sections\"\n\t\t\tv-show=\"!showSharingDetailsView\"\n\t\t\t:ref=\"'section-' + index\"\n\t\t\t:key=\"index\"\n\t\t\tclass=\"sharingTab__additionalContent\">\n\t\t\t<component :is=\"section($refs['section-'+index], fileInfo)\" :file-info=\"fileInfo\" />\n\t\t</div>\n\n\t\t<!-- share details -->\n\t\t<SharingDetailsTab v-if=\"showSharingDetailsView\"\n\t\t\t:file-info=\"shareDetailsData.fileInfo\"\n\t\t\t:share=\"shareDetailsData.share\"\n\t\t\t@close-sharing-details=\"toggleShareDetailsView\"\n\t\t\t@add:share=\"addShare\"\n\t\t\t@remove:share=\"removeShare\" />\n\t</div>\n</template>\n\n<script>\nimport { CollectionList } from 'nextcloud-vue-collections'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { ShareType } from '@nextcloud/sharing'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport axios from '@nextcloud/axios'\nimport { loadState } from '@nextcloud/initial-state'\n\nimport Config from '../services/ConfigService.js'\nimport { shareWithTitle } from '../utils/SharedWithMe.js'\nimport Share from '../models/Share.js'\nimport SharingEntryInternal from '../components/SharingEntryInternal.vue'\nimport SharingEntrySimple from '../components/SharingEntrySimple.vue'\nimport SharingInput from '../components/SharingInput.vue'\n\nimport SharingInherited from './SharingInherited.vue'\nimport SharingLinkList from './SharingLinkList.vue'\nimport SharingList from './SharingList.vue'\nimport SharingDetailsTab from './SharingDetailsTab.vue'\n\nexport default {\n\tname: 'SharingTab',\n\n\tcomponents: {\n\t\tNcAvatar,\n\t\tCollectionList,\n\t\tSharingEntryInternal,\n\t\tSharingEntrySimple,\n\t\tSharingInherited,\n\t\tSharingInput,\n\t\tSharingLinkList,\n\t\tSharingList,\n\t\tSharingDetailsTab,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tdeleteEvent: null,\n\t\t\terror: '',\n\t\t\texpirationInterval: null,\n\t\t\tloading: true,\n\n\t\t\tfileInfo: null,\n\n\t\t\t// reshare Share object\n\t\t\treshare: null,\n\t\t\tsharedWithMe: {},\n\t\t\tshares: [],\n\t\t\tlinkShares: [],\n\n\t\t\tsections: OCA.Sharing.ShareTabSections.getSections(),\n\t\t\tprojectsEnabled: loadState('core', 'projects_enabled', false),\n\t\t\tshowSharingDetailsView: false,\n\t\t\tshareDetailsData: {},\n\t\t\treturnFocusElement: null,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Is this share shared with me?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisSharedWithMe() {\n\t\t\treturn Object.keys(this.sharedWithMe).length > 0\n\t\t},\n\n\t\tcanReshare() {\n\t\t\treturn !!(this.fileInfo.permissions & OC.PERMISSION_SHARE)\n\t\t\t\t|| !!(this.reshare && this.reshare.hasSharePermission && this.config.isResharingAllowed)\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Update current fileInfo and fetch new data\n\t\t *\n\t\t * @param {object} fileInfo the current file FileInfo\n\t\t */\n\t\tasync update(fileInfo) {\n\t\t\tthis.fileInfo = fileInfo\n\t\t\tthis.resetState()\n\t\t\tthis.getShares()\n\t\t},\n\n\t\t/**\n\t\t * Get the existing shares infos\n\t\t */\n\t\tasync getShares() {\n\t\t\ttry {\n\t\t\t\tthis.loading = true\n\n\t\t\t\t// init params\n\t\t\t\tconst shareUrl = generateOcsUrl('apps/files_sharing/api/v1/shares')\n\t\t\t\tconst format = 'json'\n\t\t\t\t// TODO: replace with proper getFUllpath implementation of our own FileInfo model\n\t\t\t\tconst path = (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\n\t\t\t\t// fetch shares\n\t\t\t\tconst fetchShares = axios.get(shareUrl, {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat,\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\treshares: true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tconst fetchSharedWithMe = axios.get(shareUrl, {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat,\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\tshared_with_me: true,\n\t\t\t\t\t},\n\t\t\t\t})\n\n\t\t\t\t// wait for data\n\t\t\t\tconst [shares, sharedWithMe] = await Promise.all([fetchShares, fetchSharedWithMe])\n\t\t\t\tthis.loading = false\n\n\t\t\t\t// process results\n\t\t\t\tthis.processSharedWithMe(sharedWithMe)\n\t\t\t\tthis.processShares(shares)\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response.data?.ocs?.meta?.message) {\n\t\t\t\t\tthis.error = error.response.data.ocs.meta.message\n\t\t\t\t} else {\n\t\t\t\t\tthis.error = t('files_sharing', 'Unable to load the shares list')\n\t\t\t\t}\n\t\t\t\tthis.loading = false\n\t\t\t\tconsole.error('Error loading the shares list', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Reset the current view to its default state\n\t\t */\n\t\tresetState() {\n\t\t\tclearInterval(this.expirationInterval)\n\t\t\tthis.loading = true\n\t\t\tthis.error = ''\n\t\t\tthis.sharedWithMe = {}\n\t\t\tthis.shares = []\n\t\t\tthis.linkShares = []\n\t\t\tthis.showSharingDetailsView = false\n\t\t\tthis.shareDetailsData = {}\n\t\t},\n\n\t\t/**\n\t\t * Update sharedWithMe.subtitle with the appropriate\n\t\t * expiration time left\n\t\t *\n\t\t * @param {Share} share the sharedWith Share object\n\t\t */\n\t\tupdateExpirationSubtitle(share) {\n\t\t\tconst expiration = moment(share.expireDate).unix()\n\t\t\tthis.$set(this.sharedWithMe, 'subtitle', t('files_sharing', 'Expires {relativetime}', {\n\t\t\t\trelativetime: OC.Util.relativeModifiedDate(expiration * 1000),\n\t\t\t}))\n\n\t\t\t// share have expired\n\t\t\tif (moment().unix() > expiration) {\n\t\t\t\tclearInterval(this.expirationInterval)\n\t\t\t\t// TODO: clear ui if share is expired\n\t\t\t\tthis.$set(this.sharedWithMe, 'subtitle', t('files_sharing', 'this share just expired.'))\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Process the current shares data\n\t\t * and init shares[]\n\t\t *\n\t\t * @param {object} share the share ocs api request data\n\t\t * @param {object} share.data the request data\n\t\t */\n\t\tprocessShares({ data }) {\n\t\t\tif (data.ocs && data.ocs.data && data.ocs.data.length > 0) {\n\t\t\t\t// create Share objects and sort by newest\n\t\t\t\tconst shares = data.ocs.data\n\t\t\t\t\t.map(share => new Share(share))\n\t\t\t\t\t.sort((a, b) => b.createdTime - a.createdTime)\n\n\t\t\t\tthis.linkShares = shares.filter(share => share.type === ShareType.Link || share.type === ShareType.Email)\n\t\t\t\tthis.shares = shares.filter(share => share.type !== ShareType.Link && share.type !== ShareType.Email)\n\n\t\t\t\tconsole.debug('Processed', this.linkShares.length, 'link share(s)')\n\t\t\t\tconsole.debug('Processed', this.shares.length, 'share(s)')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Process the sharedWithMe share data\n\t\t * and init sharedWithMe\n\t\t *\n\t\t * @param {object} share the share ocs api request data\n\t\t * @param {object} share.data the request data\n\t\t */\n\t\tprocessSharedWithMe({ data }) {\n\t\t\tif (data.ocs && data.ocs.data && data.ocs.data[0]) {\n\t\t\t\tconst share = new Share(data)\n\t\t\t\tconst title = shareWithTitle(share)\n\t\t\t\tconst displayName = share.ownerDisplayName\n\t\t\t\tconst user = share.owner\n\n\t\t\t\tthis.sharedWithMe = {\n\t\t\t\t\tdisplayName,\n\t\t\t\t\ttitle,\n\t\t\t\t\tuser,\n\t\t\t\t}\n\t\t\t\tthis.reshare = share\n\n\t\t\t\t// If we have an expiration date, use it as subtitle\n\t\t\t\t// Refresh the status every 10s and clear if expired\n\t\t\t\tif (share.expireDate && moment(share.expireDate).unix() > moment().unix()) {\n\t\t\t\t\t// first update\n\t\t\t\t\tthis.updateExpirationSubtitle(share)\n\t\t\t\t\t// interval update\n\t\t\t\t\tthis.expirationInterval = setInterval(this.updateExpirationSubtitle, 10000, share)\n\t\t\t\t}\n\t\t\t} else if (this.fileInfo && this.fileInfo.shareOwnerId !== undefined ? this.fileInfo.shareOwnerId !== OC.currentUser : false) {\n\t\t\t\t// Fallback to compare owner and current user.\n\t\t\t\tthis.sharedWithMe = {\n\t\t\t\t\tdisplayName: this.fileInfo.shareOwner,\n\t\t\t\t\ttitle: t(\n\t\t\t\t\t\t'files_sharing',\n\t\t\t\t\t\t'Shared with you by {owner}',\n\t\t\t\t\t\t{ owner: this.fileInfo.shareOwner },\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t{ escape: false },\n\t\t\t\t\t),\n\t\t\t\t\tuser: this.fileInfo.shareOwnerId,\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Add a new share into the shares list\n\t\t * and return the newly created share component\n\t\t *\n\t\t * @param {Share} share the share to add to the array\n\t\t * @param {Function} [resolve] a function to run after the share is added and its component initialized\n\t\t */\n\t\taddShare(share, resolve = () => { }) {\n\t\t\t// only catching share type MAIL as link shares are added differently\n\t\t\t// meaning: not from the ShareInput\n\t\t\tif (share.type === ShareType.Email) {\n\t\t\t\tthis.linkShares.unshift(share)\n\t\t\t} else {\n\t\t\t\tthis.shares.unshift(share)\n\t\t\t}\n\t\t\tthis.awaitForShare(share, resolve)\n\t\t},\n\t\t/**\n\t\t * Remove a share from the shares list\n\t\t *\n\t\t * @param {Share} share the share to remove\n\t\t */\n\t\tremoveShare(share) {\n\t\t\t// Get reference for this.linkShares or this.shares\n\t\t\tconst shareList\n\t\t\t\t= share.type === ShareType.Email\n\t\t\t\t\t|| share.type === ShareType.Link\n\t\t\t\t\t? this.linkShares\n\t\t\t\t\t: this.shares\n\t\t\tconst index = shareList.findIndex(item => item.id === share.id)\n\t\t\tif (index !== -1) {\n\t\t\t\tshareList.splice(index, 1)\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Await for next tick and render after the list updated\n\t\t * Then resolve with the matched vue component of the\n\t\t * provided share object\n\t\t *\n\t\t * @param {Share} share newly created share\n\t\t * @param {Function} resolve a function to execute after\n\t\t */\n\t\tawaitForShare(share, resolve) {\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tlet listComponent = this.$refs.shareList\n\t\t\t\t// Only mail shares comes from the input, link shares\n\t\t\t\t// are managed internally in the SharingLinkList component\n\t\t\t\tif (share.type === ShareType.Email) {\n\t\t\t\t\tlistComponent = this.$refs.linkShareList\n\t\t\t\t}\n\t\t\t\tconst newShare = listComponent.$children.find(component => component.share === share)\n\t\t\t\tif (newShare) {\n\t\t\t\t\tresolve(newShare)\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t\ttoggleShareDetailsView(eventData) {\n\t\t\tif (!this.showSharingDetailsView) {\n\t\t\t\tconst isAction = Array.from(document.activeElement.classList)\n\t\t\t\t\t.some(className => className.startsWith('action-'))\n\t\t\t\tif (isAction) {\n\t\t\t\t\tconst menuId = document.activeElement.closest('[role=\"menu\"]')?.id\n\t\t\t\t\tthis.returnFocusElement = document.querySelector(`[aria-controls=\"${menuId}\"]`)\n\t\t\t\t} else {\n\t\t\t\t\tthis.returnFocusElement = document.activeElement\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (eventData) {\n\t\t\t\tthis.shareDetailsData = eventData\n\t\t\t}\n\n\t\t\tthis.showSharingDetailsView = !this.showSharingDetailsView\n\n\t\t\tif (!this.showSharingDetailsView) {\n\t\t\t\tthis.$nextTick(() => { // Wait for next tick as the element must be visible to be focused\n\t\t\t\t\tthis.returnFocusElement?.focus()\n\t\t\t\t\tthis.returnFocusElement = null\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.emptyContentWithSections {\n\tmargin: 1rem auto;\n}\n\n.sharingTab {\n\tposition: relative;\n\theight: 100%;\n\n\t&__content {\n\t\tpadding: 0 6px;\n\t}\n\n\t&__additionalContent {\n\t\tmargin: 44px 0;\n\t}\n}\n</style>\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { ShareType } from '@nextcloud/sharing'\n\nconst shareWithTitle = function(share) {\n\tif (share.type === ShareType.Group) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and the group {group} by {owner}',\n\t\t\t{\n\t\t\t\tgroup: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareType.Team) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and {circle} by {owner}',\n\t\t\t{\n\t\t\t\tcircle: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareType.Room) {\n\t\tif (share.shareWithDisplayName) {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you and the conversation {conversation} by {owner}',\n\t\t\t\t{\n\t\t\t\t\tconversation: share.shareWithDisplayName,\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t} else {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you in a conversation by {owner}',\n\t\t\t\t{\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t}\n\t} else {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you by {owner}',\n\t\t\t{ owner: share.ownerDisplayName },\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t}\n}\n\nexport { shareWithTitle }\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=style&index=0&id=1fa88ab1&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=style&index=0&id=1fa88ab1&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingTab.vue?vue&type=template&id=1fa88ab1&scoped=true\"\nimport script from \"./SharingTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingTab.vue?vue&type=style&index=0&id=1fa88ab1&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1fa88ab1\",\n null\n \n)\n\nexport default component.exports"],"names":["module","exports","commonjsRequire","Error","qrcode","fn","createCommonjsModule","f","r","e","n","t","o","i","u","a","code","p","call","length","require","Promise","prototype","then","getSymbolSize","getRowColCoords","version","posCount","Math","floor","size","intervals","ceil","positions","push","reverse","getPositions","coords","pos","posLength","j","Mode","ALPHA_NUM_CHARS","AlphanumericData","data","this","mode","ALPHANUMERIC","getBitsLength","getLength","write","bitBuffer","value","indexOf","put","BitBuffer","buffer","get","index","bufIndex","num","putBit","getLengthInBits","bit","BufferUtil","BitMatrix","alloc","reservedBit","set","row","col","reserved","xor","isReserved","ByteData","BYTE","from","l","ECLevel","EC_BLOCKS_TABLE","EC_CODEWORDS_TABLE","getBlocksCount","errorCorrectionLevel","L","M","Q","H","getTotalCodewordsCount","isValid","level","defaultValue","string","toLowerCase","fromString","Utils","G15_BCH","getBCHDigit","getEncodedBits","mask","d","EXP_TABLE","LOG_TABLE","x","log","exp","mul","y","KanjiData","KANJI","toSJIS","Patterns","PATTERN000","PATTERN001","PATTERN010","PATTERN011","PATTERN100","PATTERN101","PATTERN110","PATTERN111","PenaltyScores","getMaskAt","maskPattern","isNaN","parseInt","undefined","getPenaltyN1","points","sameCountCol","sameCountRow","lastCol","lastRow","getPenaltyN2","last","getPenaltyN3","bitsCol","bitsRow","getPenaltyN4","darkCount","modulesCount","abs","applyMask","pattern","getBestMask","setupFormatFunc","numPatterns","Object","keys","bestPattern","lowerPenalty","Infinity","penalty","VersionCheck","Regex","NUMERIC","id","ccBits","MIXED","getCharCountIndicator","getBestModeForData","dataStr","testNumeric","testAlphanumeric","testKanji","toString","NumericData","group","substr","remainingNum","GF","p1","p2","coeff","mod","divident","divisor","result","offset","slice","generateECPolynomial","degree","poly","AlignmentPattern","FinderPattern","MaskPattern","ECCode","ReedSolomonEncoder","Version","FormatInfo","Segments","isArray","setupFormatInfo","matrix","bits","createData","segments","forEach","dataTotalCodewordsBits","getSymbolTotalCodewords","remainingByte","totalCodewords","dataTotalCodewords","ecTotalBlocks","blocksInGroup1","totalCodewordsInGroup1","dataCodewordsInGroup1","dataCodewordsInGroup2","ecCount","rs","dcData","Array","ecData","maxDataSize","b","dataSize","encode","max","createCodewords","createSymbol","fromArray","estimatedVersion","rawSegments","rawSplit","getBestVersionForData","bestVersion","dataBits","moduleCount","modules","c","setupFinderPattern","setupTimingPattern","setupAlignmentPattern","setupVersionInfo","inc","bitIndex","byteIndex","dark","setupData","bind","create","options","toSJISFunc","setToSJISFunction","Polynomial","Buffer","genPoly","initialize","pad","paddedData","concat","remainder","start","buff","copy","numeric","kanji","byte","replace","RegExp","BYTE_KANJI","TEST_KANJI","TEST_NUMERIC","TEST_ALPHANUMERIC","str","test","dijkstra","getStringByteLength","unescape","encodeURIComponent","getSegments","regex","exec","getSegmentsFromString","byteSegs","kanjiSegs","numSegs","alphaNumSegs","isKanjiModeEnabled","sort","s1","s2","map","obj","getSegmentBitsLength","buildSingleSegment","modesHint","bestMode","array","reduce","acc","seg","graph","nodes","table","prevNodeIds","nodeGroup","currentNodeIds","node","key","lastCount","prevNodeId","buildGraph","segs","buildNodes","path","find_path","optimizedSegs","curr","prevSeg","toSJISFunction","CODEWORDS_COUNT","digit","G18_BCH","getReservedBitsCount","getTotalBitsFromDataArray","totalBits","reservedBits","getCapacity","usableBits","ecl","currentVersion","getBestVersionForMixedData","getBestVersionForDataLength","canPromise","QRCode","CanvasRenderer","SvgRenderer","renderCanvas","renderFunc","canvas","text","opts","cb","args","arguments","argsNum","isLastArgCb","getContext","resolve","reject","toCanvas","render","toDataURL","renderToDataURL","_","qrData","canvasEl","document","createElement","getCanvasElement","getOptions","getImageWidth","ctx","image","createImageData","qrToImageData","clearRect","width","height","style","clearCanvas","putImageData","type","rendererOpts","quality","getColorAttrib","color","attrib","alpha","hex","toFixed","svgCmd","cmd","qrcodesize","margin","bg","light","moveBy","newRow","lineLength","qrToPath","viewBox","svgTag","hex2rgba","hexCode","split","apply","hexValue","join","g","scale","getScale","qrSize","imgData","qr","symbolSize","scaledMargin","palette","posDst","pxColor","TYPED_ARRAY_SUPPORT","arr","Uint8Array","__proto__","foo","typedArraySupport","K_MAX_LENGTH","arg","allocUnsafe","that","TypeError","ArrayBuffer","byteOffset","byteLength","RangeError","buf","fromArrayLike","fromArrayBuffer","createBuffer","actual","isBuffer","len","checked","val","fromObject","utf8ToBytes","units","codePoint","leadSurrogate","bytes","charCodeAt","isView","Symbol","species","defineProperty","configurable","enumerable","writable","isFinite","remaining","src","dst","blitBuffer","utf8Write","end","newBuf","subarray","sliceLen","target","targetStart","fill","list","_isBuffer","b64","lens","getLens","validLen","placeHoldersLen","toByteArray","tmp","Arr","_byteLength","curByte","revLookup","fromByteArray","uint8","extraBytes","parts","maxChunkLength","len2","encodeChunk","lookup","output","base64","ieee754","customInspectSymbol","for","SlowBuffer","INSPECT_MAX_BYTES","setPrototypeOf","encodingOrOffset","encoding","isEncoding","isInstance","valueOf","numberIsNaN","toPrimitive","assertSize","mustMatch","loweredCase","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","m","bidirectionalIndexOf","dir","arrayIndexOf","lastIndexOf","indexSize","arrLength","valLength","String","read","readUInt16BE","foundIndex","found","hexWrite","Number","strLen","parsed","asciiWrite","byteArray","asciiToBytes","latin1Write","base64Write","ucs2Write","hi","lo","utf16leToBytes","min","res","secondByte","thirdByte","fourthByte","tempCodePoint","firstByte","bytesPerSequence","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","kMaxLength","proto","console","error","poolSize","allocUnsafeSlow","compare","swap16","swap32","swap64","toLocaleString","equals","inspect","trim","thisStart","thisEnd","thisCopy","targetCopy","includes","toJSON","_arr","ret","out","hexSliceLookupTable","checkOffset","ext","checkInt","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","readUIntLE","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","writeUIntBE","writeUInt8","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","copyWithin","INVALID_BASE64_RE","base64clean","constructor","name","alphabet","i16","single_source_shortest_paths","s","predecessors","costs","closest","v","cost_of_s_to_u","adjacent_nodes","cost_of_s_to_u_plus_cost_of_e","cost_of_s_to_v","open","PriorityQueue","make","empty","pop","cost","hasOwnProperty","msg","extract_shortest_path_from_predecessor_list","T","queue","sorter","default_sorter","item","shift","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","NaN","rt","LN2","props","tag","default","$slots","watch","$props","deep","immediate","handler","$el","generate","methods","_this","url","innerHTML","mounted","factory","___CSS_LOADER_EXPORT___","params","assign","ocsVersion","window","location","protocol","host","getRootUrl","_generateUrlPath","allOptions","escape","charAt","vars","webroot","_oc_webroot","pathname","self","ampersandTest","nativeURLSearchParams","URLSearchParams","isSupportObjectConstructor","decodesPlusesCorrectly","isSupportSize","__URLSearchParams__","encodesAmpersandsCorrectly","append","URLSearchParamsPolyfill","iterable","iterator","appendTo","dict","has","getAll","query","propValue","useProxy","Proxy","construct","Function","USPProto","polyfill","toStringTag","callback","thisArg","parseToDict","getOwnPropertyNames","k","values","items","makeIterator","entries","prev","cur","search","match","decode","decodeURIComponent","next","done","pairs","JSON","stringify","prop","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","global","freeSelf","Date","now","reWhitespace","reTrimStart","objectProto","nativeObjectToString","symToStringTag","isOwn","unmasked","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","other","isBinary","nativeMax","nativeMin","http","listCollection","collectionId","renameCollection","collectionName","ocs","getCollectionsByResource","resourceType","resourceId","createCollection","post","addResource","removeResource","delete","observable","collections","h","addCollections","addCollection","removeCollection","filter","updateCollection","findIndex","fetchCollectionsByResource","baseResourceType","baseResourceId","addResourceToCollection","resources","R","I","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","N","C","beforeCreate","components","NcAvatar","NcActions","NcActionButton","collection","detailsOpen","newName","computed","getIcon","iconClass","typeClass","limitedResources","iconUrl","mimetype","OC","MimeType","getIconUrl","toggleDetails","showDetails","hideDetails","openRename","catch","$set","setTimeout","_self","_c","staticClass","attrs","title","on","click","_v","_s","class","shouldshake","rename","submit","preventDefault","directives","rawName","expression","autocomplete","autocapitalize","domProps","input","composing","_e","_l","href","link","icon","F","func","wait","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","invokeFunc","time","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","timeWaiting","remainingWait","debounced","isInvoking","leadingEdge","clearTimeout","cancel","flush","searchCollections","finally","CollectionListItem","NcSelect","isActive","Boolean","selectIsOpen","generatingCodes","codes","model","state","isSelectOpen","find","placeholder","OCP","Collaboration","getTypes","method","getLabel","action","trigger","select","setError","showSelect","$refs","focus","hideSelect","isVueComponent","_isVue","_m","ref","label","close","scopedSlots","_u","Config","_capabilities","getCapabilities","defaultPermissions","_this$_capabilities$f","files_sharing","default_permissions","isPublicUploadEnabled","_this$_capabilities$f2","public","upload","isShareWithLinkAllowed","getElementById","federatedShareDocLink","appConfig","core","federatedCloudShareDoc","defaultExpirationDate","isDefaultExpireDateEnabled","setDate","getDate","defaultExpireDate","defaultInternalExpirationDate","isDefaultInternalExpireDateEnabled","defaultInternalExpireDate","defaultRemoteExpirationDateString","isDefaultRemoteExpireDateEnabled","defaultRemoteExpireDate","enforcePasswordForPublicLink","enableLinkPasswordByDefault","isDefaultExpireDateEnforced","defaultExpireDateEnforced","defaultExpireDateEnabled","isDefaultInternalExpireDateEnforced","defaultInternalExpireDateEnforced","isDefaultRemoteExpireDateEnforced","defaultRemoteExpireDateEnforced","defaultInternalExpireDateEnabled","defaultRemoteExpireDateEnabled","isRemoteShareAllowed","remoteShareAllowed","isMailShareAllowed","_this$_capabilities","_this$_capabilities2","sharebymail","enabled","isResharingAllowed","resharingAllowed","isPasswordForMailSharesRequired","password","enforced","shouldAlwaysShowUnique","_this$_capabilities$f3","sharee","always_show_unique","allowGroupSharing","maxAutocompleteResults","config","minSearchStringLength","passwordPolicy","password_policy","Share","ocsData","_ocsData$attributes","hide_download","mail_send","attributes","parse","warn","_share","share_type","permissions","owner","uid_owner","ownerDisplayName","displayname_owner","shareWith","share_with","shareWithDisplayName","share_with_displayname","shareWithDisplayNameUnique","share_with_displayname_unique","shareWithLink","share_with_link","shareWithAvatar","share_with_avatar","uidFileOwner","uid_file_owner","displaynameFileOwner","displayname_file_owner","createdTime","stime","expireDate","expiration","date","token","note","_this$_share$label","mailSend","hideDownload","passwordExpirationTime","password_expiration_time","sendPasswordByTalk","send_password_by_talk","itemType","item_type","fileSource","file_source","fileTarget","file_target","fileParent","file_parent","hasReadPermission","PERMISSION_READ","hasCreatePermission","PERMISSION_CREATE","hasDeletePermission","PERMISSION_DELETE","hasUpdatePermission","PERMISSION_UPDATE","hasSharePermission","PERMISSION_SHARE","hasDownloadPermission","attr","scope","setAttribute","attrUpdate","splice","canEdit","can_edit","canDelete","can_delete","viaFileid","via_fileid","viaPath","via_path","storageId","storage_id","storage","itemSource","item_source","status","emits","fillColor","_vm","_b","$event","$emit","$attrs","required","subtitle","isUnique","ariaExpanded","ariaExpandedValue","_t","SharingEntrySimple","CheckIcon","ClipboardIcon","fileInfo","copied","copySuccess","internalLink","generateUrl","copyLinkTooltip","internalLinkSubtitle","copyLink","navigator","clipboard","writeText","showSuccess","shareEntrySimple","actionsComponent","proxy","async","api","request","axios","info","showError","crypto","getRandomValues","passwordSet","shareUrl","generateOcsUrl","createShare","_ref","shareType","publicUpload","_request$data","share","emit","_error$response","errorMessage","response","meta","message","Notification","showTemporary","deleteShare","_request$data2","_error$response2","updateShare","properties","_request$data3","_error$response3","openSharingDetails","shareRequestObject","handlerInput","suggestions","externalShareRequestObject","mapShareRequestToShareObject","shareDetails","openShareDetailsForCustomSettings","setCustomPermissions","_shareRequestObject$p","is_no_user","isNoUser","user","displayName","mixins","ShareRequests","ShareDetails","shares","linkShares","reshare","canReshare","loading","recommendations","ShareSearch","OCA","Sharing","externalResults","results","inputPlaceholder","allowRemoteSharing","isValidQuery","noResultText","getRecommendations","onSelected","option","asyncFind","debounceGetSuggestions","getSuggestions","query_lookup_default","ShareType","Email","format","perPage","exact","rawExactSuggestions","elem","rawSuggestions","exactSuggestions","filterOutExistingShares","formatForMultiselect","lookupEntry","lookupEnabled","condition","allSuggestions","nameCounts","desc","debounce","rawRecommendations","User","getCurrentUser","uid","sharesObj","shareTypeToIcon","Guest","iconTitle","RemoteGroup","Group","Team","Room","Deck","Sciencemesh","subname","_result$shareWithDisp","Remote","server","_result$shareWithDesc","shareWithDescription","uuid","clear-search-on-blur","$$v","client","davGetClient","getLoggerBuilder","setApp","detectUser","build","ATOMIC_PERMISSIONS","NONE","READ","UPDATE","CREATE","DELETE","SHARE","BUNDLED_PERMISSIONS","READ_ONLY","UPLOAD_AND_UPDATE","FILE_DROP","ALL","ALL_FILE","SharesRequests","_this$share","errors","saving","updateQueue","PQueue","concurrency","reactiveState","hasNote","dateTomorrow","lang","weekdaysShort","dayNamesShort","monthsShort","monthNamesShort","formatLocale","firstDayOfWeek","firstDay","weekdaysMin","monthFormat","isFolder","isPublicShare","_this$share$shareType","Link","isRemoteShare","isShareOwner","isExpiryDateEnforced","hasCustomPermissions","maxExpirationDateEnforced","getNode","propfindPayload","davGetDefaultPropfind","stat","davRootPath","details","davResultToNode","fetchNode","logger","checkShare","expirationDate","formatDateToString","UTC","getFullYear","getMonth","toISOString","onExpirationChange","onExpirationDisable","onNoteChange","onNoteSubmit","newNote","$delete","queueUpdate","onDelete","debug","_len","propertyNames","_key","updatedShare","updateSuccessMessage","onSyncError","names","property","propertyEl","focusable","querySelector","debounceQueueUpdate","NcActionLink","NcActionText","SharesMixin","viaFileTargetUrl","fileid","viaFolderName","basename","initiator","folder","SharingEntryInherited","loaded","showInheritedShares","showInheritedSharesIcon","mainTitle","subTitle","toggleTooltip","fullPath","resetState","toggleInheritedShares","fetchInheritedShares","removeShare","stopPropagation","DropdownIcon","selectedOption","ariaLabel","canViewText","canEditText","fileDropText","customPermissionsText","preSelectedOption","IconEyeOutline","IconPencil","supportsFileDrop","IconFileUpload","IconTune","_this$share$type","dropDownPermissionValue","created","selectOption","optionLabel","quickShareActions","menuButton","is","_g","handlers","ExternalShareAction","NcActionCheckbox","NcActionInput","NcActionSeparator","NcDialog","VueQrcode","Tune","IconCalendarBlank","IconQr","ErrorIcon","LockIcon","CloseIcon","PlusIcon","SharingEntryQuickShareSelect","shareCreationComplete","defaultExpirationDateEnabled","pending","ExternalLegacyLinkActions","ExternalLinkActions","ExternalShareActions","showQRCode","isEmailShareType","isPasswordProtected","Vue","GeneratePassword","expirationTime","moment","diff","fromNow","isTalkEnabled","appswebroots","spreed","isPasswordProtectedByTalkAvailable","isPasswordProtectedByTalk","canTogglePasswordProtectedByTalkAvailable","hasUnsavedPassword","pendingDataIsMissing","pendingPassword","pendingEnforcedPassword","pendingDefaultExpirationDate","pendingEnforcedExpirationDate","isPendingShare","getTime","sharePolicyHasEnforcedProperties","enforcedPropertiesMissing","isPasswordMissing","isExpireDateMissing","newPassword","shareLink","actionsTooltip","externalLegacyLinkActions","actions","externalLinkActions","advanced","isPasswordPolicyEnabled","canChangeHideDownload","shareAttributes","some","shareAttribute","shareRequiresReview","shareReviewComplete","onNewLinkShare","shareDefaults","component","pushNewLinkShare","update","newShare","_data$response","copyButton","onPasswordChange","onPasswordDisable","onPasswordSubmit","onPasswordProtectedByTalkChange","onMenuClose","onDefaultExpirationDateEnabledChange","onCancel","SharingEntryLink","minLength","canLinkShare","hasLinkShares","hasShares","addShare","awaitForShare","$nextTick","$children","NcButton","DotsHorizontalIcon","tooltip","hasStatus","SharingEntry","NcInputField","NcPasswordField","NcDateTimePickerNative","NcCheckboxRadioSwitch","NcLoadingIcon","CircleIcon","EditIcon","LinkIcon","GroupIcon","ShareIcon","UserIcon","UploadIcon","ViewIcon","MenuDownIcon","MenuUpIcon","shareRequestValue","writeNoteToRecipientIsChecked","sharingPermission","revertSharingPermission","passwordError","advancedSectionAccordionExpanded","bundledPermissions","isFirstComponentLoad","creating","userName","email","updateAtomicPermissions","isEditChecked","canCreate","isCreateChecked","isDeleteChecked","isReshareChecked","canDownload","_this$share$attribute","downloadAttr","hasRead","isReadChecked","hasExpirationDate","isValidShareAttribute","defaultExpiryDate","isSetDownloadButtonVisible","isPasswordEnforced","isGroupShare","isUserShare","isNewShare","allowsFileDrop","hasFileDropPermissions","shareButtonText","canSetEdit","sharePermissions","canSetCreate","canSetDelete","canSetReshare","canSetDownload","canRemoveReadPermission","customPermissionsList","translatedPermissions","permission","hasPermissions","initialPermissionSet","permissionsToCheck","toLocaleLowerCase","getLanguage","advancedControlExpandedValue","errorPasswordLabel","passwordHint","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","isChecked","beforeMount","initializePermissions","initializeAttributes","_this$$refs$quickPerm","quickPermissions","expandCustomPermissions","toggleCustomPermissions","selectedPermission","isCustomPermissions","toDateString","handleShareType","handleDefaultPermissions","handleCustomPermissions","saveShare","_this$$refs$externalL","permissionsAndAttributes","sharePermissionsSet","incomingShare","allSettled","_action$$children$at","_action$$children$at2","_action$$children$at3","at","onSave","getShareTypeIcon","EmailIcon","ScienceMesh","_vm$share$expireDate","refInFor","CollectionList","SharingEntryInternal","SharingInherited","SharingInput","SharingLinkList","SharingList","SharingDetailsTab","deleteEvent","expirationInterval","sharedWithMe","sections","ShareTabSections","getSections","projectsEnabled","loadState","showSharingDetailsView","shareDetailsData","returnFocusElement","isSharedWithMe","getShares","fetchShares","reshares","fetchSharedWithMe","shared_with_me","all","processSharedWithMe","processShares","_error$response$data","clearInterval","updateExpirationSubtitle","unix","relativetime","Util","relativeModifiedDate","_ref2","circle","conversation","shareWithTitle","setInterval","shareOwnerId","currentUser","shareOwner","unshift","shareList","listComponent","linkShareList","toggleShareDetailsView","eventData","activeElement","classList","className","startsWith","_document$activeEleme","menuId","_this$returnFocusElem","emptyContentWithSections","section"],"sourceRoot":""} \ No newline at end of file
diff --git a/dist/5724-5724.js b/dist/5724-5724.js
deleted file mode 100644
index 8e390ddada9..00000000000
--- a/dist/5724-5724.js
+++ /dev/null
@@ -1,3 +0,0 @@
-/*! For license information please see 5724-5724.js.LICENSE.txt */
-(self.webpackChunknextcloud=self.webpackChunknextcloud||[]).push([[5724],{17816:function(t,e,i){var n=i(96763);t.exports=function(){"use strict";function t(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")}var e=function(t,e){return t(e={exports:{}},e.exports),e.exports}((function(e,i){var r;r=function(){return function e(i,n,r){function a(o,l){if(!n[o]){if(!i[o]){if(!l&&t)return t();if(s)return s(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var h=n[o]={exports:{}};i[o][0].call(h.exports,(function(t){return a(i[o][1][t]||t)}),h,h.exports,e,i,n,r)}return n[o].exports}for(var s=t,o=0;o<r.length;o++)a(r[o]);return a}({1:[function(t,e,i){e.exports=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then}},{}],2:[function(t,e,i){var n=t("./utils").getSymbolSize;i.getRowColCoords=function(t){if(1===t)return[];for(var e=Math.floor(t/7)+2,i=n(t),r=145===i?26:2*Math.ceil((i-13)/(2*e-2)),a=[i-7],s=1;s<e-1;s++)a[s]=a[s-1]-r;return a.push(6),a.reverse()},i.getPositions=function(t){for(var e=[],n=i.getRowColCoords(t),r=n.length,a=0;a<r;a++)for(var s=0;s<r;s++)0===a&&0===s||0===a&&s===r-1||a===r-1&&0===s||e.push([n[a],n[s]]);return e}},{"./utils":21}],3:[function(t,e,i){var n=t("./mode"),r=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function a(t){this.mode=n.ALPHANUMERIC,this.data=t}a.getBitsLength=function(t){return 11*Math.floor(t/2)+t%2*6},a.prototype.getLength=function(){return this.data.length},a.prototype.getBitsLength=function(){return a.getBitsLength(this.data.length)},a.prototype.write=function(t){var e;for(e=0;e+2<=this.data.length;e+=2){var i=45*r.indexOf(this.data[e]);i+=r.indexOf(this.data[e+1]),t.put(i,11)}this.data.length%2&&t.put(r.indexOf(this.data[e]),6)},e.exports=a},{"./mode":14}],4:[function(t,e,i){function n(){this.buffer=[],this.length=0}n.prototype={get:function(t){var e=Math.floor(t/8);return 1==(this.buffer[e]>>>7-t%8&1)},put:function(t,e){for(var i=0;i<e;i++)this.putBit(1==(t>>>e-i-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},e.exports=n},{}],5:[function(t,e,i){var n=t("../utils/buffer");function r(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=n.alloc(t*t),this.reservedBit=n.alloc(t*t)}r.prototype.set=function(t,e,i,n){var r=t*this.size+e;this.data[r]=i,n&&(this.reservedBit[r]=!0)},r.prototype.get=function(t,e){return this.data[t*this.size+e]},r.prototype.xor=function(t,e,i){this.data[t*this.size+e]^=i},r.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]},e.exports=r},{"../utils/buffer":28}],6:[function(t,e,i){var n=t("../utils/buffer"),r=t("./mode");function a(t){this.mode=r.BYTE,this.data=n.from(t)}a.getBitsLength=function(t){return 8*t},a.prototype.getLength=function(){return this.data.length},a.prototype.getBitsLength=function(){return a.getBitsLength(this.data.length)},a.prototype.write=function(t){for(var e=0,i=this.data.length;e<i;e++)t.put(this.data[e],8)},e.exports=a},{"../utils/buffer":28,"./mode":14}],7:[function(t,e,i){var n=t("./error-correction-level"),r=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],a=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];i.getBlocksCount=function(t,e){switch(e){case n.L:return r[4*(t-1)+0];case n.M:return r[4*(t-1)+1];case n.Q:return r[4*(t-1)+2];case n.H:return r[4*(t-1)+3];default:return}},i.getTotalCodewordsCount=function(t,e){switch(e){case n.L:return a[4*(t-1)+0];case n.M:return a[4*(t-1)+1];case n.Q:return a[4*(t-1)+2];case n.H:return a[4*(t-1)+3];default:return}}},{"./error-correction-level":8}],8:[function(t,e,i){i.L={bit:1},i.M={bit:0},i.Q={bit:3},i.H={bit:2},i.isValid=function(t){return t&&void 0!==t.bit&&t.bit>=0&&t.bit<4},i.from=function(t,e){if(i.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return i.L;case"m":case"medium":return i.M;case"q":case"quartile":return i.Q;case"h":case"high":return i.H;default:throw new Error("Unknown EC Level: "+t)}}(t)}catch(t){return e}}},{}],9:[function(t,e,i){var n=t("./utils").getSymbolSize;i.getPositions=function(t){var e=n(t);return[[0,0],[e-7,0],[0,e-7]]}},{"./utils":21}],10:[function(t,e,i){var n=t("./utils"),r=n.getBCHDigit(1335);i.getEncodedBits=function(t,e){for(var i=t.bit<<3|e,a=i<<10;n.getBCHDigit(a)-r>=0;)a^=1335<<n.getBCHDigit(a)-r;return 21522^(i<<10|a)}},{"./utils":21}],11:[function(t,e,i){var n=t("../utils/buffer"),r=n.alloc(512),a=n.alloc(256);!function(){for(var t=1,e=0;e<255;e++)r[e]=t,a[t]=e,256&(t<<=1)&&(t^=285);for(e=255;e<512;e++)r[e]=r[e-255]}(),i.log=function(t){if(t<1)throw new Error("log("+t+")");return a[t]},i.exp=function(t){return r[t]},i.mul=function(t,e){return 0===t||0===e?0:r[a[t]+a[e]]}},{"../utils/buffer":28}],12:[function(t,e,i){var n=t("./mode"),r=t("./utils");function a(t){this.mode=n.KANJI,this.data=t}a.getBitsLength=function(t){return 13*t},a.prototype.getLength=function(){return this.data.length},a.prototype.getBitsLength=function(){return a.getBitsLength(this.data.length)},a.prototype.write=function(t){var e;for(e=0;e<this.data.length;e++){var i=r.toSJIS(this.data[e]);if(i>=33088&&i<=40956)i-=33088;else{if(!(i>=57408&&i<=60351))throw new Error("Invalid SJIS character: "+this.data[e]+"\nMake sure your charset is UTF-8");i-=49472}i=192*(i>>>8&255)+(255&i),t.put(i,13)}},e.exports=a},{"./mode":14,"./utils":21}],13:[function(t,e,i){i.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var n=3,r=3,a=40,s=10;function o(t,e,n){switch(t){case i.Patterns.PATTERN000:return(e+n)%2==0;case i.Patterns.PATTERN001:return e%2==0;case i.Patterns.PATTERN010:return n%3==0;case i.Patterns.PATTERN011:return(e+n)%3==0;case i.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(n/3))%2==0;case i.Patterns.PATTERN101:return e*n%2+e*n%3==0;case i.Patterns.PATTERN110:return(e*n%2+e*n%3)%2==0;case i.Patterns.PATTERN111:return(e*n%3+(e+n)%2)%2==0;default:throw new Error("bad maskPattern:"+t)}}i.isValid=function(t){return null!=t&&""!==t&&!isNaN(t)&&t>=0&&t<=7},i.from=function(t){return i.isValid(t)?parseInt(t,10):void 0},i.getPenaltyN1=function(t){for(var e=t.size,i=0,r=0,a=0,s=null,o=null,l=0;l<e;l++){r=a=0,s=o=null;for(var c=0;c<e;c++){var h=t.get(l,c);h===s?r++:(r>=5&&(i+=n+(r-5)),s=h,r=1),(h=t.get(c,l))===o?a++:(a>=5&&(i+=n+(a-5)),o=h,a=1)}r>=5&&(i+=n+(r-5)),a>=5&&(i+=n+(a-5))}return i},i.getPenaltyN2=function(t){for(var e=t.size,i=0,n=0;n<e-1;n++)for(var a=0;a<e-1;a++){var s=t.get(n,a)+t.get(n,a+1)+t.get(n+1,a)+t.get(n+1,a+1);4!==s&&0!==s||i++}return i*r},i.getPenaltyN3=function(t){for(var e=t.size,i=0,n=0,r=0,s=0;s<e;s++){n=r=0;for(var o=0;o<e;o++)n=n<<1&2047|t.get(s,o),o>=10&&(1488===n||93===n)&&i++,r=r<<1&2047|t.get(o,s),o>=10&&(1488===r||93===r)&&i++}return i*a},i.getPenaltyN4=function(t){for(var e=0,i=t.data.length,n=0;n<i;n++)e+=t.data[n];return Math.abs(Math.ceil(100*e/i/5)-10)*s},i.applyMask=function(t,e){for(var i=e.size,n=0;n<i;n++)for(var r=0;r<i;r++)e.isReserved(r,n)||e.xor(r,n,o(t,r,n))},i.getBestMask=function(t,e){for(var n=Object.keys(i.Patterns).length,r=0,a=1/0,s=0;s<n;s++){e(s),i.applyMask(s,t);var o=i.getPenaltyN1(t)+i.getPenaltyN2(t)+i.getPenaltyN3(t)+i.getPenaltyN4(t);i.applyMask(s,t),o<a&&(a=o,r=s)}return r}},{}],14:[function(t,e,i){var n=t("./version-check"),r=t("./regex");i.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},i.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},i.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},i.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},i.MIXED={bit:-1},i.getCharCountIndicator=function(t,e){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!n.isValid(e))throw new Error("Invalid version: "+e);return e>=1&&e<10?t.ccBits[0]:e<27?t.ccBits[1]:t.ccBits[2]},i.getBestModeForData=function(t){return r.testNumeric(t)?i.NUMERIC:r.testAlphanumeric(t)?i.ALPHANUMERIC:r.testKanji(t)?i.KANJI:i.BYTE},i.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")},i.isValid=function(t){return t&&t.bit&&t.ccBits},i.from=function(t,e){if(i.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return i.NUMERIC;case"alphanumeric":return i.ALPHANUMERIC;case"kanji":return i.KANJI;case"byte":return i.BYTE;default:throw new Error("Unknown mode: "+t)}}(t)}catch(t){return e}}},{"./regex":19,"./version-check":22}],15:[function(t,e,i){var n=t("./mode");function r(t){this.mode=n.NUMERIC,this.data=t.toString()}r.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)},r.prototype.getLength=function(){return this.data.length},r.prototype.getBitsLength=function(){return r.getBitsLength(this.data.length)},r.prototype.write=function(t){var e,i,n;for(e=0;e+3<=this.data.length;e+=3)i=this.data.substr(e,3),n=parseInt(i,10),t.put(n,10);var r=this.data.length-e;r>0&&(i=this.data.substr(e),n=parseInt(i,10),t.put(n,3*r+1))},e.exports=r},{"./mode":14}],16:[function(t,e,i){var n=t("../utils/buffer"),r=t("./galois-field");i.mul=function(t,e){for(var i=n.alloc(t.length+e.length-1),a=0;a<t.length;a++)for(var s=0;s<e.length;s++)i[a+s]^=r.mul(t[a],e[s]);return i},i.mod=function(t,e){for(var i=n.from(t);i.length-e.length>=0;){for(var a=i[0],s=0;s<e.length;s++)i[s]^=r.mul(e[s],a);for(var o=0;o<i.length&&0===i[o];)o++;i=i.slice(o)}return i},i.generateECPolynomial=function(t){for(var e=n.from([1]),a=0;a<t;a++)e=i.mul(e,[1,r.exp(a)]);return e}},{"../utils/buffer":28,"./galois-field":11}],17:[function(t,e,i){var n=t("../utils/buffer"),r=t("./utils"),a=t("./error-correction-level"),s=t("./bit-buffer"),o=t("./bit-matrix"),l=t("./alignment-pattern"),c=t("./finder-pattern"),h=t("./mask-pattern"),u=t("./error-correction-code"),d=t("./reed-solomon-encoder"),p=t("./version"),f=t("./format-info"),A=t("./mode"),g=t("./segments"),m=t("isarray");function v(t,e,i){var n,r,a=t.size,s=f.getEncodedBits(e,i);for(n=0;n<15;n++)r=1==(s>>n&1),n<6?t.set(n,8,r,!0):n<8?t.set(n+1,8,r,!0):t.set(a-15+n,8,r,!0),n<8?t.set(8,a-n-1,r,!0):n<9?t.set(8,15-n-1+1,r,!0):t.set(8,15-n-1,r,!0);t.set(a-8,8,1,!0)}function _(t,e,i){var a=new s;i.forEach((function(e){a.put(e.mode.bit,4),a.put(e.getLength(),A.getCharCountIndicator(e.mode,t)),e.write(a)}));var o=8*(r.getSymbolTotalCodewords(t)-u.getTotalCodewordsCount(t,e));for(a.getLengthInBits()+4<=o&&a.put(0,4);a.getLengthInBits()%8!=0;)a.putBit(0);for(var l=(o-a.getLengthInBits())/8,c=0;c<l;c++)a.put(c%2?17:236,8);return function(t,e,i){for(var a=r.getSymbolTotalCodewords(e),s=a-u.getTotalCodewordsCount(e,i),o=u.getBlocksCount(e,i),l=o-a%o,c=Math.floor(a/o),h=Math.floor(s/o),p=h+1,f=c-h,A=new d(f),g=0,m=new Array(o),v=new Array(o),_=0,y=n.from(t.buffer),C=0;C<o;C++){var w=C<l?h:p;m[C]=y.slice(g,g+w),v[C]=A.encode(m[C]),g+=w,_=Math.max(_,w)}var E,b,S=n.alloc(a),x=0;for(E=0;E<_;E++)for(b=0;b<o;b++)E<m[b].length&&(S[x++]=m[b][E]);for(E=0;E<f;E++)for(b=0;b<o;b++)S[x++]=v[b][E];return S}(a,t,e)}function y(t,e,i,n){var a;if(m(t))a=g.fromArray(t);else{if("string"!=typeof t)throw new Error("Invalid data");var s=e;if(!s){var u=g.rawSplit(t);s=p.getBestVersionForData(u,i)}a=g.fromString(t,s||40)}var d=p.getBestVersionForData(a,i);if(!d)throw new Error("The amount of data is too big to be stored in a QR Code");if(e){if(e<d)throw new Error("\nThe chosen QR Code version cannot contain this amount of data.\nMinimum version required to store current data is: "+d+".\n")}else e=d;var f=_(e,i,a),A=r.getSymbolSize(e),y=new o(A);return function(t,e){for(var i=t.size,n=c.getPositions(e),r=0;r<n.length;r++)for(var a=n[r][0],s=n[r][1],o=-1;o<=7;o++)if(!(a+o<=-1||i<=a+o))for(var l=-1;l<=7;l++)s+l<=-1||i<=s+l||(o>=0&&o<=6&&(0===l||6===l)||l>=0&&l<=6&&(0===o||6===o)||o>=2&&o<=4&&l>=2&&l<=4?t.set(a+o,s+l,!0,!0):t.set(a+o,s+l,!1,!0))}(y,e),function(t){for(var e=t.size,i=8;i<e-8;i++){var n=i%2==0;t.set(i,6,n,!0),t.set(6,i,n,!0)}}(y),function(t,e){for(var i=l.getPositions(e),n=0;n<i.length;n++)for(var r=i[n][0],a=i[n][1],s=-2;s<=2;s++)for(var o=-2;o<=2;o++)-2===s||2===s||-2===o||2===o||0===s&&0===o?t.set(r+s,a+o,!0,!0):t.set(r+s,a+o,!1,!0)}(y,e),v(y,i,0),e>=7&&function(t,e){for(var i,n,r,a=t.size,s=p.getEncodedBits(e),o=0;o<18;o++)i=Math.floor(o/3),n=o%3+a-8-3,r=1==(s>>o&1),t.set(i,n,r,!0),t.set(n,i,r,!0)}(y,e),function(t,e){for(var i=t.size,n=-1,r=i-1,a=7,s=0,o=i-1;o>0;o-=2)for(6===o&&o--;;){for(var l=0;l<2;l++)if(!t.isReserved(r,o-l)){var c=!1;s<e.length&&(c=1==(e[s]>>>a&1)),t.set(r,o-l,c),-1==--a&&(s++,a=7)}if((r+=n)<0||i<=r){r-=n,n=-n;break}}}(y,f),isNaN(n)&&(n=h.getBestMask(y,v.bind(null,y,i))),h.applyMask(n,y),v(y,i,n),{modules:y,version:e,errorCorrectionLevel:i,maskPattern:n,segments:a}}i.create=function(t,e){if(void 0===t||""===t)throw new Error("No input text");var i,n,s=a.M;return void 0!==e&&(s=a.from(e.errorCorrectionLevel,a.M),i=p.from(e.version),n=h.from(e.maskPattern),e.toSJISFunc&&r.setToSJISFunction(e.toSJISFunc)),y(t,i,s,n)}},{"../utils/buffer":28,"./alignment-pattern":2,"./bit-buffer":4,"./bit-matrix":5,"./error-correction-code":7,"./error-correction-level":8,"./finder-pattern":9,"./format-info":10,"./mask-pattern":13,"./mode":14,"./reed-solomon-encoder":18,"./segments":20,"./utils":21,"./version":23,isarray:33}],18:[function(t,e,i){var n=t("../utils/buffer"),r=t("./polynomial"),a=t("buffer").Buffer;function s(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}s.prototype.initialize=function(t){this.degree=t,this.genPoly=r.generateECPolynomial(this.degree)},s.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");var e=n.alloc(this.degree),i=a.concat([t,e],t.length+this.degree),s=r.mod(i,this.genPoly),o=this.degree-s.length;if(o>0){var l=n.alloc(this.degree);return s.copy(l,o),l}return s},e.exports=s},{"../utils/buffer":28,"./polynomial":16,buffer:30}],19:[function(t,e,i){var n="[0-9]+",r="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+",a="(?:(?![A-Z0-9 $%*+\\-./:]|"+(r=r.replace(/u/g,"\\u"))+")(?:.|[\r\n]))+";i.KANJI=new RegExp(r,"g"),i.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),i.BYTE=new RegExp(a,"g"),i.NUMERIC=new RegExp(n,"g"),i.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");var s=new RegExp("^"+r+"$"),o=new RegExp("^"+n+"$"),l=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");i.testKanji=function(t){return s.test(t)},i.testNumeric=function(t){return o.test(t)},i.testAlphanumeric=function(t){return l.test(t)}},{}],20:[function(t,e,i){var n=t("./mode"),r=t("./numeric-data"),a=t("./alphanumeric-data"),s=t("./byte-data"),o=t("./kanji-data"),l=t("./regex"),c=t("./utils"),h=t("dijkstrajs");function u(t){return unescape(encodeURIComponent(t)).length}function d(t,e,i){for(var n,r=[];null!==(n=t.exec(i));)r.push({data:n[0],index:n.index,mode:e,length:n[0].length});return r}function p(t){var e,i,r=d(l.NUMERIC,n.NUMERIC,t),a=d(l.ALPHANUMERIC,n.ALPHANUMERIC,t);return c.isKanjiModeEnabled()?(e=d(l.BYTE,n.BYTE,t),i=d(l.KANJI,n.KANJI,t)):(e=d(l.BYTE_KANJI,n.BYTE,t),i=[]),r.concat(a,e,i).sort((function(t,e){return t.index-e.index})).map((function(t){return{data:t.data,mode:t.mode,length:t.length}}))}function f(t,e){switch(e){case n.NUMERIC:return r.getBitsLength(t);case n.ALPHANUMERIC:return a.getBitsLength(t);case n.KANJI:return o.getBitsLength(t);case n.BYTE:return s.getBitsLength(t)}}function A(t,e){var i,l=n.getBestModeForData(t);if((i=n.from(e,l))!==n.BYTE&&i.bit<l.bit)throw new Error('"'+t+'" cannot be encoded with mode '+n.toString(i)+".\n Suggested mode is: "+n.toString(l));switch(i!==n.KANJI||c.isKanjiModeEnabled()||(i=n.BYTE),i){case n.NUMERIC:return new r(t);case n.ALPHANUMERIC:return new a(t);case n.KANJI:return new o(t);case n.BYTE:return new s(t)}}i.fromArray=function(t){return t.reduce((function(t,e){return"string"==typeof e?t.push(A(e,null)):e.data&&t.push(A(e.data,e.mode)),t}),[])},i.fromString=function(t,e){for(var r=function(t,e){for(var i={},r={start:{}},a=["start"],s=0;s<t.length;s++){for(var o=t[s],l=[],c=0;c<o.length;c++){var h=o[c],u=""+s+c;l.push(u),i[u]={node:h,lastCount:0},r[u]={};for(var d=0;d<a.length;d++){var p=a[d];i[p]&&i[p].node.mode===h.mode?(r[p][u]=f(i[p].lastCount+h.length,h.mode)-f(i[p].lastCount,h.mode),i[p].lastCount+=h.length):(i[p]&&(i[p].lastCount=h.length),r[p][u]=f(h.length,h.mode)+4+n.getCharCountIndicator(h.mode,e))}}a=l}for(d=0;d<a.length;d++)r[a[d]].end=0;return{map:r,table:i}}(function(t){for(var e=[],i=0;i<t.length;i++){var r=t[i];switch(r.mode){case n.NUMERIC:e.push([r,{data:r.data,mode:n.ALPHANUMERIC,length:r.length},{data:r.data,mode:n.BYTE,length:r.length}]);break;case n.ALPHANUMERIC:e.push([r,{data:r.data,mode:n.BYTE,length:r.length}]);break;case n.KANJI:e.push([r,{data:r.data,mode:n.BYTE,length:u(r.data)}]);break;case n.BYTE:e.push([{data:r.data,mode:n.BYTE,length:u(r.data)}])}}return e}(p(t,c.isKanjiModeEnabled())),e),a=h.find_path(r.map,"start","end"),s=[],o=1;o<a.length-1;o++)s.push(r.table[a[o]].node);return i.fromArray(s.reduce((function(t,e){var i=t.length-1>=0?t[t.length-1]:null;return i&&i.mode===e.mode?(t[t.length-1].data+=e.data,t):(t.push(e),t)}),[]))},i.rawSplit=function(t){return i.fromArray(p(t,c.isKanjiModeEnabled()))}},{"./alphanumeric-data":3,"./byte-data":6,"./kanji-data":12,"./mode":14,"./numeric-data":15,"./regex":19,"./utils":21,dijkstrajs:31}],21:[function(t,e,i){var n,r=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];i.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return 4*t+17},i.getSymbolTotalCodewords=function(t){return r[t]},i.getBCHDigit=function(t){for(var e=0;0!==t;)e++,t>>>=1;return e},i.setToSJISFunction=function(t){if("function"!=typeof t)throw new Error('"toSJISFunc" is not a valid function.');n=t},i.isKanjiModeEnabled=function(){return void 0!==n},i.toSJIS=function(t){return n(t)}},{}],22:[function(t,e,i){i.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}},{}],23:[function(t,e,i){var n=t("./utils"),r=t("./error-correction-code"),a=t("./error-correction-level"),s=t("./mode"),o=t("./version-check"),l=t("isarray"),c=n.getBCHDigit(7973);function h(t,e){return s.getCharCountIndicator(t,e)+4}function u(t,e){var i=0;return t.forEach((function(t){var n=h(t.mode,e);i+=n+t.getBitsLength()})),i}i.from=function(t,e){return o.isValid(t)?parseInt(t,10):e},i.getCapacity=function(t,e,i){if(!o.isValid(t))throw new Error("Invalid QR Code version");void 0===i&&(i=s.BYTE);var a=8*(n.getSymbolTotalCodewords(t)-r.getTotalCodewordsCount(t,e));if(i===s.MIXED)return a;var l=a-h(i,t);switch(i){case s.NUMERIC:return Math.floor(l/10*3);case s.ALPHANUMERIC:return Math.floor(l/11*2);case s.KANJI:return Math.floor(l/13);case s.BYTE:default:return Math.floor(l/8)}},i.getBestVersionForData=function(t,e){var n,r=a.from(e,a.M);if(l(t)){if(t.length>1)return function(t,e){for(var n=1;n<=40;n++)if(u(t,n)<=i.getCapacity(n,e,s.MIXED))return n}(t,r);if(0===t.length)return 1;n=t[0]}else n=t;return function(t,e,n){for(var r=1;r<=40;r++)if(e<=i.getCapacity(r,n,t))return r}(n.mode,n.getLength(),r)},i.getEncodedBits=function(t){if(!o.isValid(t)||t<7)throw new Error("Invalid QR Code version");for(var e=t<<12;n.getBCHDigit(e)-c>=0;)e^=7973<<n.getBCHDigit(e)-c;return t<<12|e}},{"./error-correction-code":7,"./error-correction-level":8,"./mode":14,"./utils":21,"./version-check":22,isarray:33}],24:[function(t,e,i){var n=t("./can-promise"),r=t("./core/qrcode"),a=t("./renderer/canvas"),s=t("./renderer/svg-tag.js");function o(t,e,i,a,s){var o=[].slice.call(arguments,1),l=o.length,c="function"==typeof o[l-1];if(!c&&!n())throw new Error("Callback required as last argument");if(!c){if(l<1)throw new Error("Too few arguments provided");return 1===l?(i=e,e=a=void 0):2!==l||e.getContext||(a=i,i=e,e=void 0),new Promise((function(n,s){try{var o=r.create(i,a);n(t(o,e,a))}catch(t){s(t)}}))}if(l<2)throw new Error("Too few arguments provided");2===l?(s=i,i=e,e=a=void 0):3===l&&(e.getContext&&void 0===s?(s=a,a=void 0):(s=a,a=i,i=e,e=void 0));try{var h=r.create(i,a);s(null,t(h,e,a))}catch(t){s(t)}}i.create=r.create,i.toCanvas=o.bind(null,a.render),i.toDataURL=o.bind(null,a.renderToDataURL),i.toString=o.bind(null,(function(t,e,i){return s.render(t,i)}))},{"./can-promise":1,"./core/qrcode":17,"./renderer/canvas":25,"./renderer/svg-tag.js":26}],25:[function(t,e,i){var n=t("./utils");i.render=function(t,e,i){var r=i,a=e;void 0!==r||e&&e.getContext||(r=e,e=void 0),e||(a=function(){try{return document.createElement("canvas")}catch(t){throw new Error("You need to specify a canvas element")}}()),r=n.getOptions(r);var s=n.getImageWidth(t.modules.size,r),o=a.getContext("2d"),l=o.createImageData(s,s);return n.qrToImageData(l.data,t,r),function(t,e,i){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=i,e.width=i,e.style.height=i+"px",e.style.width=i+"px"}(o,a,s),o.putImageData(l,0,0),a},i.renderToDataURL=function(t,e,n){var r=n;void 0!==r||e&&e.getContext||(r=e,e=void 0),r||(r={});var a=i.render(t,e,r),s=r.type||"image/png",o=r.rendererOpts||{};return a.toDataURL(s,o.quality)}},{"./utils":27}],26:[function(t,e,i){var n=t("./utils");function r(t,e){var i=t.a/255,n=e+'="'+t.hex+'"';return i<1?n+" "+e+'-opacity="'+i.toFixed(2).slice(1)+'"':n}function a(t,e,i){var n=t+e;return void 0!==i&&(n+=" "+i),n}i.render=function(t,e,i){var s=n.getOptions(e),o=t.modules.size,l=t.modules.data,c=o+2*s.margin,h=s.color.light.a?"<path "+r(s.color.light,"fill")+' d="M0 0h'+c+"v"+c+'H0z"/>':"",u="<path "+r(s.color.dark,"stroke")+' d="'+function(t,e,i){for(var n="",r=0,s=!1,o=0,l=0;l<t.length;l++){var c=Math.floor(l%e),h=Math.floor(l/e);c||s||(s=!0),t[l]?(o++,l>0&&c>0&&t[l-1]||(n+=s?a("M",c+i,.5+h+i):a("m",r,0),r=0,s=!1),c+1<e&&t[l+1]||(n+=a("h",o),o=0)):r++}return n}(l,o,s.margin)+'"/>',d='viewBox="0 0 '+c+" "+c+'"',p='<svg xmlns="http://www.w3.org/2000/svg" '+(s.width?'width="'+s.width+'" height="'+s.width+'" ':"")+d+' shape-rendering="crispEdges">'+h+u+"</svg>\n";return"function"==typeof i&&i(null,p),p}},{"./utils":27}],27:[function(t,e,i){function n(t){if("number"==typeof t&&(t=t.toString()),"string"!=typeof t)throw new Error("Color should be defined as hex string");var e=t.slice().replace("#","").split("");if(e.length<3||5===e.length||e.length>8)throw new Error("Invalid hex color: "+t);3!==e.length&&4!==e.length||(e=Array.prototype.concat.apply([],e.map((function(t){return[t,t]})))),6===e.length&&e.push("F","F");var i=parseInt(e.join(""),16);return{r:i>>24&255,g:i>>16&255,b:i>>8&255,a:255&i,hex:"#"+e.slice(0,6).join("")}}i.getOptions=function(t){t||(t={}),t.color||(t.color={});var e=void 0===t.margin||null===t.margin||t.margin<0?4:t.margin,i=t.width&&t.width>=21?t.width:void 0,r=t.scale||4;return{width:i,scale:i?4:r,margin:e,color:{dark:n(t.color.dark||"#000000ff"),light:n(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},i.getScale=function(t,e){return e.width&&e.width>=t+2*e.margin?e.width/(t+2*e.margin):e.scale},i.getImageWidth=function(t,e){var n=i.getScale(t,e);return Math.floor((t+2*e.margin)*n)},i.qrToImageData=function(t,e,n){for(var r=e.modules.size,a=e.modules.data,s=i.getScale(r,n),o=Math.floor((r+2*n.margin)*s),l=n.margin*s,c=[n.color.light,n.color.dark],h=0;h<o;h++)for(var u=0;u<o;u++){var d=4*(h*o+u),p=n.color.light;h>=l&&u>=l&&h<o-l&&u<o-l&&(p=c[a[Math.floor((h-l)/s)*r+Math.floor((u-l)/s)]?1:0]),t[d++]=p.r,t[d++]=p.g,t[d++]=p.b,t[d]=p.a}}},{}],28:[function(t,e,i){var n=t("isarray");a.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()}catch(t){return!1}}();var r=a.TYPED_ARRAY_SUPPORT?2147483647:1073741823;function a(t,e,i){return a.TYPED_ARRAY_SUPPORT||this instanceof a?"number"==typeof t?l(this,t):function(t,e,i,n){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?function(t,e,i,n){if(i<0||e.byteLength<i)throw new RangeError("'offset' is out of bounds");if(e.byteLength<i+(n||0))throw new RangeError("'length' is out of bounds");var r;return r=void 0===i&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,i):new Uint8Array(e,i,n),a.TYPED_ARRAY_SUPPORT?r.__proto__=a.prototype:r=c(t,r),r}(t,e,i,n):"string"==typeof e?function(t,e){var i=0|u(e),n=o(t,i),r=n.write(e);return r!==i&&(n=n.slice(0,r)),n}(t,e):function(t,e){if(a.isBuffer(e)){var i=0|s(e.length),n=o(t,i);return 0===n.length||e.copy(n,0,0,i),n}if(e){if("undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!=typeof e.length||(r=e.length)!=r?o(t,0):c(t,e);if("Buffer"===e.type&&Array.isArray(e.data))return c(t,e.data)}var r;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(t,e)}(this,t,e,i):new a(t,e,i)}function s(t){if(t>=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|t}function o(t,e){var i;return a.TYPED_ARRAY_SUPPORT?(i=new Uint8Array(e)).__proto__=a.prototype:(null===(i=t)&&(i=new a(e)),i.length=e),i}function l(t,e){var i=o(t,e<0?0:0|s(e));if(!a.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)i[n]=0;return i}function c(t,e){for(var i=e.length<0?0:0|s(e.length),n=o(t,i),r=0;r<i;r+=1)n[r]=255&e[r];return n}function h(t,e){var i;e=e||1/0;for(var n=t.length,r=null,a=[],s=0;s<n;++s){if((i=t.charCodeAt(s))>55295&&i<57344){if(!r){if(i>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&a.push(239,191,189);continue}r=i;continue}if(i<56320){(e-=3)>-1&&a.push(239,191,189),r=i;continue}i=65536+(r-55296<<10|i-56320)}else r&&(e-=3)>-1&&a.push(239,191,189);if(r=null,i<128){if((e-=1)<0)break;a.push(i)}else if(i<2048){if((e-=2)<0)break;a.push(i>>6|192,63&i|128)}else if(i<65536){if((e-=3)<0)break;a.push(i>>12|224,i>>6&63|128,63&i|128)}else{if(!(i<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(i>>18|240,i>>12&63|128,i>>6&63|128,63&i|128)}}return a}function u(t){return a.isBuffer(t)?t.length:"undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer)?t.byteLength:("string"!=typeof t&&(t=""+t),0===t.length?0:h(t).length)}a.TYPED_ARRAY_SUPPORT&&(a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1})),a.prototype.write=function(t,e,i){void 0===e||void 0===i&&"string"==typeof e?(i=this.length,e=0):isFinite(e)&&(e|=0,isFinite(i)?i|=0:i=void 0);var n=this.length-e;if((void 0===i||i>n)&&(i=n),t.length>0&&(i<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");return function(t,e,i,n){return function(t,e,i,n){for(var r=0;r<n&&!(r+i>=e.length||r>=t.length);++r)e[r+i]=t[r];return r}(h(e,t.length-i),t,i,n)}(this,t,e,i)},a.prototype.slice=function(t,e){var i,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t),a.TYPED_ARRAY_SUPPORT)(i=this.subarray(t,e)).__proto__=a.prototype;else{var r=e-t;i=new a(r,void 0);for(var s=0;s<r;++s)i[s]=this[s+t]}return i},a.prototype.copy=function(t,e,i,n){if(i||(i=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<i&&(n=i),n===i)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(i<0||i>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e<n-i&&(n=t.length-e+i);var r,s=n-i;if(this===t&&i<e&&e<n)for(r=s-1;r>=0;--r)t[r+e]=this[r+i];else if(s<1e3||!a.TYPED_ARRAY_SUPPORT)for(r=0;r<s;++r)t[r+e]=this[r+i];else Uint8Array.prototype.set.call(t,this.subarray(i,i+s),e);return s},a.prototype.fill=function(t,e,i){if("string"==typeof t){if("string"==typeof e?(e=0,i=this.length):"string"==typeof i&&(i=this.length),1===t.length){var n=t.charCodeAt(0);n<256&&(t=n)}}else"number"==typeof t&&(t&=255);if(e<0||this.length<e||this.length<i)throw new RangeError("Out of range index");if(i<=e)return this;var r;if(e>>>=0,i=void 0===i?this.length:i>>>0,t||(t=0),"number"==typeof t)for(r=e;r<i;++r)this[r]=t;else{var s=a.isBuffer(t)?t:new a(t),o=s.length;for(r=0;r<i-e;++r)this[r+e]=s[r%o]}return this},a.concat=function(t,e){if(!n(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return o(null,0);var i;if(void 0===e)for(e=0,i=0;i<t.length;++i)e+=t[i].length;var r=l(null,e),s=0;for(i=0;i<t.length;++i){var c=t[i];if(!a.isBuffer(c))throw new TypeError('"list" argument must be an Array of Buffers');c.copy(r,s),s+=c.length}return r},a.byteLength=u,a.prototype._isBuffer=!0,a.isBuffer=function(t){return!(null==t||!t._isBuffer)},e.exports.alloc=function(t){var e=new a(t);return e.fill(0),e},e.exports.from=function(t){return new a(t)}},{isarray:33}],29:[function(t,e,i){i.byteLength=function(t){var e=l(t),i=e[0],n=e[1];return 3*(i+n)/4-n},i.toByteArray=function(t){var e,i,n=l(t),s=n[0],o=n[1],c=new a(function(t,e,i){return 3*(e+i)/4-i}(0,s,o)),h=0,u=o>0?s-4:s;for(i=0;i<u;i+=4)e=r[t.charCodeAt(i)]<<18|r[t.charCodeAt(i+1)]<<12|r[t.charCodeAt(i+2)]<<6|r[t.charCodeAt(i+3)],c[h++]=e>>16&255,c[h++]=e>>8&255,c[h++]=255&e;return 2===o&&(e=r[t.charCodeAt(i)]<<2|r[t.charCodeAt(i+1)]>>4,c[h++]=255&e),1===o&&(e=r[t.charCodeAt(i)]<<10|r[t.charCodeAt(i+1)]<<4|r[t.charCodeAt(i+2)]>>2,c[h++]=e>>8&255,c[h++]=255&e),c},i.fromByteArray=function(t){for(var e,i=t.length,r=i%3,a=[],s=16383,o=0,l=i-r;o<l;o+=s)a.push(c(t,o,o+s>l?l:o+s));return 1===r?(e=t[i-1],a.push(n[e>>2]+n[e<<4&63]+"==")):2===r&&(e=(t[i-2]<<8)+t[i-1],a.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"=")),a.join("")};for(var n=[],r=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)n[o]=s[o],r[s.charCodeAt(o)]=o;function l(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var i=t.indexOf("=");return-1===i&&(i=e),[i,i===e?0:4-i%4]}function c(t,e,i){for(var r,a=[],s=e;s<i;s+=3)r=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),a.push(n[(o=r)>>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);var o;return a.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},{}],30:[function(t,e,i){var r=t("base64-js"),a=t("ieee754"),s="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;i.Buffer=c,i.SlowBuffer=function(t){return+t!=t&&(t=0),c.alloc(+t)},i.INSPECT_MAX_BYTES=50;var o=2147483647;function l(t){if(t>o)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,c.prototype),e}function c(t,e,i){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return d(t)}return h(t,e,i)}function h(t,e,i){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!c.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var i=0|A(t,e),n=l(i),r=n.write(t,e);return r!==i&&(n=n.slice(0,r)),n}(t,e);if(ArrayBuffer.isView(t))return p(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(F(t,ArrayBuffer)||t&&F(t.buffer,ArrayBuffer))return function(t,e,i){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(i||0))throw new RangeError('"length" is outside of buffer bounds');var n;return n=void 0===e&&void 0===i?new Uint8Array(t):void 0===i?new Uint8Array(t,e):new Uint8Array(t,e,i),Object.setPrototypeOf(n,c.prototype),n}(t,e,i);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return c.from(n,e,i);var r=function(t){if(c.isBuffer(t)){var e=0|f(t.length),i=l(e);return 0===i.length||t.copy(i,0,0,e),i}return void 0!==t.length?"number"!=typeof t.length||z(t.length)?l(0):p(t):"Buffer"===t.type&&Array.isArray(t.data)?p(t.data):void 0}(t);if(r)return r;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return c.from(t[Symbol.toPrimitive]("string"),e,i);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function u(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function d(t){return u(t),l(t<0?0:0|f(t))}function p(t){for(var e=t.length<0?0:0|f(t.length),i=l(e),n=0;n<e;n+=1)i[n]=255&t[n];return i}function f(t){if(t>=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function A(t,e){if(c.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||F(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var i=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===i)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return i;case"utf8":case"utf-8":return Y(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*i;case"hex":return i>>>1;case"base64":return U(t).length;default:if(r)return n?-1:Y(t).length;e=(""+e).toLowerCase(),r=!0}}function g(t,e,i){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===i||i>this.length)&&(i=this.length),i<=0)return"";if((i>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return D(this,e,i);case"utf8":case"utf-8":return T(this,e,i);case"ascii":return k(this,e,i);case"latin1":case"binary":return R(this,e,i);case"base64":return x(this,e,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,i);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function m(t,e,i){var n=t[e];t[e]=t[i],t[i]=n}function v(t,e,i,n,r){if(0===t.length)return-1;if("string"==typeof i?(n=i,i=0):i>2147483647?i=2147483647:i<-2147483648&&(i=-2147483648),z(i=+i)&&(i=r?0:t.length-1),i<0&&(i=t.length+i),i>=t.length){if(r)return-1;i=t.length-1}else if(i<0){if(!r)return-1;i=0}if("string"==typeof e&&(e=c.from(e,n)),c.isBuffer(e))return 0===e.length?-1:_(t,e,i,n,r);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,i):Uint8Array.prototype.lastIndexOf.call(t,e,i):_(t,[e],i,n,r);throw new TypeError("val must be string, number or Buffer")}function _(t,e,i,n,r){var a,s=1,o=t.length,l=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,o/=2,l/=2,i/=2}function c(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(r){var h=-1;for(a=i;a<o;a++)if(c(t,a)===c(e,-1===h?0:a-h)){if(-1===h&&(h=a),a-h+1===l)return h*s}else-1!==h&&(a-=a-h),h=-1}else for(i+l>o&&(i=o-l),a=i;a>=0;a--){for(var u=!0,d=0;d<l;d++)if(c(t,a+d)!==c(e,d)){u=!1;break}if(u)return a}return-1}function y(t,e,i,n){i=Number(i)||0;var r=t.length-i;n?(n=Number(n))>r&&(n=r):n=r;var a=e.length;n>a/2&&(n=a/2);for(var s=0;s<n;++s){var o=parseInt(e.substr(2*s,2),16);if(z(o))return s;t[i+s]=o}return s}function C(t,e,i,n){return V(Y(e,t.length-i),t,i,n)}function w(t,e,i,n){return V(function(t){for(var e=[],i=0;i<t.length;++i)e.push(255&t.charCodeAt(i));return e}(e),t,i,n)}function E(t,e,i,n){return w(t,e,i,n)}function b(t,e,i,n){return V(U(e),t,i,n)}function S(t,e,i,n){return V(function(t,e){for(var i,n,r,a=[],s=0;s<t.length&&!((e-=2)<0);++s)n=(i=t.charCodeAt(s))>>8,r=i%256,a.push(r),a.push(n);return a}(e,t.length-i),t,i,n)}function x(t,e,i){return 0===e&&i===t.length?r.fromByteArray(t):r.fromByteArray(t.slice(e,i))}function T(t,e,i){i=Math.min(t.length,i);for(var n=[],r=e;r<i;){var a,s,o,l,c=t[r],h=null,u=c>239?4:c>223?3:c>191?2:1;if(r+u<=i)switch(u){case 1:c<128&&(h=c);break;case 2:128==(192&(a=t[r+1]))&&(l=(31&c)<<6|63&a)>127&&(h=l);break;case 3:a=t[r+1],s=t[r+2],128==(192&a)&&128==(192&s)&&(l=(15&c)<<12|(63&a)<<6|63&s)>2047&&(l<55296||l>57343)&&(h=l);break;case 4:a=t[r+1],s=t[r+2],o=t[r+3],128==(192&a)&&128==(192&s)&&128==(192&o)&&(l=(15&c)<<18|(63&a)<<12|(63&s)<<6|63&o)>65535&&l<1114112&&(h=l)}null===h?(h=65533,u=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),r+=u}return function(t){var e=t.length;if(e<=P)return String.fromCharCode.apply(String,t);for(var i="",n=0;n<e;)i+=String.fromCharCode.apply(String,t.slice(n,n+=P));return i}(n)}i.kMaxLength=o,c.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),c.TYPED_ARRAY_SUPPORT||void 0===n||"function"!=typeof n.error||n.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&c[Symbol.species]===c&&Object.defineProperty(c,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),c.poolSize=8192,c.from=function(t,e,i){return h(t,e,i)},Object.setPrototypeOf(c.prototype,Uint8Array.prototype),Object.setPrototypeOf(c,Uint8Array),c.alloc=function(t,e,i){return function(t,e,i){return u(t),t<=0?l(t):void 0!==e?"string"==typeof i?l(t).fill(e,i):l(t).fill(e):l(t)}(t,e,i)},c.allocUnsafe=function(t){return d(t)},c.allocUnsafeSlow=function(t){return d(t)},c.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==c.prototype},c.compare=function(t,e){if(F(t,Uint8Array)&&(t=c.from(t,t.offset,t.byteLength)),F(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(t)||!c.isBuffer(e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;for(var i=t.length,n=e.length,r=0,a=Math.min(i,n);r<a;++r)if(t[r]!==e[r]){i=t[r],n=e[r];break}return i<n?-1:n<i?1:0},c.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return c.alloc(0);var i;if(void 0===e)for(e=0,i=0;i<t.length;++i)e+=t[i].length;var n=c.allocUnsafe(e),r=0;for(i=0;i<t.length;++i){var a=t[i];if(F(a,Uint8Array)&&(a=c.from(a)),!c.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,r),r+=a.length}return n},c.byteLength=A,c.prototype._isBuffer=!0,c.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)m(this,e,e+1);return this},c.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<t;e+=4)m(this,e,e+3),m(this,e+1,e+2);return this},c.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<t;e+=8)m(this,e,e+7),m(this,e+1,e+6),m(this,e+2,e+5),m(this,e+3,e+4);return this},c.prototype.toString=function(){var t=this.length;return 0===t?"":0===arguments.length?T(this,0,t):g.apply(this,arguments)},c.prototype.toLocaleString=c.prototype.toString,c.prototype.equals=function(t){if(!c.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===c.compare(this,t)},c.prototype.inspect=function(){var t="",e=i.INSPECT_MAX_BYTES;return t=this.toString("hex",0,e).replace(/(.{2})/g,"$1 ").trim(),this.length>e&&(t+=" ... "),"<Buffer "+t+">"},s&&(c.prototype[s]=c.prototype.inspect),c.prototype.compare=function(t,e,i,n,r){if(F(t,Uint8Array)&&(t=c.from(t,t.offset,t.byteLength)),!c.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===i&&(i=t?t.length:0),void 0===n&&(n=0),void 0===r&&(r=this.length),e<0||i>t.length||n<0||r>this.length)throw new RangeError("out of range index");if(n>=r&&e>=i)return 0;if(n>=r)return-1;if(e>=i)return 1;if(this===t)return 0;for(var a=(r>>>=0)-(n>>>=0),s=(i>>>=0)-(e>>>=0),o=Math.min(a,s),l=this.slice(n,r),h=t.slice(e,i),u=0;u<o;++u)if(l[u]!==h[u]){a=l[u],s=h[u];break}return a<s?-1:s<a?1:0},c.prototype.includes=function(t,e,i){return-1!==this.indexOf(t,e,i)},c.prototype.indexOf=function(t,e,i){return v(this,t,e,i,!0)},c.prototype.lastIndexOf=function(t,e,i){return v(this,t,e,i,!1)},c.prototype.write=function(t,e,i,n){if(void 0===e)n="utf8",i=this.length,e=0;else if(void 0===i&&"string"==typeof e)n=e,i=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e>>>=0,isFinite(i)?(i>>>=0,void 0===n&&(n="utf8")):(n=i,i=void 0)}var r=this.length-e;if((void 0===i||i>r)&&(i=r),t.length>0&&(i<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var a=!1;;)switch(n){case"hex":return y(this,t,e,i);case"utf8":case"utf-8":return C(this,t,e,i);case"ascii":return w(this,t,e,i);case"latin1":case"binary":return E(this,t,e,i);case"base64":return b(this,t,e,i);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,t,e,i);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var P=4096;function k(t,e,i){var n="";i=Math.min(t.length,i);for(var r=e;r<i;++r)n+=String.fromCharCode(127&t[r]);return n}function R(t,e,i){var n="";i=Math.min(t.length,i);for(var r=e;r<i;++r)n+=String.fromCharCode(t[r]);return n}function D(t,e,i){var n=t.length;(!e||e<0)&&(e=0),(!i||i<0||i>n)&&(i=n);for(var r="",a=e;a<i;++a)r+=j[t[a]];return r}function I(t,e,i){for(var n=t.slice(e,i),r="",a=0;a<n.length;a+=2)r+=String.fromCharCode(n[a]+256*n[a+1]);return r}function B(t,e,i){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>i)throw new RangeError("Trying to access beyond buffer length")}function N(t,e,i,n,r,a){if(!c.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||e<a)throw new RangeError('"value" argument is out of bounds');if(i+n>t.length)throw new RangeError("Index out of range")}function L(t,e,i,n,r,a){if(i+n>t.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("Index out of range")}function H(t,e,i,n,r){return e=+e,i>>>=0,r||L(t,0,i,4),a.write(t,e,i,n,23,4),i+4}function O(t,e,i,n,r){return e=+e,i>>>=0,r||L(t,0,i,8),a.write(t,e,i,n,52,8),i+8}c.prototype.slice=function(t,e){var i=this.length;(t=~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),(e=void 0===e?i:~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),e<t&&(e=t);var n=this.subarray(t,e);return Object.setPrototypeOf(n,c.prototype),n},c.prototype.readUIntLE=function(t,e,i){t>>>=0,e>>>=0,i||B(t,e,this.length);for(var n=this[t],r=1,a=0;++a<e&&(r*=256);)n+=this[t+a]*r;return n},c.prototype.readUIntBE=function(t,e,i){t>>>=0,e>>>=0,i||B(t,e,this.length);for(var n=this[t+--e],r=1;e>0&&(r*=256);)n+=this[t+--e]*r;return n},c.prototype.readUInt8=function(t,e){return t>>>=0,e||B(t,1,this.length),this[t]},c.prototype.readUInt16LE=function(t,e){return t>>>=0,e||B(t,2,this.length),this[t]|this[t+1]<<8},c.prototype.readUInt16BE=function(t,e){return t>>>=0,e||B(t,2,this.length),this[t]<<8|this[t+1]},c.prototype.readUInt32LE=function(t,e){return t>>>=0,e||B(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},c.prototype.readUInt32BE=function(t,e){return t>>>=0,e||B(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},c.prototype.readIntLE=function(t,e,i){t>>>=0,e>>>=0,i||B(t,e,this.length);for(var n=this[t],r=1,a=0;++a<e&&(r*=256);)n+=this[t+a]*r;return n>=(r*=128)&&(n-=Math.pow(2,8*e)),n},c.prototype.readIntBE=function(t,e,i){t>>>=0,e>>>=0,i||B(t,e,this.length);for(var n=e,r=1,a=this[t+--n];n>0&&(r*=256);)a+=this[t+--n]*r;return a>=(r*=128)&&(a-=Math.pow(2,8*e)),a},c.prototype.readInt8=function(t,e){return t>>>=0,e||B(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},c.prototype.readInt16LE=function(t,e){t>>>=0,e||B(t,2,this.length);var i=this[t]|this[t+1]<<8;return 32768&i?4294901760|i:i},c.prototype.readInt16BE=function(t,e){t>>>=0,e||B(t,2,this.length);var i=this[t+1]|this[t]<<8;return 32768&i?4294901760|i:i},c.prototype.readInt32LE=function(t,e){return t>>>=0,e||B(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},c.prototype.readInt32BE=function(t,e){return t>>>=0,e||B(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},c.prototype.readFloatLE=function(t,e){return t>>>=0,e||B(t,4,this.length),a.read(this,t,!0,23,4)},c.prototype.readFloatBE=function(t,e){return t>>>=0,e||B(t,4,this.length),a.read(this,t,!1,23,4)},c.prototype.readDoubleLE=function(t,e){return t>>>=0,e||B(t,8,this.length),a.read(this,t,!0,52,8)},c.prototype.readDoubleBE=function(t,e){return t>>>=0,e||B(t,8,this.length),a.read(this,t,!1,52,8)},c.prototype.writeUIntLE=function(t,e,i,n){t=+t,e>>>=0,i>>>=0,n||N(this,t,e,i,Math.pow(2,8*i)-1,0);var r=1,a=0;for(this[e]=255&t;++a<i&&(r*=256);)this[e+a]=t/r&255;return e+i},c.prototype.writeUIntBE=function(t,e,i,n){t=+t,e>>>=0,i>>>=0,n||N(this,t,e,i,Math.pow(2,8*i)-1,0);var r=i-1,a=1;for(this[e+r]=255&t;--r>=0&&(a*=256);)this[e+r]=t/a&255;return e+i},c.prototype.writeUInt8=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,1,255,0),this[e]=255&t,e+1},c.prototype.writeUInt16LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},c.prototype.writeUInt16BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},c.prototype.writeUInt32LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},c.prototype.writeUInt32BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},c.prototype.writeIntLE=function(t,e,i,n){if(t=+t,e>>>=0,!n){var r=Math.pow(2,8*i-1);N(this,t,e,i,r-1,-r)}var a=0,s=1,o=0;for(this[e]=255&t;++a<i&&(s*=256);)t<0&&0===o&&0!==this[e+a-1]&&(o=1),this[e+a]=(t/s>>0)-o&255;return e+i},c.prototype.writeIntBE=function(t,e,i,n){if(t=+t,e>>>=0,!n){var r=Math.pow(2,8*i-1);N(this,t,e,i,r-1,-r)}var a=i-1,s=1,o=0;for(this[e+a]=255&t;--a>=0&&(s*=256);)t<0&&0===o&&0!==this[e+a+1]&&(o=1),this[e+a]=(t/s>>0)-o&255;return e+i},c.prototype.writeInt8=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},c.prototype.writeInt16LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},c.prototype.writeInt16BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},c.prototype.writeInt32LE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},c.prototype.writeInt32BE=function(t,e,i){return t=+t,e>>>=0,i||N(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},c.prototype.writeFloatLE=function(t,e,i){return H(this,t,e,!0,i)},c.prototype.writeFloatBE=function(t,e,i){return H(this,t,e,!1,i)},c.prototype.writeDoubleLE=function(t,e,i){return O(this,t,e,!0,i)},c.prototype.writeDoubleBE=function(t,e,i){return O(this,t,e,!1,i)},c.prototype.copy=function(t,e,i,n){if(!c.isBuffer(t))throw new TypeError("argument should be a Buffer");if(i||(i=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<i&&(n=i),n===i)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(i<0||i>=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e<n-i&&(n=t.length-e+i);var r=n-i;if(this===t&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(e,i,n);else if(this===t&&i<e&&e<n)for(var a=r-1;a>=0;--a)t[a+e]=this[a+i];else Uint8Array.prototype.set.call(t,this.subarray(i,n),e);return r},c.prototype.fill=function(t,e,i,n){if("string"==typeof t){if("string"==typeof e?(n=e,e=0,i=this.length):"string"==typeof i&&(n=i,i=this.length),void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!c.isEncoding(n))throw new TypeError("Unknown encoding: "+n);if(1===t.length){var r=t.charCodeAt(0);("utf8"===n&&r<128||"latin1"===n)&&(t=r)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<i)throw new RangeError("Out of range index");if(i<=e)return this;var a;if(e>>>=0,i=void 0===i?this.length:i>>>0,t||(t=0),"number"==typeof t)for(a=e;a<i;++a)this[a]=t;else{var s=c.isBuffer(t)?t:c.from(t,n),o=s.length;if(0===o)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(a=0;a<i-e;++a)this[a+e]=s[a%o]}return this};var M=/[^+/0-9A-Za-z-_]/g;function Y(t,e){var i;e=e||1/0;for(var n=t.length,r=null,a=[],s=0;s<n;++s){if((i=t.charCodeAt(s))>55295&&i<57344){if(!r){if(i>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&a.push(239,191,189);continue}r=i;continue}if(i<56320){(e-=3)>-1&&a.push(239,191,189),r=i;continue}i=65536+(r-55296<<10|i-56320)}else r&&(e-=3)>-1&&a.push(239,191,189);if(r=null,i<128){if((e-=1)<0)break;a.push(i)}else if(i<2048){if((e-=2)<0)break;a.push(i>>6|192,63&i|128)}else if(i<65536){if((e-=3)<0)break;a.push(i>>12|224,i>>6&63|128,63&i|128)}else{if(!(i<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;a.push(i>>18|240,i>>12&63|128,i>>6&63|128,63&i|128)}}return a}function U(t){return r.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(M,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function V(t,e,i,n){for(var r=0;r<n&&!(r+i>=e.length||r>=t.length);++r)e[r+i]=t[r];return r}function F(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function z(t){return t!=t}var j=function(){for(var t="0123456789abcdef",e=new Array(256),i=0;i<16;++i)for(var n=16*i,r=0;r<16;++r)e[n+r]=t[i]+t[r];return e}()},{"base64-js":29,ieee754:32}],31:[function(t,e,i){var n={single_source_shortest_paths:function(t,e,i){var r={},a={};a[e]=0;var s,o,l,c,h,u,d,p=n.PriorityQueue.make();for(p.push(e,0);!p.empty();)for(l in o=(s=p.pop()).value,c=s.cost,h=t[o]||{})h.hasOwnProperty(l)&&(u=c+h[l],d=a[l],(void 0===a[l]||d>u)&&(a[l]=u,p.push(l,u),r[l]=o));if(void 0!==i&&void 0===a[i]){var f=["Could not find a path from ",e," to ",i,"."].join("");throw new Error(f)}return r},extract_shortest_path_from_predecessor_list:function(t,e){for(var i=[],n=e;n;)i.push(n),t[n],n=t[n];return i.reverse(),i},find_path:function(t,e,i){var r=n.single_source_shortest_paths(t,e,i);return n.extract_shortest_path_from_predecessor_list(r,i)},PriorityQueue:{make:function(t){var e,i=n.PriorityQueue,r={};for(e in t=t||{},i)i.hasOwnProperty(e)&&(r[e]=i[e]);return r.queue=[],r.sorter=t.sorter||i.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var i={value:t,cost:e};this.queue.push(i),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};void 0!==e&&(e.exports=n)},{}],32:[function(t,e,i){i.read=function(t,e,i,n,r){var a,s,o=8*r-n-1,l=(1<<o)-1,c=l>>1,h=-7,u=i?r-1:0,d=i?-1:1,p=t[e+u];for(u+=d,a=p&(1<<-h)-1,p>>=-h,h+=o;h>0;a=256*a+t[e+u],u+=d,h-=8);for(s=a&(1<<-h)-1,a>>=-h,h+=n;h>0;s=256*s+t[e+u],u+=d,h-=8);if(0===a)a=1-c;else{if(a===l)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,n),a-=c}return(p?-1:1)*s*Math.pow(2,a-n)},i.write=function(t,e,i,n,r,a){var s,o,l,c=8*a-r-1,h=(1<<c)-1,u=h>>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,f=n?1:-1,A=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(o=isNaN(e)?1:0,s=h):(s=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-s))<1&&(s--,l*=2),(e+=s+u>=1?d/l:d*Math.pow(2,1-u))*l>=2&&(s++,l/=2),s+u>=h?(o=0,s=h):s+u>=1?(o=(e*l-1)*Math.pow(2,r),s+=u):(o=e*Math.pow(2,u-1)*Math.pow(2,r),s=0));r>=8;t[i+p]=255&o,p+=f,o/=256,r-=8);for(s=s<<r|o,c+=r;c>0;t[i+p]=255&s,p+=f,s/=256,c-=8);t[i+p-f]|=128*A}},{}],33:[function(t,e,i){var n={}.toString;e.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},{}]},{},[24])(24)},e.exports=r()}));return{name:"qrcode",props:{value:null,options:Object,tag:{type:String,default:"canvas"}},render:function(t){return t(this.tag,this.$slots.default)},watch:{$props:{deep:!0,immediate:!0,handler:function(){this.$el&&this.generate()}}},methods:{generate:function(){var t=this,i=this.options,n=this.tag,r=String(this.value);"canvas"===n?e.toCanvas(this.$el,r,i,(function(t){if(t)throw t})):"img"===n?e.toDataURL(r,i,(function(e,i){if(e)throw e;t.$el.src=i})):e.toString(r,i,(function(e,i){if(e)throw e;t.$el.innerHTML=i}))}},mounted:function(){this.generate()}}}()},86243:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".fade-enter-active[data-v-8e58e0a5],\n.fade-leave-active[data-v-8e58e0a5] {\n transition: opacity .3s ease;\n}\n.fade-enter[data-v-8e58e0a5],\n.fade-leave-to[data-v-8e58e0a5] {\n opacity: 0;\n}\n.linked-icons[data-v-8e58e0a5] {\n display: flex;\n}\n.linked-icons img[data-v-8e58e0a5] {\n padding: 12px;\n height: 44px;\n display: block;\n background-repeat: no-repeat;\n background-position: center;\n opacity: .7;\n}\n.linked-icons img[data-v-8e58e0a5]:hover {\n opacity: 1;\n}\n.popovermenu[data-v-8e58e0a5] {\n display: none;\n}\n.popovermenu.open[data-v-8e58e0a5] {\n display: block;\n}\nli.collection-list-item[data-v-8e58e0a5] {\n flex-wrap: wrap;\n height: auto;\n cursor: pointer;\n margin-bottom: 0 !important;\n}\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\n margin-top: 6px;\n}\nli.collection-list-item form[data-v-8e58e0a5],\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n flex-basis: 10%;\n flex-grow: 1;\n display: flex;\n}\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n padding: 12px 9px;\n}\nli.collection-list-item input[data-v-8e58e0a5] {\n margin-top: 4px;\n border-color: var(--color-border-maxcontrast);\n}\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\n flex-grow: 1;\n}\nli.collection-list-item .error[data-v-8e58e0a5],\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\n flex-basis: 100%;\n width: 100%;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\n display: flex;\n margin-left: 44px;\n border-radius: 3px;\n cursor: pointer;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\n background-color: var(--color-background-dark);\n}\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\n flex-grow: 1;\n padding: 3px;\n max-width: calc(100% - 30px);\n display: flex;\n}\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\n display: inline-block;\n vertical-align: top;\n margin-right: 10px;\n}\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\n text-overflow: ellipsis;\n overflow: hidden;\n position: relative;\n vertical-align: top;\n white-space: nowrap;\n flex-grow: 1;\n padding: 4px;\n}\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\n width: 24px;\n height: 24px;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\n opacity: .7;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\n opacity: 1;\n}\n.shouldshake[data-v-8e58e0a5] {\n animation: shake-8e58e0a5 .6s 1 linear;\n}\n@keyframes shake-8e58e0a5 {\n 0% {\n transform: translate(15px);\n }\n 20% {\n transform: translate(-15px);\n }\n 40% {\n transform: translate(7px);\n }\n 60% {\n transform: translate(-7px);\n }\n 80% {\n transform: translate(3px);\n }\n to {\n transform: translate(0);\n }\n}\n.collection-list *[data-v-75a4370b] {\n box-sizing: border-box;\n}\n.collection-list > li[data-v-75a4370b] {\n display: flex;\n align-items: start;\n gap: 12px;\n}\n.collection-list > li > .avatar[data-v-75a4370b] {\n margin-top: auto;\n}\n#collection-select-container[data-v-75a4370b] {\n display: flex;\n flex-direction: column;\n}\n.v-select span.avatar[data-v-75a4370b] {\n display: block;\n padding: 16px;\n opacity: .7;\n background-repeat: no-repeat;\n background-position: center;\n}\n.v-select span.avatar[data-v-75a4370b]:hover {\n opacity: 1;\n}\np.hint[data-v-75a4370b] {\n z-index: 1;\n margin-top: -16px;\n padding: 8px;\n color: var(--color-text-maxcontrast);\n line-height: normal;\n}\ndiv.avatar[data-v-75a4370b] {\n width: 32px;\n height: 32px;\n margin: 30px 0 0;\n padding: 8px;\n background-color: var(--color-background-dark);\n}\n.icon-projects[data-v-75a4370b] {\n display: block;\n padding: 8px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.option__wrapper[data-v-75a4370b] {\n display: flex;\n}\n.option__wrapper .avatar[data-v-75a4370b] {\n display: block;\n background-color: var(--color-background-darker) !important;\n}\n.option__wrapper .option__title[data-v-75a4370b] {\n padding: 4px;\n}\n.fade-enter-active[data-v-75a4370b],\n.fade-leave-active[data-v-75a4370b] {\n transition: opacity .5s;\n}\n.fade-enter[data-v-75a4370b],\n.fade-leave-to[data-v-75a4370b] {\n opacity: 0;\n}\n","",{version:3,sources:["webpack://./node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css"],names:[],mappings:"AAAA;;EAEE,4BAA4B;AAC9B;AACA;;EAEE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,aAAa;EACb,YAAY;EACZ,cAAc;EACd,4BAA4B;EAC5B,2BAA2B;EAC3B,WAAW;AACb;AACA;EACE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;AAChB;AACA;EACE,eAAe;EACf,YAAY;EACZ,eAAe;EACf,2BAA2B;AAC7B;AACA;EACE,eAAe;AACjB;AACA;;EAEE,eAAe;EACf,YAAY;EACZ,aAAa;AACf;AACA;EACE,iBAAiB;AACnB;AACA;EACE,eAAe;EACf,6CAA6C;AAC/C;AACA;EACE,YAAY;AACd;AACA;;EAEE,gBAAgB;EAChB,WAAW;AACb;AACA;EACE,aAAa;EACb,iBAAiB;EACjB,kBAAkB;EAClB,eAAe;AACjB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,YAAY;EACZ,YAAY;EACZ,4BAA4B;EAC5B,aAAa;AACf;AACA;EACE,qBAAqB;EACrB,mBAAmB;EACnB,kBAAkB;AACpB;AACA;EACE,uBAAuB;EACvB,gBAAgB;EAChB,kBAAkB;EAClB,mBAAmB;EACnB,mBAAmB;EACnB,YAAY;EACZ,YAAY;AACd;AACA;EACE,WAAW;EACX,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;;EAEE,UAAU;AACZ;AACA;EACE,sCAAsC;AACxC;AACA;EACE;IACE,0BAA0B;EAC5B;EACA;IACE,2BAA2B;EAC7B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,0BAA0B;EAC5B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,uBAAuB;EACzB;AACF;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,kBAAkB;EAClB,SAAS;AACX;AACA;EACE,gBAAgB;AAClB;AACA;EACE,aAAa;EACb,sBAAsB;AACxB;AACA;EACE,cAAc;EACd,aAAa;EACb,WAAW;EACX,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,UAAU;AACZ;AACA;EACE,UAAU;EACV,iBAAiB;EACjB,YAAY;EACZ,oCAAoC;EACpC,mBAAmB;AACrB;AACA;EACE,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;EACZ,8CAA8C;AAChD;AACA;EACE,cAAc;EACd,YAAY;EACZ,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;EACd,2DAA2D;AAC7D;AACA;EACE,YAAY;AACd;AACA;;EAEE,uBAAuB;AACzB;AACA;;EAEE,UAAU;AACZ",sourcesContent:[".fade-enter-active[data-v-8e58e0a5],\n.fade-leave-active[data-v-8e58e0a5] {\n transition: opacity .3s ease;\n}\n.fade-enter[data-v-8e58e0a5],\n.fade-leave-to[data-v-8e58e0a5] {\n opacity: 0;\n}\n.linked-icons[data-v-8e58e0a5] {\n display: flex;\n}\n.linked-icons img[data-v-8e58e0a5] {\n padding: 12px;\n height: 44px;\n display: block;\n background-repeat: no-repeat;\n background-position: center;\n opacity: .7;\n}\n.linked-icons img[data-v-8e58e0a5]:hover {\n opacity: 1;\n}\n.popovermenu[data-v-8e58e0a5] {\n display: none;\n}\n.popovermenu.open[data-v-8e58e0a5] {\n display: block;\n}\nli.collection-list-item[data-v-8e58e0a5] {\n flex-wrap: wrap;\n height: auto;\n cursor: pointer;\n margin-bottom: 0 !important;\n}\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\n margin-top: 6px;\n}\nli.collection-list-item form[data-v-8e58e0a5],\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n flex-basis: 10%;\n flex-grow: 1;\n display: flex;\n}\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n padding: 12px 9px;\n}\nli.collection-list-item input[data-v-8e58e0a5] {\n margin-top: 4px;\n border-color: var(--color-border-maxcontrast);\n}\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\n flex-grow: 1;\n}\nli.collection-list-item .error[data-v-8e58e0a5],\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\n flex-basis: 100%;\n width: 100%;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\n display: flex;\n margin-left: 44px;\n border-radius: 3px;\n cursor: pointer;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\n background-color: var(--color-background-dark);\n}\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\n flex-grow: 1;\n padding: 3px;\n max-width: calc(100% - 30px);\n display: flex;\n}\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\n display: inline-block;\n vertical-align: top;\n margin-right: 10px;\n}\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\n text-overflow: ellipsis;\n overflow: hidden;\n position: relative;\n vertical-align: top;\n white-space: nowrap;\n flex-grow: 1;\n padding: 4px;\n}\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\n width: 24px;\n height: 24px;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\n opacity: .7;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\n opacity: 1;\n}\n.shouldshake[data-v-8e58e0a5] {\n animation: shake-8e58e0a5 .6s 1 linear;\n}\n@keyframes shake-8e58e0a5 {\n 0% {\n transform: translate(15px);\n }\n 20% {\n transform: translate(-15px);\n }\n 40% {\n transform: translate(7px);\n }\n 60% {\n transform: translate(-7px);\n }\n 80% {\n transform: translate(3px);\n }\n to {\n transform: translate(0);\n }\n}\n.collection-list *[data-v-75a4370b] {\n box-sizing: border-box;\n}\n.collection-list > li[data-v-75a4370b] {\n display: flex;\n align-items: start;\n gap: 12px;\n}\n.collection-list > li > .avatar[data-v-75a4370b] {\n margin-top: auto;\n}\n#collection-select-container[data-v-75a4370b] {\n display: flex;\n flex-direction: column;\n}\n.v-select span.avatar[data-v-75a4370b] {\n display: block;\n padding: 16px;\n opacity: .7;\n background-repeat: no-repeat;\n background-position: center;\n}\n.v-select span.avatar[data-v-75a4370b]:hover {\n opacity: 1;\n}\np.hint[data-v-75a4370b] {\n z-index: 1;\n margin-top: -16px;\n padding: 8px;\n color: var(--color-text-maxcontrast);\n line-height: normal;\n}\ndiv.avatar[data-v-75a4370b] {\n width: 32px;\n height: 32px;\n margin: 30px 0 0;\n padding: 8px;\n background-color: var(--color-background-dark);\n}\n.icon-projects[data-v-75a4370b] {\n display: block;\n padding: 8px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.option__wrapper[data-v-75a4370b] {\n display: flex;\n}\n.option__wrapper .avatar[data-v-75a4370b] {\n display: block;\n background-color: var(--color-background-darker) !important;\n}\n.option__wrapper .option__title[data-v-75a4370b] {\n padding: 4px;\n}\n.fade-enter-active[data-v-75a4370b],\n.fade-leave-active[data-v-75a4370b] {\n transition: opacity .5s;\n}\n.fade-enter[data-v-75a4370b],\n.fade-leave-to[data-v-75a4370b] {\n opacity: 0;\n}\n"],sourceRoot:""}]);const o=s},36381:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-939d5de0]{display:flex;align-items:center;height:44px}.sharing-entry__summary[data-v-939d5de0]{padding:8px;padding-left:10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0;min-width:0}.sharing-entry__summary__desc[data-v-939d5de0]{display:inline-block;padding-bottom:0;line-height:1.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sharing-entry__summary__desc p[data-v-939d5de0],.sharing-entry__summary__desc small[data-v-939d5de0]{color:var(--color-text-maxcontrast)}.sharing-entry__summary__desc-unique[data-v-939d5de0]{color:var(--color-text-maxcontrast)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntry.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,sBAAA,CACA,QAAA,CACA,WAAA,CAEA,+CACC,oBAAA,CACA,gBAAA,CACA,iBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAEA,sGAEC,mCAAA,CAGD,sDACC,mCAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\talign-items: flex-start;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\n\t\t&__desc {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding-bottom: 0;\n\t\t\tline-height: 1.2em;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\tp,\n\t\t\tsmall {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&-unique {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\t\t}\n\t}\n\n}\n"],sourceRoot:""}]);const o=s},41699:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-283ca89e]{display:flex;align-items:center;height:44px}.sharing-entry__desc[data-v-283ca89e]{display:flex;flex-direction:column;justify-content:space-between;padding:8px;padding-left:10px;line-height:1.2em}.sharing-entry__desc p[data-v-283ca89e]{color:var(--color-text-maxcontrast)}.sharing-entry__actions[data-v-283ca89e]{margin-left:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInherited.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,sCACC,YAAA,CACA,qBAAA,CACA,6BAAA,CACA,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,wCACC,mCAAA,CAGF,yCACC,gBAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__desc {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__actions {\n\t\tmargin-left: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=s},16469:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry__internal .avatar-external[data-v-e40cd936]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}.sharing-entry__internal .icon-checkmark-color[data-v-e40cd936]{opacity:1;color:var(--color-success)}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryInternal.vue"],names:[],mappings:"AAEC,2DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA,CAED,gEACC,SAAA,CACA,0BAAA",sourcesContent:["\n.sharing-entry__internal {\n\t.avatar-external {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n"],sourceRoot:""}]);const o=s},16824:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-74a80015]{display:flex;align-items:center;min-height:44px}.sharing-entry__summary[data-v-74a80015]{padding:8px;padding-left:10px;display:flex;justify-content:space-between;flex:1 0;min-width:0}.sharing-entry__desc[data-v-74a80015]{display:flex;flex-direction:column;line-height:1.2em}.sharing-entry__desc p[data-v-74a80015]{color:var(--color-text-maxcontrast)}.sharing-entry__desc__title[data-v-74a80015]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.sharing-entry:not(.sharing-entry--share) .sharing-entry__actions .new-share-link[data-v-74a80015]{border-top:1px solid var(--color-border)}.sharing-entry[data-v-74a80015] .avatar-link-share{background-color:var(--color-primary-element)}.sharing-entry .sharing-entry__action--public-upload[data-v-74a80015]{border-bottom:1px solid var(--color-border)}.sharing-entry__loading[data-v-74a80015]{width:44px;height:44px;margin:0;padding:14px;margin-left:auto}.sharing-entry .action-item~.action-item[data-v-74a80015],.sharing-entry .action-item~.sharing-entry__loading[data-v-74a80015]{margin-left:0}.sharing-entry .icon-checkmark-color[data-v-74a80015]{opacity:1;color:var(--color-success)}.qr-code-dialog[data-v-74a80015]{display:flex;width:100%;justify-content:center}.qr-code-dialog__img[data-v-74a80015]{width:100%;height:auto}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryLink.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,6BAAA,CACA,QAAA,CACA,WAAA,CAGA,sCACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,wCACC,mCAAA,CAGD,6CACC,sBAAA,CACA,eAAA,CACA,kBAAA,CAKF,mGACC,wCAAA,CAIF,mDACC,6CAAA,CAGD,sEACC,2CAAA,CAGD,yCACC,UAAA,CACA,WAAA,CACA,QAAA,CACA,YAAA,CACA,gBAAA,CAOA,+HAEC,aAAA,CAIF,sDACC,SAAA,CACA,0BAAA,CAKF,iCACC,YAAA,CACA,UAAA,CACA,sBAAA,CAEA,sCACC,UAAA,CACA,WAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\t}\n\n\t\t&__desc {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tline-height: 1.2em;\n\n\t\t\tp {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&__title {\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\t\t}\n\n\t&:not(.sharing-entry--share) &__actions {\n\t\t.new-share-link {\n\t\t\tborder-top: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t::v-deep .avatar-link-share {\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t.sharing-entry__action--public-upload {\n\t\tborder-bottom: 1px solid var(--color-border);\n\t}\n\n\t&__loading {\n\t\twidth: 44px;\n\t\theight: 44px;\n\t\tmargin: 0;\n\t\tpadding: 14px;\n\t\tmargin-left: auto;\n\t}\n\n\t// put menus to the left\n\t// but only the first one\n\t.action-item {\n\n\t\t~.action-item,\n\t\t~.sharing-entry__loading {\n\t\t\tmargin-left: 0;\n\t\t}\n\t}\n\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n\n// styling for the qr-code container\n.qr-code-dialog {\n\tdisplay: flex;\n\twidth: 100%;\n\tjustify-content: center;\n\n\t&__img {\n\t\twidth: 100%;\n\t\theight: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=s},77819:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".share-select[data-v-dab76140]{display:block}.share-select[data-v-dab76140] .action-item__menutoggle{color:var(--color-primary-element) !important;font-size:12.5px !important;height:auto !important;min-height:auto !important}.share-select[data-v-dab76140] .action-item__menutoggle .button-vue__text{font-weight:normal !important}.share-select[data-v-dab76140] .action-item__menutoggle .button-vue__icon{height:24px !important;min-height:24px !important;width:24px !important;min-width:24px !important}.share-select[data-v-dab76140] .action-item__menutoggle .button-vue__wrapper{flex-direction:row-reverse !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue"],names:[],mappings:"AACA,+BACC,aAAA,CAIA,wDACC,6CAAA,CACA,2BAAA,CACA,sBAAA,CACA,0BAAA,CAEA,0EACC,6BAAA,CAGD,0EACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAGD,6EAEC,qCAAA",sourcesContent:["\n.share-select {\n\tdisplay: block;\n\n\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\n\t// Overrider NcActionms button to make it small\n\t:deep(.action-item__menutoggle) {\n\t\tcolor: var(--color-primary-element) !important;\n\t\tfont-size: 12.5px !important;\n\t\theight: auto !important;\n\t\tmin-height: auto !important;\n\n\t\t.button-vue__text {\n\t\t\tfont-weight: normal !important;\n\t\t}\n\n\t\t.button-vue__icon {\n\t\t\theight: 24px !important;\n\t\t\tmin-height: 24px !important;\n\t\t\twidth: 24px !important;\n\t\t\tmin-width: 24px !important;\n\t\t}\n\n\t\t.button-vue__wrapper {\n\t\t\t// Emulate NcButton's alignment=center-reverse\n\t\t\tflex-direction: row-reverse !important;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=s},17557:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry[data-v-1852ea78]{display:flex;align-items:center;min-height:44px}.sharing-entry__desc[data-v-1852ea78]{padding:8px;padding-left:10px;line-height:1.2em;position:relative;flex:1 1;min-width:0}.sharing-entry__desc p[data-v-1852ea78]{color:var(--color-text-maxcontrast)}.sharing-entry__title[data-v-1852ea78]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:inherit}.sharing-entry__actions[data-v-1852ea78]{margin-left:auto !important}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingEntrySimple.vue"],names:[],mappings:"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CACA,sCACC,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,wCACC,mCAAA,CAGF,uCACC,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,iBAAA,CAED,yCACC,2BAAA",sourcesContent:["\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\t&__desc {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tposition: relative;\n\t\tflex: 1 1;\n\t\tmin-width: 0;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__title {\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tmax-width: inherit;\n\t}\n\t&__actions {\n\t\tmargin-left: auto !important;\n\t}\n}\n"],sourceRoot:""}]);const o=s},82162:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-search{display:flex;flex-direction:column;margin-bottom:4px}.sharing-search label[for=sharing-search-input]{margin-bottom:2px}.sharing-search__input{width:100%;margin:10px 0}.vs__dropdown-menu span[lookup] .avatardiv{background-image:var(--icon-search-white);background-repeat:no-repeat;background-position:center;background-color:var(--color-text-maxcontrast) !important}.vs__dropdown-menu span[lookup] .avatardiv .avatardiv__initials-wrapper{display:none}","",{version:3,sources:["webpack://./apps/files_sharing/src/components/SharingInput.vue"],names:[],mappings:"AACA,gBACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,gDACC,iBAAA,CAGD,uBACC,UAAA,CACA,aAAA,CAOA,2CACC,yCAAA,CACA,2BAAA,CACA,0BAAA,CACA,yDAAA,CACA,wEACC,YAAA",sourcesContent:['\n.sharing-search {\n\tdisplay: flex;\n\tflex-direction: column;\n\tmargin-bottom: 4px;\n\n\tlabel[for="sharing-search-input"] {\n\t\tmargin-bottom: 2px;\n\t}\n\n\t&__input {\n\t\twidth: 100%;\n\t\tmargin: 10px 0;\n\t}\n}\n\n.vs__dropdown-menu {\n\t// properly style the lookup entry\n\tspan[lookup] {\n\t\t.avatardiv {\n\t\t\tbackground-image: var(--icon-search-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-color: var(--color-text-maxcontrast) !important;\n\t\t\t.avatardiv__initials-wrapper {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const o=s},10144:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharingTabDetailsView[data-v-56215dac]{display:flex;flex-direction:column;width:100%;margin:0 auto;position:relative;height:100%;overflow:hidden}.sharingTabDetailsView__header[data-v-56215dac]{display:flex;align-items:center;box-sizing:border-box;margin:.2em}.sharingTabDetailsView__header span[data-v-56215dac]{display:flex;align-items:center}.sharingTabDetailsView__header span h1[data-v-56215dac]{font-size:15px;padding-left:.3em}.sharingTabDetailsView__wrapper[data-v-56215dac]{position:relative;overflow:scroll;flex-shrink:1;padding:4px;padding-right:12px}.sharingTabDetailsView__quick-permissions[data-v-56215dac]{display:flex;justify-content:center;width:100%;margin:0 auto;border-radius:0}.sharingTabDetailsView__quick-permissions div[data-v-56215dac]{width:100%}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac]{width:100%}.sharingTabDetailsView__quick-permissions div span span[data-v-56215dac]:nth-child(1){align-items:center;justify-content:center;padding:.1em}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac] label span{display:flex;flex-direction:column}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac] span.checkbox-content__text.checkbox-radio-switch__text{flex-wrap:wrap}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac] span.checkbox-content__text.checkbox-radio-switch__text .subline{display:block;flex-basis:100%}.sharingTabDetailsView__advanced-control[data-v-56215dac]{width:100%}.sharingTabDetailsView__advanced-control button[data-v-56215dac]{margin-top:.5em}.sharingTabDetailsView__advanced[data-v-56215dac]{width:100%;margin-bottom:.5em;text-align:left;padding-left:0}.sharingTabDetailsView__advanced section textarea[data-v-56215dac],.sharingTabDetailsView__advanced section div.mx-datepicker[data-v-56215dac]{width:100%}.sharingTabDetailsView__advanced section textarea[data-v-56215dac]{height:80px;margin:0}.sharingTabDetailsView__advanced section span[data-v-56215dac] label{padding-left:0 !important;background-color:initial !important;border:none !important}.sharingTabDetailsView__advanced section section.custom-permissions-group[data-v-56215dac]{padding-left:1.5em}.sharingTabDetailsView__delete>button[data-v-56215dac]:first-child{color:#df0707}.sharingTabDetailsView__footer[data-v-56215dac]{width:100%;display:flex;position:sticky;bottom:0;flex-direction:column;justify-content:space-between;align-items:flex-start;background:linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background))}.sharingTabDetailsView__footer .button-group[data-v-56215dac]{display:flex;justify-content:space-between;width:100%;margin-top:16px}.sharingTabDetailsView__footer .button-group button[data-v-56215dac]{margin-left:16px}.sharingTabDetailsView__footer .button-group button[data-v-56215dac]:first-child{margin-left:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingDetailsTab.vue"],names:[],mappings:"AACA,wCACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,eAAA,CAEA,gDACC,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,wDACC,cAAA,CACA,iBAAA,CAMH,iDACC,iBAAA,CACA,eAAA,CACA,aAAA,CACA,WAAA,CACA,kBAAA,CAGD,2DACC,YAAA,CACA,sBAAA,CACA,UAAA,CACA,aAAA,CACA,eAAA,CAEA,+DACC,UAAA,CAEA,oEACC,UAAA,CAEA,sFACC,kBAAA,CACA,sBAAA,CACA,YAAA,CAKA,+EACC,YAAA,CACA,qBAAA,CAKF,4HACC,cAAA,CAEA,qIACC,aAAA,CACA,eAAA,CAQL,0DACC,UAAA,CAEA,iEACC,eAAA,CAKF,kDACC,UAAA,CACA,kBAAA,CACA,eAAA,CACA,cAAA,CAIC,+IAEC,UAAA,CAGD,mEACC,WAAA,CACA,QAAA,CAaA,qEACC,yBAAA,CACA,mCAAA,CACA,sBAAA,CAIF,2FACC,kBAAA,CAMF,mEACC,aAAA,CAIF,gDACC,UAAA,CACA,YAAA,CACA,eAAA,CACA,QAAA,CACA,qBAAA,CACA,6BAAA,CACA,sBAAA,CACA,2FAAA,CAEA,8DACC,YAAA,CACA,6BAAA,CACA,UAAA,CACA,eAAA,CAEA,qEACC,gBAAA,CAEA,iFACC,aAAA",sourcesContent:["\n.sharingTabDetailsView {\n\tdisplay: flex;\n\tflex-direction: column;\n\twidth: 100%;\n\tmargin: 0 auto;\n\tposition: relative;\n\theight: 100%;\n\toverflow: hidden;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tbox-sizing: border-box;\n\t\tmargin: 0.2em;\n\n\t\tspan {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\th1 {\n\t\t\t\tfont-size: 15px;\n\t\t\t\tpadding-left: 0.3em;\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\toverflow: scroll;\n\t\tflex-shrink: 1;\n\t\tpadding: 4px;\n\t\tpadding-right: 12px;\n\t}\n\n\t&__quick-permissions {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\tmargin: 0 auto;\n\t\tborder-radius: 0;\n\n\t\tdiv {\n\t\t\twidth: 100%;\n\n\t\t\tspan {\n\t\t\t\twidth: 100%;\n\n\t\t\t\tspan:nth-child(1) {\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tjustify-content: center;\n\t\t\t\t\tpadding: 0.1em;\n\t\t\t\t}\n\n\t\t\t\t::v-deep label {\n\n\t\t\t\t\tspan {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-direction: column;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\n\t\t\t\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\n\t\t\t\t\tflex-wrap: wrap;\n\n\t\t\t\t\t.subline {\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\tflex-basis: 100%;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__advanced-control {\n\t\twidth: 100%;\n\n\t\tbutton {\n\t\t\tmargin-top: 0.5em;\n\t\t}\n\n\t}\n\n\t&__advanced {\n\t\twidth: 100%;\n\t\tmargin-bottom: 0.5em;\n\t\ttext-align: left;\n\t\tpadding-left: 0;\n\n\t\tsection {\n\n\t\t\ttextarea,\n\t\t\tdiv.mx-datepicker {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttextarea {\n\t\t\t\theight: 80px;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t/*\n The following style is applied out of the component's scope\n to remove padding from the label.checkbox-radio-switch__label,\n which is used to group radio checkbox items. The use of ::v-deep\n ensures that the padding is modified without being affected by\n the component's scoping.\n Without this achieving left alignment for the checkboxes would not\n be possible.\n */\n\t\t\tspan {\n\t\t\t\t::v-deep label {\n\t\t\t\t\tpadding-left: 0 !important;\n\t\t\t\t\tbackground-color: initial !important;\n\t\t\t\t\tborder: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsection.custom-permissions-group {\n\t\t\t\tpadding-left: 1.5em;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__delete {\n\t\t>button:first-child {\n\t\t\tcolor: rgb(223, 7, 7);\n\t\t}\n\t}\n\n\t&__footer {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\talign-items: flex-start;\n\t\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\n\n\t\t.button-group {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t\tmargin-top: 16px;\n\n\t\t\tbutton {\n\t\t\t\tmargin-left: 16px;\n\n\t\t\t\t&:first-child {\n\t\t\t\t\tmargin-left: 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=s},4442:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".sharing-entry__inherited .avatar-shared[data-v-50f9af8c]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingInherited.vue"],names:[],mappings:"AAEC,0DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA",sourcesContent:["\n.sharing-entry__inherited {\n\t.avatar-shared {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n}\n"],sourceRoot:""}]);const o=s},3316:(t,e,i)=>{"use strict";i.d(e,{A:()=>o});var n=i(71354),r=i.n(n),a=i(76314),s=i.n(a)()(r());s.push([t.id,".emptyContentWithSections[data-v-a65c443a]{margin:1rem auto}.sharingTab[data-v-a65c443a]{position:relative;height:100%}.sharingTab__content[data-v-a65c443a]{padding:0 6px}.sharingTab__additionalContent[data-v-a65c443a]{margin:44px 0}","",{version:3,sources:["webpack://./apps/files_sharing/src/views/SharingTab.vue"],names:[],mappings:"AACA,2CACC,gBAAA,CAGD,6BACC,iBAAA,CACA,WAAA,CAEA,sCACC,aAAA,CAGD,gDACC,aAAA",sourcesContent:["\n.emptyContentWithSections {\n\tmargin: 1rem auto;\n}\n\n.sharingTab {\n\tposition: relative;\n\theight: 100%;\n\n\t&__content {\n\t\tpadding: 0 6px;\n\t}\n\n\t&__additionalContent {\n\t\tmargin: 44px 0;\n\t}\n}\n"],sourceRoot:""}]);const o=s},37023:(t,e,i)=>{"use strict";e.KT=void 0,i(25440),e.KT=(t,e,i)=>{const a=1===Object.assign({ocsVersion:2},i||{}).ocsVersion?1:2;return window.location.protocol+"//"+window.location.host+r()+"/ocs/v"+a+".php"+n(t,e,i)};const n=(t,e,i)=>{const n=Object.assign({escape:!0},i||{});return"/"!==t.charAt(0)&&(t="/"+t),r=(r=e||{})||{},t.replace(/{([^{}]*)}/g,(function(t,e){var i=r[e];return n.escape?"string"==typeof i||"number"==typeof i?encodeURIComponent(i.toString()):encodeURIComponent(t):"string"==typeof i||"number"==typeof i?i.toString():t}));var r};function r(){let t=window._oc_webroot;if(void 0===t){t=location.pathname;const e=t.indexOf("/index.php/");t=-1!==e?t.substr(0,e):t.substr(0,t.lastIndexOf("/"))}return t}},48318:function(t,e,i){!function(t){"use strict";var e,i=function(){try{if(t.URLSearchParams&&"bar"===new t.URLSearchParams("foo=bar").get("foo"))return t.URLSearchParams}catch(t){}return null}(),n=i&&"a=1"===new i({a:1}).toString(),r=i&&"+"===new i("s=%2B").get("s"),a=i&&"size"in i.prototype,s="__URLSearchParams__",o=!i||((e=new i).append("s"," &"),"s=+%26"===e.toString()),l=p.prototype,c=!(!t.Symbol||!t.Symbol.iterator);if(!(i&&n&&r&&o&&a)){l.append=function(t,e){v(this[s],t,e)},l.delete=function(t){delete this[s][t]},l.get=function(t){var e=this[s];return this.has(t)?e[t][0]:null},l.getAll=function(t){var e=this[s];return this.has(t)?e[t].slice(0):[]},l.has=function(t){return y(this[s],t)},l.set=function(t,e){this[s][t]=[""+e]},l.toString=function(){var t,e,i,n,r=this[s],a=[];for(e in r)for(i=f(e),t=0,n=r[e];t<n.length;t++)a.push(i+"="+f(n[t]));return a.join("&")};var h,u=t.Proxy&&i&&(!r||!o||!n||!a);u?(h=new Proxy(i,{construct:function(t,e){return new t(new p(e[0]).toString())}})).toString=Function.prototype.toString.bind(p):h=p,Object.defineProperty(t,"URLSearchParams",{value:h});var d=t.URLSearchParams.prototype;d.polyfill=!0,!u&&t.Symbol&&(d[t.Symbol.toStringTag]="URLSearchParams"),"forEach"in d||(d.forEach=function(t,e){var i=m(this.toString());Object.getOwnPropertyNames(i).forEach((function(n){i[n].forEach((function(i){t.call(e,i,n,this)}),this)}),this)}),"sort"in d||(d.sort=function(){var t,e,i,n=m(this.toString()),r=[];for(t in n)r.push(t);for(r.sort(),e=0;e<r.length;e++)this.delete(r[e]);for(e=0;e<r.length;e++){var a=r[e],s=n[a];for(i=0;i<s.length;i++)this.append(a,s[i])}}),"keys"in d||(d.keys=function(){var t=[];return this.forEach((function(e,i){t.push(i)})),g(t)}),"values"in d||(d.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),g(t)}),"entries"in d||(d.entries=function(){var t=[];return this.forEach((function(e,i){t.push([i,e])})),g(t)}),c&&(d[t.Symbol.iterator]=d[t.Symbol.iterator]||d.entries),"size"in d||Object.defineProperty(d,"size",{get:function(){var t=m(this.toString());if(d===this)throw new TypeError("Illegal invocation at URLSearchParams.invokeGetter");return Object.keys(t).reduce((function(e,i){return e+t[i].length}),0)}})}function p(t){((t=t||"")instanceof URLSearchParams||t instanceof p)&&(t=t.toString()),this[s]=m(t)}function f(t){var e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'\(\)~]|%20|%00/g,(function(t){return e[t]}))}function A(t){return t.replace(/[ +]/g,"%20").replace(/(%[a-f0-9]{2})+/gi,(function(t){return decodeURIComponent(t)}))}function g(e){var i={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return c&&(i[t.Symbol.iterator]=function(){return i}),i}function m(t){var e={};if("object"==typeof t)if(_(t))for(var i=0;i<t.length;i++){var n=t[i];if(!_(n)||2!==n.length)throw new TypeError("Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements");v(e,n[0],n[1])}else for(var r in t)t.hasOwnProperty(r)&&v(e,r,t[r]);else{0===t.indexOf("?")&&(t=t.slice(1));for(var a=t.split("&"),s=0;s<a.length;s++){var o=a[s],l=o.indexOf("=");-1<l?v(e,A(o.slice(0,l)),A(o.slice(l+1))):o&&v(e,A(o),"")}}return e}function v(t,e,i){var n="string"==typeof i?i:null!=i&&"function"==typeof i.toString?i.toString():JSON.stringify(i);y(t,e)?t[e].push(n):t[e]=[n]}function _(t){return!!t&&"[object Array]"===Object.prototype.toString.call(t)}function y(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(void 0!==i.g?i.g:"undefined"!=typeof window?window:this)},76322:(e,i,n)=>{"use strict";n.r(i),n.d(i,{default:()=>Ii});var r=n(85072),a=n.n(r),s=n(97825),o=n.n(s),l=n(77659),c=n.n(l),h=n(55056),u=n.n(h),d=n(10540),p=n.n(d),f=n(41113),A=n.n(f),g=n(86243),m={};m.styleTagTransform=A(),m.setAttributes=u(),m.insert=c().bind(null,"head"),m.domAPI=o(),m.insertStyleElement=p(),a()(g.A,m),g.A&&g.A.locals&&g.A.locals;var v=n(41944),_=n(67607);const y=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)},C="object"==typeof global&&global&&global.Object===Object&&global;var w="object"==typeof self&&self&&self.Object===Object&&self;const E=C||w||Function("return this")(),b=function(){return E.Date.now()};var S=/\s/;var x=/^\s+/;const T=function(t){return t?t.slice(0,function(t){for(var e=t.length;e--&&S.test(t.charAt(e)););return e}(t)+1).replace(x,""):t},P=E.Symbol;var k=Object.prototype,R=k.hasOwnProperty,D=k.toString,I=P?P.toStringTag:void 0;var B=Object.prototype.toString;var N=P?P.toStringTag:void 0;const L=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":N&&N in Object(t)?function(t){var e=R.call(t,I),i=t[I];try{t[I]=void 0;var n=!0}catch(t){}var r=D.call(t);return n&&(e?t[I]=i:delete t[I]),r}(t):function(t){return B.call(t)}(t)};var H=/^[-+]0x[0-9a-f]+$/i,O=/^0b[01]+$/i,M=/^0o[0-7]+$/i,Y=parseInt;const U=function(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return null!=t&&"object"==typeof t}(t)&&"[object Symbol]"==L(t)}(t))return NaN;if(y(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=y(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=T(t);var i=O.test(t);return i||M.test(t)?Y(t.slice(2),i?2:8):H.test(t)?NaN:+t};var V=Math.max,F=Math.min;var z=n(24764),j=n(89257),q=n(85471),W=n(65043),$=n(37023),K=n(96763);const G=new class{constructor(){this.http=W.Ay}listCollection(t){return this.http.get((0,$.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}))}renameCollection(t,e){return this.http.put((0,$.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}),{collectionName:e}).then((t=>t.data.ocs.data))}getCollectionsByResource(t,e){return this.http.get((0,$.KT)("collaboration/resources/{resourceType}/{resourceId}",{resourceType:t,resourceId:e})).then((t=>t.data.ocs.data))}createCollection(t,e,i){return this.http.post((0,$.KT)("collaboration/resources/{resourceType}/{resourceId}",{resourceType:t,resourceId:e}),{name:i}).then((t=>t.data.ocs.data))}addResource(t,e,i){return i=""+i,this.http.post((0,$.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}),{resourceType:e,resourceId:i}).then((t=>t.data.ocs.data))}removeResource(t,e,i){return this.http.delete((0,$.KT)("collaboration/resources/collections/{collectionId}",{collectionId:t}),{params:{resourceType:e,resourceId:i}}).then((t=>t.data.ocs.data))}search(t){return this.http.get((0,$.KT)("collaboration/resources/collections/search/{query}",{query:t})).then((t=>t.data.ocs.data))}},Z=q.Ay.observable({collections:[]}),Q={addCollections(t){(0,q.hZ)(Z,"collections",t)},addCollection(t){Z.collections.push(t)},removeCollection(t){(0,q.hZ)(Z,"collections",Z.collections.filter((e=>e.id!==t)))},updateCollection(t){const e=Z.collections.findIndex((e=>e.id===t.id));-1!==e?(0,q.hZ)(Z.collections,e,t):Z.collections.push(t)}},J={fetchCollectionsByResource:({resourceType:t,resourceId:e})=>G.getCollectionsByResource(t,e).then((t=>(Q.addCollections(t),t))),createCollection:({baseResourceType:t,baseResourceId:e,resourceType:i,resourceId:n,name:r})=>G.createCollection(t,e,r).then((t=>{Q.addCollection(t),J.addResourceToCollection({collectionId:t.id,resourceType:i,resourceId:n})})),renameCollection:({collectionId:t,name:e})=>G.renameCollection(t,e).then((t=>(Q.updateCollection(t),t))),addResourceToCollection:({collectionId:t,resourceType:e,resourceId:i})=>G.addResource(t,e,i).then((t=>(Q.updateCollection(t),t))),removeResource:({collectionId:t,resourceType:e,resourceId:i})=>G.removeResource(t,e,i).then((t=>{t.resources.length>0?Q.updateCollection(t):Q.removeCollection(t)})),search:t=>G.search(t)};function X(t,e,i,n,r,a,s,o){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=i,c._compiled=!0),n&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),s?(l=function(t){!(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)&&typeof __VUE_SSR_CONTEXT__<"u"&&(t=__VUE_SSR_CONTEXT__),r&&r.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(s)},c._ssrRegister=l):r&&(l=o?function(){r.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:r),l)if(c.functional){c._injectStyles=l;var h=c.render;c.render=function(t,e){return l.call(e),h(t,e)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:t,options:c}}const tt=X({name:"CollectionListItem",components:{NcAvatar:v.A,NcActions:z.A,NcActionButton:j.A},props:{collection:{type:Object,default:null}},data:()=>({detailsOpen:!1,newName:null,error:{}}),computed:{getIcon:()=>t=>[t.iconClass],typeClass:()=>t=>"resource-type-"+t.type,limitedResources:()=>t=>t.resources?t.resources.slice(0,2):[],iconUrl:()=>t=>t.mimetype?OC.MimeType.getIconUrl(t.mimetype):t.iconUrl?t.iconUrl:""},methods:{toggleDetails(){this.detailsOpen=!this.detailsOpen},showDetails(){this.detailsOpen=!0},hideDetails(){this.detailsOpen=!1},removeResource(t,e){J.removeResource({collectionId:t.id,resourceType:e.type,resourceId:e.id})},openRename(){this.newName=this.collection.name},renameCollection(){""!==this.newName?J.renameCollection({collectionId:this.collection.id,name:this.newName}).then((t=>{this.newName=null})).catch((e=>{this.$set(this.error,"rename",t("core","Failed to rename the project")),K.error(e),setTimeout((()=>{(0,q.hZ)(this.error,"rename",null)}),3e3)})):this.newName=null}}},(function(){var t=this,e=t._self._c;return e("li",{staticClass:"collection-list-item"},[e("NcAvatar",{staticClass:"collection-avatar",attrs:{"display-name":t.collection.name,"allow-placeholder":""}}),null===t.newName?e("span",{staticClass:"collection-item-name",attrs:{title:""},on:{click:t.showDetails}},[t._v(t._s(t.collection.name))]):e("form",{class:{shouldshake:t.error.rename},on:{submit:function(e){return e.preventDefault(),t.renameCollection.apply(null,arguments)}}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.newName,expression:"newName"}],attrs:{type:"text",autocomplete:"off",autocapitalize:"off"},domProps:{value:t.newName},on:{input:function(e){e.target.composing||(t.newName=e.target.value)}}}),e("input",{staticClass:"icon-confirm",attrs:{type:"submit",value:""}})]),t.detailsOpen||null!==t.newName?t._e():e("div",{staticClass:"linked-icons"},t._l(t.limitedResources(t.collection),(function(i){return e("a",{key:i.type+"|"+i.id,class:t.typeClass(i),attrs:{title:i.name,href:i.link}},[e("img",{attrs:{src:t.iconUrl(i)}})])})),0),null===t.newName?e("span",{staticClass:"sharingOptionsGroup"},[e("NcActions",[e("NcActionButton",{attrs:{icon:"icon-info"},on:{click:function(e){return e.preventDefault(),t.toggleDetails.apply(null,arguments)}}},[t._v(" "+t._s(t.detailsOpen?t.t("core","Hide details"):t.t("core","Show details"))+" ")]),e("NcActionButton",{attrs:{icon:"icon-rename"},on:{click:function(e){return e.preventDefault(),t.openRename.apply(null,arguments)}}},[t._v(" "+t._s(t.t("core","Rename project"))+" ")])],1)],1):t._e(),e("transition",{attrs:{name:"fade"}},[t.error.rename?e("div",{staticClass:"error"},[t._v(" "+t._s(t.error.rename)+" ")]):t._e()]),e("transition",{attrs:{name:"fade"}},[t.detailsOpen?e("ul",{staticClass:"resource-list-details"},t._l(t.collection.resources,(function(i){return e("li",{key:i.type+"|"+i.id,class:t.typeClass(i)},[e("a",{attrs:{href:i.link}},[e("img",{attrs:{src:t.iconUrl(i)}}),e("span",{staticClass:"resource-name"},[t._v(t._s(i.name||""))])]),e("span",{staticClass:"icon-close",on:{click:function(e){return t.removeResource(t.collection,i)}}})])})),0):t._e()])],1)}),[],!1,null,"8e58e0a5",null,null).exports,et=function(t,e,i){var n,r,a,s,o,l,c=0,h=!1,u=!1,d=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function p(e){var i=n,a=r;return n=r=void 0,c=e,s=t.apply(a,i)}function f(t){var i=t-l;return void 0===l||i>=e||i<0||u&&t-c>=a}function A(){var t=b();if(f(t))return g(t);o=setTimeout(A,function(t){var i=e-(t-l);return u?F(i,a-(t-c)):i}(t))}function g(t){return o=void 0,d&&n?p(t):(n=r=void 0,s)}function m(){var t=b(),i=f(t);if(n=arguments,r=this,l=t,i){if(void 0===o)return function(t){return c=t,o=setTimeout(A,e),h?p(t):s}(l);if(u)return clearTimeout(o),o=setTimeout(A,e),p(l)}return void 0===o&&(o=setTimeout(A,e)),s}return e=U(e)||0,y(i)&&(h=!!i.leading,a=(u="maxWait"in i)?V(U(i.maxWait)||0,e):a,d="trailing"in i?!!i.trailing:d),m.cancel=function(){void 0!==o&&clearTimeout(o),c=0,n=l=r=o=void 0},m.flush=function(){return void 0===o?s:g(b())},m}((function(t,e){""!==t&&(e(!0),J.search(t).then((t=>{this.searchCollections=t})).catch((t=>{K.error("Failed to search for collections",t)})).finally((()=>{e(!1)})))}),500,{}),it=X({name:"CollectionList",components:{CollectionListItem:tt,NcAvatar:v.A,NcSelect:_.A},props:{type:{type:String,default:null},id:{type:String,default:null},name:{type:String,default:""},isActive:{type:Boolean,default:!0}},data:()=>({selectIsOpen:!1,generatingCodes:!1,codes:void 0,value:null,model:{},searchCollections:[],error:null,state:Z,isSelectOpen:!1}),computed:{collections(){return this.state.collections.filter((t=>typeof t.resources.find((t=>t&&t.id===""+this.id&&t.type===this.type))<"u"))},placeholder(){return this.isSelectOpen?t("core","Type to search for existing projects"):t("core","Add to a project")},options(){const t=[];window.OCP.Collaboration.getTypes().sort().forEach((e=>{t.push({method:0,type:e,title:window.OCP.Collaboration.getLabel(e),class:window.OCP.Collaboration.getIcon(e),action:()=>window.OCP.Collaboration.trigger(e)})}));for(const e in this.searchCollections)-1===this.collections.findIndex((t=>t.id===this.searchCollections[e].id))&&t.push({method:1,title:this.searchCollections[e].name,collectionId:this.searchCollections[e].id});return t}},watch:{type(){this.isActive&&J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})},id(){this.isActive&&J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})},isActive(t){t&&J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})}},mounted(){J.fetchCollectionsByResource({resourceType:this.type,resourceId:this.id})},methods:{select(e,i){0===e.method&&e.action().then((i=>{J.createCollection({baseResourceType:this.type,baseResourceId:this.id,resourceType:e.type,resourceId:i,name:this.name}).catch((e=>{this.setError(t("core","Failed to create a project"),e)}))})).catch((t=>{K.error("No resource selected",t)})),1===e.method&&J.addResourceToCollection({collectionId:e.collectionId,resourceType:this.type,resourceId:this.id}).catch((e=>{this.setError(t("core","Failed to add the item to the project"),e)}))},search(t,e){et.bind(this)(t,e)},showSelect(){this.selectIsOpen=!0,this.$refs.select.$el.focus()},hideSelect(){this.selectIsOpen=!1},isVueComponent:t=>t._isVue,setError(t,e){K.error(t,e),this.error=t,setTimeout((()=>{this.error=null}),5e3)}}},(function(){var t=this,e=t._self._c;return t.collections&&t.type&&t.id?e("ul",{staticClass:"collection-list",attrs:{id:"collection-list"}},[e("li",{on:{click:t.showSelect}},[t._m(0),e("div",{attrs:{id:"collection-select-container"}},[e("NcSelect",{ref:"select",attrs:{"aria-label-combobox":t.t("core","Add to a project"),options:t.options,placeholder:t.placeholder,label:"title",limit:5},on:{close:function(e){t.isSelectOpen=!1},open:function(e){t.isSelectOpen=!0},"option:selected":t.select,search:t.search},scopedSlots:t._u([{key:"selected-option",fn:function(i){return[e("span",{staticClass:"option__desc"},[e("span",{staticClass:"option__title"},[t._v(t._s(i.title))])])]}},{key:"option",fn:function(i){return[e("span",{staticClass:"option__wrapper"},[i.class?e("span",{staticClass:"avatar",class:i.class}):2!==i.method?e("NcAvatar",{attrs:{"allow-placeholder":"","display-name":i.title}}):t._e(),e("span",{staticClass:"option__title"},[t._v(t._s(i.title))])],1)]}}],null,!1,2397208459),model:{value:t.value,callback:function(e){t.value=e},expression:"value"}},[e("p",{staticClass:"hint"},[t._v(" "+t._s(t.t("core","Connect items to a project to make them easier to find"))+" ")])])],1)]),e("transition",{attrs:{name:"fade"}},[t.error?e("li",{staticClass:"error"},[t._v(" "+t._s(t.error)+" ")]):t._e()]),t._l(t.collections,(function(t){return e("CollectionListItem",{key:t.id,attrs:{collection:t}})}))],2):t._e()}),[function(){var t=this._self._c;return t("div",{staticClass:"avatar"},[t("span",{staticClass:"icon-projects"})])}],!1,null,"75a4370b",null,null).exports;var nt=n(63814),rt=n(32981),at=n(87485);class st{constructor(){this._capabilities=(0,at.F)()}get defaultPermissions(){var t;return null===(t=this._capabilities.files_sharing)||void 0===t?void 0:t.default_permissions}get isPublicUploadEnabled(){var t;return null===(t=this._capabilities.files_sharing)||void 0===t?void 0:t.public.upload}get isShareWithLinkAllowed(){return document.getElementById("allowShareWithLink")&&"yes"===document.getElementById("allowShareWithLink").value}get federatedShareDocLink(){return OC.appConfig.core.federatedCloudShareDoc}get defaultExpirationDate(){return this.isDefaultExpireDateEnabled?new Date((new Date).setDate((new Date).getDate()+this.defaultExpireDate)):null}get defaultInternalExpirationDate(){return this.isDefaultInternalExpireDateEnabled?new Date((new Date).setDate((new Date).getDate()+this.defaultInternalExpireDate)):null}get defaultRemoteExpirationDateString(){return this.isDefaultRemoteExpireDateEnabled?new Date((new Date).setDate((new Date).getDate()+this.defaultRemoteExpireDate)):null}get enforcePasswordForPublicLink(){return!0===OC.appConfig.core.enforcePasswordForPublicLink}get enableLinkPasswordByDefault(){return!0===OC.appConfig.core.enableLinkPasswordByDefault}get isDefaultExpireDateEnforced(){return!0===OC.appConfig.core.defaultExpireDateEnforced}get isDefaultExpireDateEnabled(){return!0===OC.appConfig.core.defaultExpireDateEnabled}get isDefaultInternalExpireDateEnforced(){return!0===OC.appConfig.core.defaultInternalExpireDateEnforced}get isDefaultRemoteExpireDateEnforced(){return!0===OC.appConfig.core.defaultRemoteExpireDateEnforced}get isDefaultInternalExpireDateEnabled(){return!0===OC.appConfig.core.defaultInternalExpireDateEnabled}get isDefaultRemoteExpireDateEnabled(){return!0===OC.appConfig.core.defaultRemoteExpireDateEnabled}get isRemoteShareAllowed(){return!0===OC.appConfig.core.remoteShareAllowed}get isMailShareAllowed(){var t,e;return void 0!==(null===(t=this._capabilities)||void 0===t||null===(t=t.files_sharing)||void 0===t?void 0:t.sharebymail)&&!0===(null===(e=this._capabilities)||void 0===e||null===(e=e.files_sharing)||void 0===e||null===(e=e.public)||void 0===e?void 0:e.enabled)}get defaultExpireDate(){return OC.appConfig.core.defaultExpireDate}get defaultInternalExpireDate(){return OC.appConfig.core.defaultInternalExpireDate}get defaultRemoteExpireDate(){return OC.appConfig.core.defaultRemoteExpireDate}get isResharingAllowed(){return!0===OC.appConfig.core.resharingAllowed}get isPasswordForMailSharesRequired(){return void 0!==this._capabilities.files_sharing.sharebymail&&this._capabilities.files_sharing.sharebymail.password.enforced}get shouldAlwaysShowUnique(){var t;return!0===(null===(t=this._capabilities.files_sharing)||void 0===t||null===(t=t.sharee)||void 0===t?void 0:t.always_show_unique)}get allowGroupSharing(){return!0===OC.appConfig.core.allowGroupSharing}get maxAutocompleteResults(){return parseInt(OC.config["sharing.maxAutocompleteResults"],10)||25}get minSearchStringLength(){return parseInt(OC.config["sharing.minSearchStringLength"],10)||0}get passwordPolicy(){return this._capabilities.password_policy?this._capabilities.password_policy:{}}}var ot=n(77905),lt=n(96763);class ct{constructor(t){var e,i,n,r;if(i=this,r=void 0,(n=function(t){var e=function(t,e){if("object"!=typeof t||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==typeof e?e:String(e)}(n="_share"))in i?Object.defineProperty(i,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):i[n]=r,t.ocs&&t.ocs.data&&t.ocs.data[0]&&(t=t.ocs.data[0]),t.hide_download=!!t.hide_download,t.mail_send=!!t.mail_send,t.attributes&&"string"==typeof t.attributes)try{t.attributes=JSON.parse(t.attributes)}catch(e){lt.warn("Could not parse share attributes returned by server",t.attributes)}t.attributes=null!==(e=t.attributes)&&void 0!==e?e:[],this._share=t}get state(){return this._share}get id(){return this._share.id}get type(){return this._share.share_type}get permissions(){return this._share.permissions}get attributes(){return this._share.attributes}set permissions(t){this._share.permissions=t}get owner(){return this._share.uid_owner}get ownerDisplayName(){return this._share.displayname_owner}get shareWith(){return this._share.share_with}get shareWithDisplayName(){return this._share.share_with_displayname||this._share.share_with}get shareWithDisplayNameUnique(){return this._share.share_with_displayname_unique||this._share.share_with}get shareWithLink(){return this._share.share_with_link}get shareWithAvatar(){return this._share.share_with_avatar}get uidFileOwner(){return this._share.uid_file_owner}get displaynameFileOwner(){return this._share.displayname_file_owner||this._share.uid_file_owner}get createdTime(){return this._share.stime}get expireDate(){return this._share.expiration}set expireDate(t){this._share.expiration=t}get token(){return this._share.token}get note(){return this._share.note}set note(t){this._share.note=t}get label(){var t;return null!==(t=this._share.label)&&void 0!==t?t:""}set label(t){this._share.label=t}get mailSend(){return!0===this._share.mail_send}get hideDownload(){return!0===this._share.hide_download}set hideDownload(t){this._share.hide_download=!0===t}get password(){return this._share.password}set password(t){this._share.password=t}get passwordExpirationTime(){return this._share.password_expiration_time}set passwordExpirationTime(t){this._share.password_expiration_time=t}get sendPasswordByTalk(){return this._share.send_password_by_talk}set sendPasswordByTalk(t){this._share.send_password_by_talk=t}get path(){return this._share.path}get itemType(){return this._share.item_type}get mimetype(){return this._share.mimetype}get fileSource(){return this._share.file_source}get fileTarget(){return this._share.file_target}get fileParent(){return this._share.file_parent}get hasReadPermission(){return!!(this.permissions&OC.PERMISSION_READ)}get hasCreatePermission(){return!!(this.permissions&OC.PERMISSION_CREATE)}get hasDeletePermission(){return!!(this.permissions&OC.PERMISSION_DELETE)}get hasUpdatePermission(){return!!(this.permissions&OC.PERMISSION_UPDATE)}get hasSharePermission(){return!!(this.permissions&OC.PERMISSION_SHARE)}get hasDownloadPermission(){for(const t in this._share.attributes){const e=this._share.attributes[t];if("permissions"===e.scope&&"download"===e.key)return e.enabled}return!0}set hasDownloadPermission(t){this.setAttribute("permissions","download",!!t)}setAttribute(t,e,i){const n={scope:t,key:e,enabled:i};for(const t in this._share.attributes){const e=this._share.attributes[t];if(e.scope===n.scope&&e.key===n.key)return void this._share.attributes.splice(t,1,n)}this._share.attributes.push(n)}get canEdit(){return!0===this._share.can_edit}get canDelete(){return!0===this._share.can_delete}get viaFileid(){return this._share.via_fileid}get viaPath(){return this._share.via_path}get parent(){return this._share.parent}get storageId(){return this._share.storage_id}get storage(){return this._share.storage}get itemSource(){return this._share.item_source}get status(){return this._share.status}}const ht={data:()=>({SHARE_TYPES:ot.Z})};var ut=n(85168);const dt={name:"CheckBoldIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var pt=n(14486);const ft=(0,pt.A)(dt,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon check-bold-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,At={name:"ClipboardFlowIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gt=(0,pt.A)(At,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon clipboard-flow-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M15,19L11,15H14V8H16V15H19L15,19M10,16H8V9H5L9,5L13,9H10V16"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,mt={name:"SharingEntrySimple",components:{NcActions:z.A},props:{title:{type:String,default:"",required:!0},subtitle:{type:String,default:""},isUnique:{type:Boolean,default:!0},ariaExpanded:{type:Boolean,default:null}},computed:{ariaExpandedValue(){return null===this.ariaExpanded?this.ariaExpanded:this.ariaExpanded?"true":"false"}}};var vt=n(17557),_t={};_t.styleTagTransform=A(),_t.setAttributes=u(),_t.insert=c().bind(null,"head"),_t.domAPI=o(),_t.insertStyleElement=p(),a()(vt.A,_t),vt.A&&vt.A.locals&&vt.A.locals;const yt=(0,pt.A)(mt,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"sharing-entry"},[t._t("avatar"),t._v(" "),e("div",{staticClass:"sharing-entry__desc"},[e("span",{staticClass:"sharing-entry__title"},[t._v(t._s(t.title))]),t._v(" "),t.subtitle?e("p",[t._v("\n\t\t\t"+t._s(t.subtitle)+"\n\t\t")]):t._e()]),t._v(" "),t.$slots.default?e("NcActions",{ref:"actionsComponent",staticClass:"sharing-entry__actions",attrs:{"menu-align":"right","aria-expanded":t.ariaExpandedValue}},[t._t("default")],2):t._e()],2)}),[],!1,null,"1852ea78",null).exports;var Ct=n(96763);const wt={name:"SharingEntryInternal",components:{NcActionButton:j.A,SharingEntrySimple:yt,CheckIcon:ft,ClipboardIcon:gt},props:{fileInfo:{type:Object,default:()=>{},required:!0}},data:()=>({copied:!1,copySuccess:!1}),computed:{internalLink(){return window.location.protocol+"//"+window.location.host+(0,nt.Jv)("/f/")+this.fileInfo.id},copyLinkTooltip(){return this.copied?this.copySuccess?"":t("files_sharing","Cannot copy, please copy the link manually"):t("files_sharing","Copy internal link to clipboard")},internalLinkSubtitle(){return"dir"===this.fileInfo.type?t("files_sharing","Only works for people with access to this folder"):t("files_sharing","Only works for people with access to this file")}},methods:{async copyLink(){try{await navigator.clipboard.writeText(this.internalLink),(0,ut.Te)(t("files_sharing","Link copied")),this.$refs.shareEntrySimple.$refs.actionsComponent.$el.focus(),this.copySuccess=!0,this.copied=!0}catch(t){this.copySuccess=!1,this.copied=!0,Ct.error(t)}finally{setTimeout((()=>{this.copySuccess=!1,this.copied=!1}),4e3)}}}};var Et=n(16469),bt={};bt.styleTagTransform=A(),bt.setAttributes=u(),bt.insert=c().bind(null,"head"),bt.domAPI=o(),bt.insertStyleElement=p(),a()(Et.A,bt),Et.A&&Et.A.locals&&Et.A.locals;const St=(0,pt.A)(wt,(function(){var t=this,e=t._self._c;return e("ul",[e("SharingEntrySimple",{ref:"shareEntrySimple",staticClass:"sharing-entry__internal",attrs:{title:t.t("files_sharing","Internal link"),subtitle:t.internalLinkSubtitle},scopedSlots:t._u([{key:"avatar",fn:function(){return[e("div",{staticClass:"avatar-external icon-external-white"})]},proxy:!0}])},[t._v(" "),e("NcActionButton",{attrs:{title:t.copyLinkTooltip,"aria-label":t.copyLinkTooltip},on:{click:t.copyLink},scopedSlots:t._u([{key:"icon",fn:function(){return[t.copied&&t.copySuccess?e("CheckIcon",{staticClass:"icon-checkmark-color",attrs:{size:20}}):e("ClipboardIcon",{attrs:{size:20}})]},proxy:!0}])})],1)],1)}),[],!1,null,"e40cd936",null).exports;var xt=n(21777),Tt=n(17334),Pt=n.n(Tt),kt=n(96763);const Rt=new st;async function Dt(){if(Rt.passwordPolicy.api&&Rt.passwordPolicy.api.generate)try{const e=await W.Ay.get(Rt.passwordPolicy.api.generate);if(e.data.ocs.data.password)return(0,ut.Te)(t("files_sharing","Password created successfully")),e.data.ocs.data.password}catch(e){kt.info("Error generating password from password_policy",e),(0,ut.Qg)(t("files_sharing","Error generating password from password policy"))}const e=new Uint8Array(10);self.crypto.getRandomValues(e);let i="";for(let t=0;t<e.length;t++)i+="abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789".charAt(.20392156862745098*e[t]);return i}n(48318);var It=n(61338),Bt=n(96763);const Nt=(0,nt.KT)("apps/files_sharing/api/v1/shares"),Lt={methods:{async createShare(e){let{path:i,permissions:n,shareType:r,shareWith:a,publicUpload:s,password:o,sendPasswordByTalk:l,expireDate:c,label:h,note:u,attributes:d}=e;try{var p;const t=await W.Ay.post(Nt,{path:i,permissions:n,shareType:r,shareWith:a,publicUpload:s,password:o,sendPasswordByTalk:l,expireDate:c,label:h,note:u,attributes:d});if(null==t||null===(p=t.data)||void 0===p||!p.ocs)throw t;const e=new ct(t.data.ocs.data);return(0,It.Ic)("files_sharing:share:created",{share:e}),e}catch(e){var f;Bt.error("Error while creating share",e);const i=null==e||null===(f=e.response)||void 0===f||null===(f=f.data)||void 0===f||null===(f=f.ocs)||void 0===f||null===(f=f.meta)||void 0===f?void 0:f.message;throw OC.Notification.showTemporary(i?t("files_sharing","Error creating the share: {errorMessage}",{errorMessage:i}):t("files_sharing","Error creating the share"),{type:"error"}),e}},async deleteShare(e){try{var i;const t=await W.Ay.delete(Nt+"/".concat(e));if(null==t||null===(i=t.data)||void 0===i||!i.ocs)throw t;return(0,It.Ic)("files_sharing:share:deleted",{id:e}),!0}catch(e){var n;Bt.error("Error while deleting share",e);const i=null==e||null===(n=e.response)||void 0===n||null===(n=n.data)||void 0===n||null===(n=n.ocs)||void 0===n||null===(n=n.meta)||void 0===n?void 0:n.message;throw OC.Notification.showTemporary(i?t("files_sharing","Error deleting the share: {errorMessage}",{errorMessage:i}):t("files_sharing","Error deleting the share"),{type:"error"}),e}},async updateShare(e,i){try{var n;const t=await W.Ay.put(Nt+"/".concat(e),i);if((0,It.Ic)("files_sharing:share:updated",{id:e}),null!=t&&null!==(n=t.data)&&void 0!==n&&n.ocs)return t.data.ocs.data;throw t}catch(e){if(Bt.error("Error while updating share",e),400!==e.response.status){var r;const i=null==e||null===(r=e.response)||void 0===r||null===(r=r.data)||void 0===r||null===(r=r.ocs)||void 0===r||null===(r=r.meta)||void 0===r?void 0:r.message;OC.Notification.showTemporary(i?t("files_sharing","Error updating the share: {errorMessage}",{errorMessage:i}):t("files_sharing","Error updating the share"),{type:"error"})}const i=e.response.data.ocs.meta.message;throw new Error(i)}}}},Ht={methods:{async openSharingDetails(t){let e={};if(t.handler){const i={};this.suggestions&&(i.suggestions=this.suggestions,i.fileInfo=this.fileInfo,i.query=this.query);const n=await t.handler(i);e=this.mapShareRequestToShareObject(n)}else e=this.mapShareRequestToShareObject(t);const i={fileInfo:this.fileInfo,share:e};this.$emit("open-sharing-details",i)},openShareDetailsForCustomSettings(t){t.setCustomPermissions=!0,this.openSharingDetails(t)},mapShareRequestToShareObject(t){var e;if(t.id)return t;const i={attributes:[{enabled:!0,key:"download",scope:"permissions"}],share_type:t.shareType,share_with:t.shareWith,is_no_user:t.isNoUser,user:t.shareWith,share_with_displayname:t.displayName,subtitle:t.subtitle,permissions:null!==(e=t.permissions)&&void 0!==e?e:(new st).defaultPermissions,expiration:""};return new ct(i)}}};var Ot=n(96763);const Mt={name:"SharingInput",components:{NcSelect:_.A},mixins:[ht,Lt,Ht],props:{shares:{type:Array,default:()=>[],required:!0},linkShares:{type:Array,default:()=>[],required:!0},fileInfo:{type:Object,default:()=>{},required:!0},reshare:{type:ct,default:null},canReshare:{type:Boolean,required:!0}},data:()=>({config:new st,loading:!1,query:"",recommendations:[],ShareSearch:OCA.Sharing.ShareSearch.state,suggestions:[],value:null}),computed:{externalResults(){return this.ShareSearch.results},inputPlaceholder(){const e=this.config.isRemoteShareAllowed;return this.canReshare?e?t("files_sharing","Name, email, or Federated Cloud ID …"):t("files_sharing","Name or email …"):t("files_sharing","Resharing is not allowed")},isValidQuery(){return this.query&&""!==this.query.trim()&&this.query.length>this.config.minSearchStringLength},options(){return this.isValidQuery?this.suggestions:this.recommendations},noResultText(){return this.loading?t("files_sharing","Searching …"):t("files_sharing","No elements found.")}},mounted(){this.getRecommendations()},methods:{onSelected(t){this.value=null,this.openSharingDetails(t)},async asyncFind(t){this.query=t.trim(),this.isValidQuery&&(this.loading=!0,await this.debounceGetSuggestions(t))},async getSuggestions(e){let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.loading=!0,!0===(0,at.F)().files_sharing.sharee.query_lookup_default&&(i=!0);const n=[this.SHARE_TYPES.SHARE_TYPE_USER,this.SHARE_TYPES.SHARE_TYPE_GROUP,this.SHARE_TYPES.SHARE_TYPE_REMOTE,this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP,this.SHARE_TYPES.SHARE_TYPE_CIRCLE,this.SHARE_TYPES.SHARE_TYPE_ROOM,this.SHARE_TYPES.SHARE_TYPE_GUEST,this.SHARE_TYPES.SHARE_TYPE_DECK,this.SHARE_TYPES.SHARE_TYPE_SCIENCEMESH];!0===(0,at.F)().files_sharing.public.enabled&&n.push(this.SHARE_TYPES.SHARE_TYPE_EMAIL);let r=null;try{r=await W.Ay.get((0,nt.KT)("apps/files_sharing/api/v1/sharees"),{params:{format:"json",itemType:"dir"===this.fileInfo.type?"folder":"file",search:e,lookup:i,perPage:this.config.maxAutocompleteResults,shareType:n}})}catch(t){return void Ot.error("Error fetching suggestions",t)}const a=r.data.ocs.data,s=r.data.ocs.data.exact;a.exact=[];const o=Object.values(s).reduce(((t,e)=>t.concat(e)),[]),l=Object.values(a).reduce(((t,e)=>t.concat(e)),[]),c=this.filterOutExistingShares(o).map((t=>this.formatForMultiselect(t))).sort(((t,e)=>t.shareType-e.shareType)),h=this.filterOutExistingShares(l).map((t=>this.formatForMultiselect(t))).sort(((t,e)=>t.shareType-e.shareType)),u=[];a.lookupEnabled&&!i&&u.push({id:"global-lookup",isNoUser:!0,displayName:t("files_sharing","Search globally"),lookup:!0});const d=this.externalResults.filter((t=>!t.condition||t.condition(this))),p=c.concat(h).concat(d).concat(u),f=p.reduce(((t,e)=>e.displayName?(t[e.displayName]||(t[e.displayName]=0),t[e.displayName]++,t):t),{});this.suggestions=p.map((t=>f[t.displayName]>1&&!t.desc?{...t,desc:t.shareWithDisplayNameUnique}:t)),this.loading=!1,Ot.info("suggestions",this.suggestions)},debounceGetSuggestions:Pt()((function(){this.getSuggestions(...arguments)}),300),async getRecommendations(){this.loading=!0;let t=null;try{t=await W.Ay.get((0,nt.KT)("apps/files_sharing/api/v1/sharees_recommended"),{params:{format:"json",itemType:this.fileInfo.type}})}catch(t){return void Ot.error("Error fetching recommendations",t)}const e=this.externalResults.filter((t=>!t.condition||t.condition(this))),i=Object.values(t.data.ocs.data.exact).reduce(((t,e)=>t.concat(e)),[]);this.recommendations=this.filterOutExistingShares(i).map((t=>this.formatForMultiselect(t))).concat(e),this.loading=!1,Ot.info("recommendations",this.recommendations)},filterOutExistingShares(t){return t.reduce(((t,e)=>{if("object"!=typeof e)return t;try{if(e.value.shareType===this.SHARE_TYPES.SHARE_TYPE_USER){if(e.value.shareWith===(0,xt.HW)().uid)return t;if(this.reshare&&e.value.shareWith===this.reshare.owner)return t}if(e.value.shareType===this.SHARE_TYPES.SHARE_TYPE_EMAIL){if(-1!==this.linkShares.map((t=>t.shareWith)).indexOf(e.value.shareWith.trim()))return t}else{const i=this.shares.reduce(((t,e)=>(t[e.shareWith]=e.type,t)),{}),n=e.value.shareWith.trim();if(n in i&&i[n]===e.value.shareType)return t}t.push(e)}catch{return t}return t}),[])},shareTypeToIcon(e){switch(e){case this.SHARE_TYPES.SHARE_TYPE_GUEST:return{icon:"icon-user",iconTitle:t("files_sharing","Guest")};case this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP:case this.SHARE_TYPES.SHARE_TYPE_GROUP:return{icon:"icon-group",iconTitle:t("files_sharing","Group")};case this.SHARE_TYPES.SHARE_TYPE_EMAIL:return{icon:"icon-mail",iconTitle:t("files_sharing","Email")};case this.SHARE_TYPES.SHARE_TYPE_CIRCLE:return{icon:"icon-teams",iconTitle:t("files_sharing","Team")};case this.SHARE_TYPES.SHARE_TYPE_ROOM:return{icon:"icon-room",iconTitle:t("files_sharing","Talk conversation")};case this.SHARE_TYPES.SHARE_TYPE_DECK:return{icon:"icon-deck",iconTitle:t("files_sharing","Deck board")};case this.SHARE_TYPES.SHARE_TYPE_SCIENCEMESH:return{icon:"icon-sciencemesh",iconTitle:t("files_sharing","ScienceMesh")};default:return{}}},formatForMultiselect(e){let i;var n;if(e.value.shareType===this.SHARE_TYPES.SHARE_TYPE_USER&&this.config.shouldAlwaysShowUnique)i=null!==(n=e.shareWithDisplayNameUnique)&&void 0!==n?n:"";else if(e.value.shareType!==this.SHARE_TYPES.SHARE_TYPE_REMOTE&&e.value.shareType!==this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP||!e.value.server)if(e.value.shareType===this.SHARE_TYPES.SHARE_TYPE_EMAIL)i=e.value.shareWith;else{var r;i=null!==(r=e.shareWithDescription)&&void 0!==r?r:""}else i=t("files_sharing","on {server}",{server:e.value.server});return{shareWith:e.value.shareWith,shareType:e.value.shareType,user:e.uuid||e.value.shareWith,isNoUser:e.value.shareType!==this.SHARE_TYPES.SHARE_TYPE_USER,displayName:e.name||e.label,subname:i,shareWithDisplayNameUnique:e.shareWithDisplayNameUnique||"",...this.shareTypeToIcon(e.value.shareType)}}}};var Yt=n(82162),Ut={};Ut.styleTagTransform=A(),Ut.setAttributes=u(),Ut.insert=c().bind(null,"head"),Ut.domAPI=o(),Ut.insertStyleElement=p(),a()(Yt.A,Ut),Yt.A&&Yt.A.locals&&Yt.A.locals;const Vt=(0,pt.A)(Mt,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"sharing-search"},[e("label",{attrs:{for:"sharing-search-input"}},[t._v(t._s(t.t("files_sharing","Search for share recipients")))]),t._v(" "),e("NcSelect",{ref:"select",staticClass:"sharing-search__input",attrs:{"input-id":"sharing-search-input",disabled:!t.canReshare,loading:t.loading,filterable:!1,placeholder:t.inputPlaceholder,"clear-search-on-blur":()=>!1,"user-select":!0,options:t.options},on:{search:t.asyncFind,"option:selected":t.onSelected},scopedSlots:t._u([{key:"no-options",fn:function(e){let{search:i}=e;return[t._v("\n\t\t\t"+t._s(i?t.noResultText:t.t("files_sharing","No recommendations. Start typing."))+"\n\t\t")]}}]),model:{value:t.value,callback:function(e){t.value=e},expression:"value"}})],1)}),[],!1,null,null,null).exports;var Ft=n(71225),zt=n(73267),jt=n(32831),qt=n(34297);const Wt=(0,qt.H4)();var $t=n(49264),Kt=n(35947);const Gt=(0,Kt.YK)().setApp("files_sharing").detectUser().build(),Zt={NONE:0,READ:1,UPDATE:2,CREATE:4,DELETE:8,SHARE:16},Qt={READ_ONLY:Zt.READ,UPLOAD_AND_UPDATE:Zt.READ|Zt.UPDATE|Zt.CREATE|Zt.DELETE,FILE_DROP:Zt.CREATE,ALL:Zt.UPDATE|Zt.CREATE|Zt.READ|Zt.DELETE|Zt.SHARE,ALL_FILE:Zt.UPDATE|Zt.READ|Zt.SHARE};var Jt=n(96763);const Xt={mixins:[Lt,ht],props:{fileInfo:{type:Object,default:()=>{},required:!0},share:{type:ct,default:null},isUnique:{type:Boolean,default:!0}},data(){var t;return{config:new st,node:null,errors:{},loading:!1,saving:!1,open:!1,updateQueue:new $t.A({concurrency:1}),reactiveState:null===(t=this.share)||void 0===t?void 0:t.state}},computed:{path(){return(this.fileInfo.path+"/"+this.fileInfo.name).replace("//","/")},hasNote:{get(){return""!==this.share.note},set(t){this.share.note=t?null:""}},dateTomorrow:()=>new Date((new Date).setDate((new Date).getDate()+1)),lang(){const t=window.dayNamesShort?window.dayNamesShort:["Sun.","Mon.","Tue.","Wed.","Thu.","Fri.","Sat."],e=window.monthNamesShort?window.monthNamesShort:["Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."];return{formatLocale:{firstDayOfWeek:window.firstDay?window.firstDay:0,monthsShort:e,weekdaysMin:t,weekdaysShort:t},monthFormat:"MMM"}},isFolder(){return"dir"===this.fileInfo.type},isPublicShare(){var t;const e=null!==(t=this.share.shareType)&&void 0!==t?t:this.share.type;return[this.SHARE_TYPES.SHARE_TYPE_LINK,this.SHARE_TYPES.SHARE_TYPE_EMAIL].includes(e)},isRemoteShare(){return this.share.type===this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP||this.share.type===this.SHARE_TYPES.SHARE_TYPE_REMOTE},isShareOwner(){return this.share&&this.share.owner===(0,xt.HW)().uid},isExpiryDateEnforced(){return this.isPublicShare?this.config.isDefaultExpireDateEnforced:this.isRemoteShare?this.config.isDefaultRemoteExpireDateEnforced:this.config.isDefaultInternalExpireDateEnforced},hasCustomPermissions(){return![Qt.ALL,Qt.READ_ONLY,Qt.FILE_DROP].includes(this.share.permissions)},maxExpirationDateEnforced(){return this.isExpiryDateEnforced?this.isPublicShare?this.config.defaultExpirationDate:this.isRemoteShare?this.config.defaultRemoteExpirationDateString:this.config.defaultInternalExpirationDate:null}},methods:{async getNode(){const t={path:this.path};try{this.node=await(async t=>{const e=(0,qt.VL)(),i=await Wt.stat("".concat(qt.lJ).concat(t.path),{details:!0,data:e});return(0,qt.Al)(i.data)})(t),Gt.info("Fetched node:",{node:this.node})}catch(t){Gt.error("Error:",t)}},checkShare:t=>(!t.password||"string"==typeof t.password&&""!==t.password.trim())&&!(t.expirationDate&&!t.expirationDate.isValid()),formatDateToString:t=>new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate())).toISOString().split("T")[0],onExpirationChange(t){this.share.expireDate=this.formatDateToString(new Date(t))},onExpirationDisable(){this.share.expireDate=""},onNoteChange(t){this.$set(this.share,"newNote",t.trim())},onNoteSubmit(){this.share.newNote&&(this.share.note=this.share.newNote,this.$delete(this.share,"newNote"),this.queueUpdate("note"))},async onDelete(){try{this.loading=!0,this.open=!1,await this.deleteShare(this.share.id),Jt.debug("Share deleted",this.share.id);const e="file"===this.share.itemType?t("files_sharing",'File "{path}" has been unshared',{path:this.share.path}):t("files_sharing",'Folder "{path}" has been unshared',{path:this.share.path});(0,ut.Te)(e),this.$emit("remove:share",this.share),await this.getNode(),(0,It.Ic)("files:node:updated",this.node)}catch(t){this.open=!0}finally{this.loading=!1}},queueUpdate(){for(var e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];if(0!==i.length){if(this.share.id){const e={};return i.forEach((t=>{"object"==typeof this.share[t]?e[t]=JSON.stringify(this.share[t]):e[t]=this.share[t].toString()})),void this.updateQueue.add((async()=>{this.saving=!0,this.errors={};try{const t=await this.updateShare(this.share.id,e);i.indexOf("password")>=0&&(this.$delete(this.share,"newPassword"),this.share.passwordExpirationTime=t.password_expiration_time),this.$delete(this.errors,i[0]),(0,ut.Te)(this.updateSuccessMessage(i))}catch(e){Gt.error("Could not update share",{error:e,share:this.share,propertyNames:i});const{message:n}=e;n&&""!==n?(this.onSyncError(i[0],n),(0,ut.Qg)(n)):(0,ut.Qg)(t("files_sharing","Could not update share"))}finally{this.saving=!1}}))}Jt.debug("Updated local share",this.share)}},updateSuccessMessage(e){if(1!==e.length)return t("files_sharing","Share saved");switch(e[0]){case"expireDate":return t("files_sharing","Share expire date saved");case"hideDownload":return t("files_sharing","Share hide-download state saved");case"label":return t("files_sharing","Share label saved");case"note":return t("files_sharing","Share note for recipient saved");case"password":return t("files_sharing","Share password saved");case"permissions":return t("files_sharing","Share permissions saved");default:return t("files_sharing","Share saved")}},onSyncError(t,e){switch(this.open=!0,t){case"password":case"pending":case"expireDate":case"label":case"note":{this.$set(this.errors,t,e);let i=this.$refs[t];if(i){i.$el&&(i=i.$el);const t=i.querySelector(".focusable");t&&t.focus()}break}case"sendPasswordByTalk":this.$set(this.errors,t,e),this.share.sendPasswordByTalk=!this.share.sendPasswordByTalk}},debounceQueueUpdate:Pt()((function(t){this.queueUpdate(t)}),500)}},te={name:"SharingEntryInherited",components:{NcActionButton:j.A,NcActionLink:zt.A,NcActionText:jt.A,NcAvatar:v.A,SharingEntrySimple:yt},mixins:[Xt],props:{share:{type:ct,required:!0}},computed:{viaFileTargetUrl(){return(0,nt.Jv)("/f/{fileid}",{fileid:this.share.viaFileid})},viaFolderName(){return(0,Ft.P8)(this.share.viaPath)}}};var ee=n(41699),ie={};ie.styleTagTransform=A(),ie.setAttributes=u(),ie.insert=c().bind(null,"head"),ie.domAPI=o(),ie.insertStyleElement=p(),a()(ee.A,ie),ee.A&&ee.A.locals&&ee.A.locals;const ne=(0,pt.A)(te,(function(){var t=this,e=t._self._c;return e("SharingEntrySimple",{key:t.share.id,staticClass:"sharing-entry__inherited",attrs:{title:t.share.shareWithDisplayName},scopedSlots:t._u([{key:"avatar",fn:function(){return[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{user:t.share.shareWith,"display-name":t.share.shareWithDisplayName}})]},proxy:!0}])},[t._v(" "),e("NcActionText",{attrs:{icon:"icon-user"}},[t._v("\n\t\t"+t._s(t.t("files_sharing","Added by {initiator}",{initiator:t.share.ownerDisplayName}))+"\n\t")]),t._v(" "),t.share.viaPath&&t.share.viaFileid?e("NcActionLink",{attrs:{icon:"icon-folder",href:t.viaFileTargetUrl}},[t._v("\n\t\t"+t._s(t.t("files_sharing","Via “{folder}”",{folder:t.viaFolderName}))+"\n\t")]):t._e(),t._v(" "),t.share.canDelete?e("NcActionButton",{attrs:{icon:"icon-close"},on:{click:function(e){return e.preventDefault(),t.onDelete.apply(null,arguments)}}},[t._v("\n\t\t"+t._s(t.t("files_sharing","Unshare"))+"\n\t")]):t._e()],1)}),[],!1,null,"283ca89e",null).exports;var re=n(96763);const ae={name:"SharingInherited",components:{NcActionButton:j.A,SharingEntryInherited:ne,SharingEntrySimple:yt},props:{fileInfo:{type:Object,default:()=>{},required:!0}},data:()=>({loaded:!1,loading:!1,showInheritedShares:!1,shares:[]}),computed:{showInheritedSharesIcon(){return this.loading?"icon-loading-small":this.showInheritedShares?"icon-triangle-n":"icon-triangle-s"},mainTitle:()=>t("files_sharing","Others with access"),subTitle(){return this.showInheritedShares&&0===this.shares.length?t("files_sharing","No other accounts with access found"):""},toggleTooltip(){return"dir"===this.fileInfo.type?t("files_sharing","Toggle list of others with access to this directory"):t("files_sharing","Toggle list of others with access to this file")},fullPath(){return"".concat(this.fileInfo.path,"/").concat(this.fileInfo.name).replace("//","/")}},watch:{fileInfo(){this.resetState()}},methods:{toggleInheritedShares(){this.showInheritedShares=!this.showInheritedShares,this.showInheritedShares?this.fetchInheritedShares():this.resetState()},async fetchInheritedShares(){this.loading=!0;try{const t=(0,nt.KT)("apps/files_sharing/api/v1/shares/inherited?format=json&path={path}",{path:this.fullPath}),e=await W.Ay.get(t);this.shares=e.data.ocs.data.map((t=>new ct(t))).sort(((t,e)=>e.createdTime-t.createdTime)),re.info(this.shares),this.loaded=!0}catch(e){OC.Notification.showTemporary(t("files_sharing","Unable to fetch inherited shares"),{type:"error"})}finally{this.loading=!1}},resetState(){this.loaded=!1,this.loading=!1,this.showInheritedShares=!1,this.shares=[]},removeShare(t){const e=this.shares.findIndex((e=>e===t));this.shares.splice(e,1)}}};var se=n(4442),oe={};oe.styleTagTransform=A(),oe.setAttributes=u(),oe.insert=c().bind(null,"head"),oe.domAPI=o(),oe.insertStyleElement=p(),a()(se.A,oe),se.A&&se.A.locals&&se.A.locals;const le=(0,pt.A)(ae,(function(){var t=this,e=t._self._c;return e("ul",{attrs:{id:"sharing-inherited-shares"}},[e("SharingEntrySimple",{staticClass:"sharing-entry__inherited",attrs:{title:t.mainTitle,subtitle:t.subTitle,"aria-expanded":t.showInheritedShares},scopedSlots:t._u([{key:"avatar",fn:function(){return[e("div",{staticClass:"avatar-shared icon-more-white"})]},proxy:!0}])},[t._v(" "),e("NcActionButton",{attrs:{icon:t.showInheritedSharesIcon,"aria-label":t.toggleTooltip,title:t.toggleTooltip},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.toggleInheritedShares.apply(null,arguments)}}})],1),t._v(" "),t._l(t.shares,(function(i){return e("SharingEntryInherited",{key:i.id,attrs:{"file-info":t.fileInfo,share:i},on:{"remove:share":t.removeShare}})}))],2)}),[],!1,null,"50f9af8c",null).exports;var ce=n(17816),he=n.n(ce),ue=n(1790),de=n(44131),pe=n(80114),fe=n(94219);const Ae={name:"TuneIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ge=(0,pt.A)(Ae,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon tune-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,me={name:"CalendarBlankIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ve=(0,pt.A)(me,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon calendar-blank-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,_e={name:"QrcodeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ye=(0,pt.A)(_e,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon qrcode-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M3,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Ce={name:"ExclamationIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},we=(0,pt.A)(Ce,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon exclamation-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Ee={name:"LockIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},be=(0,pt.A)(Ee,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon lock-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var Se=n(66001),xe=n(96078);const Te={name:"TriangleSmallDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Pe=(0,pt.A)(Te,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon triangle-small-down-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M8 9H16L12 16"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,ke={name:"EyeOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Re=(0,pt.A)(ke,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon eye-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,12Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var De=n(2413);const Ie={name:"FileUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Be=(0,pt.A)(Ie,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon file-upload-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Ne={name:"SharingEntryQuickShareSelect",components:{DropdownIcon:Pe,NcActions:z.A,NcActionButton:j.A},mixins:[Xt,Ht,ht],props:{share:{type:Object,required:!0}},emits:["open-sharing-details"],data:()=>({selectedOption:""}),computed:{ariaLabel(){return t("files_sharing",'Quick share options, the current selected is "{selectedOption}"',{selectedOption:this.selectedOption})},canViewText:()=>t("files_sharing","View only"),canEditText:()=>t("files_sharing","Can edit"),fileDropText:()=>t("files_sharing","File drop"),customPermissionsText:()=>t("files_sharing","Custom permissions"),preSelectedOption(){return(this.share.permissions&~Zt.SHARE)===Qt.READ_ONLY?this.canViewText:this.share.permissions===Qt.ALL||this.share.permissions===Qt.ALL_FILE?this.canEditText:(this.share.permissions&~Zt.SHARE)===Qt.FILE_DROP?this.fileDropText:this.customPermissionsText},options(){const t=[{label:this.canViewText,icon:Re},{label:this.canEditText,icon:De.A}];return this.supportsFileDrop&&t.push({label:this.fileDropText,icon:Be}),t.push({label:this.customPermissionsText,icon:ge}),t},supportsFileDrop(){if(this.isFolder&&this.config.isPublicUploadEnabled){var t;const e=null!==(t=this.share.type)&&void 0!==t?t:this.share.shareType;return[this.SHARE_TYPES.SHARE_TYPE_LINK,this.SHARE_TYPES.SHARE_TYPE_EMAIL].includes(e)}return!1},dropDownPermissionValue(){switch(this.selectedOption){case this.canEditText:return this.isFolder?Qt.ALL:Qt.ALL_FILE;case this.fileDropText:return Qt.FILE_DROP;case this.customPermissionsText:return"custom";case this.canViewText:default:return Qt.READ_ONLY}}},created(){this.selectedOption=this.preSelectedOption},methods:{selectOption(t){this.selectedOption=t,t===this.customPermissionsText?this.$emit("open-sharing-details"):(this.share.permissions=this.dropDownPermissionValue,this.queueUpdate("permissions"),this.$refs.quickShareActions.$refs.menuButton.$el.focus())}}},Le=Ne;var He=n(77819),Oe={};Oe.styleTagTransform=A(),Oe.setAttributes=u(),Oe.insert=c().bind(null,"head"),Oe.domAPI=o(),Oe.insertStyleElement=p(),a()(He.A,Oe),He.A&&He.A.locals&&He.A.locals;const Me=(0,pt.A)(Le,(function(){var t=this,e=t._self._c;return e("NcActions",{ref:"quickShareActions",staticClass:"share-select",attrs:{"menu-name":t.selectedOption,"aria-label":t.ariaLabel,type:"tertiary-no-background",disabled:!t.share.canEdit,"force-name":""},scopedSlots:t._u([{key:"icon",fn:function(){return[e("DropdownIcon",{attrs:{size:15}})]},proxy:!0}])},[t._v(" "),t._l(t.options,(function(i){return e("NcActionButton",{key:i.label,attrs:{type:"radio","model-value":i.label===t.selectedOption,"close-after-click":""},on:{click:function(e){return t.selectOption(i.label)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e(i.icon,{tag:"component"})]},proxy:!0}],null,!0)},[t._v("\n\t\t"+t._s(i.label)+"\n\t")])}))],2)}),[],!1,null,"dab76140",null).exports,Ye={name:"ExternalShareAction",props:{id:{type:String,required:!0},action:{type:Object,default:()=>({})},fileInfo:{type:Object,default:()=>{},required:!0},share:{type:ct,default:null}},computed:{data(){return this.action.data(this)}}},Ue=(0,pt.A)(Ye,(function(){var t=this;return(0,t._self._c)(t.data.is,t._g(t._b({tag:"Component"},"Component",t.data,!1),t.action.handlers),[t._v("\n\t"+t._s(t.data.text)+"\n")])}),[],!1,null,null,null).exports;var Ve=n(96763);const Fe={name:"SharingEntryLink",components:{ExternalShareAction:Ue,NcActions:z.A,NcActionButton:j.A,NcActionCheckbox:ue.A,NcActionInput:de.A,NcActionLink:zt.A,NcActionText:jt.A,NcActionSeparator:pe.A,NcAvatar:v.A,NcDialog:fe.A,VueQrcode:he(),Tune:ge,IconCalendarBlank:ve,IconQr:ye,ErrorIcon:we,LockIcon:be,CheckIcon:ft,ClipboardIcon:gt,CloseIcon:Se.A,PlusIcon:xe.A,SharingEntryQuickShareSelect:Me},mixins:[Xt,Ht],props:{canReshare:{type:Boolean,default:!0},index:{type:Number,default:null}},data:()=>({shareCreationComplete:!1,copySuccess:!0,copied:!1,defaultExpirationDateEnabled:!1,pending:!1,ExternalLegacyLinkActions:OCA.Sharing.ExternalLinkActions.state,ExternalShareActions:OCA.Sharing.ExternalShareActions.state,logger:(0,Kt.YK)().setApp("files_sharing").detectUser().build(),showQRCode:!1}),computed:{title(){if(this.share&&this.share.id){if(!this.isShareOwner&&this.share.ownerDisplayName)return this.isEmailShareType?t("files_sharing","{shareWith} by {initiator}",{shareWith:this.share.shareWith,initiator:this.share.ownerDisplayName}):t("files_sharing","Shared via link by {initiator}",{initiator:this.share.ownerDisplayName});if(this.share.label&&""!==this.share.label.trim())return this.isEmailShareType?t("files_sharing","Mail share ({label})",{label:this.share.label.trim()}):t("files_sharing","Share link ({label})",{label:this.share.label.trim()});if(this.isEmailShareType)return this.share.shareWith}return this.index>1?t("files_sharing","Share link ({index})",{index:this.index}):t("files_sharing","Share link")},subtitle(){return this.isEmailShareType&&this.title!==this.share.shareWith?this.share.shareWith:null},isPasswordProtected:{get(){return this.config.enforcePasswordForPublicLink||!!this.share.password},async set(t){q.Ay.set(this.share,"password",t?await Dt():""),q.Ay.set(this.share,"newPassword",this.share.password)}},passwordExpirationTime(){if(null===this.share.passwordExpirationTime)return null;const t=moment(this.share.passwordExpirationTime);return!(t.diff(moment())<0)&&t.fromNow()},isTalkEnabled:()=>void 0!==OC.appswebroots.spreed,isPasswordProtectedByTalkAvailable(){return this.isPasswordProtected&&this.isTalkEnabled},isPasswordProtectedByTalk:{get(){return this.share.sendPasswordByTalk},async set(t){this.share.sendPasswordByTalk=t}},isEmailShareType(){return!!this.share&&this.share.type===this.SHARE_TYPES.SHARE_TYPE_EMAIL},canTogglePasswordProtectedByTalkAvailable(){return!(!this.isPasswordProtected||this.isEmailShareType&&!this.hasUnsavedPassword)},pendingDataIsMissing(){return this.pendingPassword||this.pendingEnforcedPassword||this.pendingDefaultExpirationDate||this.pendingEnforcedExpirationDate},pendingPassword(){return this.config.enableLinkPasswordByDefault&&this.isPendingShare},pendingEnforcedPassword(){return this.config.enforcePasswordForPublicLink&&this.isPendingShare},pendingEnforcedExpirationDate(){return this.config.isDefaultExpireDateEnforced&&this.isPendingShare},pendingDefaultExpirationDate(){return(this.config.defaultExpirationDate instanceof Date||!isNaN(new Date(this.config.defaultExpirationDate).getTime()))&&this.isPendingShare},isPendingShare(){return!(!this.share||this.share.id)},sharePolicyHasEnforcedProperties(){return this.config.enforcePasswordForPublicLink||this.config.isDefaultExpireDateEnforced},enforcedPropertiesMissing(){if(!this.sharePolicyHasEnforcedProperties)return!1;if(!this.share)return!0;if(this.share.id)return!0;const t=this.config.enforcePasswordForPublicLink&&!this.share.password,e=this.config.isDefaultExpireDateEnforced&&!this.share.expireDate;return t||e},hasUnsavedPassword(){return void 0!==this.share.newPassword},shareLink(){return window.location.protocol+"//"+window.location.host+(0,nt.Jv)("/s/")+this.share.token},actionsTooltip(){return t("files_sharing",'Actions for "{title}"',{title:this.title})},copyLinkTooltip(){return this.copied?this.copySuccess?"":t("files_sharing","Cannot copy, please copy the link manually"):t("files_sharing",'Copy public link of "{title}" to clipboard',{title:this.title})},externalLegacyLinkActions(){return this.ExternalLegacyLinkActions.actions},externalLinkActions(){return this.ExternalShareActions.actions.filter((t=>(t.shareType.includes(ot.Z.SHARE_TYPE_LINK)||t.shareType.includes(ot.Z.SHARE_TYPE_EMAIL))&&!t.advanced))},isPasswordPolicyEnabled(){return"object"==typeof this.config.passwordPolicy},canChangeHideDownload(){return this.fileInfo.shareAttributes.some((t=>"download"===t.key&&"permissions"===t.scope&&!1===t.enabled))}},mounted(){this.defaultExpirationDateEnabled=this.config.defaultExpirationDate instanceof Date},methods:{shareRequiresReview(t){return!t&&(this.defaultExpirationDateEnabled||this.config.enableLinkPasswordByDefault)},async onNewLinkShare(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.logger.debug("onNewLinkShare called (with this.share)",this.share),this.loading)return;const i={share_type:ot.Z.SHARE_TYPE_LINK};if(this.config.isDefaultExpireDateEnforced&&(i.expiration=this.formatDateToString(this.config.defaultExpirationDate)),this.logger.debug("Missing required properties?",this.enforcedPropertiesMissing),this.sharePolicyHasEnforcedProperties&&this.enforcedPropertiesMissing||this.shareRequiresReview(!0===e)){this.pending=!0,this.shareCreationComplete=!1,this.logger.info("Share policy requires a review or has mandated properties (password, expirationDate)..."),(this.config.enableLinkPasswordByDefault||this.config.enforcePasswordForPublicLink)&&(i.password=await Dt());const t=new ct(i),e=await new Promise((e=>{this.$emit("add:share",t,e)}));this.open=!1,this.pending=!1,e.open=!0}else{if(this.share&&!this.share.id){if(this.checkShare(this.share)){try{this.logger.info("Sending existing share to server",this.share),await this.pushNewLinkShare(this.share,!0),this.shareCreationComplete=!0,this.logger.info("Share created on server",this.share)}catch(t){return this.pending=!1,this.logger.error("Error creating share",t),!1}return!0}return this.open=!0,(0,ut.Qg)(t("files_sharing","Error, please enter proper password and/or expiration date")),!1}const e=new ct(i);await this.pushNewLinkShare(e),this.shareCreationComplete=!0}},async pushNewLinkShare(e,i){try{if(this.loading)return!0;this.loading=!0,this.errors={};const n={path:(this.fileInfo.path+"/"+this.fileInfo.name).replace("//","/"),shareType:ot.Z.SHARE_TYPE_LINK,password:e.password,expireDate:e.expireDate,attributes:JSON.stringify(this.fileInfo.shareAttributes)};Ve.debug("Creating link share with options",n);const r=await this.createShare(n);let a;this.open=!1,this.shareCreationComplete=!0,Ve.debug("Link share created",r),a=i?await new Promise((t=>{this.$emit("update:share",r,t)})):await new Promise((t=>{this.$emit("add:share",r,t)})),await this.getNode(),(0,It.Ic)("files:node:updated",this.node),this.config.enforcePasswordForPublicLink||a.copyLink(),(0,ut.Te)(t("files_sharing","Link share created"))}catch(e){var n;const i=null==e||null===(n=e.response)||void 0===n||null===(n=n.data)||void 0===n||null===(n=n.ocs)||void 0===n||null===(n=n.meta)||void 0===n?void 0:n.message;if(!i)return(0,ut.Qg)(t("files_sharing","Error while creating the share")),void Ve.error(e);throw i.match(/password/i)?this.onSyncError("password",i):i.match(/date/i)?this.onSyncError("expireDate",i):this.onSyncError("pending",i),e}finally{this.loading=!1,this.shareCreationComplete=!0}},async copyLink(){try{await navigator.clipboard.writeText(this.shareLink),(0,ut.Te)(t("files_sharing","Link copied")),this.$refs.copyButton.$el.focus(),this.copySuccess=!0,this.copied=!0}catch(t){this.copySuccess=!1,this.copied=!0,Ve.error(t)}finally{setTimeout((()=>{this.copySuccess=!1,this.copied=!1}),4e3)}},onPasswordChange(t){this.$set(this.share,"newPassword",t)},onPasswordDisable(){this.share.password="",this.$delete(this.share,"newPassword"),this.share.id&&this.queueUpdate("password")},onPasswordSubmit(){this.hasUnsavedPassword&&(this.share.password=this.share.newPassword.trim(),this.queueUpdate("password"))},onPasswordProtectedByTalkChange(){this.hasUnsavedPassword&&(this.share.password=this.share.newPassword.trim()),this.queueUpdate("sendPasswordByTalk","password")},onMenuClose(){this.onPasswordSubmit(),this.onNoteSubmit()},onDefaultExpirationDateEnabledChange(t){this.share.expireDate=t?this.formatDateToString(this.config.defaultExpirationDate):""},onCancel(){this.shareCreationComplete||this.$emit("remove:share",this.share)}}},ze=Fe;var je=n(16824),qe={};qe.styleTagTransform=A(),qe.setAttributes=u(),qe.insert=c().bind(null,"head"),qe.domAPI=o(),qe.insertStyleElement=p(),a()(je.A,qe),je.A&&je.A.locals&&je.A.locals;const We={name:"SharingLinkList",components:{SharingEntryLink:(0,pt.A)(ze,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"sharing-entry sharing-entry__link",class:{"sharing-entry--share":t.share}},[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{"is-no-user":!0,"icon-class":t.isEmailShareType?"avatar-link-share icon-mail-white":"avatar-link-share icon-public-white"}}),t._v(" "),e("div",{staticClass:"sharing-entry__summary"},[e("div",{staticClass:"sharing-entry__desc"},[e("span",{staticClass:"sharing-entry__title",attrs:{title:t.title}},[t._v("\n\t\t\t\t"+t._s(t.title)+"\n\t\t\t")]),t._v(" "),t.subtitle?e("p",[t._v("\n\t\t\t\t"+t._s(t.subtitle)+"\n\t\t\t")]):t._e(),t._v(" "),t.share&&void 0!==t.share.permissions?e("SharingEntryQuickShareSelect",{attrs:{share:t.share,"file-info":t.fileInfo},on:{"open-sharing-details":function(e){return t.openShareDetailsForCustomSettings(t.share)}}}):t._e()],1),t._v(" "),t.share&&!t.isEmailShareType&&t.share.token?e("NcActions",{ref:"copyButton",staticClass:"sharing-entry__copy"},[e("NcActionButton",{attrs:{title:t.copyLinkTooltip,"aria-label":t.copyLinkTooltip},on:{click:function(e){return e.preventDefault(),t.copyLink.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[t.copied&&t.copySuccess?e("CheckIcon",{staticClass:"icon-checkmark-color",attrs:{size:20}}):e("ClipboardIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,4269614823)})],1):t._e()],1),t._v(" "),!t.pending&&t.pendingDataIsMissing?e("NcActions",{staticClass:"sharing-entry__actions",attrs:{"aria-label":t.actionsTooltip,"menu-align":"right",open:t.open},on:{"update:open":function(e){t.open=e},close:t.onCancel}},[t.errors.pending?e("NcActionText",{staticClass:"error",scopedSlots:t._u([{key:"icon",fn:function(){return[e("ErrorIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,1966124155)},[t._v("\n\t\t\t"+t._s(t.errors.pending)+"\n\t\t")]):e("NcActionText",{attrs:{icon:"icon-info"}},[t._v("\n\t\t\t"+t._s(t.t("files_sharing","Please enter the following required information before creating the share"))+"\n\t\t")]),t._v(" "),t.pendingPassword?e("NcActionCheckbox",{staticClass:"share-link-password-checkbox",attrs:{checked:t.isPasswordProtected,disabled:t.config.enforcePasswordForPublicLink||t.saving},on:{"update:checked":function(e){t.isPasswordProtected=e},uncheck:t.onPasswordDisable}},[t._v("\n\t\t\t"+t._s(t.config.enforcePasswordForPublicLink?t.t("files_sharing","Password protection (enforced)"):t.t("files_sharing","Password protection"))+"\n\t\t")]):t._e(),t._v(" "),t.pendingEnforcedPassword||t.share.password?e("NcActionInput",{staticClass:"share-link-password",attrs:{label:t.t("files_sharing","Enter a password"),value:t.share.password,disabled:t.saving,required:t.config.enableLinkPasswordByDefault||t.config.enforcePasswordForPublicLink,minlength:t.isPasswordPolicyEnabled&&t.config.passwordPolicy.minLength,autocomplete:"new-password"},on:{"update:value":function(e){return t.$set(t.share,"password",e)},submit:function(e){return t.onNewLinkShare(!0)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("LockIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2056568168)}):t._e(),t._v(" "),t.pendingDefaultExpirationDate?e("NcActionCheckbox",{staticClass:"share-link-expiration-date-checkbox",attrs:{checked:t.defaultExpirationDateEnabled,disabled:t.pendingEnforcedExpirationDate||t.saving},on:{"update:checked":function(e){t.defaultExpirationDateEnabled=e},change:t.onDefaultExpirationDateEnabledChange}},[t._v("\n\t\t\t"+t._s(t.config.enforcePasswordForPublicLink?t.t("files_sharing","Enable link expiration (enforced)"):t.t("files_sharing","Enable link expiration"))+"\n\t\t")]):t._e(),t._v(" "),(t.pendingDefaultExpirationDate||t.pendingEnforcedExpirationDate)&&t.defaultExpirationDateEnabled?e("NcActionInput",{staticClass:"share-link-expire-date",attrs:{label:t.pendingEnforcedExpirationDate?t.t("files_sharing","Enter expiration date (enforced)"):t.t("files_sharing","Enter expiration date"),disabled:t.saving,"is-native-picker":!0,"hide-label":!0,value:new Date(t.share.expireDate),type:"date",min:t.dateTomorrow,max:t.maxExpirationDateEnforced},on:{input:function(e){t.onExpirationChange}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("IconCalendarBlank",{attrs:{size:20}})]},proxy:!0}],null,!1,3418578971)}):t._e(),t._v(" "),e("NcActionButton",{on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onNewLinkShare(!0)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CheckIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2630571749)},[t._v("\n\t\t\t"+t._s(t.t("files_sharing","Create share"))+"\n\t\t")]),t._v(" "),e("NcActionButton",{on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onCancel.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CloseIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2428343285)},[t._v("\n\t\t\t"+t._s(t.t("files_sharing","Cancel"))+"\n\t\t")])],1):t.loading?e("div",{staticClass:"icon-loading-small sharing-entry__loading"}):e("NcActions",{staticClass:"sharing-entry__actions",attrs:{"aria-label":t.actionsTooltip,"menu-align":"right",open:t.open},on:{"update:open":function(e){t.open=e},close:t.onMenuClose}},[t.share?[t.share.canEdit&&t.canReshare?[e("NcActionButton",{attrs:{disabled:t.saving,"close-after-click":!0},on:{click:function(e){return e.preventDefault(),t.openSharingDetails.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("Tune",{attrs:{size:20}})]},proxy:!0}],null,!1,1300586850)},[t._v("\n\t\t\t\t\t"+t._s(t.t("files_sharing","Customize link"))+"\n\t\t\t\t")])]:t._e(),t._v(" "),e("NcActionButton",{attrs:{"close-after-click":!0},on:{click:function(e){e.preventDefault(),t.showQRCode=!0}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("IconQr",{attrs:{size:20}})]},proxy:!0}],null,!1,1082198240)},[t._v("\n\t\t\t\t"+t._s(t.t("files_sharing","Generate QR code"))+"\n\t\t\t")]),t._v(" "),e("NcActionSeparator"),t._v(" "),t._l(t.externalLinkActions,(function(i){return e("ExternalShareAction",{key:i.id,attrs:{id:i.id,action:i,"file-info":t.fileInfo,share:t.share}})})),t._v(" "),t._l(t.externalLegacyLinkActions,(function(i,n){let{icon:r,url:a,name:s}=i;return e("NcActionLink",{key:n,attrs:{href:a(t.shareLink),icon:r,target:"_blank"}},[t._v("\n\t\t\t\t"+t._s(s)+"\n\t\t\t")])})),t._v(" "),!t.isEmailShareType&&t.canReshare?e("NcActionButton",{staticClass:"new-share-link",on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onNewLinkShare.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("PlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2953566425)},[t._v("\n\t\t\t\t"+t._s(t.t("files_sharing","Add another link"))+"\n\t\t\t")]):t._e(),t._v(" "),t.share.canDelete?e("NcActionButton",{attrs:{disabled:t.saving},on:{click:function(e){return e.preventDefault(),t.onDelete.apply(null,arguments)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("CloseIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2428343285)},[t._v("\n\t\t\t\t"+t._s(t.t("files_sharing","Unshare"))+"\n\t\t\t")]):t._e()]:t.canReshare?e("NcActionButton",{staticClass:"new-share-link",attrs:{title:t.t("files_sharing","Create a new share link"),"aria-label":t.t("files_sharing","Create a new share link"),icon:t.loading?"icon-loading-small":"icon-add"},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.onNewLinkShare.apply(null,arguments)}}}):t._e()],2),t._v(" "),t.showQRCode?e("NcDialog",{attrs:{size:"normal",open:t.showQRCode,name:t.title,"close-on-click-outside":!0},on:{"update:open":function(e){t.showQRCode=e},close:function(e){t.showQRCode=!1}}},[e("div",{staticClass:"qr-code-dialog"},[e("VueQrcode",{staticClass:"qr-code-dialog__img",attrs:{tag:"img",value:t.shareLink}})],1)]):t._e()],1)}),[],!1,null,"74a80015",null).exports},mixins:[ht,Ht],props:{fileInfo:{type:Object,default:()=>{},required:!0},shares:{type:Array,default:()=>[],required:!0},canReshare:{type:Boolean,required:!0}},data:()=>({canLinkShare:(0,at.F)().files_sharing.public.enabled}),computed:{hasLinkShares(){return this.shares.filter((t=>t.type===this.SHARE_TYPES.SHARE_TYPE_LINK)).length>0},hasShares(){return this.shares.length>0}},methods:{addShare(t,e){this.shares.push(t),this.awaitForShare(t,e)},awaitForShare(t,e){this.$nextTick((()=>{const i=this.$children.find((e=>e.share===t));i&&e(i)}))},removeShare(t){const e=this.shares.findIndex((e=>e===t));this.shares.splice(e,1)}}},$e=(0,pt.A)(We,(function(){var t=this,e=t._self._c;return t.canLinkShare?e("ul",{staticClass:"sharing-link-list"},[!t.hasLinkShares&&t.canReshare?e("SharingEntryLink",{attrs:{"can-reshare":t.canReshare,"file-info":t.fileInfo},on:{"add:share":t.addShare}}):t._e(),t._v(" "),t.hasShares?t._l(t.shares,(function(i,n){return e("SharingEntryLink",{key:i.id,attrs:{index:t.shares.length>1?n+1:null,"can-reshare":t.canReshare,share:t.shares[n],"file-info":t.fileInfo},on:{"update:share":[function(e){return t.$set(t.shares,n,e)},function(e){return t.awaitForShare(...arguments)}],"add:share":function(e){return t.addShare(...arguments)},"remove:share":t.removeShare,"open-sharing-details":function(e){return t.openSharingDetails(i)}}})})):t._e()],2):t._e()}),[],!1,null,null,null).exports;var Ke=n(18740);const Ge={name:"DotsHorizontalIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ze=(0,pt.A)(Ge,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon dots-horizontal-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,Qe={name:"SharingEntry",components:{NcButton:Ke.A,NcAvatar:v.A,DotsHorizontalIcon:Ze,NcSelect:_.A,SharingEntryQuickShareSelect:Me},mixins:[Xt,Ht],computed:{title(){let e=this.share.shareWithDisplayName;return this.share.type===this.SHARE_TYPES.SHARE_TYPE_GROUP?e+=" (".concat(t("files_sharing","group"),")"):this.share.type===this.SHARE_TYPES.SHARE_TYPE_ROOM?e+=" (".concat(t("files_sharing","conversation"),")"):this.share.type===this.SHARE_TYPES.SHARE_TYPE_REMOTE?e+=" (".concat(t("files_sharing","remote"),")"):this.share.type===this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP?e+=" (".concat(t("files_sharing","remote group"),")"):this.share.type===this.SHARE_TYPES.SHARE_TYPE_GUEST&&(e+=" (".concat(t("files_sharing","guest"),")")),e},tooltip(){if(this.share.owner!==this.share.uidFileOwner){const e={user:this.share.shareWithDisplayName,owner:this.share.ownerDisplayName};return this.share.type===this.SHARE_TYPES.SHARE_TYPE_GROUP?t("files_sharing","Shared with the group {user} by {owner}",e):this.share.type===this.SHARE_TYPES.SHARE_TYPE_ROOM?t("files_sharing","Shared with the conversation {user} by {owner}",e):t("files_sharing","Shared with {user} by {owner}",e)}return null},hasStatus(){return this.share.type===this.SHARE_TYPES.SHARE_TYPE_USER&&"object"==typeof this.share.status&&!Array.isArray(this.share.status)}},methods:{onMenuClose(){this.onNoteSubmit()}}};var Je=n(36381),Xe={};Xe.styleTagTransform=A(),Xe.setAttributes=u(),Xe.insert=c().bind(null,"head"),Xe.domAPI=o(),Xe.insertStyleElement=p(),a()(Je.A,Xe),Je.A&&Je.A.locals&&Je.A.locals;const ti={name:"SharingList",components:{SharingEntry:(0,pt.A)(Qe,(function(){var t=this,e=t._self._c;return e("li",{staticClass:"sharing-entry"},[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{"is-no-user":t.share.type!==t.SHARE_TYPES.SHARE_TYPE_USER,user:t.share.shareWith,"display-name":t.share.shareWithDisplayName,"menu-position":"left",url:t.share.shareWithAvatar}}),t._v(" "),e("div",{staticClass:"sharing-entry__summary"},[e(t.share.shareWithLink?"a":"div",{tag:"component",staticClass:"sharing-entry__summary__desc",attrs:{title:t.tooltip,"aria-label":t.tooltip,href:t.share.shareWithLink}},[e("span",[t._v(t._s(t.title)+"\n\t\t\t\t"),t.isUnique?t._e():e("span",{staticClass:"sharing-entry__summary__desc-unique"},[t._v(" ("+t._s(t.share.shareWithDisplayNameUnique)+")")]),t._v(" "),t.hasStatus&&t.share.status.message?e("small",[t._v("("+t._s(t.share.status.message)+")")]):t._e()])]),t._v(" "),e("SharingEntryQuickShareSelect",{attrs:{share:t.share,"file-info":t.fileInfo},on:{"open-sharing-details":function(e){return t.openShareDetailsForCustomSettings(t.share)}}})],1),t._v(" "),t.share.canEdit?e("NcButton",{staticClass:"sharing-entry__action",attrs:{"data-cy-files-sharing-share-actions":"","aria-label":t.t("files_sharing","Open Sharing Details"),type:"tertiary"},on:{click:function(e){return t.openSharingDetails(t.share)}},scopedSlots:t._u([{key:"icon",fn:function(){return[e("DotsHorizontalIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,1700783217)}):t._e()],1)}),[],!1,null,"939d5de0",null).exports},mixins:[ht,Ht],props:{fileInfo:{type:Object,default:()=>{},required:!0},shares:{type:Array,default:()=>[],required:!0}},computed:{hasShares(){return 0===this.shares.length},isUnique(){return t=>[...this.shares].filter((e=>t.type===this.SHARE_TYPES.SHARE_TYPE_USER&&t.shareWithDisplayName===e.shareWithDisplayName)).length<=1}}},ei=(0,pt.A)(ti,(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"sharing-sharee-list"},t._l(t.shares,(function(i){return e("SharingEntry",{key:i.id,attrs:{"file-info":t.fileInfo,share:i,"is-unique":t.isUnique(i)},on:{"open-sharing-details":function(e){return t.openSharingDetails(i)}}})})),1)}),[],!1,null,null,null).exports;var ii=n(53334),ni=n(63407),ri=n(16044),ai=n(31126),si=n(32073),oi=n(84237);const li={name:"CircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ci=(0,pt.A)(li,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon circle-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,hi={name:"EmailIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ui=(0,pt.A)(hi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon email-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var di=n(36600),pi=n(43261);const fi={name:"ShareCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ai=(0,pt.A)(fi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon share-circle-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,gi={name:"AccountCircleOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},mi=(0,pt.A)(gi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon account-circle-outline-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports,vi={name:"EyeIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},_i=(0,pt.A)(vi,(function(){var t=this,e=t._self._c;return e("span",t._b({staticClass:"material-design-icon eye-icon",attrs:{"aria-hidden":t.title?null:"true","aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[e("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[e("path",{attrs:{d:"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z"}},[t.title?e("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports;var yi=n(65422),Ci=n(25384),wi=n(33388);const Ei={name:"SharingDetailsTab",components:{NcAvatar:v.A,NcButton:Ke.A,NcInputField:ni.A,NcPasswordField:ri.A,NcDateTimePickerNative:ai.A,NcCheckboxRadioSwitch:si.A,NcLoadingIcon:oi.A,CloseIcon:Se.A,CircleIcon:ci,EditIcon:De.A,ExternalShareAction:Ue,LinkIcon:di.A,GroupIcon:pi.A,ShareIcon:Ai,UserIcon:mi,UploadIcon:yi.A,ViewIcon:_i,MenuDownIcon:Ci.A,MenuUpIcon:wi.A,DotsHorizontalIcon:Ze},mixins:[ht,Lt,Xt],props:{shareRequestValue:{type:Object,required:!1},fileInfo:{type:Object,required:!0},share:{type:Object,required:!0}},data:()=>({writeNoteToRecipientIsChecked:!1,sharingPermission:Qt.ALL.toString(),revertSharingPermission:Qt.ALL.toString(),setCustomPermissions:!1,passwordError:!1,advancedSectionAccordionExpanded:!1,bundledPermissions:Qt,isFirstComponentLoad:!0,test:!1,creating:!1,ExternalShareActions:OCA.Sharing.ExternalShareActions.state}),computed:{title(){switch(this.share.type){case this.SHARE_TYPES.SHARE_TYPE_USER:return t("files_sharing","Share with {userName}",{userName:this.share.shareWithDisplayName});case this.SHARE_TYPES.SHARE_TYPE_EMAIL:return t("files_sharing","Share with email {email}",{email:this.share.shareWith});case this.SHARE_TYPES.SHARE_TYPE_LINK:return t("files_sharing","Share link");case this.SHARE_TYPES.SHARE_TYPE_GROUP:return t("files_sharing","Share with group");case this.SHARE_TYPES.SHARE_TYPE_ROOM:return t("files_sharing","Share in conversation");case this.SHARE_TYPES.SHARE_TYPE_REMOTE:{const[e,i]=this.share.shareWith.split("@");return t("files_sharing","Share with {user} on remote server {server}",{user:e,server:i})}case this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP:return t("files_sharing","Share with remote group");case this.SHARE_TYPES.SHARE_TYPE_GUEST:return t("files_sharing","Share with guest");default:return this.share.id?t("files_sharing","Update share"):t("files_sharing","Create share")}},canEdit:{get(){return this.share.hasUpdatePermission},set(t){this.updateAtomicPermissions({isEditChecked:t})}},canCreate:{get(){return this.share.hasCreatePermission},set(t){this.updateAtomicPermissions({isCreateChecked:t})}},canDelete:{get(){return this.share.hasDeletePermission},set(t){this.updateAtomicPermissions({isDeleteChecked:t})}},canReshare:{get(){return this.share.hasSharePermission},set(t){this.updateAtomicPermissions({isReshareChecked:t})}},canDownload:{get(){var t;return(null===(t=this.share.attributes.find((t=>"download"===t.key)))||void 0===t?void 0:t.enabled)||!1},set(t){const e=this.share.attributes.find((t=>"download"===t.key));e&&(e.enabled=t)}},hasRead:{get(){return this.share.hasReadPermission},set(t){this.updateAtomicPermissions({isReadChecked:t})}},hasExpirationDate:{get(){return this.isValidShareAttribute(this.share.expireDate)},set(t){this.share.expireDate=t?this.formatDateToString(this.defaultExpiryDate):""}},isPasswordProtected:{get(){return this.config.enforcePasswordForPublicLink||!!this.share.password},async set(t){t?(this.share.password=await Dt(),this.$set(this.share,"newPassword",this.share.password)):(this.share.password="",this.$delete(this.share,"newPassword"))}},isFolder(){return"dir"===this.fileInfo.type},isSetDownloadButtonVisible(){return this.isFolder||["application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation"].includes(this.fileInfo.mimetype)},isPasswordEnforced(){return this.isPublicShare&&this.config.enforcePasswordForPublicLink},defaultExpiryDate(){return(this.isGroupShare||this.isUserShare)&&this.config.isDefaultInternalExpireDateEnabled?new Date(this.config.defaultInternalExpirationDate):this.isRemoteShare&&this.config.isDefaultRemoteExpireDateEnabled?new Date(this.config.defaultRemoteExpireDateEnabled):this.isPublicShare&&this.config.isDefaultExpireDateEnabled?new Date(this.config.defaultExpirationDate):new Date((new Date).setDate((new Date).getDate()+1))},isUserShare(){return this.share.type===this.SHARE_TYPES.SHARE_TYPE_USER},isGroupShare(){return this.share.type===this.SHARE_TYPES.SHARE_TYPE_GROUP},isNewShare(){return!this.share.id},allowsFileDrop(){return!(!this.isFolder||!this.config.isPublicUploadEnabled||this.share.type!==this.SHARE_TYPES.SHARE_TYPE_LINK&&this.share.type!==this.SHARE_TYPES.SHARE_TYPE_EMAIL)},hasFileDropPermissions(){return this.share.permissions===this.bundledPermissions.FILE_DROP},shareButtonText(){return this.isNewShare?t("files_sharing","Save share"):t("files_sharing","Update share")},canSetEdit(){return this.fileInfo.sharePermissions&OC.PERMISSION_UPDATE||this.canEdit},canSetCreate(){return this.fileInfo.sharePermissions&OC.PERMISSION_CREATE||this.canCreate},canSetDelete(){return this.fileInfo.sharePermissions&OC.PERMISSION_DELETE||this.canDelete},canSetReshare(){return this.fileInfo.sharePermissions&OC.PERMISSION_SHARE||this.canReshare},canSetDownload(){return this.fileInfo.canDownload()||this.canDownload},canRemoveReadPermission(){return this.allowsFileDrop&&(this.share.type===this.SHARE_TYPES.SHARE_TYPE_LINK||this.share.type===this.SHARE_TYPES.SHARE_TYPE_EMAIL)},hasUnsavedPassword(){return void 0!==this.share.newPassword},passwordExpirationTime(){if(!this.isValidShareAttribute(this.share.passwordExpirationTime))return null;const t=moment(this.share.passwordExpirationTime);return!(t.diff(moment())<0)&&t.fromNow()},isTalkEnabled:()=>void 0!==OC.appswebroots.spreed,isPasswordProtectedByTalkAvailable(){return this.isPasswordProtected&&this.isTalkEnabled},isPasswordProtectedByTalk:{get(){return this.share.sendPasswordByTalk},async set(t){this.share.sendPasswordByTalk=t}},isEmailShareType(){return!!this.share&&this.share.type===this.SHARE_TYPES.SHARE_TYPE_EMAIL},canTogglePasswordProtectedByTalkAvailable(){return!(!this.isPublicShare||!this.isPasswordProtected||this.isEmailShareType&&!this.hasUnsavedPassword||void 0===OC.appswebroots.spreed)},canChangeHideDownload(){return this.fileInfo.shareAttributes.some((t=>"download"===t.key&&"permissions"===t.scope&&!1===t.enabled))},customPermissionsList(){const t={[Zt.READ]:this.t("files_sharing","Read"),[Zt.CREATE]:this.t("files_sharing","Create"),[Zt.UPDATE]:this.t("files_sharing","Edit"),[Zt.SHARE]:this.t("files_sharing","Share"),[Zt.DELETE]:this.t("files_sharing","Delete")};return[Zt.READ,Zt.CREATE,Zt.UPDATE,Zt.SHARE,Zt.DELETE].filter((t=>{return e=this.share.permissions,i=t,e!==Zt.NONE&&(e&i)===i;var e,i})).map(((e,i)=>0===i?t[e]:t[e].toLocaleLowerCase((0,ii.Z0)()))).join(", ")},advancedControlExpandedValue(){return this.advancedSectionAccordionExpanded?"true":"false"},errorPasswordLabel(){if(this.passwordError)return t("files_sharing","Password field can't be empty")},passwordHint(){if(!this.isNewShare&&!this.hasUnsavedPassword)return t("files_sharing","Replace current password")},externalLinkActions(){return this.ExternalShareActions.actions.filter((t=>(t.shareType.includes(ot.Z.SHARE_TYPE_LINK)||t.shareType.includes(ot.Z.SHARE_TYPE_EMAIL))&&t.advanced))}},watch:{setCustomPermissions(t){this.sharingPermission=t?"custom":this.revertSharingPermission}},beforeMount(){this.initializePermissions(),this.initializeAttributes(),Gt.debug("Share object received",{share:this.share}),Gt.debug("Configuration object received",{config:this.config})},mounted(){var t;null===(t=this.$refs.quickPermissions)||void 0===t||null===(t=t.querySelector("input:checked"))||void 0===t||t.focus()},methods:{updateAtomicPermissions(){let{isReadChecked:t=this.hasRead,isEditChecked:e=this.canEdit,isCreateChecked:i=this.canCreate,isDeleteChecked:n=this.canDelete,isReshareChecked:r=this.canReshare}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const a=0|(t?Zt.READ:0)|(i?Zt.CREATE:0)|(n?Zt.DELETE:0)|(e?Zt.UPDATE:0)|(r?Zt.SHARE:0);this.share.permissions=a},expandCustomPermissions(){this.advancedSectionAccordionExpanded||(this.advancedSectionAccordionExpanded=!0),this.toggleCustomPermissions()},toggleCustomPermissions(t){const e="custom"===this.sharingPermission;this.revertSharingPermission=e?"custom":t,this.setCustomPermissions=e},async initializeAttributes(){if(this.isNewShare)return this.isPasswordEnforced&&this.isPublicShare&&(this.$set(this.share,"newPassword",await Dt()),this.advancedSectionAccordionExpanded=!0),this.isPublicShare&&this.config.isDefaultExpireDateEnabled?this.share.expireDate=this.config.defaultExpirationDate.toDateString():this.isRemoteShare&&this.config.isDefaultRemoteExpireDateEnabled?this.share.expireDate=this.config.defaultRemoteExpirationDateString.toDateString():this.config.isDefaultInternalExpireDateEnabled&&(this.share.expireDate=this.config.defaultInternalExpirationDate.toDateString()),void(this.isValidShareAttribute(this.share.expireDate)&&(this.advancedSectionAccordionExpanded=!0));!this.isValidShareAttribute(this.share.expireDate)&&this.isExpiryDateEnforced&&(this.hasExpirationDate=!0),(this.isValidShareAttribute(this.share.password)||this.isValidShareAttribute(this.share.expireDate)||this.isValidShareAttribute(this.share.label))&&(this.advancedSectionAccordionExpanded=!0)},handleShareType(){"shareType"in this.share?this.share.type=this.share.shareType:this.share.share_type&&(this.share.type=this.share.share_type)},handleDefaultPermissions(){if(this.isNewShare){const t=this.config.defaultPermissions;t===Qt.READ_ONLY||t===Qt.ALL?this.sharingPermission=t.toString():(this.sharingPermission="custom",this.share.permissions=t,this.advancedSectionAccordionExpanded=!0,this.setCustomPermissions=!0)}this.canRemoveReadPermission||(this.hasRead=!0)},handleCustomPermissions(){this.isNewShare||!this.hasCustomPermissions&&!this.share.setCustomPermissions?this.share.permissions&&(this.sharingPermission=this.share.permissions.toString()):(this.sharingPermission="custom",this.advancedSectionAccordionExpanded=!0,this.setCustomPermissions=!0)},initializePermissions(){this.handleShareType(),this.handleDefaultPermissions(),this.handleCustomPermissions()},async saveShare(){var t;const e=["permissions","attributes","note","expireDate"];this.isPublicShare&&e.push("label","password","hideDownload");const i=parseInt(this.sharingPermission);if(this.setCustomPermissions?this.updateAtomicPermissions():this.share.permissions=i,this.isFolder||this.share.permissions!==Qt.ALL||(this.share.permissions=Qt.ALL_FILE),this.writeNoteToRecipientIsChecked||(this.share.note=""),this.isPasswordProtected?this.hasUnsavedPassword&&this.isValidShareAttribute(this.share.newPassword)?(this.share.password=this.share.newPassword,this.$delete(this.share,"newPassword")):this.isPasswordEnforced&&this.isNewShare&&!this.isValidShareAttribute(this.share.password)&&(this.passwordError=!0):this.share.password="",this.hasExpirationDate||(this.share.expireDate=""),this.isNewShare){const t={permissions:this.share.permissions,shareType:this.share.type,shareWith:this.share.shareWith,attributes:this.share.attributes,note:this.share.note,fileInfo:this.fileInfo};t.expireDate=this.hasExpirationDate?this.share.expireDate:"",this.isPasswordProtected&&(t.password=this.share.password),this.creating=!0;const e=await this.addShare(t);this.creating=!1,this.share=e,this.$emit("add:share",this.share)}else this.$emit("update:share",this.share),this.queueUpdate(...e);await this.getNode(),(0,It.Ic)("files:node:updated",this.node),(null===(t=this.$refs.externalLinkActions)||void 0===t?void 0:t.length)>0&&await Promise.allSettled(this.$refs.externalLinkActions.map((t=>{var e,i,n;return"function"!=typeof(null===(e=t.$children.at(0))||void 0===e?void 0:e.onSave)?Promise.resolve():null===(i=t.$children.at(0))||void 0===i||null===(n=i.onSave)||void 0===n?void 0:n.call(i)}))),this.$emit("close-sharing-details")},async addShare(t){Gt.debug("Adding a new share from the input for",{share:t});const e=this.path;try{return await this.createShare({path:e,shareType:t.shareType,shareWith:t.shareWith,permissions:t.permissions,expireDate:t.expireDate,attributes:JSON.stringify(t.attributes),...t.note?{note:t.note}:{},...t.password?{password:t.password}:{}})}catch(t){Gt.error("Error while adding new share",{error:t})}},async removeShare(){await this.onDelete(),await this.getNode(),(0,It.Ic)("files:node:updated",this.node),this.$emit("close-sharing-details")},onPasswordChange(t){if(""===t)return this.$delete(this.share,"newPassword"),void(this.passwordError=this.isNewShare&&this.isPasswordEnforced);this.passwordError=!this.isValidShareAttribute(t),this.$set(this.share,"newPassword",t)},onPasswordProtectedByTalkChange(){this.hasUnsavedPassword&&(this.share.password=this.share.newPassword.trim()),this.queueUpdate("sendPasswordByTalk","password")},isValidShareAttribute:t=>![null,void 0].includes(t)&&t.trim().length>0,getShareTypeIcon(t){switch(t){case this.SHARE_TYPES.SHARE_TYPE_LINK:return di.A;case this.SHARE_TYPES.SHARE_TYPE_GUEST:return mi;case this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP:case this.SHARE_TYPES.SHARE_TYPE_GROUP:return pi.A;case this.SHARE_TYPES.SHARE_TYPE_EMAIL:return ui;case this.SHARE_TYPES.SHARE_TYPE_CIRCLE:return ci;case this.SHARE_TYPES.SHARE_TYPE_ROOM:case this.SHARE_TYPES.SHARE_TYPE_DECK:case this.SHARE_TYPES.SHARE_TYPE_SCIENCEMESH:return Ai;default:return null}}}};var bi=n(10144),Si={};Si.styleTagTransform=A(),Si.setAttributes=u(),Si.insert=c().bind(null,"head"),Si.domAPI=o(),Si.insertStyleElement=p(),a()(bi.A,Si),bi.A&&bi.A.locals&&bi.A.locals;const xi=(0,pt.A)(Ei,(function(){var t,e=this,i=e._self._c;return i("div",{staticClass:"sharingTabDetailsView"},[i("div",{staticClass:"sharingTabDetailsView__header"},[i("span",[e.isUserShare?i("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{"is-no-user":e.share.shareType!==e.SHARE_TYPES.SHARE_TYPE_USER,user:e.share.shareWith,"display-name":e.share.shareWithDisplayName,"menu-position":"left",url:e.share.shareWithAvatar}}):e._e(),e._v(" "),i(e.getShareTypeIcon(e.share.type),{tag:"component",attrs:{size:32}})],1),e._v(" "),i("span",[i("h1",[e._v(e._s(e.title))])])]),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__wrapper"},[i("div",{ref:"quickPermissions",staticClass:"sharingTabDetailsView__quick-permissions"},[i("div",[i("NcCheckboxRadioSwitch",{attrs:{"button-variant":!0,"data-cy-files-sharing-share-permissions-bundle":"read-only",checked:e.sharingPermission,value:e.bundledPermissions.READ_ONLY.toString(),name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.toggleCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("ViewIcon",{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","View only"))+"\n\t\t\t\t\t")]),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{"button-variant":!0,"data-cy-files-sharing-share-permissions-bundle":"upload-edit",checked:e.sharingPermission,value:e.bundledPermissions.ALL.toString(),name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.toggleCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("EditIcon",{attrs:{size:20}})]},proxy:!0}])},[e.allowsFileDrop?[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Allow upload and editing"))+"\n\t\t\t\t\t")]:[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Allow editing"))+"\n\t\t\t\t\t")]],2),e._v(" "),e.allowsFileDrop?i("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-sharing-share-permissions-bundle":"file-drop","button-variant":!0,checked:e.sharingPermission,value:e.bundledPermissions.FILE_DROP.toString(),name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.toggleCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("UploadIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,1083194048)},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","File drop"))+"\n\t\t\t\t\t"),i("small",{staticClass:"subline"},[e._v(e._s(e.t("files_sharing","Upload only")))])]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{"button-variant":!0,"data-cy-files-sharing-share-permissions-bundle":"custom",checked:e.sharingPermission,value:"custom",name:"sharing_permission_radio",type:"radio","button-variant-grouped":"vertical"},on:{"update:checked":[function(t){e.sharingPermission=t},e.expandCustomPermissions]},scopedSlots:e._u([{key:"icon",fn:function(){return[i("DotsHorizontalIcon",{attrs:{size:20}})]},proxy:!0}])},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Custom permissions"))+"\n\t\t\t\t\t"),i("small",{staticClass:"subline"},[e._v(e._s(e.customPermissionsList))])])],1)]),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__advanced-control"},[i("NcButton",{attrs:{id:"advancedSectionAccordionAdvancedControl",type:"tertiary",alignment:"end-reverse","aria-controls":"advancedSectionAccordionAdvanced","aria-expanded":e.advancedControlExpandedValue},on:{click:function(t){e.advancedSectionAccordionExpanded=!e.advancedSectionAccordionExpanded}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.advancedSectionAccordionExpanded?i("MenuUpIcon"):i("MenuDownIcon")]},proxy:!0}])},[e._v("\n\t\t\t\t"+e._s(e.t("files_sharing","Advanced settings"))+"\n\t\t\t\t")])],1),e._v(" "),e.advancedSectionAccordionExpanded?i("div",{staticClass:"sharingTabDetailsView__advanced",attrs:{id:"advancedSectionAccordionAdvanced","aria-labelledby":"advancedSectionAccordionAdvancedControl",role:"region"}},[i("section",[e.isPublicShare?i("NcInputField",{attrs:{autocomplete:"off",label:e.t("files_sharing","Share label"),value:e.share.label},on:{"update:value":function(t){return e.$set(e.share,"label",t)}}}):e._e(),e._v(" "),e.isPublicShare?[i("NcCheckboxRadioSwitch",{attrs:{checked:e.isPasswordProtected,disabled:e.isPasswordEnforced},on:{"update:checked":function(t){e.isPasswordProtected=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Set password"))+"\n\t\t\t\t\t")]),e._v(" "),e.isPasswordProtected?i("NcPasswordField",{attrs:{autocomplete:"new-password",value:e.hasUnsavedPassword?e.share.newPassword:"",error:e.passwordError,"helper-text":e.errorPasswordLabel||e.passwordHint,required:e.isPasswordEnforced&&e.isNewShare,label:e.t("files_sharing","Password")},on:{"update:value":e.onPasswordChange}}):e._e(),e._v(" "),e.isEmailShareType&&e.passwordExpirationTime?i("span",{attrs:{icon:"icon-info"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Password expires {passwordExpirationTime}",{passwordExpirationTime:e.passwordExpirationTime}))+"\n\t\t\t\t\t")]):e.isEmailShareType&&null!==e.passwordExpirationTime?i("span",{attrs:{icon:"icon-error"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Password expired"))+"\n\t\t\t\t\t")]):e._e()]:e._e(),e._v(" "),e.canTogglePasswordProtectedByTalkAvailable?i("NcCheckboxRadioSwitch",{attrs:{checked:e.isPasswordProtectedByTalk},on:{"update:checked":[function(t){e.isPasswordProtectedByTalk=t},e.onPasswordProtectedByTalkChange]}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Video verification"))+"\n\t\t\t\t")]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{checked:e.hasExpirationDate,disabled:e.isExpiryDateEnforced},on:{"update:checked":function(t){e.hasExpirationDate=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.isExpiryDateEnforced?e.t("files_sharing","Expiration date (enforced)"):e.t("files_sharing","Set expiration date"))+"\n\t\t\t\t")]),e._v(" "),e.hasExpirationDate?i("NcDateTimePickerNative",{attrs:{id:"share-date-picker",value:new Date(null!==(t=e.share.expireDate)&&void 0!==t?t:e.dateTomorrow),min:e.dateTomorrow,max:e.maxExpirationDateEnforced,"hide-label":"",label:e.t("files_sharing","Expiration date"),placeholder:e.t("files_sharing","Expiration date"),type:"date"},on:{input:e.onExpirationChange}}):e._e(),e._v(" "),e.isPublicShare?i("NcCheckboxRadioSwitch",{attrs:{disabled:e.canChangeHideDownload,checked:e.share.hideDownload},on:{"update:checked":[function(t){return e.$set(e.share,"hideDownload",t)},function(t){return e.queueUpdate("hideDownload")}]}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Hide download"))+"\n\t\t\t\t")]):e._e(),e._v(" "),e.isPublicShare?e._e():i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetDownload,checked:e.canDownload,"data-cy-files-sharing-share-permissions-checkbox":"download"},on:{"update:checked":function(t){e.canDownload=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Allow download"))+"\n\t\t\t\t")]),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{checked:e.writeNoteToRecipientIsChecked},on:{"update:checked":function(t){e.writeNoteToRecipientIsChecked=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Note to recipient"))+"\n\t\t\t\t")]),e._v(" "),e.writeNoteToRecipientIsChecked?[i("label",{attrs:{for:"share-note-textarea"}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Enter a note for the share recipient"))+"\n\t\t\t\t\t")]),e._v(" "),i("textarea",{attrs:{id:"share-note-textarea"},domProps:{value:e.share.note},on:{input:function(t){e.share.note=t.target.value}}})]:e._e(),e._v(" "),e._l(e.externalLinkActions,(function(t){return i("ExternalShareAction",{key:t.id,ref:"externalLinkActions",refInFor:!0,attrs:{id:t.id,action:t,"file-info":e.fileInfo,share:e.share}})})),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{checked:e.setCustomPermissions},on:{"update:checked":function(t){e.setCustomPermissions=t}}},[e._v("\n\t\t\t\t\t"+e._s(e.t("files_sharing","Custom permissions"))+"\n\t\t\t\t")]),e._v(" "),e.setCustomPermissions?i("section",{staticClass:"custom-permissions-group"},[i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canRemoveReadPermission,checked:e.hasRead,"data-cy-files-sharing-share-permissions-checkbox":"read"},on:{"update:checked":function(t){e.hasRead=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Read"))+"\n\t\t\t\t\t")]),e._v(" "),e.isFolder?i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetCreate,checked:e.canCreate,"data-cy-files-sharing-share-permissions-checkbox":"create"},on:{"update:checked":function(t){e.canCreate=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Create"))+"\n\t\t\t\t\t")]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetEdit,checked:e.canEdit,"data-cy-files-sharing-share-permissions-checkbox":"update"},on:{"update:checked":function(t){e.canEdit=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Edit"))+"\n\t\t\t\t\t")]),e._v(" "),e.config.isResharingAllowed&&e.share.type!==e.SHARE_TYPES.SHARE_TYPE_LINK?i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetReshare,checked:e.canReshare,"data-cy-files-sharing-share-permissions-checkbox":"share"},on:{"update:checked":function(t){e.canReshare=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Share"))+"\n\t\t\t\t\t")]):e._e(),e._v(" "),i("NcCheckboxRadioSwitch",{attrs:{disabled:!e.canSetDelete,checked:e.canDelete,"data-cy-files-sharing-share-permissions-checkbox":"delete"},on:{"update:checked":function(t){e.canDelete=t}}},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Delete"))+"\n\t\t\t\t\t")])],1):e._e(),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__delete"},[e.isNewShare?e._e():i("NcButton",{attrs:{"aria-label":e.t("files_sharing","Delete share"),disabled:!1,readonly:!1,type:"tertiary"},on:{click:function(t){return t.preventDefault(),e.removeShare.apply(null,arguments)}},scopedSlots:e._u([{key:"icon",fn:function(){return[i("CloseIcon",{attrs:{size:16}})]},proxy:!0}],null,!1,2746485232)},[e._v("\n\t\t\t\t\t\t"+e._s(e.t("files_sharing","Delete share"))+"\n\t\t\t\t\t")])],1)],2)]):e._e()]),e._v(" "),i("div",{staticClass:"sharingTabDetailsView__footer"},[i("div",{staticClass:"button-group"},[i("NcButton",{attrs:{"data-cy-files-sharing-share-editor-action":"cancel"},on:{click:function(t){return e.$emit("close-sharing-details")}}},[e._v("\n\t\t\t\t"+e._s(e.t("files_sharing","Cancel"))+"\n\t\t\t")]),e._v(" "),i("NcButton",{attrs:{type:"primary","data-cy-files-sharing-share-editor-action":"save"},on:{click:e.saveShare},scopedSlots:e._u([e.creating?{key:"icon",fn:function(){return[i("NcLoadingIcon")]},proxy:!0}:null],null,!0)},[e._v("\n\t\t\t\t"+e._s(e.shareButtonText)+"\n\t\t\t\t")])],1)])])}),[],!1,null,"56215dac",null).exports;var Ti=n(96763);const Pi={name:"SharingTab",components:{NcAvatar:v.A,CollectionList:it,SharingEntryInternal:St,SharingEntrySimple:yt,SharingInherited:le,SharingInput:Vt,SharingLinkList:$e,SharingList:ei,SharingDetailsTab:xi},mixins:[ht],data:()=>({config:new st,deleteEvent:null,error:"",expirationInterval:null,loading:!0,fileInfo:null,reshare:null,sharedWithMe:{},shares:[],linkShares:[],sections:OCA.Sharing.ShareTabSections.getSections(),projectsEnabled:(0,rt.C)("core","projects_enabled",!1),showSharingDetailsView:!1,shareDetailsData:{},returnFocusElement:null}),computed:{isSharedWithMe(){return Object.keys(this.sharedWithMe).length>0},canReshare(){return!!(this.fileInfo.permissions&OC.PERMISSION_SHARE)||!!(this.reshare&&this.reshare.hasSharePermission&&this.config.isResharingAllowed)}},methods:{async update(t){this.fileInfo=t,this.resetState(),this.getShares()},async getShares(){try{this.loading=!0;const t=(0,nt.KT)("apps/files_sharing/api/v1/shares"),e="json",i=(this.fileInfo.path+"/"+this.fileInfo.name).replace("//","/"),n=W.Ay.get(t,{params:{format:e,path:i,reshares:!0}}),r=W.Ay.get(t,{params:{format:e,path:i,shared_with_me:!0}}),[a,s]=await Promise.all([n,r]);this.loading=!1,this.processSharedWithMe(s),this.processShares(a)}catch(i){var e;null!==(e=i.response.data)&&void 0!==e&&null!==(e=e.ocs)&&void 0!==e&&null!==(e=e.meta)&&void 0!==e&&e.message?this.error=i.response.data.ocs.meta.message:this.error=t("files_sharing","Unable to load the shares list"),this.loading=!1,Ti.error("Error loading the shares list",i)}},resetState(){clearInterval(this.expirationInterval),this.loading=!0,this.error="",this.sharedWithMe={},this.shares=[],this.linkShares=[],this.showSharingDetailsView=!1,this.shareDetailsData={}},updateExpirationSubtitle(e){const i=moment(e.expireDate).unix();this.$set(this.sharedWithMe,"subtitle",t("files_sharing","Expires {relativetime}",{relativetime:OC.Util.relativeModifiedDate(1e3*i)})),moment().unix()>i&&(clearInterval(this.expirationInterval),this.$set(this.sharedWithMe,"subtitle",t("files_sharing","this share just expired.")))},processShares(t){let{data:e}=t;if(e.ocs&&e.ocs.data&&e.ocs.data.length>0){const t=e.ocs.data.map((t=>new ct(t))).sort(((t,e)=>e.createdTime-t.createdTime));this.linkShares=t.filter((t=>t.type===this.SHARE_TYPES.SHARE_TYPE_LINK||t.type===this.SHARE_TYPES.SHARE_TYPE_EMAIL)),this.shares=t.filter((t=>t.type!==this.SHARE_TYPES.SHARE_TYPE_LINK&&t.type!==this.SHARE_TYPES.SHARE_TYPE_EMAIL)),Ti.debug("Processed",this.linkShares.length,"link share(s)"),Ti.debug("Processed",this.shares.length,"share(s)")}},processSharedWithMe(e){let{data:i}=e;if(i.ocs&&i.ocs.data&&i.ocs.data[0]){const e=new ct(i),n=function(e){return e.type===ot.Z.SHARE_TYPE_GROUP?t("files_sharing","Shared with you and the group {group} by {owner}",{group:e.shareWithDisplayName,owner:e.ownerDisplayName},void 0,{escape:!1}):e.type===ot.Z.SHARE_TYPE_CIRCLE?t("files_sharing","Shared with you and {circle} by {owner}",{circle:e.shareWithDisplayName,owner:e.ownerDisplayName},void 0,{escape:!1}):e.type===ot.Z.SHARE_TYPE_ROOM?e.shareWithDisplayName?t("files_sharing","Shared with you and the conversation {conversation} by {owner}",{conversation:e.shareWithDisplayName,owner:e.ownerDisplayName},void 0,{escape:!1}):t("files_sharing","Shared with you in a conversation by {owner}",{owner:e.ownerDisplayName},void 0,{escape:!1}):t("files_sharing","Shared with you by {owner}",{owner:e.ownerDisplayName},void 0,{escape:!1})}(e),r=e.ownerDisplayName,a=e.owner;this.sharedWithMe={displayName:r,title:n,user:a},this.reshare=e,e.expireDate&&moment(e.expireDate).unix()>moment().unix()&&(this.updateExpirationSubtitle(e),this.expirationInterval=setInterval(this.updateExpirationSubtitle,1e4,e))}else this.fileInfo&&void 0!==this.fileInfo.shareOwnerId&&this.fileInfo.shareOwnerId!==OC.currentUser&&(this.sharedWithMe={displayName:this.fileInfo.shareOwner,title:t("files_sharing","Shared with you by {owner}",{owner:this.fileInfo.shareOwner},void 0,{escape:!1}),user:this.fileInfo.shareOwnerId})},addShare(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:()=>{};t.type===this.SHARE_TYPES.SHARE_TYPE_EMAIL?this.linkShares.unshift(t):this.shares.unshift(t),this.awaitForShare(t,e)},removeShare(t){const e=t.type===this.SHARE_TYPES.SHARE_TYPE_EMAIL||t.type===this.SHARE_TYPES.SHARE_TYPE_LINK?this.linkShares:this.shares,i=e.findIndex((e=>e.id===t.id));-1!==i&&e.splice(i,1)},awaitForShare(t,e){this.$nextTick((()=>{let i=this.$refs.shareList;t.type===this.SHARE_TYPES.SHARE_TYPE_EMAIL&&(i=this.$refs.linkShareList);const n=i.$children.find((e=>e.share===t));n&&e(n)}))},toggleShareDetailsView(t){if(!this.showSharingDetailsView)if(Array.from(document.activeElement.classList).some((t=>t.startsWith("action-")))){var e;const t=null===(e=document.activeElement.closest('[role="menu"]'))||void 0===e?void 0:e.id;this.returnFocusElement=document.querySelector('[aria-controls="'.concat(t,'"]'))}else this.returnFocusElement=document.activeElement;t&&(this.shareDetailsData=t),this.showSharingDetailsView=!this.showSharingDetailsView,this.showSharingDetailsView||this.$nextTick((()=>{var t;null===(t=this.returnFocusElement)||void 0===t||t.focus(),this.returnFocusElement=null}))}}},ki=Pi;var Ri=n(3316),Di={};Di.styleTagTransform=A(),Di.setAttributes=u(),Di.insert=c().bind(null,"head"),Di.domAPI=o(),Di.insertStyleElement=p(),a()(Ri.A,Di),Ri.A&&Ri.A.locals&&Ri.A.locals;const Ii=(0,pt.A)(ki,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"sharingTab",class:{"icon-loading":t.loading}},[t.error?e("div",{staticClass:"emptycontent",class:{emptyContentWithSections:t.sections.length>0}},[e("div",{staticClass:"icon icon-error"}),t._v(" "),e("h2",[t._v(t._s(t.error))])]):t._e(),t._v(" "),e("div",{directives:[{name:"show",rawName:"v-show",value:!t.showSharingDetailsView,expression:"!showSharingDetailsView"}],staticClass:"sharingTab__content"},[e("ul",[t.isSharedWithMe?e("SharingEntrySimple",t._b({staticClass:"sharing-entry__reshare",scopedSlots:t._u([{key:"avatar",fn:function(){return[e("NcAvatar",{staticClass:"sharing-entry__avatar",attrs:{user:t.sharedWithMe.user,"display-name":t.sharedWithMe.displayName}})]},proxy:!0}],null,!1,3197855346)},"SharingEntrySimple",t.sharedWithMe,!1)):t._e()],1),t._v(" "),t.loading?t._e():e("SharingInput",{attrs:{"can-reshare":t.canReshare,"file-info":t.fileInfo,"link-shares":t.linkShares,reshare:t.reshare,shares:t.shares},on:{"open-sharing-details":t.toggleShareDetailsView}}),t._v(" "),t.loading?t._e():e("SharingLinkList",{ref:"linkShareList",attrs:{"can-reshare":t.canReshare,"file-info":t.fileInfo,shares:t.linkShares},on:{"open-sharing-details":t.toggleShareDetailsView}}),t._v(" "),t.loading?t._e():e("SharingList",{ref:"shareList",attrs:{shares:t.shares,"file-info":t.fileInfo},on:{"open-sharing-details":t.toggleShareDetailsView}}),t._v(" "),t.canReshare&&!t.loading?e("SharingInherited",{attrs:{"file-info":t.fileInfo}}):t._e(),t._v(" "),e("SharingEntryInternal",{attrs:{"file-info":t.fileInfo}}),t._v(" "),t.projectsEnabled&&t.fileInfo?e("CollectionList",{attrs:{id:"".concat(t.fileInfo.id),type:"file",name:t.fileInfo.name}}):t._e()],1),t._v(" "),t._l(t.sections,(function(i,n){return e("div",{directives:[{name:"show",rawName:"v-show",value:!t.showSharingDetailsView,expression:"!showSharingDetailsView"}],key:n,ref:"section-"+n,refInFor:!0,staticClass:"sharingTab__additionalContent"},[e(i(t.$refs["section-"+n],t.fileInfo),{tag:"component",attrs:{"file-info":t.fileInfo}})],1)})),t._v(" "),t.showSharingDetailsView?e("SharingDetailsTab",{attrs:{"file-info":t.shareDetailsData.fileInfo,share:t.shareDetailsData.share},on:{"close-sharing-details":t.toggleShareDetailsView,"add:share":t.addShare,"remove:share":t.removeShare}}):t._e()],2)}),[],!1,null,"a65c443a",null).exports},27518:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M15.4%2016.6L10.8%2012l4.6-4.6L14%206l-6%206%206%206%201.4-1.4z%27/%3e%3c/svg%3e"},27514:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M18.4%207.4L17%206l-6%206%206%206%201.4-1.4-4.6-4.6%204.6-4.6m-6%200L11%206l-6%206%206%206%201.4-1.4L7.8%2012l4.6-4.6z%27/%3e%3c/svg%3e"},79722:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M5.6%207.4L7%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6m6%200L13%206l6%206-6%206-1.4-1.4%204.6-4.6-4.6-4.6z%27/%3e%3c/svg%3e"},86886:t=>{"use strict";t.exports="data:image/svg+xml,%3c%21--%20-%20SPDX-FileCopyrightText:%202020%20Google%20Inc.%20-%20SPDX-License-Identifier:%20Apache-2.0%20--%3e%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2724%27%20height=%2724%27%20fill=%27%23222%27%3e%3cpath%20d=%27M8.6%2016.6l4.6-4.6-4.6-4.6L10%206l6%206-6%206-1.4-1.4z%27/%3e%3c/svg%3e"}}]);
-//# sourceMappingURL=5724-5724.js.map?v=b7bea40d5b6f46423af7 \ No newline at end of file
diff --git a/dist/5724-5724.js.map b/dist/5724-5724.js.map
deleted file mode 100644
index 36a544472c9..00000000000
--- a/dist/5724-5724.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"5724-5724.js?v=b7bea40d5b6f46423af7","mappings":"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","sources":["webpack:///nextcloud/node_modules/@chenfengyuan/vue-qrcode/dist/vue-qrcode.js","webpack:///nextcloud/node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntry.vue?vue&type=style&index=0&id=939d5de0&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryLink.vue?vue&type=style&index=0&id=74a80015&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=dab76140&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/components/SharingInput.vue?vue&type=style&index=0&id=19527463&prod&lang=scss","webpack:///nextcloud/apps/files_sharing/src/views/SharingDetailsTab.vue?vue&type=style&index=0&id=56215dac&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/views/SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files_sharing/src/views/SharingTab.vue?vue&type=style&index=0&id=a65c443a&prod&scoped=true&lang=scss","webpack:///nextcloud/node_modules/nextcloud-vue-collections/node_modules/@nextcloud/router/dist/index.js","webpack:///nextcloud/node_modules/url-search-params-polyfill/index.js","webpack://nextcloud/./apps/files_sharing/src/views/SharingTab.vue?0ae8","webpack://nextcloud/./node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css?fdca","webpack:///nextcloud/node_modules/lodash-es/isObject.js","webpack:///nextcloud/node_modules/lodash-es/_freeGlobal.js","webpack:///nextcloud/node_modules/lodash-es/_root.js","webpack:///nextcloud/node_modules/lodash-es/now.js","webpack:///nextcloud/node_modules/lodash-es/_trimmedEndIndex.js","webpack:///nextcloud/node_modules/lodash-es/_baseTrim.js","webpack:///nextcloud/node_modules/lodash-es/_Symbol.js","webpack:///nextcloud/node_modules/lodash-es/_getRawTag.js","webpack:///nextcloud/node_modules/lodash-es/_objectToString.js","webpack:///nextcloud/node_modules/lodash-es/_baseGetTag.js","webpack:///nextcloud/node_modules/lodash-es/toNumber.js","webpack:///nextcloud/node_modules/lodash-es/isSymbol.js","webpack:///nextcloud/node_modules/lodash-es/isObjectLike.js","webpack:///nextcloud/node_modules/lodash-es/debounce.js","webpack:///nextcloud/node_modules/nextcloud-vue-collections/dist/index.mjs","webpack:///nextcloud/apps/files_sharing/src/services/ConfigService.js","webpack:///nextcloud/apps/files_sharing/src/models/Share.js","webpack:///nextcloud/apps/files_sharing/src/mixins/ShareTypes.js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInternal.vue?6c02","webpack:///nextcloud/node_modules/vue-material-design-icons/CheckBold.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CheckBold.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CheckBold.vue?7500","webpack:///nextcloud/node_modules/vue-material-design-icons/CheckBold.vue?vue&type=template&id=5603f41f","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardFlow.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardFlow.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ClipboardFlow.vue?07b2","webpack:///nextcloud/node_modules/vue-material-design-icons/ClipboardFlow.vue?vue&type=template&id=62186d55","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntrySimple.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntrySimple.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntrySimple.vue?9588","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntrySimple.vue?cb12","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntrySimple.vue?0c02","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInternal.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInternal.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInternal.vue?60fa","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInternal.vue?4c20","webpack://nextcloud/./apps/files_sharing/src/components/SharingInput.vue?65df","webpack:///nextcloud/apps/files_sharing/src/utils/GeneratePassword.js","webpack:///nextcloud/apps/files_sharing/src/mixins/ShareRequests.js","webpack:///nextcloud/apps/files_sharing/src/mixins/ShareDetails.js","webpack:///nextcloud/apps/files_sharing/src/components/SharingInput.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingInput.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingInput.vue?9b5c","webpack://nextcloud/./apps/files_sharing/src/components/SharingInput.vue?3d7c","webpack://nextcloud/./apps/files_sharing/src/views/SharingInherited.vue?45a6","webpack:///nextcloud/apps/files_sharing/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files_sharing/src/services/logger.ts","webpack:///nextcloud/apps/files_sharing/src/lib/SharePermissionsToolBox.js","webpack:///nextcloud/apps/files_sharing/src/mixins/SharesMixin.js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInherited.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryInherited.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInherited.vue?c7aa","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInherited.vue?0e5a","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryInherited.vue?77d5","webpack:///nextcloud/apps/files_sharing/src/views/SharingInherited.vue","webpack:///nextcloud/apps/files_sharing/src/views/SharingInherited.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/views/SharingInherited.vue?6882","webpack://nextcloud/./apps/files_sharing/src/views/SharingInherited.vue?1677","webpack://nextcloud/./apps/files_sharing/src/views/SharingLinkList.vue?de0b","webpack:///nextcloud/node_modules/vue-material-design-icons/Tune.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Tune.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Tune.vue?7202","webpack:///nextcloud/node_modules/vue-material-design-icons/Tune.vue?vue&type=template&id=18d04e6a","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlank.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlank.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/CalendarBlank.vue?3d12","webpack:///nextcloud/node_modules/vue-material-design-icons/CalendarBlank.vue?vue&type=template&id=41fe7db9","webpack:///nextcloud/node_modules/vue-material-design-icons/Qrcode.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Qrcode.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Qrcode.vue?b80a","webpack:///nextcloud/node_modules/vue-material-design-icons/Qrcode.vue?vue&type=template&id=aba87788","webpack:///nextcloud/node_modules/vue-material-design-icons/Exclamation.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Exclamation.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Exclamation.vue?46e6","webpack:///nextcloud/node_modules/vue-material-design-icons/Exclamation.vue?vue&type=template&id=03239926","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Lock.vue?93ae","webpack:///nextcloud/node_modules/vue-material-design-icons/Lock.vue?vue&type=template&id=6d856da2","webpack:///nextcloud/node_modules/vue-material-design-icons/TriangleSmallDown.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/TriangleSmallDown.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/TriangleSmallDown.vue?8651","webpack:///nextcloud/node_modules/vue-material-design-icons/TriangleSmallDown.vue?vue&type=template&id=1eed3dd9","webpack:///nextcloud/node_modules/vue-material-design-icons/EyeOutline.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/EyeOutline.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/EyeOutline.vue?9ce8","webpack:///nextcloud/node_modules/vue-material-design-icons/EyeOutline.vue?vue&type=template&id=e26de6f6","webpack:///nextcloud/node_modules/vue-material-design-icons/FileUpload.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FileUpload.vue?c468","webpack:///nextcloud/node_modules/vue-material-design-icons/FileUpload.vue?vue&type=template&id=caa55e94","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?cfa8","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?4441","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue?0b36","webpack:///nextcloud/apps/files_sharing/src/components/ExternalShareAction.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/ExternalShareAction.vue","webpack://nextcloud/./apps/files_sharing/src/components/ExternalShareAction.vue?9bf3","webpack://nextcloud/./apps/files_sharing/src/components/ExternalShareAction.vue?82b4","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryLink.vue","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntryLink.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryLink.vue?a4f3","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryLink.vue?af90","webpack:///nextcloud/apps/files_sharing/src/views/SharingLinkList.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/views/SharingLinkList.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntryLink.vue?64e9","webpack://nextcloud/./apps/files_sharing/src/views/SharingLinkList.vue?a70b","webpack://nextcloud/./apps/files_sharing/src/views/SharingList.vue?e340","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/DotsHorizontal.vue?c5a1","webpack:///nextcloud/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=a8ba8946","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntry.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/components/SharingEntry.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntry.vue?7aa3","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntry.vue?10a7","webpack:///nextcloud/apps/files_sharing/src/views/SharingList.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files_sharing/src/views/SharingList.vue","webpack://nextcloud/./apps/files_sharing/src/components/SharingEntry.vue?f8d7","webpack://nextcloud/./apps/files_sharing/src/views/SharingList.vue?9f9c","webpack://nextcloud/./apps/files_sharing/src/views/SharingDetailsTab.vue?7f2e","webpack:///nextcloud/node_modules/vue-material-design-icons/CircleOutline.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/CircleOutline.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/CircleOutline.vue?68bc","webpack:///nextcloud/node_modules/vue-material-design-icons/CircleOutline.vue?vue&type=template&id=c013567c","webpack:///nextcloud/node_modules/vue-material-design-icons/Email.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Email.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Email.vue?3953","webpack:///nextcloud/node_modules/vue-material-design-icons/Email.vue?vue&type=template&id=7dd7f6aa","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareCircle.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareCircle.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ShareCircle.vue?a1b2","webpack:///nextcloud/node_modules/vue-material-design-icons/ShareCircle.vue?vue&type=template&id=0e958886","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountCircleOutline.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountCircleOutline.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountCircleOutline.vue?a068","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountCircleOutline.vue?vue&type=template&id=5b2fe1de","webpack:///nextcloud/node_modules/vue-material-design-icons/Eye.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Eye.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Eye.vue?157b","webpack:///nextcloud/node_modules/vue-material-design-icons/Eye.vue?vue&type=template&id=4ae2345c","webpack:///nextcloud/apps/files_sharing/src/views/SharingDetailsTab.vue","webpack:///nextcloud/apps/files_sharing/src/views/SharingDetailsTab.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/views/SharingDetailsTab.vue?6796","webpack://nextcloud/./apps/files_sharing/src/views/SharingDetailsTab.vue?10fc","webpack:///nextcloud/apps/files_sharing/src/views/SharingTab.vue","webpack:///nextcloud/apps/files_sharing/src/utils/SharedWithMe.js","webpack:///nextcloud/apps/files_sharing/src/views/SharingTab.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files_sharing/src/views/SharingTab.vue?a79d","webpack://nextcloud/./apps/files_sharing/src/views/SharingTab.vue?6997"],"sourcesContent":["/*!\n * vue-qrcode v1.0.2\n * https://fengyuanchen.github.io/vue-qrcode\n *\n * Copyright 2018-present Chen Fengyuan\n * Released under the MIT license\n *\n * Date: 2020-01-18T06:04:33.222Z\n */\n\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n\ttypeof define === 'function' && define.amd ? define(factory) :\n\t(global = global || self, global.VueQrcode = factory());\n}(this, (function () { 'use strict';\n\n\tfunction commonjsRequire () {\n\t\tthrow new Error('Dynamic requires are not currently supported by rollup-plugin-commonjs');\n\t}\n\n\tfunction createCommonjsModule(fn, module) {\n\t\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n\t}\n\n\tvar qrcode = createCommonjsModule(function (module, exports) {\n\t(function(f){{module.exports=f();}})(function(){return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof commonjsRequire&&commonjsRequire;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t);}return n[i].exports}for(var u=\"function\"==typeof commonjsRequire&&commonjsRequire,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){\n\t// can-promise has a crash in some versions of react native that dont have\n\t// standard global objects\n\t// https://github.com/soldair/node-qrcode/issues/157\n\n\tmodule.exports = function () {\n\t return typeof Promise === 'function' && Promise.prototype && Promise.prototype.then\n\t};\n\n\t},{}],2:[function(require,module,exports){\n\t/**\n\t * Alignment pattern are fixed reference pattern in defined positions\n\t * in a matrix symbology, which enables the decode software to re-synchronise\n\t * the coordinate mapping of the image modules in the event of moderate amounts\n\t * of distortion of the image.\n\t *\n\t * Alignment patterns are present only in QR Code symbols of version 2 or larger\n\t * and their number depends on the symbol version.\n\t */\n\n\tvar getSymbolSize = require('./utils').getSymbolSize;\n\n\t/**\n\t * Calculate the row/column coordinates of the center module of each alignment pattern\n\t * for the specified QR Code version.\n\t *\n\t * The alignment patterns are positioned symmetrically on either side of the diagonal\n\t * running from the top left corner of the symbol to the bottom right corner.\n\t *\n\t * Since positions are simmetrical only half of the coordinates are returned.\n\t * Each item of the array will represent in turn the x and y coordinate.\n\t * @see {@link getPositions}\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of coordinate\n\t */\n\texports.getRowColCoords = function getRowColCoords (version) {\n\t if (version === 1) return []\n\n\t var posCount = Math.floor(version / 7) + 2;\n\t var size = getSymbolSize(version);\n\t var intervals = size === 145 ? 26 : Math.ceil((size - 13) / (2 * posCount - 2)) * 2;\n\t var positions = [size - 7]; // Last coord is always (size - 7)\n\n\t for (var i = 1; i < posCount - 1; i++) {\n\t positions[i] = positions[i - 1] - intervals;\n\t }\n\n\t positions.push(6); // First coord is always 6\n\n\t return positions.reverse()\n\t};\n\n\t/**\n\t * Returns an array containing the positions of each alignment pattern.\n\t * Each array's element represent the center point of the pattern as (x, y) coordinates\n\t *\n\t * Coordinates are calculated expanding the row/column coordinates returned by {@link getRowColCoords}\n\t * and filtering out the items that overlaps with finder pattern\n\t *\n\t * @example\n\t * For a Version 7 symbol {@link getRowColCoords} returns values 6, 22 and 38.\n\t * The alignment patterns, therefore, are to be centered on (row, column)\n\t * positions (6,22), (22,6), (22,22), (22,38), (38,22), (38,38).\n\t * Note that the coordinates (6,6), (6,38), (38,6) are occupied by finder patterns\n\t * and are not therefore used for alignment patterns.\n\t *\n\t * var pos = getPositions(7)\n\t * // [[6,22], [22,6], [22,22], [22,38], [38,22], [38,38]]\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of coordinates\n\t */\n\texports.getPositions = function getPositions (version) {\n\t var coords = [];\n\t var pos = exports.getRowColCoords(version);\n\t var posLength = pos.length;\n\n\t for (var i = 0; i < posLength; i++) {\n\t for (var j = 0; j < posLength; j++) {\n\t // Skip if position is occupied by finder patterns\n\t if ((i === 0 && j === 0) || // top-left\n\t (i === 0 && j === posLength - 1) || // bottom-left\n\t (i === posLength - 1 && j === 0)) { // top-right\n\t continue\n\t }\n\n\t coords.push([pos[i], pos[j]]);\n\t }\n\t }\n\n\t return coords\n\t};\n\n\t},{\"./utils\":21}],3:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\n\t/**\n\t * Array of characters available in alphanumeric mode\n\t *\n\t * As per QR Code specification, to each character\n\t * is assigned a value from 0 to 44 which in this case coincides\n\t * with the array index\n\t *\n\t * @type {Array}\n\t */\n\tvar ALPHA_NUM_CHARS = [\n\t '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',\n\t 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',\n\t 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',\n\t ' ', '$', '%', '*', '+', '-', '.', '/', ':'\n\t];\n\n\tfunction AlphanumericData (data) {\n\t this.mode = Mode.ALPHANUMERIC;\n\t this.data = data;\n\t}\n\n\tAlphanumericData.getBitsLength = function getBitsLength (length) {\n\t return 11 * Math.floor(length / 2) + 6 * (length % 2)\n\t};\n\n\tAlphanumericData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tAlphanumericData.prototype.getBitsLength = function getBitsLength () {\n\t return AlphanumericData.getBitsLength(this.data.length)\n\t};\n\n\tAlphanumericData.prototype.write = function write (bitBuffer) {\n\t var i;\n\n\t // Input data characters are divided into groups of two characters\n\t // and encoded as 11-bit binary codes.\n\t for (i = 0; i + 2 <= this.data.length; i += 2) {\n\t // The character value of the first character is multiplied by 45\n\t var value = ALPHA_NUM_CHARS.indexOf(this.data[i]) * 45;\n\n\t // The character value of the second digit is added to the product\n\t value += ALPHA_NUM_CHARS.indexOf(this.data[i + 1]);\n\n\t // The sum is then stored as 11-bit binary number\n\t bitBuffer.put(value, 11);\n\t }\n\n\t // If the number of input data characters is not a multiple of two,\n\t // the character value of the final character is encoded as a 6-bit binary number.\n\t if (this.data.length % 2) {\n\t bitBuffer.put(ALPHA_NUM_CHARS.indexOf(this.data[i]), 6);\n\t }\n\t};\n\n\tmodule.exports = AlphanumericData;\n\n\t},{\"./mode\":14}],4:[function(require,module,exports){\n\tfunction BitBuffer () {\n\t this.buffer = [];\n\t this.length = 0;\n\t}\n\n\tBitBuffer.prototype = {\n\n\t get: function (index) {\n\t var bufIndex = Math.floor(index / 8);\n\t return ((this.buffer[bufIndex] >>> (7 - index % 8)) & 1) === 1\n\t },\n\n\t put: function (num, length) {\n\t for (var i = 0; i < length; i++) {\n\t this.putBit(((num >>> (length - i - 1)) & 1) === 1);\n\t }\n\t },\n\n\t getLengthInBits: function () {\n\t return this.length\n\t },\n\n\t putBit: function (bit) {\n\t var bufIndex = Math.floor(this.length / 8);\n\t if (this.buffer.length <= bufIndex) {\n\t this.buffer.push(0);\n\t }\n\n\t if (bit) {\n\t this.buffer[bufIndex] |= (0x80 >>> (this.length % 8));\n\t }\n\n\t this.length++;\n\t }\n\t};\n\n\tmodule.exports = BitBuffer;\n\n\t},{}],5:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\n\t/**\n\t * Helper class to handle QR Code symbol modules\n\t *\n\t * @param {Number} size Symbol size\n\t */\n\tfunction BitMatrix (size) {\n\t if (!size || size < 1) {\n\t throw new Error('BitMatrix size must be defined and greater than 0')\n\t }\n\n\t this.size = size;\n\t this.data = BufferUtil.alloc(size * size);\n\t this.reservedBit = BufferUtil.alloc(size * size);\n\t}\n\n\t/**\n\t * Set bit value at specified location\n\t * If reserved flag is set, this bit will be ignored during masking process\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @param {Boolean} value\n\t * @param {Boolean} reserved\n\t */\n\tBitMatrix.prototype.set = function (row, col, value, reserved) {\n\t var index = row * this.size + col;\n\t this.data[index] = value;\n\t if (reserved) this.reservedBit[index] = true;\n\t};\n\n\t/**\n\t * Returns bit value at specified location\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @return {Boolean}\n\t */\n\tBitMatrix.prototype.get = function (row, col) {\n\t return this.data[row * this.size + col]\n\t};\n\n\t/**\n\t * Applies xor operator at specified location\n\t * (used during masking process)\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @param {Boolean} value\n\t */\n\tBitMatrix.prototype.xor = function (row, col, value) {\n\t this.data[row * this.size + col] ^= value;\n\t};\n\n\t/**\n\t * Check if bit at specified location is reserved\n\t *\n\t * @param {Number} row\n\t * @param {Number} col\n\t * @return {Boolean}\n\t */\n\tBitMatrix.prototype.isReserved = function (row, col) {\n\t return this.reservedBit[row * this.size + col]\n\t};\n\n\tmodule.exports = BitMatrix;\n\n\t},{\"../utils/buffer\":28}],6:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar Mode = require('./mode');\n\n\tfunction ByteData (data) {\n\t this.mode = Mode.BYTE;\n\t this.data = BufferUtil.from(data);\n\t}\n\n\tByteData.getBitsLength = function getBitsLength (length) {\n\t return length * 8\n\t};\n\n\tByteData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tByteData.prototype.getBitsLength = function getBitsLength () {\n\t return ByteData.getBitsLength(this.data.length)\n\t};\n\n\tByteData.prototype.write = function (bitBuffer) {\n\t for (var i = 0, l = this.data.length; i < l; i++) {\n\t bitBuffer.put(this.data[i], 8);\n\t }\n\t};\n\n\tmodule.exports = ByteData;\n\n\t},{\"../utils/buffer\":28,\"./mode\":14}],7:[function(require,module,exports){\n\tvar ECLevel = require('./error-correction-level');\r\n\r\n\tvar EC_BLOCKS_TABLE = [\r\n\t// L M Q H\r\n\t 1, 1, 1, 1,\r\n\t 1, 1, 1, 1,\r\n\t 1, 1, 2, 2,\r\n\t 1, 2, 2, 4,\r\n\t 1, 2, 4, 4,\r\n\t 2, 4, 4, 4,\r\n\t 2, 4, 6, 5,\r\n\t 2, 4, 6, 6,\r\n\t 2, 5, 8, 8,\r\n\t 4, 5, 8, 8,\r\n\t 4, 5, 8, 11,\r\n\t 4, 8, 10, 11,\r\n\t 4, 9, 12, 16,\r\n\t 4, 9, 16, 16,\r\n\t 6, 10, 12, 18,\r\n\t 6, 10, 17, 16,\r\n\t 6, 11, 16, 19,\r\n\t 6, 13, 18, 21,\r\n\t 7, 14, 21, 25,\r\n\t 8, 16, 20, 25,\r\n\t 8, 17, 23, 25,\r\n\t 9, 17, 23, 34,\r\n\t 9, 18, 25, 30,\r\n\t 10, 20, 27, 32,\r\n\t 12, 21, 29, 35,\r\n\t 12, 23, 34, 37,\r\n\t 12, 25, 34, 40,\r\n\t 13, 26, 35, 42,\r\n\t 14, 28, 38, 45,\r\n\t 15, 29, 40, 48,\r\n\t 16, 31, 43, 51,\r\n\t 17, 33, 45, 54,\r\n\t 18, 35, 48, 57,\r\n\t 19, 37, 51, 60,\r\n\t 19, 38, 53, 63,\r\n\t 20, 40, 56, 66,\r\n\t 21, 43, 59, 70,\r\n\t 22, 45, 62, 74,\r\n\t 24, 47, 65, 77,\r\n\t 25, 49, 68, 81\r\n\t];\r\n\r\n\tvar EC_CODEWORDS_TABLE = [\r\n\t// L M Q H\r\n\t 7, 10, 13, 17,\r\n\t 10, 16, 22, 28,\r\n\t 15, 26, 36, 44,\r\n\t 20, 36, 52, 64,\r\n\t 26, 48, 72, 88,\r\n\t 36, 64, 96, 112,\r\n\t 40, 72, 108, 130,\r\n\t 48, 88, 132, 156,\r\n\t 60, 110, 160, 192,\r\n\t 72, 130, 192, 224,\r\n\t 80, 150, 224, 264,\r\n\t 96, 176, 260, 308,\r\n\t 104, 198, 288, 352,\r\n\t 120, 216, 320, 384,\r\n\t 132, 240, 360, 432,\r\n\t 144, 280, 408, 480,\r\n\t 168, 308, 448, 532,\r\n\t 180, 338, 504, 588,\r\n\t 196, 364, 546, 650,\r\n\t 224, 416, 600, 700,\r\n\t 224, 442, 644, 750,\r\n\t 252, 476, 690, 816,\r\n\t 270, 504, 750, 900,\r\n\t 300, 560, 810, 960,\r\n\t 312, 588, 870, 1050,\r\n\t 336, 644, 952, 1110,\r\n\t 360, 700, 1020, 1200,\r\n\t 390, 728, 1050, 1260,\r\n\t 420, 784, 1140, 1350,\r\n\t 450, 812, 1200, 1440,\r\n\t 480, 868, 1290, 1530,\r\n\t 510, 924, 1350, 1620,\r\n\t 540, 980, 1440, 1710,\r\n\t 570, 1036, 1530, 1800,\r\n\t 570, 1064, 1590, 1890,\r\n\t 600, 1120, 1680, 1980,\r\n\t 630, 1204, 1770, 2100,\r\n\t 660, 1260, 1860, 2220,\r\n\t 720, 1316, 1950, 2310,\r\n\t 750, 1372, 2040, 2430\r\n\t];\r\n\r\n\t/**\r\n\t * Returns the number of error correction block that the QR Code should contain\r\n\t * for the specified version and error correction level.\r\n\t *\r\n\t * @param {Number} version QR Code version\r\n\t * @param {Number} errorCorrectionLevel Error correction level\r\n\t * @return {Number} Number of error correction blocks\r\n\t */\r\n\texports.getBlocksCount = function getBlocksCount (version, errorCorrectionLevel) {\r\n\t switch (errorCorrectionLevel) {\r\n\t case ECLevel.L:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 0]\r\n\t case ECLevel.M:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 1]\r\n\t case ECLevel.Q:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 2]\r\n\t case ECLevel.H:\r\n\t return EC_BLOCKS_TABLE[(version - 1) * 4 + 3]\r\n\t default:\r\n\t return undefined\r\n\t }\r\n\t};\r\n\r\n\t/**\r\n\t * Returns the number of error correction codewords to use for the specified\r\n\t * version and error correction level.\r\n\t *\r\n\t * @param {Number} version QR Code version\r\n\t * @param {Number} errorCorrectionLevel Error correction level\r\n\t * @return {Number} Number of error correction codewords\r\n\t */\r\n\texports.getTotalCodewordsCount = function getTotalCodewordsCount (version, errorCorrectionLevel) {\r\n\t switch (errorCorrectionLevel) {\r\n\t case ECLevel.L:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 0]\r\n\t case ECLevel.M:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 1]\r\n\t case ECLevel.Q:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 2]\r\n\t case ECLevel.H:\r\n\t return EC_CODEWORDS_TABLE[(version - 1) * 4 + 3]\r\n\t default:\r\n\t return undefined\r\n\t }\r\n\t};\r\n\n\t},{\"./error-correction-level\":8}],8:[function(require,module,exports){\n\texports.L = { bit: 1 };\n\texports.M = { bit: 0 };\n\texports.Q = { bit: 3 };\n\texports.H = { bit: 2 };\n\n\tfunction fromString (string) {\n\t if (typeof string !== 'string') {\n\t throw new Error('Param is not a string')\n\t }\n\n\t var lcStr = string.toLowerCase();\n\n\t switch (lcStr) {\n\t case 'l':\n\t case 'low':\n\t return exports.L\n\n\t case 'm':\n\t case 'medium':\n\t return exports.M\n\n\t case 'q':\n\t case 'quartile':\n\t return exports.Q\n\n\t case 'h':\n\t case 'high':\n\t return exports.H\n\n\t default:\n\t throw new Error('Unknown EC Level: ' + string)\n\t }\n\t}\n\n\texports.isValid = function isValid (level) {\n\t return level && typeof level.bit !== 'undefined' &&\n\t level.bit >= 0 && level.bit < 4\n\t};\n\n\texports.from = function from (value, defaultValue) {\n\t if (exports.isValid(value)) {\n\t return value\n\t }\n\n\t try {\n\t return fromString(value)\n\t } catch (e) {\n\t return defaultValue\n\t }\n\t};\n\n\t},{}],9:[function(require,module,exports){\n\tvar getSymbolSize = require('./utils').getSymbolSize;\n\tvar FINDER_PATTERN_SIZE = 7;\n\n\t/**\n\t * Returns an array containing the positions of each finder pattern.\n\t * Each array's element represent the top-left point of the pattern as (x, y) coordinates\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of coordinates\n\t */\n\texports.getPositions = function getPositions (version) {\n\t var size = getSymbolSize(version);\n\n\t return [\n\t // top-left\n\t [0, 0],\n\t // top-right\n\t [size - FINDER_PATTERN_SIZE, 0],\n\t // bottom-left\n\t [0, size - FINDER_PATTERN_SIZE]\n\t ]\n\t};\n\n\t},{\"./utils\":21}],10:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\n\tvar G15 = (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0);\n\tvar G15_MASK = (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1);\n\tvar G15_BCH = Utils.getBCHDigit(G15);\n\n\t/**\n\t * Returns format information with relative error correction bits\n\t *\n\t * The format information is a 15-bit sequence containing 5 data bits,\n\t * with 10 error correction bits calculated using the (15, 5) BCH code.\n\t *\n\t * @param {Number} errorCorrectionLevel Error correction level\n\t * @param {Number} mask Mask pattern\n\t * @return {Number} Encoded format information bits\n\t */\n\texports.getEncodedBits = function getEncodedBits (errorCorrectionLevel, mask) {\n\t var data = ((errorCorrectionLevel.bit << 3) | mask);\n\t var d = data << 10;\n\n\t while (Utils.getBCHDigit(d) - G15_BCH >= 0) {\n\t d ^= (G15 << (Utils.getBCHDigit(d) - G15_BCH));\n\t }\n\n\t // xor final data with mask pattern in order to ensure that\n\t // no combination of Error Correction Level and data mask pattern\n\t // will result in an all-zero data string\n\t return ((data << 10) | d) ^ G15_MASK\n\t};\n\n\t},{\"./utils\":21}],11:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\n\tvar EXP_TABLE = BufferUtil.alloc(512);\n\tvar LOG_TABLE = BufferUtil.alloc(256)\n\t/**\n\t * Precompute the log and anti-log tables for faster computation later\n\t *\n\t * For each possible value in the galois field 2^8, we will pre-compute\n\t * the logarithm and anti-logarithm (exponential) of this value\n\t *\n\t * ref {@link https://en.wikiversity.org/wiki/Reed%E2%80%93Solomon_codes_for_coders#Introduction_to_mathematical_fields}\n\t */\n\t;(function initTables () {\n\t var x = 1;\n\t for (var i = 0; i < 255; i++) {\n\t EXP_TABLE[i] = x;\n\t LOG_TABLE[x] = i;\n\n\t x <<= 1; // multiply by 2\n\n\t // The QR code specification says to use byte-wise modulo 100011101 arithmetic.\n\t // This means that when a number is 256 or larger, it should be XORed with 0x11D.\n\t if (x & 0x100) { // similar to x >= 256, but a lot faster (because 0x100 == 256)\n\t x ^= 0x11D;\n\t }\n\t }\n\n\t // Optimization: double the size of the anti-log table so that we don't need to mod 255 to\n\t // stay inside the bounds (because we will mainly use this table for the multiplication of\n\t // two GF numbers, no more).\n\t // @see {@link mul}\n\t for (i = 255; i < 512; i++) {\n\t EXP_TABLE[i] = EXP_TABLE[i - 255];\n\t }\n\t}());\n\n\t/**\n\t * Returns log value of n inside Galois Field\n\t *\n\t * @param {Number} n\n\t * @return {Number}\n\t */\n\texports.log = function log (n) {\n\t if (n < 1) throw new Error('log(' + n + ')')\n\t return LOG_TABLE[n]\n\t};\n\n\t/**\n\t * Returns anti-log value of n inside Galois Field\n\t *\n\t * @param {Number} n\n\t * @return {Number}\n\t */\n\texports.exp = function exp (n) {\n\t return EXP_TABLE[n]\n\t};\n\n\t/**\n\t * Multiplies two number inside Galois Field\n\t *\n\t * @param {Number} x\n\t * @param {Number} y\n\t * @return {Number}\n\t */\n\texports.mul = function mul (x, y) {\n\t if (x === 0 || y === 0) return 0\n\n\t // should be EXP_TABLE[(LOG_TABLE[x] + LOG_TABLE[y]) % 255] if EXP_TABLE wasn't oversized\n\t // @see {@link initTables}\n\t return EXP_TABLE[LOG_TABLE[x] + LOG_TABLE[y]]\n\t};\n\n\t},{\"../utils/buffer\":28}],12:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\tvar Utils = require('./utils');\n\n\tfunction KanjiData (data) {\n\t this.mode = Mode.KANJI;\n\t this.data = data;\n\t}\n\n\tKanjiData.getBitsLength = function getBitsLength (length) {\n\t return length * 13\n\t};\n\n\tKanjiData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tKanjiData.prototype.getBitsLength = function getBitsLength () {\n\t return KanjiData.getBitsLength(this.data.length)\n\t};\n\n\tKanjiData.prototype.write = function (bitBuffer) {\n\t var i;\n\n\t // In the Shift JIS system, Kanji characters are represented by a two byte combination.\n\t // These byte values are shifted from the JIS X 0208 values.\n\t // JIS X 0208 gives details of the shift coded representation.\n\t for (i = 0; i < this.data.length; i++) {\n\t var value = Utils.toSJIS(this.data[i]);\n\n\t // For characters with Shift JIS values from 0x8140 to 0x9FFC:\n\t if (value >= 0x8140 && value <= 0x9FFC) {\n\t // Subtract 0x8140 from Shift JIS value\n\t value -= 0x8140;\n\n\t // For characters with Shift JIS values from 0xE040 to 0xEBBF\n\t } else if (value >= 0xE040 && value <= 0xEBBF) {\n\t // Subtract 0xC140 from Shift JIS value\n\t value -= 0xC140;\n\t } else {\n\t throw new Error(\n\t 'Invalid SJIS character: ' + this.data[i] + '\\n' +\n\t 'Make sure your charset is UTF-8')\n\t }\n\n\t // Multiply most significant byte of result by 0xC0\n\t // and add least significant byte to product\n\t value = (((value >>> 8) & 0xff) * 0xC0) + (value & 0xff);\n\n\t // Convert result to a 13-bit binary string\n\t bitBuffer.put(value, 13);\n\t }\n\t};\n\n\tmodule.exports = KanjiData;\n\n\t},{\"./mode\":14,\"./utils\":21}],13:[function(require,module,exports){\n\t/**\n\t * Data mask pattern reference\n\t * @type {Object}\n\t */\n\texports.Patterns = {\n\t PATTERN000: 0,\n\t PATTERN001: 1,\n\t PATTERN010: 2,\n\t PATTERN011: 3,\n\t PATTERN100: 4,\n\t PATTERN101: 5,\n\t PATTERN110: 6,\n\t PATTERN111: 7\n\t};\n\n\t/**\n\t * Weighted penalty scores for the undesirable features\n\t * @type {Object}\n\t */\n\tvar PenaltyScores = {\n\t N1: 3,\n\t N2: 3,\n\t N3: 40,\n\t N4: 10\n\t};\n\n\t/**\n\t * Check if mask pattern value is valid\n\t *\n\t * @param {Number} mask Mask pattern\n\t * @return {Boolean} true if valid, false otherwise\n\t */\n\texports.isValid = function isValid (mask) {\n\t return mask != null && mask !== '' && !isNaN(mask) && mask >= 0 && mask <= 7\n\t};\n\n\t/**\n\t * Returns mask pattern from a value.\n\t * If value is not valid, returns undefined\n\t *\n\t * @param {Number|String} value Mask pattern value\n\t * @return {Number} Valid mask pattern or undefined\n\t */\n\texports.from = function from (value) {\n\t return exports.isValid(value) ? parseInt(value, 10) : undefined\n\t};\n\n\t/**\n\t* Find adjacent modules in row/column with the same color\n\t* and assign a penalty value.\n\t*\n\t* Points: N1 + i\n\t* i is the amount by which the number of adjacent modules of the same color exceeds 5\n\t*/\n\texports.getPenaltyN1 = function getPenaltyN1 (data) {\n\t var size = data.size;\n\t var points = 0;\n\t var sameCountCol = 0;\n\t var sameCountRow = 0;\n\t var lastCol = null;\n\t var lastRow = null;\n\n\t for (var row = 0; row < size; row++) {\n\t sameCountCol = sameCountRow = 0;\n\t lastCol = lastRow = null;\n\n\t for (var col = 0; col < size; col++) {\n\t var module = data.get(row, col);\n\t if (module === lastCol) {\n\t sameCountCol++;\n\t } else {\n\t if (sameCountCol >= 5) points += PenaltyScores.N1 + (sameCountCol - 5);\n\t lastCol = module;\n\t sameCountCol = 1;\n\t }\n\n\t module = data.get(col, row);\n\t if (module === lastRow) {\n\t sameCountRow++;\n\t } else {\n\t if (sameCountRow >= 5) points += PenaltyScores.N1 + (sameCountRow - 5);\n\t lastRow = module;\n\t sameCountRow = 1;\n\t }\n\t }\n\n\t if (sameCountCol >= 5) points += PenaltyScores.N1 + (sameCountCol - 5);\n\t if (sameCountRow >= 5) points += PenaltyScores.N1 + (sameCountRow - 5);\n\t }\n\n\t return points\n\t};\n\n\t/**\n\t * Find 2x2 blocks with the same color and assign a penalty value\n\t *\n\t * Points: N2 * (m - 1) * (n - 1)\n\t */\n\texports.getPenaltyN2 = function getPenaltyN2 (data) {\n\t var size = data.size;\n\t var points = 0;\n\n\t for (var row = 0; row < size - 1; row++) {\n\t for (var col = 0; col < size - 1; col++) {\n\t var last = data.get(row, col) +\n\t data.get(row, col + 1) +\n\t data.get(row + 1, col) +\n\t data.get(row + 1, col + 1);\n\n\t if (last === 4 || last === 0) points++;\n\t }\n\t }\n\n\t return points * PenaltyScores.N2\n\t};\n\n\t/**\n\t * Find 1:1:3:1:1 ratio (dark:light:dark:light:dark) pattern in row/column,\n\t * preceded or followed by light area 4 modules wide\n\t *\n\t * Points: N3 * number of pattern found\n\t */\n\texports.getPenaltyN3 = function getPenaltyN3 (data) {\n\t var size = data.size;\n\t var points = 0;\n\t var bitsCol = 0;\n\t var bitsRow = 0;\n\n\t for (var row = 0; row < size; row++) {\n\t bitsCol = bitsRow = 0;\n\t for (var col = 0; col < size; col++) {\n\t bitsCol = ((bitsCol << 1) & 0x7FF) | data.get(row, col);\n\t if (col >= 10 && (bitsCol === 0x5D0 || bitsCol === 0x05D)) points++;\n\n\t bitsRow = ((bitsRow << 1) & 0x7FF) | data.get(col, row);\n\t if (col >= 10 && (bitsRow === 0x5D0 || bitsRow === 0x05D)) points++;\n\t }\n\t }\n\n\t return points * PenaltyScores.N3\n\t};\n\n\t/**\n\t * Calculate proportion of dark modules in entire symbol\n\t *\n\t * Points: N4 * k\n\t *\n\t * k is the rating of the deviation of the proportion of dark modules\n\t * in the symbol from 50% in steps of 5%\n\t */\n\texports.getPenaltyN4 = function getPenaltyN4 (data) {\n\t var darkCount = 0;\n\t var modulesCount = data.data.length;\n\n\t for (var i = 0; i < modulesCount; i++) darkCount += data.data[i];\n\n\t var k = Math.abs(Math.ceil((darkCount * 100 / modulesCount) / 5) - 10);\n\n\t return k * PenaltyScores.N4\n\t};\n\n\t/**\n\t * Return mask value at given position\n\t *\n\t * @param {Number} maskPattern Pattern reference value\n\t * @param {Number} i Row\n\t * @param {Number} j Column\n\t * @return {Boolean} Mask value\n\t */\n\tfunction getMaskAt (maskPattern, i, j) {\n\t switch (maskPattern) {\n\t case exports.Patterns.PATTERN000: return (i + j) % 2 === 0\n\t case exports.Patterns.PATTERN001: return i % 2 === 0\n\t case exports.Patterns.PATTERN010: return j % 3 === 0\n\t case exports.Patterns.PATTERN011: return (i + j) % 3 === 0\n\t case exports.Patterns.PATTERN100: return (Math.floor(i / 2) + Math.floor(j / 3)) % 2 === 0\n\t case exports.Patterns.PATTERN101: return (i * j) % 2 + (i * j) % 3 === 0\n\t case exports.Patterns.PATTERN110: return ((i * j) % 2 + (i * j) % 3) % 2 === 0\n\t case exports.Patterns.PATTERN111: return ((i * j) % 3 + (i + j) % 2) % 2 === 0\n\n\t default: throw new Error('bad maskPattern:' + maskPattern)\n\t }\n\t}\n\n\t/**\n\t * Apply a mask pattern to a BitMatrix\n\t *\n\t * @param {Number} pattern Pattern reference number\n\t * @param {BitMatrix} data BitMatrix data\n\t */\n\texports.applyMask = function applyMask (pattern, data) {\n\t var size = data.size;\n\n\t for (var col = 0; col < size; col++) {\n\t for (var row = 0; row < size; row++) {\n\t if (data.isReserved(row, col)) continue\n\t data.xor(row, col, getMaskAt(pattern, row, col));\n\t }\n\t }\n\t};\n\n\t/**\n\t * Returns the best mask pattern for data\n\t *\n\t * @param {BitMatrix} data\n\t * @return {Number} Mask pattern reference number\n\t */\n\texports.getBestMask = function getBestMask (data, setupFormatFunc) {\n\t var numPatterns = Object.keys(exports.Patterns).length;\n\t var bestPattern = 0;\n\t var lowerPenalty = Infinity;\n\n\t for (var p = 0; p < numPatterns; p++) {\n\t setupFormatFunc(p);\n\t exports.applyMask(p, data);\n\n\t // Calculate penalty\n\t var penalty =\n\t exports.getPenaltyN1(data) +\n\t exports.getPenaltyN2(data) +\n\t exports.getPenaltyN3(data) +\n\t exports.getPenaltyN4(data);\n\n\t // Undo previously applied mask\n\t exports.applyMask(p, data);\n\n\t if (penalty < lowerPenalty) {\n\t lowerPenalty = penalty;\n\t bestPattern = p;\n\t }\n\t }\n\n\t return bestPattern\n\t};\n\n\t},{}],14:[function(require,module,exports){\n\tvar VersionCheck = require('./version-check');\n\tvar Regex = require('./regex');\n\n\t/**\n\t * Numeric mode encodes data from the decimal digit set (0 - 9)\n\t * (byte values 30HEX to 39HEX).\n\t * Normally, 3 data characters are represented by 10 bits.\n\t *\n\t * @type {Object}\n\t */\n\texports.NUMERIC = {\n\t id: 'Numeric',\n\t bit: 1 << 0,\n\t ccBits: [10, 12, 14]\n\t};\n\n\t/**\n\t * Alphanumeric mode encodes data from a set of 45 characters,\n\t * i.e. 10 numeric digits (0 - 9),\n\t * 26 alphabetic characters (A - Z),\n\t * and 9 symbols (SP, $, %, *, +, -, ., /, :).\n\t * Normally, two input characters are represented by 11 bits.\n\t *\n\t * @type {Object}\n\t */\n\texports.ALPHANUMERIC = {\n\t id: 'Alphanumeric',\n\t bit: 1 << 1,\n\t ccBits: [9, 11, 13]\n\t};\n\n\t/**\n\t * In byte mode, data is encoded at 8 bits per character.\n\t *\n\t * @type {Object}\n\t */\n\texports.BYTE = {\n\t id: 'Byte',\n\t bit: 1 << 2,\n\t ccBits: [8, 16, 16]\n\t};\n\n\t/**\n\t * The Kanji mode efficiently encodes Kanji characters in accordance with\n\t * the Shift JIS system based on JIS X 0208.\n\t * The Shift JIS values are shifted from the JIS X 0208 values.\n\t * JIS X 0208 gives details of the shift coded representation.\n\t * Each two-byte character value is compacted to a 13-bit binary codeword.\n\t *\n\t * @type {Object}\n\t */\n\texports.KANJI = {\n\t id: 'Kanji',\n\t bit: 1 << 3,\n\t ccBits: [8, 10, 12]\n\t};\n\n\t/**\n\t * Mixed mode will contain a sequences of data in a combination of any of\n\t * the modes described above\n\t *\n\t * @type {Object}\n\t */\n\texports.MIXED = {\n\t bit: -1\n\t};\n\n\t/**\n\t * Returns the number of bits needed to store the data length\n\t * according to QR Code specifications.\n\t *\n\t * @param {Mode} mode Data mode\n\t * @param {Number} version QR Code version\n\t * @return {Number} Number of bits\n\t */\n\texports.getCharCountIndicator = function getCharCountIndicator (mode, version) {\n\t if (!mode.ccBits) throw new Error('Invalid mode: ' + mode)\n\n\t if (!VersionCheck.isValid(version)) {\n\t throw new Error('Invalid version: ' + version)\n\t }\n\n\t if (version >= 1 && version < 10) return mode.ccBits[0]\n\t else if (version < 27) return mode.ccBits[1]\n\t return mode.ccBits[2]\n\t};\n\n\t/**\n\t * Returns the most efficient mode to store the specified data\n\t *\n\t * @param {String} dataStr Input data string\n\t * @return {Mode} Best mode\n\t */\n\texports.getBestModeForData = function getBestModeForData (dataStr) {\n\t if (Regex.testNumeric(dataStr)) return exports.NUMERIC\n\t else if (Regex.testAlphanumeric(dataStr)) return exports.ALPHANUMERIC\n\t else if (Regex.testKanji(dataStr)) return exports.KANJI\n\t else return exports.BYTE\n\t};\n\n\t/**\n\t * Return mode name as string\n\t *\n\t * @param {Mode} mode Mode object\n\t * @returns {String} Mode name\n\t */\n\texports.toString = function toString (mode) {\n\t if (mode && mode.id) return mode.id\n\t throw new Error('Invalid mode')\n\t};\n\n\t/**\n\t * Check if input param is a valid mode object\n\t *\n\t * @param {Mode} mode Mode object\n\t * @returns {Boolean} True if valid mode, false otherwise\n\t */\n\texports.isValid = function isValid (mode) {\n\t return mode && mode.bit && mode.ccBits\n\t};\n\n\t/**\n\t * Get mode object from its name\n\t *\n\t * @param {String} string Mode name\n\t * @returns {Mode} Mode object\n\t */\n\tfunction fromString (string) {\n\t if (typeof string !== 'string') {\n\t throw new Error('Param is not a string')\n\t }\n\n\t var lcStr = string.toLowerCase();\n\n\t switch (lcStr) {\n\t case 'numeric':\n\t return exports.NUMERIC\n\t case 'alphanumeric':\n\t return exports.ALPHANUMERIC\n\t case 'kanji':\n\t return exports.KANJI\n\t case 'byte':\n\t return exports.BYTE\n\t default:\n\t throw new Error('Unknown mode: ' + string)\n\t }\n\t}\n\n\t/**\n\t * Returns mode from a value.\n\t * If value is not a valid mode, returns defaultValue\n\t *\n\t * @param {Mode|String} value Encoding mode\n\t * @param {Mode} defaultValue Fallback value\n\t * @return {Mode} Encoding mode\n\t */\n\texports.from = function from (value, defaultValue) {\n\t if (exports.isValid(value)) {\n\t return value\n\t }\n\n\t try {\n\t return fromString(value)\n\t } catch (e) {\n\t return defaultValue\n\t }\n\t};\n\n\t},{\"./regex\":19,\"./version-check\":22}],15:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\n\tfunction NumericData (data) {\n\t this.mode = Mode.NUMERIC;\n\t this.data = data.toString();\n\t}\n\n\tNumericData.getBitsLength = function getBitsLength (length) {\n\t return 10 * Math.floor(length / 3) + ((length % 3) ? ((length % 3) * 3 + 1) : 0)\n\t};\n\n\tNumericData.prototype.getLength = function getLength () {\n\t return this.data.length\n\t};\n\n\tNumericData.prototype.getBitsLength = function getBitsLength () {\n\t return NumericData.getBitsLength(this.data.length)\n\t};\n\n\tNumericData.prototype.write = function write (bitBuffer) {\n\t var i, group, value;\n\n\t // The input data string is divided into groups of three digits,\n\t // and each group is converted to its 10-bit binary equivalent.\n\t for (i = 0; i + 3 <= this.data.length; i += 3) {\n\t group = this.data.substr(i, 3);\n\t value = parseInt(group, 10);\n\n\t bitBuffer.put(value, 10);\n\t }\n\n\t // If the number of input digits is not an exact multiple of three,\n\t // the final one or two digits are converted to 4 or 7 bits respectively.\n\t var remainingNum = this.data.length - i;\n\t if (remainingNum > 0) {\n\t group = this.data.substr(i);\n\t value = parseInt(group, 10);\n\n\t bitBuffer.put(value, remainingNum * 3 + 1);\n\t }\n\t};\n\n\tmodule.exports = NumericData;\n\n\t},{\"./mode\":14}],16:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar GF = require('./galois-field');\n\n\t/**\n\t * Multiplies two polynomials inside Galois Field\n\t *\n\t * @param {Buffer} p1 Polynomial\n\t * @param {Buffer} p2 Polynomial\n\t * @return {Buffer} Product of p1 and p2\n\t */\n\texports.mul = function mul (p1, p2) {\n\t var coeff = BufferUtil.alloc(p1.length + p2.length - 1);\n\n\t for (var i = 0; i < p1.length; i++) {\n\t for (var j = 0; j < p2.length; j++) {\n\t coeff[i + j] ^= GF.mul(p1[i], p2[j]);\n\t }\n\t }\n\n\t return coeff\n\t};\n\n\t/**\n\t * Calculate the remainder of polynomials division\n\t *\n\t * @param {Buffer} divident Polynomial\n\t * @param {Buffer} divisor Polynomial\n\t * @return {Buffer} Remainder\n\t */\n\texports.mod = function mod (divident, divisor) {\n\t var result = BufferUtil.from(divident);\n\n\t while ((result.length - divisor.length) >= 0) {\n\t var coeff = result[0];\n\n\t for (var i = 0; i < divisor.length; i++) {\n\t result[i] ^= GF.mul(divisor[i], coeff);\n\t }\n\n\t // remove all zeros from buffer head\n\t var offset = 0;\n\t while (offset < result.length && result[offset] === 0) offset++;\n\t result = result.slice(offset);\n\t }\n\n\t return result\n\t};\n\n\t/**\n\t * Generate an irreducible generator polynomial of specified degree\n\t * (used by Reed-Solomon encoder)\n\t *\n\t * @param {Number} degree Degree of the generator polynomial\n\t * @return {Buffer} Buffer containing polynomial coefficients\n\t */\n\texports.generateECPolynomial = function generateECPolynomial (degree) {\n\t var poly = BufferUtil.from([1]);\n\t for (var i = 0; i < degree; i++) {\n\t poly = exports.mul(poly, [1, GF.exp(i)]);\n\t }\n\n\t return poly\n\t};\n\n\t},{\"../utils/buffer\":28,\"./galois-field\":11}],17:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar Utils = require('./utils');\n\tvar ECLevel = require('./error-correction-level');\n\tvar BitBuffer = require('./bit-buffer');\n\tvar BitMatrix = require('./bit-matrix');\n\tvar AlignmentPattern = require('./alignment-pattern');\n\tvar FinderPattern = require('./finder-pattern');\n\tvar MaskPattern = require('./mask-pattern');\n\tvar ECCode = require('./error-correction-code');\n\tvar ReedSolomonEncoder = require('./reed-solomon-encoder');\n\tvar Version = require('./version');\n\tvar FormatInfo = require('./format-info');\n\tvar Mode = require('./mode');\n\tvar Segments = require('./segments');\n\tvar isArray = require('isarray');\n\n\t/**\n\t * QRCode for JavaScript\n\t *\n\t * modified by Ryan Day for nodejs support\n\t * Copyright (c) 2011 Ryan Day\n\t *\n\t * Licensed under the MIT license:\n\t * http://www.opensource.org/licenses/mit-license.php\n\t *\n\t//---------------------------------------------------------------------\n\t// QRCode for JavaScript\n\t//\n\t// Copyright (c) 2009 Kazuhiko Arase\n\t//\n\t// URL: http://www.d-project.com/\n\t//\n\t// Licensed under the MIT license:\n\t// http://www.opensource.org/licenses/mit-license.php\n\t//\n\t// The word \"QR Code\" is registered trademark of\n\t// DENSO WAVE INCORPORATED\n\t// http://www.denso-wave.com/qrcode/faqpatent-e.html\n\t//\n\t//---------------------------------------------------------------------\n\t*/\n\n\t/**\n\t * Add finder patterns bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Number} version QR Code version\n\t */\n\tfunction setupFinderPattern (matrix, version) {\n\t var size = matrix.size;\n\t var pos = FinderPattern.getPositions(version);\n\n\t for (var i = 0; i < pos.length; i++) {\n\t var row = pos[i][0];\n\t var col = pos[i][1];\n\n\t for (var r = -1; r <= 7; r++) {\n\t if (row + r <= -1 || size <= row + r) continue\n\n\t for (var c = -1; c <= 7; c++) {\n\t if (col + c <= -1 || size <= col + c) continue\n\n\t if ((r >= 0 && r <= 6 && (c === 0 || c === 6)) ||\n\t (c >= 0 && c <= 6 && (r === 0 || r === 6)) ||\n\t (r >= 2 && r <= 4 && c >= 2 && c <= 4)) {\n\t matrix.set(row + r, col + c, true, true);\n\t } else {\n\t matrix.set(row + r, col + c, false, true);\n\t }\n\t }\n\t }\n\t }\n\t}\n\n\t/**\n\t * Add timing pattern bits to matrix\n\t *\n\t * Note: this function must be called before {@link setupAlignmentPattern}\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t */\n\tfunction setupTimingPattern (matrix) {\n\t var size = matrix.size;\n\n\t for (var r = 8; r < size - 8; r++) {\n\t var value = r % 2 === 0;\n\t matrix.set(r, 6, value, true);\n\t matrix.set(6, r, value, true);\n\t }\n\t}\n\n\t/**\n\t * Add alignment patterns bits to matrix\n\t *\n\t * Note: this function must be called after {@link setupTimingPattern}\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Number} version QR Code version\n\t */\n\tfunction setupAlignmentPattern (matrix, version) {\n\t var pos = AlignmentPattern.getPositions(version);\n\n\t for (var i = 0; i < pos.length; i++) {\n\t var row = pos[i][0];\n\t var col = pos[i][1];\n\n\t for (var r = -2; r <= 2; r++) {\n\t for (var c = -2; c <= 2; c++) {\n\t if (r === -2 || r === 2 || c === -2 || c === 2 ||\n\t (r === 0 && c === 0)) {\n\t matrix.set(row + r, col + c, true, true);\n\t } else {\n\t matrix.set(row + r, col + c, false, true);\n\t }\n\t }\n\t }\n\t }\n\t}\n\n\t/**\n\t * Add version info bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Number} version QR Code version\n\t */\n\tfunction setupVersionInfo (matrix, version) {\n\t var size = matrix.size;\n\t var bits = Version.getEncodedBits(version);\n\t var row, col, mod;\n\n\t for (var i = 0; i < 18; i++) {\n\t row = Math.floor(i / 3);\n\t col = i % 3 + size - 8 - 3;\n\t mod = ((bits >> i) & 1) === 1;\n\n\t matrix.set(row, col, mod, true);\n\t matrix.set(col, row, mod, true);\n\t }\n\t}\n\n\t/**\n\t * Add format info bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n\t * @param {Number} maskPattern Mask pattern reference value\n\t */\n\tfunction setupFormatInfo (matrix, errorCorrectionLevel, maskPattern) {\n\t var size = matrix.size;\n\t var bits = FormatInfo.getEncodedBits(errorCorrectionLevel, maskPattern);\n\t var i, mod;\n\n\t for (i = 0; i < 15; i++) {\n\t mod = ((bits >> i) & 1) === 1;\n\n\t // vertical\n\t if (i < 6) {\n\t matrix.set(i, 8, mod, true);\n\t } else if (i < 8) {\n\t matrix.set(i + 1, 8, mod, true);\n\t } else {\n\t matrix.set(size - 15 + i, 8, mod, true);\n\t }\n\n\t // horizontal\n\t if (i < 8) {\n\t matrix.set(8, size - i - 1, mod, true);\n\t } else if (i < 9) {\n\t matrix.set(8, 15 - i - 1 + 1, mod, true);\n\t } else {\n\t matrix.set(8, 15 - i - 1, mod, true);\n\t }\n\t }\n\n\t // fixed module\n\t matrix.set(size - 8, 8, 1, true);\n\t}\n\n\t/**\n\t * Add encoded data bits to matrix\n\t *\n\t * @param {BitMatrix} matrix Modules matrix\n\t * @param {Buffer} data Data codewords\n\t */\n\tfunction setupData (matrix, data) {\n\t var size = matrix.size;\n\t var inc = -1;\n\t var row = size - 1;\n\t var bitIndex = 7;\n\t var byteIndex = 0;\n\n\t for (var col = size - 1; col > 0; col -= 2) {\n\t if (col === 6) col--;\n\n\t while (true) {\n\t for (var c = 0; c < 2; c++) {\n\t if (!matrix.isReserved(row, col - c)) {\n\t var dark = false;\n\n\t if (byteIndex < data.length) {\n\t dark = (((data[byteIndex] >>> bitIndex) & 1) === 1);\n\t }\n\n\t matrix.set(row, col - c, dark);\n\t bitIndex--;\n\n\t if (bitIndex === -1) {\n\t byteIndex++;\n\t bitIndex = 7;\n\t }\n\t }\n\t }\n\n\t row += inc;\n\n\t if (row < 0 || size <= row) {\n\t row -= inc;\n\t inc = -inc;\n\t break\n\t }\n\t }\n\t }\n\t}\n\n\t/**\n\t * Create encoded codewords from data input\n\t *\n\t * @param {Number} version QR Code version\n\t * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n\t * @param {ByteData} data Data input\n\t * @return {Buffer} Buffer containing encoded codewords\n\t */\n\tfunction createData (version, errorCorrectionLevel, segments) {\n\t // Prepare data buffer\n\t var buffer = new BitBuffer();\n\n\t segments.forEach(function (data) {\n\t // prefix data with mode indicator (4 bits)\n\t buffer.put(data.mode.bit, 4);\n\n\t // Prefix data with character count indicator.\n\t // The character count indicator is a string of bits that represents the\n\t // number of characters that are being encoded.\n\t // The character count indicator must be placed after the mode indicator\n\t // and must be a certain number of bits long, depending on the QR version\n\t // and data mode\n\t // @see {@link Mode.getCharCountIndicator}.\n\t buffer.put(data.getLength(), Mode.getCharCountIndicator(data.mode, version));\n\n\t // add binary data sequence to buffer\n\t data.write(buffer);\n\t });\n\n\t // Calculate required number of bits\n\t var totalCodewords = Utils.getSymbolTotalCodewords(version);\n\t var ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel);\n\t var dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8;\n\n\t // Add a terminator.\n\t // If the bit string is shorter than the total number of required bits,\n\t // a terminator of up to four 0s must be added to the right side of the string.\n\t // If the bit string is more than four bits shorter than the required number of bits,\n\t // add four 0s to the end.\n\t if (buffer.getLengthInBits() + 4 <= dataTotalCodewordsBits) {\n\t buffer.put(0, 4);\n\t }\n\n\t // If the bit string is fewer than four bits shorter, add only the number of 0s that\n\t // are needed to reach the required number of bits.\n\n\t // After adding the terminator, if the number of bits in the string is not a multiple of 8,\n\t // pad the string on the right with 0s to make the string's length a multiple of 8.\n\t while (buffer.getLengthInBits() % 8 !== 0) {\n\t buffer.putBit(0);\n\t }\n\n\t // Add pad bytes if the string is still shorter than the total number of required bits.\n\t // Extend the buffer to fill the data capacity of the symbol corresponding to\n\t // the Version and Error Correction Level by adding the Pad Codewords 11101100 (0xEC)\n\t // and 00010001 (0x11) alternately.\n\t var remainingByte = (dataTotalCodewordsBits - buffer.getLengthInBits()) / 8;\n\t for (var i = 0; i < remainingByte; i++) {\n\t buffer.put(i % 2 ? 0x11 : 0xEC, 8);\n\t }\n\n\t return createCodewords(buffer, version, errorCorrectionLevel)\n\t}\n\n\t/**\n\t * Encode input data with Reed-Solomon and return codewords with\n\t * relative error correction bits\n\t *\n\t * @param {BitBuffer} bitBuffer Data to encode\n\t * @param {Number} version QR Code version\n\t * @param {ErrorCorrectionLevel} errorCorrectionLevel Error correction level\n\t * @return {Buffer} Buffer containing encoded codewords\n\t */\n\tfunction createCodewords (bitBuffer, version, errorCorrectionLevel) {\n\t // Total codewords for this QR code version (Data + Error correction)\n\t var totalCodewords = Utils.getSymbolTotalCodewords(version);\n\n\t // Total number of error correction codewords\n\t var ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel);\n\n\t // Total number of data codewords\n\t var dataTotalCodewords = totalCodewords - ecTotalCodewords;\n\n\t // Total number of blocks\n\t var ecTotalBlocks = ECCode.getBlocksCount(version, errorCorrectionLevel);\n\n\t // Calculate how many blocks each group should contain\n\t var blocksInGroup2 = totalCodewords % ecTotalBlocks;\n\t var blocksInGroup1 = ecTotalBlocks - blocksInGroup2;\n\n\t var totalCodewordsInGroup1 = Math.floor(totalCodewords / ecTotalBlocks);\n\n\t var dataCodewordsInGroup1 = Math.floor(dataTotalCodewords / ecTotalBlocks);\n\t var dataCodewordsInGroup2 = dataCodewordsInGroup1 + 1;\n\n\t // Number of EC codewords is the same for both groups\n\t var ecCount = totalCodewordsInGroup1 - dataCodewordsInGroup1;\n\n\t // Initialize a Reed-Solomon encoder with a generator polynomial of degree ecCount\n\t var rs = new ReedSolomonEncoder(ecCount);\n\n\t var offset = 0;\n\t var dcData = new Array(ecTotalBlocks);\n\t var ecData = new Array(ecTotalBlocks);\n\t var maxDataSize = 0;\n\t var buffer = BufferUtil.from(bitBuffer.buffer);\n\n\t // Divide the buffer into the required number of blocks\n\t for (var b = 0; b < ecTotalBlocks; b++) {\n\t var dataSize = b < blocksInGroup1 ? dataCodewordsInGroup1 : dataCodewordsInGroup2;\n\n\t // extract a block of data from buffer\n\t dcData[b] = buffer.slice(offset, offset + dataSize);\n\n\t // Calculate EC codewords for this data block\n\t ecData[b] = rs.encode(dcData[b]);\n\n\t offset += dataSize;\n\t maxDataSize = Math.max(maxDataSize, dataSize);\n\t }\n\n\t // Create final data\n\t // Interleave the data and error correction codewords from each block\n\t var data = BufferUtil.alloc(totalCodewords);\n\t var index = 0;\n\t var i, r;\n\n\t // Add data codewords\n\t for (i = 0; i < maxDataSize; i++) {\n\t for (r = 0; r < ecTotalBlocks; r++) {\n\t if (i < dcData[r].length) {\n\t data[index++] = dcData[r][i];\n\t }\n\t }\n\t }\n\n\t // Apped EC codewords\n\t for (i = 0; i < ecCount; i++) {\n\t for (r = 0; r < ecTotalBlocks; r++) {\n\t data[index++] = ecData[r][i];\n\t }\n\t }\n\n\t return data\n\t}\n\n\t/**\n\t * Build QR Code symbol\n\t *\n\t * @param {String} data Input string\n\t * @param {Number} version QR Code version\n\t * @param {ErrorCorretionLevel} errorCorrectionLevel Error level\n\t * @param {MaskPattern} maskPattern Mask pattern\n\t * @return {Object} Object containing symbol data\n\t */\n\tfunction createSymbol (data, version, errorCorrectionLevel, maskPattern) {\n\t var segments;\n\n\t if (isArray(data)) {\n\t segments = Segments.fromArray(data);\n\t } else if (typeof data === 'string') {\n\t var estimatedVersion = version;\n\n\t if (!estimatedVersion) {\n\t var rawSegments = Segments.rawSplit(data);\n\n\t // Estimate best version that can contain raw splitted segments\n\t estimatedVersion = Version.getBestVersionForData(rawSegments,\n\t errorCorrectionLevel);\n\t }\n\n\t // Build optimized segments\n\t // If estimated version is undefined, try with the highest version\n\t segments = Segments.fromString(data, estimatedVersion || 40);\n\t } else {\n\t throw new Error('Invalid data')\n\t }\n\n\t // Get the min version that can contain data\n\t var bestVersion = Version.getBestVersionForData(segments,\n\t errorCorrectionLevel);\n\n\t // If no version is found, data cannot be stored\n\t if (!bestVersion) {\n\t throw new Error('The amount of data is too big to be stored in a QR Code')\n\t }\n\n\t // If not specified, use min version as default\n\t if (!version) {\n\t version = bestVersion;\n\n\t // Check if the specified version can contain the data\n\t } else if (version < bestVersion) {\n\t throw new Error('\\n' +\n\t 'The chosen QR Code version cannot contain this amount of data.\\n' +\n\t 'Minimum version required to store current data is: ' + bestVersion + '.\\n'\n\t )\n\t }\n\n\t var dataBits = createData(version, errorCorrectionLevel, segments);\n\n\t // Allocate matrix buffer\n\t var moduleCount = Utils.getSymbolSize(version);\n\t var modules = new BitMatrix(moduleCount);\n\n\t // Add function modules\n\t setupFinderPattern(modules, version);\n\t setupTimingPattern(modules);\n\t setupAlignmentPattern(modules, version);\n\n\t // Add temporary dummy bits for format info just to set them as reserved.\n\t // This is needed to prevent these bits from being masked by {@link MaskPattern.applyMask}\n\t // since the masking operation must be performed only on the encoding region.\n\t // These blocks will be replaced with correct values later in code.\n\t setupFormatInfo(modules, errorCorrectionLevel, 0);\n\n\t if (version >= 7) {\n\t setupVersionInfo(modules, version);\n\t }\n\n\t // Add data codewords\n\t setupData(modules, dataBits);\n\n\t if (isNaN(maskPattern)) {\n\t // Find best mask pattern\n\t maskPattern = MaskPattern.getBestMask(modules,\n\t setupFormatInfo.bind(null, modules, errorCorrectionLevel));\n\t }\n\n\t // Apply mask pattern\n\t MaskPattern.applyMask(maskPattern, modules);\n\n\t // Replace format info bits with correct values\n\t setupFormatInfo(modules, errorCorrectionLevel, maskPattern);\n\n\t return {\n\t modules: modules,\n\t version: version,\n\t errorCorrectionLevel: errorCorrectionLevel,\n\t maskPattern: maskPattern,\n\t segments: segments\n\t }\n\t}\n\n\t/**\n\t * QR Code\n\t *\n\t * @param {String | Array} data Input data\n\t * @param {Object} options Optional configurations\n\t * @param {Number} options.version QR Code version\n\t * @param {String} options.errorCorrectionLevel Error correction level\n\t * @param {Function} options.toSJISFunc Helper func to convert utf8 to sjis\n\t */\n\texports.create = function create (data, options) {\n\t if (typeof data === 'undefined' || data === '') {\n\t throw new Error('No input text')\n\t }\n\n\t var errorCorrectionLevel = ECLevel.M;\n\t var version;\n\t var mask;\n\n\t if (typeof options !== 'undefined') {\n\t // Use higher error correction level as default\n\t errorCorrectionLevel = ECLevel.from(options.errorCorrectionLevel, ECLevel.M);\n\t version = Version.from(options.version);\n\t mask = MaskPattern.from(options.maskPattern);\n\n\t if (options.toSJISFunc) {\n\t Utils.setToSJISFunction(options.toSJISFunc);\n\t }\n\t }\n\n\t return createSymbol(data, version, errorCorrectionLevel, mask)\n\t};\n\n\t},{\"../utils/buffer\":28,\"./alignment-pattern\":2,\"./bit-buffer\":4,\"./bit-matrix\":5,\"./error-correction-code\":7,\"./error-correction-level\":8,\"./finder-pattern\":9,\"./format-info\":10,\"./mask-pattern\":13,\"./mode\":14,\"./reed-solomon-encoder\":18,\"./segments\":20,\"./utils\":21,\"./version\":23,\"isarray\":33}],18:[function(require,module,exports){\n\tvar BufferUtil = require('../utils/buffer');\n\tvar Polynomial = require('./polynomial');\n\tvar Buffer = require('buffer').Buffer;\n\n\tfunction ReedSolomonEncoder (degree) {\n\t this.genPoly = undefined;\n\t this.degree = degree;\n\n\t if (this.degree) this.initialize(this.degree);\n\t}\n\n\t/**\n\t * Initialize the encoder.\n\t * The input param should correspond to the number of error correction codewords.\n\t *\n\t * @param {Number} degree\n\t */\n\tReedSolomonEncoder.prototype.initialize = function initialize (degree) {\n\t // create an irreducible generator polynomial\n\t this.degree = degree;\n\t this.genPoly = Polynomial.generateECPolynomial(this.degree);\n\t};\n\n\t/**\n\t * Encodes a chunk of data\n\t *\n\t * @param {Buffer} data Buffer containing input data\n\t * @return {Buffer} Buffer containing encoded data\n\t */\n\tReedSolomonEncoder.prototype.encode = function encode (data) {\n\t if (!this.genPoly) {\n\t throw new Error('Encoder not initialized')\n\t }\n\n\t // Calculate EC for this data block\n\t // extends data size to data+genPoly size\n\t var pad = BufferUtil.alloc(this.degree);\n\t var paddedData = Buffer.concat([data, pad], data.length + this.degree);\n\n\t // The error correction codewords are the remainder after dividing the data codewords\n\t // by a generator polynomial\n\t var remainder = Polynomial.mod(paddedData, this.genPoly);\n\n\t // return EC data blocks (last n byte, where n is the degree of genPoly)\n\t // If coefficients number in remainder are less than genPoly degree,\n\t // pad with 0s to the left to reach the needed number of coefficients\n\t var start = this.degree - remainder.length;\n\t if (start > 0) {\n\t var buff = BufferUtil.alloc(this.degree);\n\t remainder.copy(buff, start);\n\n\t return buff\n\t }\n\n\t return remainder\n\t};\n\n\tmodule.exports = ReedSolomonEncoder;\n\n\t},{\"../utils/buffer\":28,\"./polynomial\":16,\"buffer\":30}],19:[function(require,module,exports){\n\tvar numeric = '[0-9]+';\n\tvar alphanumeric = '[A-Z $%*+\\\\-./:]+';\n\tvar kanji = '(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|' +\n\t '[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|' +\n\t '[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|' +\n\t '[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+';\n\tkanji = kanji.replace(/u/g, '\\\\u');\n\n\tvar byte = '(?:(?![A-Z0-9 $%*+\\\\-./:]|' + kanji + ')(?:.|[\\r\\n]))+';\n\n\texports.KANJI = new RegExp(kanji, 'g');\n\texports.BYTE_KANJI = new RegExp('[^A-Z0-9 $%*+\\\\-./:]+', 'g');\n\texports.BYTE = new RegExp(byte, 'g');\n\texports.NUMERIC = new RegExp(numeric, 'g');\n\texports.ALPHANUMERIC = new RegExp(alphanumeric, 'g');\n\n\tvar TEST_KANJI = new RegExp('^' + kanji + '$');\n\tvar TEST_NUMERIC = new RegExp('^' + numeric + '$');\n\tvar TEST_ALPHANUMERIC = new RegExp('^[A-Z0-9 $%*+\\\\-./:]+$');\n\n\texports.testKanji = function testKanji (str) {\n\t return TEST_KANJI.test(str)\n\t};\n\n\texports.testNumeric = function testNumeric (str) {\n\t return TEST_NUMERIC.test(str)\n\t};\n\n\texports.testAlphanumeric = function testAlphanumeric (str) {\n\t return TEST_ALPHANUMERIC.test(str)\n\t};\n\n\t},{}],20:[function(require,module,exports){\n\tvar Mode = require('./mode');\n\tvar NumericData = require('./numeric-data');\n\tvar AlphanumericData = require('./alphanumeric-data');\n\tvar ByteData = require('./byte-data');\n\tvar KanjiData = require('./kanji-data');\n\tvar Regex = require('./regex');\n\tvar Utils = require('./utils');\n\tvar dijkstra = require('dijkstrajs');\n\n\t/**\n\t * Returns UTF8 byte length\n\t *\n\t * @param {String} str Input string\n\t * @return {Number} Number of byte\n\t */\n\tfunction getStringByteLength (str) {\n\t return unescape(encodeURIComponent(str)).length\n\t}\n\n\t/**\n\t * Get a list of segments of the specified mode\n\t * from a string\n\t *\n\t * @param {Mode} mode Segment mode\n\t * @param {String} str String to process\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction getSegments (regex, mode, str) {\n\t var segments = [];\n\t var result;\n\n\t while ((result = regex.exec(str)) !== null) {\n\t segments.push({\n\t data: result[0],\n\t index: result.index,\n\t mode: mode,\n\t length: result[0].length\n\t });\n\t }\n\n\t return segments\n\t}\n\n\t/**\n\t * Extracts a series of segments with the appropriate\n\t * modes from a string\n\t *\n\t * @param {String} dataStr Input string\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction getSegmentsFromString (dataStr) {\n\t var numSegs = getSegments(Regex.NUMERIC, Mode.NUMERIC, dataStr);\n\t var alphaNumSegs = getSegments(Regex.ALPHANUMERIC, Mode.ALPHANUMERIC, dataStr);\n\t var byteSegs;\n\t var kanjiSegs;\n\n\t if (Utils.isKanjiModeEnabled()) {\n\t byteSegs = getSegments(Regex.BYTE, Mode.BYTE, dataStr);\n\t kanjiSegs = getSegments(Regex.KANJI, Mode.KANJI, dataStr);\n\t } else {\n\t byteSegs = getSegments(Regex.BYTE_KANJI, Mode.BYTE, dataStr);\n\t kanjiSegs = [];\n\t }\n\n\t var segs = numSegs.concat(alphaNumSegs, byteSegs, kanjiSegs);\n\n\t return segs\n\t .sort(function (s1, s2) {\n\t return s1.index - s2.index\n\t })\n\t .map(function (obj) {\n\t return {\n\t data: obj.data,\n\t mode: obj.mode,\n\t length: obj.length\n\t }\n\t })\n\t}\n\n\t/**\n\t * Returns how many bits are needed to encode a string of\n\t * specified length with the specified mode\n\t *\n\t * @param {Number} length String length\n\t * @param {Mode} mode Segment mode\n\t * @return {Number} Bit length\n\t */\n\tfunction getSegmentBitsLength (length, mode) {\n\t switch (mode) {\n\t case Mode.NUMERIC:\n\t return NumericData.getBitsLength(length)\n\t case Mode.ALPHANUMERIC:\n\t return AlphanumericData.getBitsLength(length)\n\t case Mode.KANJI:\n\t return KanjiData.getBitsLength(length)\n\t case Mode.BYTE:\n\t return ByteData.getBitsLength(length)\n\t }\n\t}\n\n\t/**\n\t * Merges adjacent segments which have the same mode\n\t *\n\t * @param {Array} segs Array of object with segments data\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction mergeSegments (segs) {\n\t return segs.reduce(function (acc, curr) {\n\t var prevSeg = acc.length - 1 >= 0 ? acc[acc.length - 1] : null;\n\t if (prevSeg && prevSeg.mode === curr.mode) {\n\t acc[acc.length - 1].data += curr.data;\n\t return acc\n\t }\n\n\t acc.push(curr);\n\t return acc\n\t }, [])\n\t}\n\n\t/**\n\t * Generates a list of all possible nodes combination which\n\t * will be used to build a segments graph.\n\t *\n\t * Nodes are divided by groups. Each group will contain a list of all the modes\n\t * in which is possible to encode the given text.\n\t *\n\t * For example the text '12345' can be encoded as Numeric, Alphanumeric or Byte.\n\t * The group for '12345' will contain then 3 objects, one for each\n\t * possible encoding mode.\n\t *\n\t * Each node represents a possible segment.\n\t *\n\t * @param {Array} segs Array of object with segments data\n\t * @return {Array} Array of object with segments data\n\t */\n\tfunction buildNodes (segs) {\n\t var nodes = [];\n\t for (var i = 0; i < segs.length; i++) {\n\t var seg = segs[i];\n\n\t switch (seg.mode) {\n\t case Mode.NUMERIC:\n\t nodes.push([seg,\n\t { data: seg.data, mode: Mode.ALPHANUMERIC, length: seg.length },\n\t { data: seg.data, mode: Mode.BYTE, length: seg.length }\n\t ]);\n\t break\n\t case Mode.ALPHANUMERIC:\n\t nodes.push([seg,\n\t { data: seg.data, mode: Mode.BYTE, length: seg.length }\n\t ]);\n\t break\n\t case Mode.KANJI:\n\t nodes.push([seg,\n\t { data: seg.data, mode: Mode.BYTE, length: getStringByteLength(seg.data) }\n\t ]);\n\t break\n\t case Mode.BYTE:\n\t nodes.push([\n\t { data: seg.data, mode: Mode.BYTE, length: getStringByteLength(seg.data) }\n\t ]);\n\t }\n\t }\n\n\t return nodes\n\t}\n\n\t/**\n\t * Builds a graph from a list of nodes.\n\t * All segments in each node group will be connected with all the segments of\n\t * the next group and so on.\n\t *\n\t * At each connection will be assigned a weight depending on the\n\t * segment's byte length.\n\t *\n\t * @param {Array} nodes Array of object with segments data\n\t * @param {Number} version QR Code version\n\t * @return {Object} Graph of all possible segments\n\t */\n\tfunction buildGraph (nodes, version) {\n\t var table = {};\n\t var graph = {'start': {}};\n\t var prevNodeIds = ['start'];\n\n\t for (var i = 0; i < nodes.length; i++) {\n\t var nodeGroup = nodes[i];\n\t var currentNodeIds = [];\n\n\t for (var j = 0; j < nodeGroup.length; j++) {\n\t var node = nodeGroup[j];\n\t var key = '' + i + j;\n\n\t currentNodeIds.push(key);\n\t table[key] = { node: node, lastCount: 0 };\n\t graph[key] = {};\n\n\t for (var n = 0; n < prevNodeIds.length; n++) {\n\t var prevNodeId = prevNodeIds[n];\n\n\t if (table[prevNodeId] && table[prevNodeId].node.mode === node.mode) {\n\t graph[prevNodeId][key] =\n\t getSegmentBitsLength(table[prevNodeId].lastCount + node.length, node.mode) -\n\t getSegmentBitsLength(table[prevNodeId].lastCount, node.mode);\n\n\t table[prevNodeId].lastCount += node.length;\n\t } else {\n\t if (table[prevNodeId]) table[prevNodeId].lastCount = node.length;\n\n\t graph[prevNodeId][key] = getSegmentBitsLength(node.length, node.mode) +\n\t 4 + Mode.getCharCountIndicator(node.mode, version); // switch cost\n\t }\n\t }\n\t }\n\n\t prevNodeIds = currentNodeIds;\n\t }\n\n\t for (n = 0; n < prevNodeIds.length; n++) {\n\t graph[prevNodeIds[n]]['end'] = 0;\n\t }\n\n\t return { map: graph, table: table }\n\t}\n\n\t/**\n\t * Builds a segment from a specified data and mode.\n\t * If a mode is not specified, the more suitable will be used.\n\t *\n\t * @param {String} data Input data\n\t * @param {Mode | String} modesHint Data mode\n\t * @return {Segment} Segment\n\t */\n\tfunction buildSingleSegment (data, modesHint) {\n\t var mode;\n\t var bestMode = Mode.getBestModeForData(data);\n\n\t mode = Mode.from(modesHint, bestMode);\n\n\t // Make sure data can be encoded\n\t if (mode !== Mode.BYTE && mode.bit < bestMode.bit) {\n\t throw new Error('\"' + data + '\"' +\n\t ' cannot be encoded with mode ' + Mode.toString(mode) +\n\t '.\\n Suggested mode is: ' + Mode.toString(bestMode))\n\t }\n\n\t // Use Mode.BYTE if Kanji support is disabled\n\t if (mode === Mode.KANJI && !Utils.isKanjiModeEnabled()) {\n\t mode = Mode.BYTE;\n\t }\n\n\t switch (mode) {\n\t case Mode.NUMERIC:\n\t return new NumericData(data)\n\n\t case Mode.ALPHANUMERIC:\n\t return new AlphanumericData(data)\n\n\t case Mode.KANJI:\n\t return new KanjiData(data)\n\n\t case Mode.BYTE:\n\t return new ByteData(data)\n\t }\n\t}\n\n\t/**\n\t * Builds a list of segments from an array.\n\t * Array can contain Strings or Objects with segment's info.\n\t *\n\t * For each item which is a string, will be generated a segment with the given\n\t * string and the more appropriate encoding mode.\n\t *\n\t * For each item which is an object, will be generated a segment with the given\n\t * data and mode.\n\t * Objects must contain at least the property \"data\".\n\t * If property \"mode\" is not present, the more suitable mode will be used.\n\t *\n\t * @param {Array} array Array of objects with segments data\n\t * @return {Array} Array of Segments\n\t */\n\texports.fromArray = function fromArray (array) {\n\t return array.reduce(function (acc, seg) {\n\t if (typeof seg === 'string') {\n\t acc.push(buildSingleSegment(seg, null));\n\t } else if (seg.data) {\n\t acc.push(buildSingleSegment(seg.data, seg.mode));\n\t }\n\n\t return acc\n\t }, [])\n\t};\n\n\t/**\n\t * Builds an optimized sequence of segments from a string,\n\t * which will produce the shortest possible bitstream.\n\t *\n\t * @param {String} data Input string\n\t * @param {Number} version QR Code version\n\t * @return {Array} Array of segments\n\t */\n\texports.fromString = function fromString (data, version) {\n\t var segs = getSegmentsFromString(data, Utils.isKanjiModeEnabled());\n\n\t var nodes = buildNodes(segs);\n\t var graph = buildGraph(nodes, version);\n\t var path = dijkstra.find_path(graph.map, 'start', 'end');\n\n\t var optimizedSegs = [];\n\t for (var i = 1; i < path.length - 1; i++) {\n\t optimizedSegs.push(graph.table[path[i]].node);\n\t }\n\n\t return exports.fromArray(mergeSegments(optimizedSegs))\n\t};\n\n\t/**\n\t * Splits a string in various segments with the modes which\n\t * best represent their content.\n\t * The produced segments are far from being optimized.\n\t * The output of this function is only used to estimate a QR Code version\n\t * which may contain the data.\n\t *\n\t * @param {string} data Input string\n\t * @return {Array} Array of segments\n\t */\n\texports.rawSplit = function rawSplit (data) {\n\t return exports.fromArray(\n\t getSegmentsFromString(data, Utils.isKanjiModeEnabled())\n\t )\n\t};\n\n\t},{\"./alphanumeric-data\":3,\"./byte-data\":6,\"./kanji-data\":12,\"./mode\":14,\"./numeric-data\":15,\"./regex\":19,\"./utils\":21,\"dijkstrajs\":31}],21:[function(require,module,exports){\n\tvar toSJISFunction;\n\tvar CODEWORDS_COUNT = [\n\t 0, // Not used\n\t 26, 44, 70, 100, 134, 172, 196, 242, 292, 346,\n\t 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085,\n\t 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185,\n\t 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706\n\t];\n\n\t/**\n\t * Returns the QR Code size for the specified version\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Number} size of QR code\n\t */\n\texports.getSymbolSize = function getSymbolSize (version) {\n\t if (!version) throw new Error('\"version\" cannot be null or undefined')\n\t if (version < 1 || version > 40) throw new Error('\"version\" should be in range from 1 to 40')\n\t return version * 4 + 17\n\t};\n\n\t/**\n\t * Returns the total number of codewords used to store data and EC information.\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Number} Data length in bits\n\t */\n\texports.getSymbolTotalCodewords = function getSymbolTotalCodewords (version) {\n\t return CODEWORDS_COUNT[version]\n\t};\n\n\t/**\n\t * Encode data with Bose-Chaudhuri-Hocquenghem\n\t *\n\t * @param {Number} data Value to encode\n\t * @return {Number} Encoded value\n\t */\n\texports.getBCHDigit = function (data) {\n\t var digit = 0;\n\n\t while (data !== 0) {\n\t digit++;\n\t data >>>= 1;\n\t }\n\n\t return digit\n\t};\n\n\texports.setToSJISFunction = function setToSJISFunction (f) {\n\t if (typeof f !== 'function') {\n\t throw new Error('\"toSJISFunc\" is not a valid function.')\n\t }\n\n\t toSJISFunction = f;\n\t};\n\n\texports.isKanjiModeEnabled = function () {\n\t return typeof toSJISFunction !== 'undefined'\n\t};\n\n\texports.toSJIS = function toSJIS (kanji) {\n\t return toSJISFunction(kanji)\n\t};\n\n\t},{}],22:[function(require,module,exports){\n\t/**\n\t * Check if QR Code version is valid\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Boolean} true if valid version, false otherwise\n\t */\n\texports.isValid = function isValid (version) {\n\t return !isNaN(version) && version >= 1 && version <= 40\n\t};\n\n\t},{}],23:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\tvar ECCode = require('./error-correction-code');\n\tvar ECLevel = require('./error-correction-level');\n\tvar Mode = require('./mode');\n\tvar VersionCheck = require('./version-check');\n\tvar isArray = require('isarray');\n\n\t// Generator polynomial used to encode version information\n\tvar G18 = (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0);\n\tvar G18_BCH = Utils.getBCHDigit(G18);\n\n\tfunction getBestVersionForDataLength (mode, length, errorCorrectionLevel) {\n\t for (var currentVersion = 1; currentVersion <= 40; currentVersion++) {\n\t if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel, mode)) {\n\t return currentVersion\n\t }\n\t }\n\n\t return undefined\n\t}\n\n\tfunction getReservedBitsCount (mode, version) {\n\t // Character count indicator + mode indicator bits\n\t return Mode.getCharCountIndicator(mode, version) + 4\n\t}\n\n\tfunction getTotalBitsFromDataArray (segments, version) {\n\t var totalBits = 0;\n\n\t segments.forEach(function (data) {\n\t var reservedBits = getReservedBitsCount(data.mode, version);\n\t totalBits += reservedBits + data.getBitsLength();\n\t });\n\n\t return totalBits\n\t}\n\n\tfunction getBestVersionForMixedData (segments, errorCorrectionLevel) {\n\t for (var currentVersion = 1; currentVersion <= 40; currentVersion++) {\n\t var length = getTotalBitsFromDataArray(segments, currentVersion);\n\t if (length <= exports.getCapacity(currentVersion, errorCorrectionLevel, Mode.MIXED)) {\n\t return currentVersion\n\t }\n\t }\n\n\t return undefined\n\t}\n\n\t/**\n\t * Returns version number from a value.\n\t * If value is not a valid version, returns defaultValue\n\t *\n\t * @param {Number|String} value QR Code version\n\t * @param {Number} defaultValue Fallback value\n\t * @return {Number} QR Code version number\n\t */\n\texports.from = function from (value, defaultValue) {\n\t if (VersionCheck.isValid(value)) {\n\t return parseInt(value, 10)\n\t }\n\n\t return defaultValue\n\t};\n\n\t/**\n\t * Returns how much data can be stored with the specified QR code version\n\t * and error correction level\n\t *\n\t * @param {Number} version QR Code version (1-40)\n\t * @param {Number} errorCorrectionLevel Error correction level\n\t * @param {Mode} mode Data mode\n\t * @return {Number} Quantity of storable data\n\t */\n\texports.getCapacity = function getCapacity (version, errorCorrectionLevel, mode) {\n\t if (!VersionCheck.isValid(version)) {\n\t throw new Error('Invalid QR Code version')\n\t }\n\n\t // Use Byte mode as default\n\t if (typeof mode === 'undefined') mode = Mode.BYTE;\n\n\t // Total codewords for this QR code version (Data + Error correction)\n\t var totalCodewords = Utils.getSymbolTotalCodewords(version);\n\n\t // Total number of error correction codewords\n\t var ecTotalCodewords = ECCode.getTotalCodewordsCount(version, errorCorrectionLevel);\n\n\t // Total number of data codewords\n\t var dataTotalCodewordsBits = (totalCodewords - ecTotalCodewords) * 8;\n\n\t if (mode === Mode.MIXED) return dataTotalCodewordsBits\n\n\t var usableBits = dataTotalCodewordsBits - getReservedBitsCount(mode, version);\n\n\t // Return max number of storable codewords\n\t switch (mode) {\n\t case Mode.NUMERIC:\n\t return Math.floor((usableBits / 10) * 3)\n\n\t case Mode.ALPHANUMERIC:\n\t return Math.floor((usableBits / 11) * 2)\n\n\t case Mode.KANJI:\n\t return Math.floor(usableBits / 13)\n\n\t case Mode.BYTE:\n\t default:\n\t return Math.floor(usableBits / 8)\n\t }\n\t};\n\n\t/**\n\t * Returns the minimum version needed to contain the amount of data\n\t *\n\t * @param {Segment} data Segment of data\n\t * @param {Number} [errorCorrectionLevel=H] Error correction level\n\t * @param {Mode} mode Data mode\n\t * @return {Number} QR Code version\n\t */\n\texports.getBestVersionForData = function getBestVersionForData (data, errorCorrectionLevel) {\n\t var seg;\n\n\t var ecl = ECLevel.from(errorCorrectionLevel, ECLevel.M);\n\n\t if (isArray(data)) {\n\t if (data.length > 1) {\n\t return getBestVersionForMixedData(data, ecl)\n\t }\n\n\t if (data.length === 0) {\n\t return 1\n\t }\n\n\t seg = data[0];\n\t } else {\n\t seg = data;\n\t }\n\n\t return getBestVersionForDataLength(seg.mode, seg.getLength(), ecl)\n\t};\n\n\t/**\n\t * Returns version information with relative error correction bits\n\t *\n\t * The version information is included in QR Code symbols of version 7 or larger.\n\t * It consists of an 18-bit sequence containing 6 data bits,\n\t * with 12 error correction bits calculated using the (18, 6) Golay code.\n\t *\n\t * @param {Number} version QR Code version\n\t * @return {Number} Encoded version info bits\n\t */\n\texports.getEncodedBits = function getEncodedBits (version) {\n\t if (!VersionCheck.isValid(version) || version < 7) {\n\t throw new Error('Invalid QR Code version')\n\t }\n\n\t var d = version << 12;\n\n\t while (Utils.getBCHDigit(d) - G18_BCH >= 0) {\n\t d ^= (G18 << (Utils.getBCHDigit(d) - G18_BCH));\n\t }\n\n\t return (version << 12) | d\n\t};\n\n\t},{\"./error-correction-code\":7,\"./error-correction-level\":8,\"./mode\":14,\"./utils\":21,\"./version-check\":22,\"isarray\":33}],24:[function(require,module,exports){\n\n\tvar canPromise = require('./can-promise');\n\n\tvar QRCode = require('./core/qrcode');\n\tvar CanvasRenderer = require('./renderer/canvas');\n\tvar SvgRenderer = require('./renderer/svg-tag.js');\n\n\tfunction renderCanvas (renderFunc, canvas, text, opts, cb) {\n\t var args = [].slice.call(arguments, 1);\n\t var argsNum = args.length;\n\t var isLastArgCb = typeof args[argsNum - 1] === 'function';\n\n\t if (!isLastArgCb && !canPromise()) {\n\t throw new Error('Callback required as last argument')\n\t }\n\n\t if (isLastArgCb) {\n\t if (argsNum < 2) {\n\t throw new Error('Too few arguments provided')\n\t }\n\n\t if (argsNum === 2) {\n\t cb = text;\n\t text = canvas;\n\t canvas = opts = undefined;\n\t } else if (argsNum === 3) {\n\t if (canvas.getContext && typeof cb === 'undefined') {\n\t cb = opts;\n\t opts = undefined;\n\t } else {\n\t cb = opts;\n\t opts = text;\n\t text = canvas;\n\t canvas = undefined;\n\t }\n\t }\n\t } else {\n\t if (argsNum < 1) {\n\t throw new Error('Too few arguments provided')\n\t }\n\n\t if (argsNum === 1) {\n\t text = canvas;\n\t canvas = opts = undefined;\n\t } else if (argsNum === 2 && !canvas.getContext) {\n\t opts = text;\n\t text = canvas;\n\t canvas = undefined;\n\t }\n\n\t return new Promise(function (resolve, reject) {\n\t try {\n\t var data = QRCode.create(text, opts);\n\t resolve(renderFunc(data, canvas, opts));\n\t } catch (e) {\n\t reject(e);\n\t }\n\t })\n\t }\n\n\t try {\n\t var data = QRCode.create(text, opts);\n\t cb(null, renderFunc(data, canvas, opts));\n\t } catch (e) {\n\t cb(e);\n\t }\n\t}\n\n\texports.create = QRCode.create;\n\texports.toCanvas = renderCanvas.bind(null, CanvasRenderer.render);\n\texports.toDataURL = renderCanvas.bind(null, CanvasRenderer.renderToDataURL);\n\n\t// only svg for now.\n\texports.toString = renderCanvas.bind(null, function (data, _, opts) {\n\t return SvgRenderer.render(data, opts)\n\t});\n\n\t},{\"./can-promise\":1,\"./core/qrcode\":17,\"./renderer/canvas\":25,\"./renderer/svg-tag.js\":26}],25:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\n\tfunction clearCanvas (ctx, canvas, size) {\n\t ctx.clearRect(0, 0, canvas.width, canvas.height);\n\n\t if (!canvas.style) canvas.style = {};\n\t canvas.height = size;\n\t canvas.width = size;\n\t canvas.style.height = size + 'px';\n\t canvas.style.width = size + 'px';\n\t}\n\n\tfunction getCanvasElement () {\n\t try {\n\t return document.createElement('canvas')\n\t } catch (e) {\n\t throw new Error('You need to specify a canvas element')\n\t }\n\t}\n\n\texports.render = function render (qrData, canvas, options) {\n\t var opts = options;\n\t var canvasEl = canvas;\n\n\t if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n\t opts = canvas;\n\t canvas = undefined;\n\t }\n\n\t if (!canvas) {\n\t canvasEl = getCanvasElement();\n\t }\n\n\t opts = Utils.getOptions(opts);\n\t var size = Utils.getImageWidth(qrData.modules.size, opts);\n\n\t var ctx = canvasEl.getContext('2d');\n\t var image = ctx.createImageData(size, size);\n\t Utils.qrToImageData(image.data, qrData, opts);\n\n\t clearCanvas(ctx, canvasEl, size);\n\t ctx.putImageData(image, 0, 0);\n\n\t return canvasEl\n\t};\n\n\texports.renderToDataURL = function renderToDataURL (qrData, canvas, options) {\n\t var opts = options;\n\n\t if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n\t opts = canvas;\n\t canvas = undefined;\n\t }\n\n\t if (!opts) opts = {};\n\n\t var canvasEl = exports.render(qrData, canvas, opts);\n\n\t var type = opts.type || 'image/png';\n\t var rendererOpts = opts.rendererOpts || {};\n\n\t return canvasEl.toDataURL(type, rendererOpts.quality)\n\t};\n\n\t},{\"./utils\":27}],26:[function(require,module,exports){\n\tvar Utils = require('./utils');\n\n\tfunction getColorAttrib (color, attrib) {\n\t var alpha = color.a / 255;\n\t var str = attrib + '=\"' + color.hex + '\"';\n\n\t return alpha < 1\n\t ? str + ' ' + attrib + '-opacity=\"' + alpha.toFixed(2).slice(1) + '\"'\n\t : str\n\t}\n\n\tfunction svgCmd (cmd, x, y) {\n\t var str = cmd + x;\n\t if (typeof y !== 'undefined') str += ' ' + y;\n\n\t return str\n\t}\n\n\tfunction qrToPath (data, size, margin) {\n\t var path = '';\n\t var moveBy = 0;\n\t var newRow = false;\n\t var lineLength = 0;\n\n\t for (var i = 0; i < data.length; i++) {\n\t var col = Math.floor(i % size);\n\t var row = Math.floor(i / size);\n\n\t if (!col && !newRow) newRow = true;\n\n\t if (data[i]) {\n\t lineLength++;\n\n\t if (!(i > 0 && col > 0 && data[i - 1])) {\n\t path += newRow\n\t ? svgCmd('M', col + margin, 0.5 + row + margin)\n\t : svgCmd('m', moveBy, 0);\n\n\t moveBy = 0;\n\t newRow = false;\n\t }\n\n\t if (!(col + 1 < size && data[i + 1])) {\n\t path += svgCmd('h', lineLength);\n\t lineLength = 0;\n\t }\n\t } else {\n\t moveBy++;\n\t }\n\t }\n\n\t return path\n\t}\n\n\texports.render = function render (qrData, options, cb) {\n\t var opts = Utils.getOptions(options);\n\t var size = qrData.modules.size;\n\t var data = qrData.modules.data;\n\t var qrcodesize = size + opts.margin * 2;\n\n\t var bg = !opts.color.light.a\n\t ? ''\n\t : '<path ' + getColorAttrib(opts.color.light, 'fill') +\n\t ' d=\"M0 0h' + qrcodesize + 'v' + qrcodesize + 'H0z\"/>';\n\n\t var path =\n\t '<path ' + getColorAttrib(opts.color.dark, 'stroke') +\n\t ' d=\"' + qrToPath(data, size, opts.margin) + '\"/>';\n\n\t var viewBox = 'viewBox=\"' + '0 0 ' + qrcodesize + ' ' + qrcodesize + '\"';\n\n\t var width = !opts.width ? '' : 'width=\"' + opts.width + '\" height=\"' + opts.width + '\" ';\n\n\t var svgTag = '<svg xmlns=\"http://www.w3.org/2000/svg\" ' + width + viewBox + ' shape-rendering=\"crispEdges\">' + bg + path + '</svg>\\n';\n\n\t if (typeof cb === 'function') {\n\t cb(null, svgTag);\n\t }\n\n\t return svgTag\n\t};\n\n\t},{\"./utils\":27}],27:[function(require,module,exports){\n\tfunction hex2rgba (hex) {\n\t if (typeof hex === 'number') {\n\t hex = hex.toString();\n\t }\n\n\t if (typeof hex !== 'string') {\n\t throw new Error('Color should be defined as hex string')\n\t }\n\n\t var hexCode = hex.slice().replace('#', '').split('');\n\t if (hexCode.length < 3 || hexCode.length === 5 || hexCode.length > 8) {\n\t throw new Error('Invalid hex color: ' + hex)\n\t }\n\n\t // Convert from short to long form (fff -> ffffff)\n\t if (hexCode.length === 3 || hexCode.length === 4) {\n\t hexCode = Array.prototype.concat.apply([], hexCode.map(function (c) {\n\t return [c, c]\n\t }));\n\t }\n\n\t // Add default alpha value\n\t if (hexCode.length === 6) hexCode.push('F', 'F');\n\n\t var hexValue = parseInt(hexCode.join(''), 16);\n\n\t return {\n\t r: (hexValue >> 24) & 255,\n\t g: (hexValue >> 16) & 255,\n\t b: (hexValue >> 8) & 255,\n\t a: hexValue & 255,\n\t hex: '#' + hexCode.slice(0, 6).join('')\n\t }\n\t}\n\n\texports.getOptions = function getOptions (options) {\n\t if (!options) options = {};\n\t if (!options.color) options.color = {};\n\n\t var margin = typeof options.margin === 'undefined' ||\n\t options.margin === null ||\n\t options.margin < 0 ? 4 : options.margin;\n\n\t var width = options.width && options.width >= 21 ? options.width : undefined;\n\t var scale = options.scale || 4;\n\n\t return {\n\t width: width,\n\t scale: width ? 4 : scale,\n\t margin: margin,\n\t color: {\n\t dark: hex2rgba(options.color.dark || '#000000ff'),\n\t light: hex2rgba(options.color.light || '#ffffffff')\n\t },\n\t type: options.type,\n\t rendererOpts: options.rendererOpts || {}\n\t }\n\t};\n\n\texports.getScale = function getScale (qrSize, opts) {\n\t return opts.width && opts.width >= qrSize + opts.margin * 2\n\t ? opts.width / (qrSize + opts.margin * 2)\n\t : opts.scale\n\t};\n\n\texports.getImageWidth = function getImageWidth (qrSize, opts) {\n\t var scale = exports.getScale(qrSize, opts);\n\t return Math.floor((qrSize + opts.margin * 2) * scale)\n\t};\n\n\texports.qrToImageData = function qrToImageData (imgData, qr, opts) {\n\t var size = qr.modules.size;\n\t var data = qr.modules.data;\n\t var scale = exports.getScale(size, opts);\n\t var symbolSize = Math.floor((size + opts.margin * 2) * scale);\n\t var scaledMargin = opts.margin * scale;\n\t var palette = [opts.color.light, opts.color.dark];\n\n\t for (var i = 0; i < symbolSize; i++) {\n\t for (var j = 0; j < symbolSize; j++) {\n\t var posDst = (i * symbolSize + j) * 4;\n\t var pxColor = opts.color.light;\n\n\t if (i >= scaledMargin && j >= scaledMargin &&\n\t i < symbolSize - scaledMargin && j < symbolSize - scaledMargin) {\n\t var iSrc = Math.floor((i - scaledMargin) / scale);\n\t var jSrc = Math.floor((j - scaledMargin) / scale);\n\t pxColor = palette[data[iSrc * size + jSrc] ? 1 : 0];\n\t }\n\n\t imgData[posDst++] = pxColor.r;\n\t imgData[posDst++] = pxColor.g;\n\t imgData[posDst++] = pxColor.b;\n\t imgData[posDst] = pxColor.a;\n\t }\n\t }\n\t};\n\n\t},{}],28:[function(require,module,exports){\n\n\tvar isArray = require('isarray');\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances be augmented?\n\t try {\n\t var arr = new Uint8Array(1);\n\t arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }};\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tvar K_MAX_LENGTH = Buffer.TYPED_ARRAY_SUPPORT\n\t ? 0x7fffffff\n\t : 0x3fffffff;\n\n\tfunction Buffer (arg, offset, length) {\n\t if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n\t return new Buffer(arg, offset, length)\n\t }\n\n\t if (typeof arg === 'number') {\n\t return allocUnsafe(this, arg)\n\t }\n\n\t return from(this, arg, offset, length)\n\t}\n\n\tif (Buffer.TYPED_ARRAY_SUPPORT) {\n\t Buffer.prototype.__proto__ = Uint8Array.prototype;\n\t Buffer.__proto__ = Uint8Array;\n\n\t // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n\t if (typeof Symbol !== 'undefined' && Symbol.species &&\n\t Buffer[Symbol.species] === Buffer) {\n\t Object.defineProperty(Buffer, Symbol.species, {\n\t value: null,\n\t configurable: true,\n\t enumerable: false,\n\t writable: false\n\t });\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction isnan (val) {\n\t return val !== val // eslint-disable-line no-self-compare\n\t}\n\n\tfunction createBuffer (that, length) {\n\t var buf;\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t buf = new Uint8Array(length);\n\t buf.__proto__ = Buffer.prototype;\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t buf = that;\n\t if (buf === null) {\n\t buf = new Buffer(length);\n\t }\n\t buf.length = length;\n\t }\n\n\t return buf\n\t}\n\n\tfunction allocUnsafe (that, size) {\n\t var buf = createBuffer(that, size < 0 ? 0 : checked(size) | 0);\n\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) {\n\t for (var i = 0; i < size; ++i) {\n\t buf[i] = 0;\n\t }\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromString (that, string) {\n\t var length = byteLength(string) | 0;\n\t var buf = createBuffer(that, length);\n\n\t var actual = buf.write(string);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (that, array) {\n\t var length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t var buf = createBuffer(that, length);\n\t for (var i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayBuffer (that, array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\\'offset\\' is out of bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\\'length\\' is out of bounds')\n\t }\n\n\t var buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new Uint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new Uint8Array(array, byteOffset);\n\t } else {\n\t buf = new Uint8Array(array, byteOffset, length);\n\t }\n\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t buf.__proto__ = Buffer.prototype;\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t buf = fromArrayLike(that, buf);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromObject (that, obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t var len = checked(obj.length) | 0;\n\t var buf = createBuffer(that, len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj) {\n\t if ((typeof ArrayBuffer !== 'undefined' &&\n\t obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n\t if (typeof obj.length !== 'number' || isnan(obj.length)) {\n\t return createBuffer(that, 0)\n\t }\n\t return fromArrayLike(that, obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(that, obj.data)\n\t }\n\t }\n\n\t throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t var codePoint;\n\t var length = string.length;\n\t var leadSurrogate = null;\n\t var bytes = [];\n\n\t for (var i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction byteLength (string) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n\t (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t string = '' + string;\n\t }\n\n\t var len = string.length;\n\t if (len === 0) return 0\n\n\t return utf8ToBytes(string).length\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t for (var i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction from (that, value, offset, length) {\n\t if (typeof value === 'number') {\n\t throw new TypeError('\"value\" argument must not be a number')\n\t }\n\n\t if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n\t return fromArrayBuffer(that, value, offset, length)\n\t }\n\n\t if (typeof value === 'string') {\n\t return fromString(that, value)\n\t }\n\n\t return fromObject(that, value)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length])\n\t } else if (isFinite(offset)) {\n\t offset = offset | 0;\n\t if (isFinite(length)) {\n\t length = length | 0;\n\t } else {\n\t length = undefined;\n\t }\n\t }\n\n\t var remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t return utf8Write(this, string, offset, length)\n\t};\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t var len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t var newBuf;\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t newBuf.__proto__ = Buffer.prototype;\n\t } else {\n\t var sliceLen = end - start;\n\t newBuf = new Buffer(sliceLen, undefined);\n\t for (var i = 0; i < sliceLen; ++i) {\n\t newBuf[i] = this[i + start];\n\t }\n\t }\n\n\t return newBuf\n\t};\n\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t var len = end - start;\n\t var i;\n\n\t if (this === target && start < targetStart && targetStart < end) {\n\t // descending copy from end\n\t for (i = len - 1; i >= 0; --i) {\n\t target[i + targetStart] = this[i + start];\n\t }\n\t } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n\t // ascending copy from start\n\t for (i = 0; i < len; ++i) {\n\t target[i + targetStart] = this[i + start];\n\t }\n\t } else {\n\t Uint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, start + len),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\tBuffer.prototype.fill = function fill (val, start, end) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t end = this.length;\n\t }\n\t if (val.length === 1) {\n\t var code = val.charCodeAt(0);\n\t if (code < 256) {\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t var i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t var bytes = Buffer.isBuffer(val)\n\t ? val\n\t : new Buffer(val);\n\t var len = bytes.length;\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return createBuffer(null, 0)\n\t }\n\n\t var i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t var buffer = allocUnsafe(null, length);\n\t var pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t var buf = list[i];\n\t if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\t buf.copy(buffer, pos);\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tBuffer.byteLength = byteLength;\n\n\tBuffer.prototype._isBuffer = true;\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return !!(b != null && b._isBuffer)\n\t};\n\n\tmodule.exports.alloc = function (size) {\n\t var buffer = new Buffer(size);\n\t buffer.fill(0);\n\t return buffer\n\t};\n\n\tmodule.exports.from = function (data) {\n\t return new Buffer(data)\n\t};\n\n\t},{\"isarray\":33}],29:[function(require,module,exports){\n\n\texports.byteLength = byteLength;\n\texports.toByteArray = toByteArray;\n\texports.fromByteArray = fromByteArray;\n\n\tvar lookup = [];\n\tvar revLookup = [];\n\tvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array;\n\n\tvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\tfor (var i = 0, len = code.length; i < len; ++i) {\n\t lookup[i] = code[i];\n\t revLookup[code.charCodeAt(i)] = i;\n\t}\n\n\t// Support decoding URL-safe base64 strings, as Node.js does.\n\t// See: https://en.wikipedia.org/wiki/Base64#URL_applications\n\trevLookup['-'.charCodeAt(0)] = 62;\n\trevLookup['_'.charCodeAt(0)] = 63;\n\n\tfunction getLens (b64) {\n\t var len = b64.length;\n\n\t if (len % 4 > 0) {\n\t throw new Error('Invalid string. Length must be a multiple of 4')\n\t }\n\n\t // Trim off extra bytes after placeholder bytes are found\n\t // See: https://github.com/beatgammit/base64-js/issues/42\n\t var validLen = b64.indexOf('=');\n\t if (validLen === -1) validLen = len;\n\n\t var placeHoldersLen = validLen === len\n\t ? 0\n\t : 4 - (validLen % 4);\n\n\t return [validLen, placeHoldersLen]\n\t}\n\n\t// base64 is 4/3 + up to two characters of the original data\n\tfunction byteLength (b64) {\n\t var lens = getLens(b64);\n\t var validLen = lens[0];\n\t var placeHoldersLen = lens[1];\n\t return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n\t}\n\n\tfunction _byteLength (b64, validLen, placeHoldersLen) {\n\t return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n\t}\n\n\tfunction toByteArray (b64) {\n\t var tmp;\n\t var lens = getLens(b64);\n\t var validLen = lens[0];\n\t var placeHoldersLen = lens[1];\n\n\t var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen));\n\n\t var curByte = 0;\n\n\t // if there are placeholders, only get up to the last complete 4 chars\n\t var len = placeHoldersLen > 0\n\t ? validLen - 4\n\t : validLen;\n\n\t var i;\n\t for (i = 0; i < len; i += 4) {\n\t tmp =\n\t (revLookup[b64.charCodeAt(i)] << 18) |\n\t (revLookup[b64.charCodeAt(i + 1)] << 12) |\n\t (revLookup[b64.charCodeAt(i + 2)] << 6) |\n\t revLookup[b64.charCodeAt(i + 3)];\n\t arr[curByte++] = (tmp >> 16) & 0xFF;\n\t arr[curByte++] = (tmp >> 8) & 0xFF;\n\t arr[curByte++] = tmp & 0xFF;\n\t }\n\n\t if (placeHoldersLen === 2) {\n\t tmp =\n\t (revLookup[b64.charCodeAt(i)] << 2) |\n\t (revLookup[b64.charCodeAt(i + 1)] >> 4);\n\t arr[curByte++] = tmp & 0xFF;\n\t }\n\n\t if (placeHoldersLen === 1) {\n\t tmp =\n\t (revLookup[b64.charCodeAt(i)] << 10) |\n\t (revLookup[b64.charCodeAt(i + 1)] << 4) |\n\t (revLookup[b64.charCodeAt(i + 2)] >> 2);\n\t arr[curByte++] = (tmp >> 8) & 0xFF;\n\t arr[curByte++] = tmp & 0xFF;\n\t }\n\n\t return arr\n\t}\n\n\tfunction tripletToBase64 (num) {\n\t return lookup[num >> 18 & 0x3F] +\n\t lookup[num >> 12 & 0x3F] +\n\t lookup[num >> 6 & 0x3F] +\n\t lookup[num & 0x3F]\n\t}\n\n\tfunction encodeChunk (uint8, start, end) {\n\t var tmp;\n\t var output = [];\n\t for (var i = start; i < end; i += 3) {\n\t tmp =\n\t ((uint8[i] << 16) & 0xFF0000) +\n\t ((uint8[i + 1] << 8) & 0xFF00) +\n\t (uint8[i + 2] & 0xFF);\n\t output.push(tripletToBase64(tmp));\n\t }\n\t return output.join('')\n\t}\n\n\tfunction fromByteArray (uint8) {\n\t var tmp;\n\t var len = uint8.length;\n\t var extraBytes = len % 3; // if we have 1 byte left, pad 2 bytes\n\t var parts = [];\n\t var maxChunkLength = 16383; // must be multiple of 3\n\n\t // go through the array every three bytes, we'll deal with trailing stuff later\n\t for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n\t parts.push(encodeChunk(\n\t uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)\n\t ));\n\t }\n\n\t // pad the end with zeros, but make sure to not forget the extra bytes\n\t if (extraBytes === 1) {\n\t tmp = uint8[len - 1];\n\t parts.push(\n\t lookup[tmp >> 2] +\n\t lookup[(tmp << 4) & 0x3F] +\n\t '=='\n\t );\n\t } else if (extraBytes === 2) {\n\t tmp = (uint8[len - 2] << 8) + uint8[len - 1];\n\t parts.push(\n\t lookup[tmp >> 10] +\n\t lookup[(tmp >> 4) & 0x3F] +\n\t lookup[(tmp << 2) & 0x3F] +\n\t '='\n\t );\n\t }\n\n\t return parts.join('')\n\t}\n\n\t},{}],30:[function(require,module,exports){\n\n\tvar base64 = require('base64-js');\n\tvar ieee754 = require('ieee754');\n\tvar customInspectSymbol =\n\t (typeof Symbol === 'function' && typeof Symbol.for === 'function')\n\t ? Symbol.for('nodejs.util.inspect.custom')\n\t : null;\n\n\texports.Buffer = Buffer;\n\texports.SlowBuffer = SlowBuffer;\n\texports.INSPECT_MAX_BYTES = 50;\n\n\tvar K_MAX_LENGTH = 0x7fffffff;\n\texports.kMaxLength = K_MAX_LENGTH;\n\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Print warning and recommend using `buffer` v4.x which has an Object\n\t * implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * We report that the browser does not support typed arrays if the are not subclassable\n\t * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n\t * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n\t * for __proto__ and has a buggy typed array implementation.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport();\n\n\tif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n\t typeof console.error === 'function') {\n\t console.error(\n\t 'This browser lacks typed array (Uint8Array) support which is required by ' +\n\t '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n\t );\n\t}\n\n\tfunction typedArraySupport () {\n\t // Can typed array instances can be augmented?\n\t try {\n\t var arr = new Uint8Array(1);\n\t var proto = { foo: function () { return 42 } };\n\t Object.setPrototypeOf(proto, Uint8Array.prototype);\n\t Object.setPrototypeOf(arr, proto);\n\t return arr.foo() === 42\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\n\tObject.defineProperty(Buffer.prototype, 'parent', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.buffer\n\t }\n\t});\n\n\tObject.defineProperty(Buffer.prototype, 'offset', {\n\t enumerable: true,\n\t get: function () {\n\t if (!Buffer.isBuffer(this)) return undefined\n\t return this.byteOffset\n\t }\n\t});\n\n\tfunction createBuffer (length) {\n\t if (length > K_MAX_LENGTH) {\n\t throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n\t }\n\t // Return an augmented `Uint8Array` instance\n\t var buf = new Uint8Array(length);\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\t return buf\n\t}\n\n\t/**\n\t * The Buffer constructor returns instances of `Uint8Array` that have their\n\t * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n\t * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n\t * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n\t * returns a single octet.\n\t *\n\t * The `Uint8Array` prototype remains unmodified.\n\t */\n\n\tfunction Buffer (arg, encodingOrOffset, length) {\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t if (typeof encodingOrOffset === 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be of type string. Received type number'\n\t )\n\t }\n\t return allocUnsafe(arg)\n\t }\n\t return from(arg, encodingOrOffset, length)\n\t}\n\n\t// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n\tif (typeof Symbol !== 'undefined' && Symbol.species != null &&\n\t Buffer[Symbol.species] === Buffer) {\n\t Object.defineProperty(Buffer, Symbol.species, {\n\t value: null,\n\t configurable: true,\n\t enumerable: false,\n\t writable: false\n\t });\n\t}\n\n\tBuffer.poolSize = 8192; // not used by this implementation\n\n\tfunction from (value, encodingOrOffset, length) {\n\t if (typeof value === 'string') {\n\t return fromString(value, encodingOrOffset)\n\t }\n\n\t if (ArrayBuffer.isView(value)) {\n\t return fromArrayLike(value)\n\t }\n\n\t if (value == null) {\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t }\n\n\t if (isInstance(value, ArrayBuffer) ||\n\t (value && isInstance(value.buffer, ArrayBuffer))) {\n\t return fromArrayBuffer(value, encodingOrOffset, length)\n\t }\n\n\t if (typeof value === 'number') {\n\t throw new TypeError(\n\t 'The \"value\" argument must not be of type number. Received type number'\n\t )\n\t }\n\n\t var valueOf = value.valueOf && value.valueOf();\n\t if (valueOf != null && valueOf !== value) {\n\t return Buffer.from(valueOf, encodingOrOffset, length)\n\t }\n\n\t var b = fromObject(value);\n\t if (b) return b\n\n\t if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n\t typeof value[Symbol.toPrimitive] === 'function') {\n\t return Buffer.from(\n\t value[Symbol.toPrimitive]('string'), encodingOrOffset, length\n\t )\n\t }\n\n\t throw new TypeError(\n\t 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n\t 'or Array-like Object. Received type ' + (typeof value)\n\t )\n\t}\n\n\t/**\n\t * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n\t * if value is a number.\n\t * Buffer.from(str[, encoding])\n\t * Buffer.from(array)\n\t * Buffer.from(buffer)\n\t * Buffer.from(arrayBuffer[, byteOffset[, length]])\n\t **/\n\tBuffer.from = function (value, encodingOrOffset, length) {\n\t return from(value, encodingOrOffset, length)\n\t};\n\n\t// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n\t// https://github.com/feross/buffer/pull/148\n\tObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype);\n\tObject.setPrototypeOf(Buffer, Uint8Array);\n\n\tfunction assertSize (size) {\n\t if (typeof size !== 'number') {\n\t throw new TypeError('\"size\" argument must be of type number')\n\t } else if (size < 0) {\n\t throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n\t }\n\t}\n\n\tfunction alloc (size, fill, encoding) {\n\t assertSize(size);\n\t if (size <= 0) {\n\t return createBuffer(size)\n\t }\n\t if (fill !== undefined) {\n\t // Only pay attention to encoding if it's a string. This\n\t // prevents accidentally sending in a number that would\n\t // be interpretted as a start offset.\n\t return typeof encoding === 'string'\n\t ? createBuffer(size).fill(fill, encoding)\n\t : createBuffer(size).fill(fill)\n\t }\n\t return createBuffer(size)\n\t}\n\n\t/**\n\t * Creates a new filled Buffer instance.\n\t * alloc(size[, fill[, encoding]])\n\t **/\n\tBuffer.alloc = function (size, fill, encoding) {\n\t return alloc(size, fill, encoding)\n\t};\n\n\tfunction allocUnsafe (size) {\n\t assertSize(size);\n\t return createBuffer(size < 0 ? 0 : checked(size) | 0)\n\t}\n\n\t/**\n\t * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n\t * */\n\tBuffer.allocUnsafe = function (size) {\n\t return allocUnsafe(size)\n\t};\n\t/**\n\t * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n\t */\n\tBuffer.allocUnsafeSlow = function (size) {\n\t return allocUnsafe(size)\n\t};\n\n\tfunction fromString (string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') {\n\t encoding = 'utf8';\n\t }\n\n\t if (!Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\n\t var length = byteLength(string, encoding) | 0;\n\t var buf = createBuffer(length);\n\n\t var actual = buf.write(string, encoding);\n\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t buf = buf.slice(0, actual);\n\t }\n\n\t return buf\n\t}\n\n\tfunction fromArrayLike (array) {\n\t var length = array.length < 0 ? 0 : checked(array.length) | 0;\n\t var buf = createBuffer(length);\n\t for (var i = 0; i < length; i += 1) {\n\t buf[i] = array[i] & 255;\n\t }\n\t return buf\n\t}\n\n\tfunction fromArrayBuffer (array, byteOffset, length) {\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\"offset\" is outside of buffer bounds')\n\t }\n\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\"length\" is outside of buffer bounds')\n\t }\n\n\t var buf;\n\t if (byteOffset === undefined && length === undefined) {\n\t buf = new Uint8Array(array);\n\t } else if (length === undefined) {\n\t buf = new Uint8Array(array, byteOffset);\n\t } else {\n\t buf = new Uint8Array(array, byteOffset, length);\n\t }\n\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(buf, Buffer.prototype);\n\n\t return buf\n\t}\n\n\tfunction fromObject (obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t var len = checked(obj.length) | 0;\n\t var buf = createBuffer(len);\n\n\t if (buf.length === 0) {\n\t return buf\n\t }\n\n\t obj.copy(buf, 0, 0, len);\n\t return buf\n\t }\n\n\t if (obj.length !== undefined) {\n\t if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n\t return createBuffer(0)\n\t }\n\t return fromArrayLike(obj)\n\t }\n\n\t if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n\t return fromArrayLike(obj.data)\n\t }\n\t}\n\n\tfunction checked (length) {\n\t // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= K_MAX_LENGTH) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\n\tfunction SlowBuffer (length) {\n\t if (+length != length) { // eslint-disable-line eqeqeq\n\t length = 0;\n\t }\n\t return Buffer.alloc(+length)\n\t}\n\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return b != null && b._isBuffer === true &&\n\t b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n\t};\n\n\tBuffer.compare = function compare (a, b) {\n\t if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength);\n\t if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength);\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError(\n\t 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n\t )\n\t }\n\n\t if (a === b) return 0\n\n\t var x = a.length;\n\t var y = b.length;\n\n\t for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n\t if (a[i] !== b[i]) {\n\t x = a[i];\n\t y = b[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t case 'base64':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t};\n\n\tBuffer.concat = function concat (list, length) {\n\t if (!Array.isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\n\t if (list.length === 0) {\n\t return Buffer.alloc(0)\n\t }\n\n\t var i;\n\t if (length === undefined) {\n\t length = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length;\n\t }\n\t }\n\n\t var buffer = Buffer.allocUnsafe(length);\n\t var pos = 0;\n\t for (i = 0; i < list.length; ++i) {\n\t var buf = list[i];\n\t if (isInstance(buf, Uint8Array)) {\n\t buf = Buffer.from(buf);\n\t }\n\t if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\t buf.copy(buffer, pos);\n\t pos += buf.length;\n\t }\n\t return buffer\n\t};\n\n\tfunction byteLength (string, encoding) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t throw new TypeError(\n\t 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n\t 'Received type ' + typeof string\n\t )\n\t }\n\n\t var len = string.length;\n\t var mustMatch = (arguments.length > 2 && arguments[2] === true);\n\t if (!mustMatch && len === 0) return 0\n\n\t // Use a for loop to avoid recursion\n\t var loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) {\n\t return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n\t }\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength;\n\n\tfunction slowToString (encoding, start, end) {\n\t var loweredCase = false;\n\n\t // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n\t // property of a typed array.\n\n\t // This behaves neither like String nor Uint8Array in that we set start/end\n\t // to their upper/lower bounds if the value passed is out of range.\n\t // undefined is handled specially as per ECMA-262 6th Edition,\n\t // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n\t if (start === undefined || start < 0) {\n\t start = 0;\n\t }\n\t // Return early if start > this.length. Done here to prevent potential uint32\n\t // coercion fail below.\n\t if (start > this.length) {\n\t return ''\n\t }\n\n\t if (end === undefined || end > this.length) {\n\t end = this.length;\n\t }\n\n\t if (end <= 0) {\n\t return ''\n\t }\n\n\t // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n\t end >>>= 0;\n\t start >>>= 0;\n\n\t if (end <= start) {\n\t return ''\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Slice(this, start, end)\n\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t}\n\n\t// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n\t// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n\t// reliably in a browserify context because there could be multiple different\n\t// copies of the 'buffer' package in use. This method works even for Buffer\n\t// instances that were created from another copy of the `buffer` package.\n\t// See: https://github.com/feross/buffer/issues/154\n\tBuffer.prototype._isBuffer = true;\n\n\tfunction swap (b, n, m) {\n\t var i = b[n];\n\t b[n] = b[m];\n\t b[m] = i;\n\t}\n\n\tBuffer.prototype.swap16 = function swap16 () {\n\t var len = this.length;\n\t if (len % 2 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 16-bits')\n\t }\n\t for (var i = 0; i < len; i += 2) {\n\t swap(this, i, i + 1);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap32 = function swap32 () {\n\t var len = this.length;\n\t if (len % 4 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 32-bits')\n\t }\n\t for (var i = 0; i < len; i += 4) {\n\t swap(this, i, i + 3);\n\t swap(this, i + 1, i + 2);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.swap64 = function swap64 () {\n\t var len = this.length;\n\t if (len % 8 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 64-bits')\n\t }\n\t for (var i = 0; i < len; i += 8) {\n\t swap(this, i, i + 7);\n\t swap(this, i + 1, i + 6);\n\t swap(this, i + 2, i + 5);\n\t swap(this, i + 3, i + 4);\n\t }\n\t return this\n\t};\n\n\tBuffer.prototype.toString = function toString () {\n\t var length = this.length;\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t};\n\n\tBuffer.prototype.toLocaleString = Buffer.prototype.toString;\n\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t};\n\n\tBuffer.prototype.inspect = function inspect () {\n\t var str = '';\n\t var max = exports.INSPECT_MAX_BYTES;\n\t str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim();\n\t if (this.length > max) str += ' ... ';\n\t return '<Buffer ' + str + '>'\n\t};\n\tif (customInspectSymbol) {\n\t Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect;\n\t}\n\n\tBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n\t if (isInstance(target, Uint8Array)) {\n\t target = Buffer.from(target, target.offset, target.byteLength);\n\t }\n\t if (!Buffer.isBuffer(target)) {\n\t throw new TypeError(\n\t 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n\t 'Received type ' + (typeof target)\n\t )\n\t }\n\n\t if (start === undefined) {\n\t start = 0;\n\t }\n\t if (end === undefined) {\n\t end = target ? target.length : 0;\n\t }\n\t if (thisStart === undefined) {\n\t thisStart = 0;\n\t }\n\t if (thisEnd === undefined) {\n\t thisEnd = this.length;\n\t }\n\n\t if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n\t throw new RangeError('out of range index')\n\t }\n\n\t if (thisStart >= thisEnd && start >= end) {\n\t return 0\n\t }\n\t if (thisStart >= thisEnd) {\n\t return -1\n\t }\n\t if (start >= end) {\n\t return 1\n\t }\n\n\t start >>>= 0;\n\t end >>>= 0;\n\t thisStart >>>= 0;\n\t thisEnd >>>= 0;\n\n\t if (this === target) return 0\n\n\t var x = thisEnd - thisStart;\n\t var y = end - start;\n\t var len = Math.min(x, y);\n\n\t var thisCopy = this.slice(thisStart, thisEnd);\n\t var targetCopy = target.slice(start, end);\n\n\t for (var i = 0; i < len; ++i) {\n\t if (thisCopy[i] !== targetCopy[i]) {\n\t x = thisCopy[i];\n\t y = targetCopy[i];\n\t break\n\t }\n\t }\n\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t};\n\n\t// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n\t// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n\t//\n\t// Arguments:\n\t// - buffer - a Buffer to search\n\t// - val - a string, Buffer, or number\n\t// - byteOffset - an index into `buffer`; will be clamped to an int32\n\t// - encoding - an optional encoding, relevant is val is a string\n\t// - dir - true for indexOf, false for lastIndexOf\n\tfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n\t // Empty buffer means no match\n\t if (buffer.length === 0) return -1\n\n\t // Normalize byteOffset\n\t if (typeof byteOffset === 'string') {\n\t encoding = byteOffset;\n\t byteOffset = 0;\n\t } else if (byteOffset > 0x7fffffff) {\n\t byteOffset = 0x7fffffff;\n\t } else if (byteOffset < -0x80000000) {\n\t byteOffset = -0x80000000;\n\t }\n\t byteOffset = +byteOffset; // Coerce to Number.\n\t if (numberIsNaN(byteOffset)) {\n\t // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n\t byteOffset = dir ? 0 : (buffer.length - 1);\n\t }\n\n\t // Normalize byteOffset: negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = buffer.length + byteOffset;\n\t if (byteOffset >= buffer.length) {\n\t if (dir) return -1\n\t else byteOffset = buffer.length - 1;\n\t } else if (byteOffset < 0) {\n\t if (dir) byteOffset = 0;\n\t else return -1\n\t }\n\n\t // Normalize val\n\t if (typeof val === 'string') {\n\t val = Buffer.from(val, encoding);\n\t }\n\n\t // Finally, search either indexOf (if dir is true) or lastIndexOf\n\t if (Buffer.isBuffer(val)) {\n\t // Special case: looking for empty string/buffer always fails\n\t if (val.length === 0) {\n\t return -1\n\t }\n\t return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n\t } else if (typeof val === 'number') {\n\t val = val & 0xFF; // Search for a byte value [0-255]\n\t if (typeof Uint8Array.prototype.indexOf === 'function') {\n\t if (dir) {\n\t return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n\t } else {\n\t return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n\t }\n\t }\n\t return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n\t }\n\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\n\tfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n\t var indexSize = 1;\n\t var arrLength = arr.length;\n\t var valLength = val.length;\n\n\t if (encoding !== undefined) {\n\t encoding = String(encoding).toLowerCase();\n\t if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n\t encoding === 'utf16le' || encoding === 'utf-16le') {\n\t if (arr.length < 2 || val.length < 2) {\n\t return -1\n\t }\n\t indexSize = 2;\n\t arrLength /= 2;\n\t valLength /= 2;\n\t byteOffset /= 2;\n\t }\n\t }\n\n\t function read (buf, i) {\n\t if (indexSize === 1) {\n\t return buf[i]\n\t } else {\n\t return buf.readUInt16BE(i * indexSize)\n\t }\n\t }\n\n\t var i;\n\t if (dir) {\n\t var foundIndex = -1;\n\t for (i = byteOffset; i < arrLength; i++) {\n\t if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n\t if (foundIndex === -1) foundIndex = i;\n\t if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n\t } else {\n\t if (foundIndex !== -1) i -= i - foundIndex;\n\t foundIndex = -1;\n\t }\n\t }\n\t } else {\n\t if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength;\n\t for (i = byteOffset; i >= 0; i--) {\n\t var found = true;\n\t for (var j = 0; j < valLength; j++) {\n\t if (read(arr, i + j) !== read(val, j)) {\n\t found = false;\n\t break\n\t }\n\t }\n\t if (found) return i\n\t }\n\t }\n\n\t return -1\n\t}\n\n\tBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n\t return this.indexOf(val, byteOffset, encoding) !== -1\n\t};\n\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n\t};\n\n\tBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n\t};\n\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0;\n\t var remaining = buf.length - offset;\n\t if (!length) {\n\t length = remaining;\n\t } else {\n\t length = Number(length);\n\t if (length > remaining) {\n\t length = remaining;\n\t }\n\t }\n\n\t var strLen = string.length;\n\n\t if (length > strLen / 2) {\n\t length = strLen / 2;\n\t }\n\t for (var i = 0; i < length; ++i) {\n\t var parsed = parseInt(string.substr(i * 2, 2), 16);\n\t if (numberIsNaN(parsed)) return i\n\t buf[offset + i] = parsed;\n\t }\n\t return i\n\t}\n\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\n\tfunction latin1Write (buf, string, offset, length) {\n\t return asciiWrite(buf, string, offset, length)\n\t}\n\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8';\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset;\n\t length = this.length;\n\t offset = 0;\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset >>> 0;\n\t if (isFinite(length)) {\n\t length = length >>> 0;\n\t if (encoding === undefined) encoding = 'utf8';\n\t } else {\n\t encoding = length;\n\t length = undefined;\n\t }\n\t } else {\n\t throw new Error(\n\t 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n\t )\n\t }\n\n\t var remaining = this.length - offset;\n\t if (length === undefined || length > remaining) length = remaining;\n\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\n\t if (!encoding) encoding = 'utf8';\n\n\t var loweredCase = false;\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\n\t case 'ascii':\n\t return asciiWrite(this, string, offset, length)\n\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Write(this, string, offset, length)\n\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase();\n\t loweredCase = true;\n\t }\n\t }\n\t};\n\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t};\n\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end);\n\t var res = [];\n\n\t var i = start;\n\t while (i < end) {\n\t var firstByte = buf[i];\n\t var codePoint = null;\n\t var bytesPerSequence = (firstByte > 0xEF) ? 4\n\t : (firstByte > 0xDF) ? 3\n\t : (firstByte > 0xBF) ? 2\n\t : 1;\n\n\t if (i + bytesPerSequence <= end) {\n\t var secondByte, thirdByte, fourthByte, tempCodePoint;\n\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte;\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1];\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F);\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F);\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1];\n\t thirdByte = buf[i + 2];\n\t fourthByte = buf[i + 3];\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F);\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint;\n\t }\n\t }\n\t }\n\t }\n\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD;\n\t bytesPerSequence = 1;\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000;\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800);\n\t codePoint = 0xDC00 | codePoint & 0x3FF;\n\t }\n\n\t res.push(codePoint);\n\t i += bytesPerSequence;\n\t }\n\n\t return decodeCodePointsArray(res)\n\t}\n\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tvar MAX_ARGUMENTS_LENGTH = 0x1000;\n\n\tfunction decodeCodePointsArray (codePoints) {\n\t var len = codePoints.length;\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t var res = '';\n\t var i = 0;\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t );\n\t }\n\t return res\n\t}\n\n\tfunction asciiSlice (buf, start, end) {\n\t var ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (var i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i] & 0x7F);\n\t }\n\t return ret\n\t}\n\n\tfunction latin1Slice (buf, start, end) {\n\t var ret = '';\n\t end = Math.min(buf.length, end);\n\n\t for (var i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i]);\n\t }\n\t return ret\n\t}\n\n\tfunction hexSlice (buf, start, end) {\n\t var len = buf.length;\n\n\t if (!start || start < 0) start = 0;\n\t if (!end || end < 0 || end > len) end = len;\n\n\t var out = '';\n\t for (var i = start; i < end; ++i) {\n\t out += hexSliceLookupTable[buf[i]];\n\t }\n\t return out\n\t}\n\n\tfunction utf16leSlice (buf, start, end) {\n\t var bytes = buf.slice(start, end);\n\t var res = '';\n\t for (var i = 0; i < bytes.length; i += 2) {\n\t res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256));\n\t }\n\t return res\n\t}\n\n\tBuffer.prototype.slice = function slice (start, end) {\n\t var len = this.length;\n\t start = ~~start;\n\t end = end === undefined ? len : ~~end;\n\n\t if (start < 0) {\n\t start += len;\n\t if (start < 0) start = 0;\n\t } else if (start > len) {\n\t start = len;\n\t }\n\n\t if (end < 0) {\n\t end += len;\n\t if (end < 0) end = 0;\n\t } else if (end > len) {\n\t end = len;\n\t }\n\n\t if (end < start) end = start;\n\n\t var newBuf = this.subarray(start, end);\n\t // Return an augmented `Uint8Array` instance\n\t Object.setPrototypeOf(newBuf, Buffer.prototype);\n\n\t return newBuf\n\t};\n\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t var val = this[offset];\n\t var mul = 1;\n\t var i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length);\n\t }\n\n\t var val = this[offset + --byteLength];\n\t var mul = 1;\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul;\n\t }\n\n\t return val\n\t};\n\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t return this[offset]\n\t};\n\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return this[offset] | (this[offset + 1] << 8)\n\t};\n\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t return (this[offset] << 8) | this[offset + 1]\n\t};\n\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t};\n\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t};\n\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t var val = this[offset];\n\t var mul = 1;\n\t var i = 0;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) checkOffset(offset, byteLength, this.length);\n\n\t var i = byteLength;\n\t var mul = 1;\n\t var val = this[offset + --i];\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul;\n\t }\n\t mul *= 0x80;\n\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n\n\t return val\n\t};\n\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 1, this.length);\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t};\n\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t var val = this[offset] | (this[offset + 1] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 2, this.length);\n\t var val = this[offset + 1] | (this[offset] << 8);\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t};\n\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t};\n\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t};\n\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754.read(this, offset, true, 23, 4)\n\t};\n\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 4, this.length);\n\t return ieee754.read(this, offset, false, 23, 4)\n\t};\n\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754.read(this, offset, true, 52, 8)\n\t};\n\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t offset = offset >>> 0;\n\t if (!noAssert) checkOffset(offset, 8, this.length);\n\t return ieee754.read(this, offset, false, 52, 8)\n\t};\n\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t}\n\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t var maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t var mul = 1;\n\t var i = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t byteLength = byteLength >>> 0;\n\t if (!noAssert) {\n\t var maxBytes = Math.pow(2, 8 * byteLength) - 1;\n\t checkInt(this, value, offset, byteLength, maxBytes, 0);\n\t }\n\n\t var i = byteLength - 1;\n\t var mul = 1;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0);\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset + 3] = (value >>> 24);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0);\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t var limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t var i = 0;\n\t var mul = 1;\n\t var sub = 0;\n\t this[offset] = value & 0xFF;\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t var limit = Math.pow(2, (8 * byteLength) - 1);\n\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit);\n\t }\n\n\t var i = byteLength - 1;\n\t var mul = 1;\n\t var sub = 0;\n\t this[offset + i] = value & 0xFF;\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n\t sub = 1;\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF;\n\t }\n\n\t return offset + byteLength\n\t};\n\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80);\n\t if (value < 0) value = 0xff + value + 1;\n\t this[offset] = (value & 0xff);\n\t return offset + 1\n\t};\n\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000);\n\t this[offset] = (value >>> 8);\n\t this[offset + 1] = (value & 0xff);\n\t return offset + 2\n\t};\n\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t this[offset] = (value & 0xff);\n\t this[offset + 1] = (value >>> 8);\n\t this[offset + 2] = (value >>> 16);\n\t this[offset + 3] = (value >>> 24);\n\t return offset + 4\n\t};\n\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000);\n\t if (value < 0) value = 0xffffffff + value + 1;\n\t this[offset] = (value >>> 24);\n\t this[offset + 1] = (value >>> 16);\n\t this[offset + 2] = (value >>> 8);\n\t this[offset + 3] = (value & 0xff);\n\t return offset + 4\n\t};\n\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t if (offset < 0) throw new RangeError('Index out of range')\n\t}\n\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4);\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 23, 4);\n\t return offset + 4\n\t}\n\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t};\n\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t value = +value;\n\t offset = offset >>> 0;\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8);\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 52, 8);\n\t return offset + 8\n\t}\n\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t};\n\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t};\n\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n\t if (!start) start = 0;\n\t if (!end && end !== 0) end = this.length;\n\t if (targetStart >= target.length) targetStart = target.length;\n\t if (!targetStart) targetStart = 0;\n\t if (end > 0 && end < start) end = start;\n\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n\t // Are we oob?\n\t if (end > this.length) end = this.length;\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start;\n\t }\n\n\t var len = end - start;\n\n\t if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n\t // Use built-in when available, missing from IE11\n\t this.copyWithin(targetStart, start, end);\n\t } else if (this === target && start < targetStart && targetStart < end) {\n\t // descending copy from end\n\t for (var i = len - 1; i >= 0; --i) {\n\t target[i + targetStart] = this[i + start];\n\t }\n\t } else {\n\t Uint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, end),\n\t targetStart\n\t );\n\t }\n\n\t return len\n\t};\n\n\t// Usage:\n\t// buffer.fill(number[, offset[, end]])\n\t// buffer.fill(buffer[, offset[, end]])\n\t// buffer.fill(string[, offset[, end]][, encoding])\n\tBuffer.prototype.fill = function fill (val, start, end, encoding) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t encoding = start;\n\t start = 0;\n\t end = this.length;\n\t } else if (typeof end === 'string') {\n\t encoding = end;\n\t end = this.length;\n\t }\n\t if (encoding !== undefined && typeof encoding !== 'string') {\n\t throw new TypeError('encoding must be a string')\n\t }\n\t if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\t if (val.length === 1) {\n\t var code = val.charCodeAt(0);\n\t if ((encoding === 'utf8' && code < 128) ||\n\t encoding === 'latin1') {\n\t // Fast path: If `val` fits into a single byte, use that numeric value.\n\t val = code;\n\t }\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255;\n\t } else if (typeof val === 'boolean') {\n\t val = Number(val);\n\t }\n\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\n\t if (end <= start) {\n\t return this\n\t }\n\n\t start = start >>> 0;\n\t end = end === undefined ? this.length : end >>> 0;\n\n\t if (!val) val = 0;\n\n\t var i;\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val;\n\t }\n\t } else {\n\t var bytes = Buffer.isBuffer(val)\n\t ? val\n\t : Buffer.from(val, encoding);\n\t var len = bytes.length;\n\t if (len === 0) {\n\t throw new TypeError('The value \"' + val +\n\t '\" is invalid for argument \"value\"')\n\t }\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len];\n\t }\n\t }\n\n\t return this\n\t};\n\n\t// HELPER FUNCTIONS\n\t// ================\n\n\tvar INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\n\n\tfunction base64clean (str) {\n\t // Node takes equal signs as end of the Base64 encoding\n\t str = str.split('=')[0];\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = str.trim().replace(INVALID_BASE64_RE, '');\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '=';\n\t }\n\t return str\n\t}\n\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity;\n\t var codePoint;\n\t var length = string.length;\n\t var leadSurrogate = null;\n\t var bytes = [];\n\n\t for (var i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i);\n\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t continue\n\t }\n\n\t // valid lead\n\t leadSurrogate = codePoint;\n\n\t continue\n\t }\n\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t leadSurrogate = codePoint;\n\t continue\n\t }\n\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n\t }\n\n\t leadSurrogate = null;\n\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint);\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t );\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\n\t return bytes\n\t}\n\n\tfunction asciiToBytes (str) {\n\t var byteArray = [];\n\t for (var i = 0; i < str.length; ++i) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF);\n\t }\n\t return byteArray\n\t}\n\n\tfunction utf16leToBytes (str, units) {\n\t var c, hi, lo;\n\t var byteArray = [];\n\t for (var i = 0; i < str.length; ++i) {\n\t if ((units -= 2) < 0) break\n\n\t c = str.charCodeAt(i);\n\t hi = c >> 8;\n\t lo = c % 256;\n\t byteArray.push(lo);\n\t byteArray.push(hi);\n\t }\n\n\t return byteArray\n\t}\n\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\n\tfunction blitBuffer (src, dst, offset, length) {\n\t for (var i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i];\n\t }\n\t return i\n\t}\n\n\t// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n\t// the `instanceof` check but they should be treated as of that type.\n\t// See: https://github.com/feross/buffer/issues/166\n\tfunction isInstance (obj, type) {\n\t return obj instanceof type ||\n\t (obj != null && obj.constructor != null && obj.constructor.name != null &&\n\t obj.constructor.name === type.name)\n\t}\n\tfunction numberIsNaN (obj) {\n\t // For IE11 support\n\t return obj !== obj // eslint-disable-line no-self-compare\n\t}\n\n\t// Create lookup table for `toString('hex')`\n\t// See: https://github.com/feross/buffer/issues/219\n\tvar hexSliceLookupTable = (function () {\n\t var alphabet = '0123456789abcdef';\n\t var table = new Array(256);\n\t for (var i = 0; i < 16; ++i) {\n\t var i16 = i * 16;\n\t for (var j = 0; j < 16; ++j) {\n\t table[i16 + j] = alphabet[i] + alphabet[j];\n\t }\n\t }\n\t return table\n\t})();\n\n\t},{\"base64-js\":29,\"ieee754\":32}],31:[function(require,module,exports){\n\n\t/******************************************************************************\n\t * Created 2008-08-19.\n\t *\n\t * Dijkstra path-finding functions. Adapted from the Dijkstar Python project.\n\t *\n\t * Copyright (C) 2008\n\t * Wyatt Baldwin <self@wyattbaldwin.com>\n\t * All rights reserved\n\t *\n\t * Licensed under the MIT license.\n\t *\n\t * http://www.opensource.org/licenses/mit-license.php\n\t *\n\t * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n\t * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n\t * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n\t * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n\t * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n\t * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n\t * THE SOFTWARE.\n\t *****************************************************************************/\n\tvar dijkstra = {\n\t single_source_shortest_paths: function(graph, s, d) {\n\t // Predecessor map for each node that has been encountered.\n\t // node ID => predecessor node ID\n\t var predecessors = {};\n\n\t // Costs of shortest paths from s to all nodes encountered.\n\t // node ID => cost\n\t var costs = {};\n\t costs[s] = 0;\n\n\t // Costs of shortest paths from s to all nodes encountered; differs from\n\t // `costs` in that it provides easy access to the node that currently has\n\t // the known shortest path from s.\n\t // XXX: Do we actually need both `costs` and `open`?\n\t var open = dijkstra.PriorityQueue.make();\n\t open.push(s, 0);\n\n\t var closest,\n\t u, v,\n\t cost_of_s_to_u,\n\t adjacent_nodes,\n\t cost_of_e,\n\t cost_of_s_to_u_plus_cost_of_e,\n\t cost_of_s_to_v,\n\t first_visit;\n\t while (!open.empty()) {\n\t // In the nodes remaining in graph that have a known cost from s,\n\t // find the node, u, that currently has the shortest path from s.\n\t closest = open.pop();\n\t u = closest.value;\n\t cost_of_s_to_u = closest.cost;\n\n\t // Get nodes adjacent to u...\n\t adjacent_nodes = graph[u] || {};\n\n\t // ...and explore the edges that connect u to those nodes, updating\n\t // the cost of the shortest paths to any or all of those nodes as\n\t // necessary. v is the node across the current edge from u.\n\t for (v in adjacent_nodes) {\n\t if (adjacent_nodes.hasOwnProperty(v)) {\n\t // Get the cost of the edge running from u to v.\n\t cost_of_e = adjacent_nodes[v];\n\n\t // Cost of s to u plus the cost of u to v across e--this is *a*\n\t // cost from s to v that may or may not be less than the current\n\t // known cost to v.\n\t cost_of_s_to_u_plus_cost_of_e = cost_of_s_to_u + cost_of_e;\n\n\t // If we haven't visited v yet OR if the current known cost from s to\n\t // v is greater than the new cost we just found (cost of s to u plus\n\t // cost of u to v across e), update v's cost in the cost list and\n\t // update v's predecessor in the predecessor list (it's now u).\n\t cost_of_s_to_v = costs[v];\n\t first_visit = (typeof costs[v] === 'undefined');\n\t if (first_visit || cost_of_s_to_v > cost_of_s_to_u_plus_cost_of_e) {\n\t costs[v] = cost_of_s_to_u_plus_cost_of_e;\n\t open.push(v, cost_of_s_to_u_plus_cost_of_e);\n\t predecessors[v] = u;\n\t }\n\t }\n\t }\n\t }\n\n\t if (typeof d !== 'undefined' && typeof costs[d] === 'undefined') {\n\t var msg = ['Could not find a path from ', s, ' to ', d, '.'].join('');\n\t throw new Error(msg);\n\t }\n\n\t return predecessors;\n\t },\n\n\t extract_shortest_path_from_predecessor_list: function(predecessors, d) {\n\t var nodes = [];\n\t var u = d;\n\t var predecessor;\n\t while (u) {\n\t nodes.push(u);\n\t predecessor = predecessors[u];\n\t u = predecessors[u];\n\t }\n\t nodes.reverse();\n\t return nodes;\n\t },\n\n\t find_path: function(graph, s, d) {\n\t var predecessors = dijkstra.single_source_shortest_paths(graph, s, d);\n\t return dijkstra.extract_shortest_path_from_predecessor_list(\n\t predecessors, d);\n\t },\n\n\t /**\n\t * A very naive priority queue implementation.\n\t */\n\t PriorityQueue: {\n\t make: function (opts) {\n\t var T = dijkstra.PriorityQueue,\n\t t = {},\n\t key;\n\t opts = opts || {};\n\t for (key in T) {\n\t if (T.hasOwnProperty(key)) {\n\t t[key] = T[key];\n\t }\n\t }\n\t t.queue = [];\n\t t.sorter = opts.sorter || T.default_sorter;\n\t return t;\n\t },\n\n\t default_sorter: function (a, b) {\n\t return a.cost - b.cost;\n\t },\n\n\t /**\n\t * Add a new item to the queue and ensure the highest priority element\n\t * is at the front of the queue.\n\t */\n\t push: function (value, cost) {\n\t var item = {value: value, cost: cost};\n\t this.queue.push(item);\n\t this.queue.sort(this.sorter);\n\t },\n\n\t /**\n\t * Return the highest priority element in the queue.\n\t */\n\t pop: function () {\n\t return this.queue.shift();\n\t },\n\n\t empty: function () {\n\t return this.queue.length === 0;\n\t }\n\t }\n\t};\n\n\n\t// node.js module exports\n\tif (typeof module !== 'undefined') {\n\t module.exports = dijkstra;\n\t}\n\n\t},{}],32:[function(require,module,exports){\n\texports.read = function (buffer, offset, isLE, mLen, nBytes) {\n\t var e, m;\n\t var eLen = (nBytes * 8) - mLen - 1;\n\t var eMax = (1 << eLen) - 1;\n\t var eBias = eMax >> 1;\n\t var nBits = -7;\n\t var i = isLE ? (nBytes - 1) : 0;\n\t var d = isLE ? -1 : 1;\n\t var s = buffer[offset + i];\n\n\t i += d;\n\n\t e = s & ((1 << (-nBits)) - 1);\n\t s >>= (-nBits);\n\t nBits += eLen;\n\t for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n\t m = e & ((1 << (-nBits)) - 1);\n\t e >>= (-nBits);\n\t nBits += mLen;\n\t for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n\t if (e === 0) {\n\t e = 1 - eBias;\n\t } else if (e === eMax) {\n\t return m ? NaN : ((s ? -1 : 1) * Infinity)\n\t } else {\n\t m = m + Math.pow(2, mLen);\n\t e = e - eBias;\n\t }\n\t return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n\t};\n\n\texports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n\t var e, m, c;\n\t var eLen = (nBytes * 8) - mLen - 1;\n\t var eMax = (1 << eLen) - 1;\n\t var eBias = eMax >> 1;\n\t var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0);\n\t var i = isLE ? 0 : (nBytes - 1);\n\t var d = isLE ? 1 : -1;\n\t var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0;\n\n\t value = Math.abs(value);\n\n\t if (isNaN(value) || value === Infinity) {\n\t m = isNaN(value) ? 1 : 0;\n\t e = eMax;\n\t } else {\n\t e = Math.floor(Math.log(value) / Math.LN2);\n\t if (value * (c = Math.pow(2, -e)) < 1) {\n\t e--;\n\t c *= 2;\n\t }\n\t if (e + eBias >= 1) {\n\t value += rt / c;\n\t } else {\n\t value += rt * Math.pow(2, 1 - eBias);\n\t }\n\t if (value * c >= 2) {\n\t e++;\n\t c /= 2;\n\t }\n\n\t if (e + eBias >= eMax) {\n\t m = 0;\n\t e = eMax;\n\t } else if (e + eBias >= 1) {\n\t m = ((value * c) - 1) * Math.pow(2, mLen);\n\t e = e + eBias;\n\t } else {\n\t m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\n\t e = 0;\n\t }\n\t }\n\n\t for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n\t e = (e << mLen) | m;\n\t eLen += mLen;\n\t for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n\t buffer[offset + i - d] |= s * 128;\n\t};\n\n\t},{}],33:[function(require,module,exports){\n\tvar toString = {}.toString;\n\n\tmodule.exports = Array.isArray || function (arr) {\n\t return toString.call(arr) == '[object Array]';\n\t};\n\n\t},{}]},{},[24])(24)\n\t});\n\n\n\t});\n\n\tvar index = {\n\t name: 'qrcode',\n\t props: {\n\t /**\n\t * The value of the QR code.\n\t */\n\t value: null,\n\n\t /**\n\t * The options for the QR code generator.\n\t * {@link https://github.com/soldair/node-qrcode#qr-code-options}\n\t */\n\t options: Object,\n\n\t /**\n\t * The tag name of the component's root element.\n\t */\n\t tag: {\n\t type: String,\n\t default: 'canvas'\n\t }\n\t },\n\t render: function render(createElement) {\n\t return createElement(this.tag, this.$slots.default);\n\t },\n\t watch: {\n\t $props: {\n\t deep: true,\n\t immediate: true,\n\n\t /**\n\t * Update the QR code when props changed.\n\t */\n\t handler: function handler() {\n\t if (this.$el) {\n\t this.generate();\n\t }\n\t }\n\t }\n\t },\n\t methods: {\n\t /**\n\t * Generate QR code.\n\t */\n\t generate: function generate() {\n\t var _this = this;\n\n\t var options = this.options,\n\t tag = this.tag;\n\t var value = String(this.value);\n\n\t if (tag === 'canvas') {\n\t qrcode.toCanvas(this.$el, value, options, function (error) {\n\t /* istanbul ignore if */\n\t if (error) {\n\t throw error;\n\t }\n\t });\n\t } else if (tag === 'img') {\n\t qrcode.toDataURL(value, options, function (error, url) {\n\t /* istanbul ignore if */\n\t if (error) {\n\t throw error;\n\t }\n\n\t _this.$el.src = url;\n\t });\n\t } else {\n\t qrcode.toString(value, options, function (error, string) {\n\t /* istanbul ignore if */\n\t if (error) {\n\t throw error;\n\t }\n\n\t _this.$el.innerHTML = string;\n\t });\n\t }\n\t }\n\t },\n\t mounted: function mounted() {\n\t this.generate();\n\t }\n\t};\n\n\treturn index;\n\n})));\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../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, `.fade-enter-active[data-v-8e58e0a5],\n.fade-leave-active[data-v-8e58e0a5] {\n transition: opacity .3s ease;\n}\n.fade-enter[data-v-8e58e0a5],\n.fade-leave-to[data-v-8e58e0a5] {\n opacity: 0;\n}\n.linked-icons[data-v-8e58e0a5] {\n display: flex;\n}\n.linked-icons img[data-v-8e58e0a5] {\n padding: 12px;\n height: 44px;\n display: block;\n background-repeat: no-repeat;\n background-position: center;\n opacity: .7;\n}\n.linked-icons img[data-v-8e58e0a5]:hover {\n opacity: 1;\n}\n.popovermenu[data-v-8e58e0a5] {\n display: none;\n}\n.popovermenu.open[data-v-8e58e0a5] {\n display: block;\n}\nli.collection-list-item[data-v-8e58e0a5] {\n flex-wrap: wrap;\n height: auto;\n cursor: pointer;\n margin-bottom: 0 !important;\n}\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\n margin-top: 6px;\n}\nli.collection-list-item form[data-v-8e58e0a5],\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n flex-basis: 10%;\n flex-grow: 1;\n display: flex;\n}\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\n padding: 12px 9px;\n}\nli.collection-list-item input[data-v-8e58e0a5] {\n margin-top: 4px;\n border-color: var(--color-border-maxcontrast);\n}\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\n flex-grow: 1;\n}\nli.collection-list-item .error[data-v-8e58e0a5],\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\n flex-basis: 100%;\n width: 100%;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\n display: flex;\n margin-left: 44px;\n border-radius: 3px;\n cursor: pointer;\n}\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\n background-color: var(--color-background-dark);\n}\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\n flex-grow: 1;\n padding: 3px;\n max-width: calc(100% - 30px);\n display: flex;\n}\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\n display: inline-block;\n vertical-align: top;\n margin-right: 10px;\n}\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\n text-overflow: ellipsis;\n overflow: hidden;\n position: relative;\n vertical-align: top;\n white-space: nowrap;\n flex-grow: 1;\n padding: 4px;\n}\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\n width: 24px;\n height: 24px;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\n opacity: .7;\n}\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\n opacity: 1;\n}\n.shouldshake[data-v-8e58e0a5] {\n animation: shake-8e58e0a5 .6s 1 linear;\n}\n@keyframes shake-8e58e0a5 {\n 0% {\n transform: translate(15px);\n }\n 20% {\n transform: translate(-15px);\n }\n 40% {\n transform: translate(7px);\n }\n 60% {\n transform: translate(-7px);\n }\n 80% {\n transform: translate(3px);\n }\n to {\n transform: translate(0);\n }\n}\n.collection-list *[data-v-75a4370b] {\n box-sizing: border-box;\n}\n.collection-list > li[data-v-75a4370b] {\n display: flex;\n align-items: start;\n gap: 12px;\n}\n.collection-list > li > .avatar[data-v-75a4370b] {\n margin-top: auto;\n}\n#collection-select-container[data-v-75a4370b] {\n display: flex;\n flex-direction: column;\n}\n.v-select span.avatar[data-v-75a4370b] {\n display: block;\n padding: 16px;\n opacity: .7;\n background-repeat: no-repeat;\n background-position: center;\n}\n.v-select span.avatar[data-v-75a4370b]:hover {\n opacity: 1;\n}\np.hint[data-v-75a4370b] {\n z-index: 1;\n margin-top: -16px;\n padding: 8px;\n color: var(--color-text-maxcontrast);\n line-height: normal;\n}\ndiv.avatar[data-v-75a4370b] {\n width: 32px;\n height: 32px;\n margin: 30px 0 0;\n padding: 8px;\n background-color: var(--color-background-dark);\n}\n.icon-projects[data-v-75a4370b] {\n display: block;\n padding: 8px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.option__wrapper[data-v-75a4370b] {\n display: flex;\n}\n.option__wrapper .avatar[data-v-75a4370b] {\n display: block;\n background-color: var(--color-background-darker) !important;\n}\n.option__wrapper .option__title[data-v-75a4370b] {\n padding: 4px;\n}\n.fade-enter-active[data-v-75a4370b],\n.fade-leave-active[data-v-75a4370b] {\n transition: opacity .5s;\n}\n.fade-enter[data-v-75a4370b],\n.fade-leave-to[data-v-75a4370b] {\n opacity: 0;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/nextcloud-vue-collections/dist/assets/index-Au1Gr_G6.css\"],\"names\":[],\"mappings\":\"AAAA;;EAEE,4BAA4B;AAC9B;AACA;;EAEE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,aAAa;EACb,YAAY;EACZ,cAAc;EACd,4BAA4B;EAC5B,2BAA2B;EAC3B,WAAW;AACb;AACA;EACE,UAAU;AACZ;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;AAChB;AACA;EACE,eAAe;EACf,YAAY;EACZ,eAAe;EACf,2BAA2B;AAC7B;AACA;EACE,eAAe;AACjB;AACA;;EAEE,eAAe;EACf,YAAY;EACZ,aAAa;AACf;AACA;EACE,iBAAiB;AACnB;AACA;EACE,eAAe;EACf,6CAA6C;AAC/C;AACA;EACE,YAAY;AACd;AACA;;EAEE,gBAAgB;EAChB,WAAW;AACb;AACA;EACE,aAAa;EACb,iBAAiB;EACjB,kBAAkB;EAClB,eAAe;AACjB;AACA;EACE,8CAA8C;AAChD;AACA;EACE,YAAY;EACZ,YAAY;EACZ,4BAA4B;EAC5B,aAAa;AACf;AACA;EACE,qBAAqB;EACrB,mBAAmB;EACnB,kBAAkB;AACpB;AACA;EACE,uBAAuB;EACvB,gBAAgB;EAChB,kBAAkB;EAClB,mBAAmB;EACnB,mBAAmB;EACnB,YAAY;EACZ,YAAY;AACd;AACA;EACE,WAAW;EACX,YAAY;AACd;AACA;EACE,WAAW;AACb;AACA;;EAEE,UAAU;AACZ;AACA;EACE,sCAAsC;AACxC;AACA;EACE;IACE,0BAA0B;EAC5B;EACA;IACE,2BAA2B;EAC7B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,0BAA0B;EAC5B;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,uBAAuB;EACzB;AACF;AACA;EACE,sBAAsB;AACxB;AACA;EACE,aAAa;EACb,kBAAkB;EAClB,SAAS;AACX;AACA;EACE,gBAAgB;AAClB;AACA;EACE,aAAa;EACb,sBAAsB;AACxB;AACA;EACE,cAAc;EACd,aAAa;EACb,WAAW;EACX,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,UAAU;AACZ;AACA;EACE,UAAU;EACV,iBAAiB;EACjB,YAAY;EACZ,oCAAoC;EACpC,mBAAmB;AACrB;AACA;EACE,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,YAAY;EACZ,8CAA8C;AAChD;AACA;EACE,cAAc;EACd,YAAY;EACZ,4BAA4B;EAC5B,2BAA2B;AAC7B;AACA;EACE,aAAa;AACf;AACA;EACE,cAAc;EACd,2DAA2D;AAC7D;AACA;EACE,YAAY;AACd;AACA;;EAEE,uBAAuB;AACzB;AACA;;EAEE,UAAU;AACZ\",\"sourcesContent\":[\".fade-enter-active[data-v-8e58e0a5],\\n.fade-leave-active[data-v-8e58e0a5] {\\n transition: opacity .3s ease;\\n}\\n.fade-enter[data-v-8e58e0a5],\\n.fade-leave-to[data-v-8e58e0a5] {\\n opacity: 0;\\n}\\n.linked-icons[data-v-8e58e0a5] {\\n display: flex;\\n}\\n.linked-icons img[data-v-8e58e0a5] {\\n padding: 12px;\\n height: 44px;\\n display: block;\\n background-repeat: no-repeat;\\n background-position: center;\\n opacity: .7;\\n}\\n.linked-icons img[data-v-8e58e0a5]:hover {\\n opacity: 1;\\n}\\n.popovermenu[data-v-8e58e0a5] {\\n display: none;\\n}\\n.popovermenu.open[data-v-8e58e0a5] {\\n display: block;\\n}\\nli.collection-list-item[data-v-8e58e0a5] {\\n flex-wrap: wrap;\\n height: auto;\\n cursor: pointer;\\n margin-bottom: 0 !important;\\n}\\nli.collection-list-item .collection-avatar[data-v-8e58e0a5] {\\n margin-top: 6px;\\n}\\nli.collection-list-item form[data-v-8e58e0a5],\\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\\n flex-basis: 10%;\\n flex-grow: 1;\\n display: flex;\\n}\\nli.collection-list-item .collection-item-name[data-v-8e58e0a5] {\\n padding: 12px 9px;\\n}\\nli.collection-list-item input[data-v-8e58e0a5] {\\n margin-top: 4px;\\n border-color: var(--color-border-maxcontrast);\\n}\\nli.collection-list-item input[type=text][data-v-8e58e0a5] {\\n flex-grow: 1;\\n}\\nli.collection-list-item .error[data-v-8e58e0a5],\\nli.collection-list-item .resource-list-details[data-v-8e58e0a5] {\\n flex-basis: 100%;\\n width: 100%;\\n}\\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5] {\\n display: flex;\\n margin-left: 44px;\\n border-radius: 3px;\\n cursor: pointer;\\n}\\nli.collection-list-item .resource-list-details li[data-v-8e58e0a5]:hover {\\n background-color: var(--color-background-dark);\\n}\\nli.collection-list-item .resource-list-details li a[data-v-8e58e0a5] {\\n flex-grow: 1;\\n padding: 3px;\\n max-width: calc(100% - 30px);\\n display: flex;\\n}\\nli.collection-list-item .resource-list-details span[data-v-8e58e0a5] {\\n display: inline-block;\\n vertical-align: top;\\n margin-right: 10px;\\n}\\nli.collection-list-item .resource-list-details span.resource-name[data-v-8e58e0a5] {\\n text-overflow: ellipsis;\\n overflow: hidden;\\n position: relative;\\n vertical-align: top;\\n white-space: nowrap;\\n flex-grow: 1;\\n padding: 4px;\\n}\\nli.collection-list-item .resource-list-details img[data-v-8e58e0a5] {\\n width: 24px;\\n height: 24px;\\n}\\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5] {\\n opacity: .7;\\n}\\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:hover,\\nli.collection-list-item .resource-list-details .icon-close[data-v-8e58e0a5]:focus {\\n opacity: 1;\\n}\\n.shouldshake[data-v-8e58e0a5] {\\n animation: shake-8e58e0a5 .6s 1 linear;\\n}\\n@keyframes shake-8e58e0a5 {\\n 0% {\\n transform: translate(15px);\\n }\\n 20% {\\n transform: translate(-15px);\\n }\\n 40% {\\n transform: translate(7px);\\n }\\n 60% {\\n transform: translate(-7px);\\n }\\n 80% {\\n transform: translate(3px);\\n }\\n to {\\n transform: translate(0);\\n }\\n}\\n.collection-list *[data-v-75a4370b] {\\n box-sizing: border-box;\\n}\\n.collection-list > li[data-v-75a4370b] {\\n display: flex;\\n align-items: start;\\n gap: 12px;\\n}\\n.collection-list > li > .avatar[data-v-75a4370b] {\\n margin-top: auto;\\n}\\n#collection-select-container[data-v-75a4370b] {\\n display: flex;\\n flex-direction: column;\\n}\\n.v-select span.avatar[data-v-75a4370b] {\\n display: block;\\n padding: 16px;\\n opacity: .7;\\n background-repeat: no-repeat;\\n background-position: center;\\n}\\n.v-select span.avatar[data-v-75a4370b]:hover {\\n opacity: 1;\\n}\\np.hint[data-v-75a4370b] {\\n z-index: 1;\\n margin-top: -16px;\\n padding: 8px;\\n color: var(--color-text-maxcontrast);\\n line-height: normal;\\n}\\ndiv.avatar[data-v-75a4370b] {\\n width: 32px;\\n height: 32px;\\n margin: 30px 0 0;\\n padding: 8px;\\n background-color: var(--color-background-dark);\\n}\\n.icon-projects[data-v-75a4370b] {\\n display: block;\\n padding: 8px;\\n background-repeat: no-repeat;\\n background-position: center;\\n}\\n.option__wrapper[data-v-75a4370b] {\\n display: flex;\\n}\\n.option__wrapper .avatar[data-v-75a4370b] {\\n display: block;\\n background-color: var(--color-background-darker) !important;\\n}\\n.option__wrapper .option__title[data-v-75a4370b] {\\n padding: 4px;\\n}\\n.fade-enter-active[data-v-75a4370b],\\n.fade-leave-active[data-v-75a4370b] {\\n transition: opacity .5s;\\n}\\n.fade-enter[data-v-75a4370b],\\n.fade-leave-to[data-v-75a4370b] {\\n opacity: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-939d5de0]{display:flex;align-items:center;height:44px}.sharing-entry__summary[data-v-939d5de0]{padding:8px;padding-left:10px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1 0;min-width:0}.sharing-entry__summary__desc[data-v-939d5de0]{display:inline-block;padding-bottom:0;line-height:1.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sharing-entry__summary__desc p[data-v-939d5de0],.sharing-entry__summary__desc small[data-v-939d5de0]{color:var(--color-text-maxcontrast)}.sharing-entry__summary__desc-unique[data-v-939d5de0]{color:var(--color-text-maxcontrast)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntry.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,sBAAA,CACA,QAAA,CACA,WAAA,CAEA,+CACC,oBAAA,CACA,gBAAA,CACA,iBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CAEA,sGAEC,mCAAA,CAGD,sDACC,mCAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\t&__summary {\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: center;\\n\\t\\talign-items: flex-start;\\n\\t\\tflex: 1 0;\\n\\t\\tmin-width: 0;\\n\\n\\t\\t&__desc {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\tpadding-bottom: 0;\\n\\t\\t\\tline-height: 1.2em;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\n\\t\\t\\tp,\\n\\t\\t\\tsmall {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-unique {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-283ca89e]{display:flex;align-items:center;height:44px}.sharing-entry__desc[data-v-283ca89e]{display:flex;flex-direction:column;justify-content:space-between;padding:8px;padding-left:10px;line-height:1.2em}.sharing-entry__desc p[data-v-283ca89e]{color:var(--color-text-maxcontrast)}.sharing-entry__actions[data-v-283ca89e]{margin-left:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryInherited.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,WAAA,CACA,sCACC,YAAA,CACA,qBAAA,CACA,6BAAA,CACA,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,wCACC,mCAAA,CAGF,yCACC,gBAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\t&__desc {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: space-between;\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tline-height: 1.2em;\\n\\t\\tp {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t}\\n\\t&__actions {\\n\\t\\tmargin-left: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry__internal .avatar-external[data-v-e40cd936]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}.sharing-entry__internal .icon-checkmark-color[data-v-e40cd936]{opacity:1;color:var(--color-success)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryInternal.vue\"],\"names\":[],\"mappings\":\"AAEC,2DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA,CAED,gEACC,SAAA,CACA,0BAAA\",\"sourcesContent\":[\"\\n.sharing-entry__internal {\\n\\t.avatar-external {\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tline-height: 32px;\\n\\t\\tfont-size: 18px;\\n\\t\\tbackground-color: var(--color-text-maxcontrast);\\n\\t\\tborder-radius: 50%;\\n\\t\\tflex-shrink: 0;\\n\\t}\\n\\t.icon-checkmark-color {\\n\\t\\topacity: 1;\\n\\t\\tcolor: var(--color-success);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-74a80015]{display:flex;align-items:center;min-height:44px}.sharing-entry__summary[data-v-74a80015]{padding:8px;padding-left:10px;display:flex;justify-content:space-between;flex:1 0;min-width:0}.sharing-entry__desc[data-v-74a80015]{display:flex;flex-direction:column;line-height:1.2em}.sharing-entry__desc p[data-v-74a80015]{color:var(--color-text-maxcontrast)}.sharing-entry__desc__title[data-v-74a80015]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.sharing-entry:not(.sharing-entry--share) .sharing-entry__actions .new-share-link[data-v-74a80015]{border-top:1px solid var(--color-border)}.sharing-entry[data-v-74a80015] .avatar-link-share{background-color:var(--color-primary-element)}.sharing-entry .sharing-entry__action--public-upload[data-v-74a80015]{border-bottom:1px solid var(--color-border)}.sharing-entry__loading[data-v-74a80015]{width:44px;height:44px;margin:0;padding:14px;margin-left:auto}.sharing-entry .action-item~.action-item[data-v-74a80015],.sharing-entry .action-item~.sharing-entry__loading[data-v-74a80015]{margin-left:0}.sharing-entry .icon-checkmark-color[data-v-74a80015]{opacity:1;color:var(--color-success)}.qr-code-dialog[data-v-74a80015]{display:flex;width:100%;justify-content:center}.qr-code-dialog__img[data-v-74a80015]{width:100%;height:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryLink.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CAEA,yCACC,WAAA,CACA,iBAAA,CACA,YAAA,CACA,6BAAA,CACA,QAAA,CACA,WAAA,CAGA,sCACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,wCACC,mCAAA,CAGD,6CACC,sBAAA,CACA,eAAA,CACA,kBAAA,CAKF,mGACC,wCAAA,CAIF,mDACC,6CAAA,CAGD,sEACC,2CAAA,CAGD,yCACC,UAAA,CACA,WAAA,CACA,QAAA,CACA,YAAA,CACA,gBAAA,CAOA,+HAEC,aAAA,CAIF,sDACC,SAAA,CACA,0BAAA,CAKF,iCACC,YAAA,CACA,UAAA,CACA,sBAAA,CAEA,sCACC,UAAA,CACA,WAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tmin-height: 44px;\\n\\n\\t&__summary {\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: space-between;\\n\\t\\tflex: 1 0;\\n\\t\\tmin-width: 0;\\n\\t}\\n\\n\\t\\t&__desc {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\tline-height: 1.2em;\\n\\n\\t\\t\\tp {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&__title {\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t&:not(.sharing-entry--share) &__actions {\\n\\t\\t.new-share-link {\\n\\t\\t\\tborder-top: 1px solid var(--color-border);\\n\\t\\t}\\n\\t}\\n\\n\\t::v-deep .avatar-link-share {\\n\\t\\tbackground-color: var(--color-primary-element);\\n\\t}\\n\\n\\t.sharing-entry__action--public-upload {\\n\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t}\\n\\n\\t&__loading {\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 14px;\\n\\t\\tmargin-left: auto;\\n\\t}\\n\\n\\t// put menus to the left\\n\\t// but only the first one\\n\\t.action-item {\\n\\n\\t\\t~.action-item,\\n\\t\\t~.sharing-entry__loading {\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t.icon-checkmark-color {\\n\\t\\topacity: 1;\\n\\t\\tcolor: var(--color-success);\\n\\t}\\n}\\n\\n// styling for the qr-code container\\n.qr-code-dialog {\\n\\tdisplay: flex;\\n\\twidth: 100%;\\n\\tjustify-content: center;\\n\\n\\t&__img {\\n\\t\\twidth: 100%;\\n\\t\\theight: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.share-select[data-v-dab76140]{display:block}.share-select[data-v-dab76140] .action-item__menutoggle{color:var(--color-primary-element) !important;font-size:12.5px !important;height:auto !important;min-height:auto !important}.share-select[data-v-dab76140] .action-item__menutoggle .button-vue__text{font-weight:normal !important}.share-select[data-v-dab76140] .action-item__menutoggle .button-vue__icon{height:24px !important;min-height:24px !important;width:24px !important;min-width:24px !important}.share-select[data-v-dab76140] .action-item__menutoggle .button-vue__wrapper{flex-direction:row-reverse !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntryQuickShareSelect.vue\"],\"names\":[],\"mappings\":\"AACA,+BACC,aAAA,CAIA,wDACC,6CAAA,CACA,2BAAA,CACA,sBAAA,CACA,0BAAA,CAEA,0EACC,6BAAA,CAGD,0EACC,sBAAA,CACA,0BAAA,CACA,qBAAA,CACA,yBAAA,CAGD,6EAEC,qCAAA\",\"sourcesContent\":[\"\\n.share-select {\\n\\tdisplay: block;\\n\\n\\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\\n\\t// Overrider NcActionms button to make it small\\n\\t:deep(.action-item__menutoggle) {\\n\\t\\tcolor: var(--color-primary-element) !important;\\n\\t\\tfont-size: 12.5px !important;\\n\\t\\theight: auto !important;\\n\\t\\tmin-height: auto !important;\\n\\n\\t\\t.button-vue__text {\\n\\t\\t\\tfont-weight: normal !important;\\n\\t\\t}\\n\\n\\t\\t.button-vue__icon {\\n\\t\\t\\theight: 24px !important;\\n\\t\\t\\tmin-height: 24px !important;\\n\\t\\t\\twidth: 24px !important;\\n\\t\\t\\tmin-width: 24px !important;\\n\\t\\t}\\n\\n\\t\\t.button-vue__wrapper {\\n\\t\\t\\t// Emulate NcButton's alignment=center-reverse\\n\\t\\t\\tflex-direction: row-reverse !important;\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry[data-v-1852ea78]{display:flex;align-items:center;min-height:44px}.sharing-entry__desc[data-v-1852ea78]{padding:8px;padding-left:10px;line-height:1.2em;position:relative;flex:1 1;min-width:0}.sharing-entry__desc p[data-v-1852ea78]{color:var(--color-text-maxcontrast)}.sharing-entry__title[data-v-1852ea78]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:inherit}.sharing-entry__actions[data-v-1852ea78]{margin-left:auto !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingEntrySimple.vue\"],\"names\":[],\"mappings\":\"AACA,gCACC,YAAA,CACA,kBAAA,CACA,eAAA,CACA,sCACC,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,iBAAA,CACA,QAAA,CACA,WAAA,CACA,wCACC,mCAAA,CAGF,uCACC,kBAAA,CACA,sBAAA,CACA,eAAA,CACA,iBAAA,CAED,yCACC,2BAAA\",\"sourcesContent\":[\"\\n.sharing-entry {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tmin-height: 44px;\\n\\t&__desc {\\n\\t\\tpadding: 8px;\\n\\t\\tpadding-left: 10px;\\n\\t\\tline-height: 1.2em;\\n\\t\\tposition: relative;\\n\\t\\tflex: 1 1;\\n\\t\\tmin-width: 0;\\n\\t\\tp {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t}\\n\\t&__title {\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\toverflow: hidden;\\n\\t\\tmax-width: inherit;\\n\\t}\\n\\t&__actions {\\n\\t\\tmargin-left: auto !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-search{display:flex;flex-direction:column;margin-bottom:4px}.sharing-search label[for=sharing-search-input]{margin-bottom:2px}.sharing-search__input{width:100%;margin:10px 0}.vs__dropdown-menu span[lookup] .avatardiv{background-image:var(--icon-search-white);background-repeat:no-repeat;background-position:center;background-color:var(--color-text-maxcontrast) !important}.vs__dropdown-menu span[lookup] .avatardiv .avatardiv__initials-wrapper{display:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/components/SharingInput.vue\"],\"names\":[],\"mappings\":\"AACA,gBACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAEA,gDACC,iBAAA,CAGD,uBACC,UAAA,CACA,aAAA,CAOA,2CACC,yCAAA,CACA,2BAAA,CACA,0BAAA,CACA,yDAAA,CACA,wEACC,YAAA\",\"sourcesContent\":[\"\\n.sharing-search {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tmargin-bottom: 4px;\\n\\n\\tlabel[for=\\\"sharing-search-input\\\"] {\\n\\t\\tmargin-bottom: 2px;\\n\\t}\\n\\n\\t&__input {\\n\\t\\twidth: 100%;\\n\\t\\tmargin: 10px 0;\\n\\t}\\n}\\n\\n.vs__dropdown-menu {\\n\\t// properly style the lookup entry\\n\\tspan[lookup] {\\n\\t\\t.avatardiv {\\n\\t\\t\\tbackground-image: var(--icon-search-white);\\n\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-color: var(--color-text-maxcontrast) !important;\\n\\t\\t\\t.avatardiv__initials-wrapper {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharingTabDetailsView[data-v-56215dac]{display:flex;flex-direction:column;width:100%;margin:0 auto;position:relative;height:100%;overflow:hidden}.sharingTabDetailsView__header[data-v-56215dac]{display:flex;align-items:center;box-sizing:border-box;margin:.2em}.sharingTabDetailsView__header span[data-v-56215dac]{display:flex;align-items:center}.sharingTabDetailsView__header span h1[data-v-56215dac]{font-size:15px;padding-left:.3em}.sharingTabDetailsView__wrapper[data-v-56215dac]{position:relative;overflow:scroll;flex-shrink:1;padding:4px;padding-right:12px}.sharingTabDetailsView__quick-permissions[data-v-56215dac]{display:flex;justify-content:center;width:100%;margin:0 auto;border-radius:0}.sharingTabDetailsView__quick-permissions div[data-v-56215dac]{width:100%}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac]{width:100%}.sharingTabDetailsView__quick-permissions div span span[data-v-56215dac]:nth-child(1){align-items:center;justify-content:center;padding:.1em}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac] label span{display:flex;flex-direction:column}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac] span.checkbox-content__text.checkbox-radio-switch__text{flex-wrap:wrap}.sharingTabDetailsView__quick-permissions div span[data-v-56215dac] span.checkbox-content__text.checkbox-radio-switch__text .subline{display:block;flex-basis:100%}.sharingTabDetailsView__advanced-control[data-v-56215dac]{width:100%}.sharingTabDetailsView__advanced-control button[data-v-56215dac]{margin-top:.5em}.sharingTabDetailsView__advanced[data-v-56215dac]{width:100%;margin-bottom:.5em;text-align:left;padding-left:0}.sharingTabDetailsView__advanced section textarea[data-v-56215dac],.sharingTabDetailsView__advanced section div.mx-datepicker[data-v-56215dac]{width:100%}.sharingTabDetailsView__advanced section textarea[data-v-56215dac]{height:80px;margin:0}.sharingTabDetailsView__advanced section span[data-v-56215dac] label{padding-left:0 !important;background-color:initial !important;border:none !important}.sharingTabDetailsView__advanced section section.custom-permissions-group[data-v-56215dac]{padding-left:1.5em}.sharingTabDetailsView__delete>button[data-v-56215dac]:first-child{color:#df0707}.sharingTabDetailsView__footer[data-v-56215dac]{width:100%;display:flex;position:sticky;bottom:0;flex-direction:column;justify-content:space-between;align-items:flex-start;background:linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background))}.sharingTabDetailsView__footer .button-group[data-v-56215dac]{display:flex;justify-content:space-between;width:100%;margin-top:16px}.sharingTabDetailsView__footer .button-group button[data-v-56215dac]{margin-left:16px}.sharingTabDetailsView__footer .button-group button[data-v-56215dac]:first-child{margin-left:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/SharingDetailsTab.vue\"],\"names\":[],\"mappings\":\"AACA,wCACC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,aAAA,CACA,iBAAA,CACA,WAAA,CACA,eAAA,CAEA,gDACC,YAAA,CACA,kBAAA,CACA,qBAAA,CACA,WAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,wDACC,cAAA,CACA,iBAAA,CAMH,iDACC,iBAAA,CACA,eAAA,CACA,aAAA,CACA,WAAA,CACA,kBAAA,CAGD,2DACC,YAAA,CACA,sBAAA,CACA,UAAA,CACA,aAAA,CACA,eAAA,CAEA,+DACC,UAAA,CAEA,oEACC,UAAA,CAEA,sFACC,kBAAA,CACA,sBAAA,CACA,YAAA,CAKA,+EACC,YAAA,CACA,qBAAA,CAKF,4HACC,cAAA,CAEA,qIACC,aAAA,CACA,eAAA,CAQL,0DACC,UAAA,CAEA,iEACC,eAAA,CAKF,kDACC,UAAA,CACA,kBAAA,CACA,eAAA,CACA,cAAA,CAIC,+IAEC,UAAA,CAGD,mEACC,WAAA,CACA,QAAA,CAaA,qEACC,yBAAA,CACA,mCAAA,CACA,sBAAA,CAIF,2FACC,kBAAA,CAMF,mEACC,aAAA,CAIF,gDACC,UAAA,CACA,YAAA,CACA,eAAA,CACA,QAAA,CACA,qBAAA,CACA,6BAAA,CACA,sBAAA,CACA,2FAAA,CAEA,8DACC,YAAA,CACA,6BAAA,CACA,UAAA,CACA,eAAA,CAEA,qEACC,gBAAA,CAEA,iFACC,aAAA\",\"sourcesContent\":[\"\\n.sharingTabDetailsView {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\twidth: 100%;\\n\\tmargin: 0 auto;\\n\\tposition: relative;\\n\\theight: 100%;\\n\\toverflow: hidden;\\n\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tbox-sizing: border-box;\\n\\t\\tmargin: 0.2em;\\n\\n\\t\\tspan {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\th1 {\\n\\t\\t\\t\\tfont-size: 15px;\\n\\t\\t\\t\\tpadding-left: 0.3em;\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\t}\\n\\n\\t&__wrapper {\\n\\t\\tposition: relative;\\n\\t\\toverflow: scroll;\\n\\t\\tflex-shrink: 1;\\n\\t\\tpadding: 4px;\\n\\t\\tpadding-right: 12px;\\n\\t}\\n\\n\\t&__quick-permissions {\\n\\t\\tdisplay: flex;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 100%;\\n\\t\\tmargin: 0 auto;\\n\\t\\tborder-radius: 0;\\n\\n\\t\\tdiv {\\n\\t\\t\\twidth: 100%;\\n\\n\\t\\t\\tspan {\\n\\t\\t\\t\\twidth: 100%;\\n\\n\\t\\t\\t\\tspan:nth-child(1) {\\n\\t\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\t\\tjustify-content: center;\\n\\t\\t\\t\\t\\tpadding: 0.1em;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t::v-deep label {\\n\\n\\t\\t\\t\\t\\tspan {\\n\\t\\t\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\t\\t\\tflex-direction: column;\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\\n\\t\\t\\t\\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\\n\\t\\t\\t\\t\\tflex-wrap: wrap;\\n\\n\\t\\t\\t\\t\\t.subline {\\n\\t\\t\\t\\t\\t\\tdisplay: block;\\n\\t\\t\\t\\t\\t\\tflex-basis: 100%;\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t}\\n\\t}\\n\\n\\t&__advanced-control {\\n\\t\\twidth: 100%;\\n\\n\\t\\tbutton {\\n\\t\\t\\tmargin-top: 0.5em;\\n\\t\\t}\\n\\n\\t}\\n\\n\\t&__advanced {\\n\\t\\twidth: 100%;\\n\\t\\tmargin-bottom: 0.5em;\\n\\t\\ttext-align: left;\\n\\t\\tpadding-left: 0;\\n\\n\\t\\tsection {\\n\\n\\t\\t\\ttextarea,\\n\\t\\t\\tdiv.mx-datepicker {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\n\\t\\t\\ttextarea {\\n\\t\\t\\t\\theight: 80px;\\n\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t/*\\n The following style is applied out of the component's scope\\n to remove padding from the label.checkbox-radio-switch__label,\\n which is used to group radio checkbox items. The use of ::v-deep\\n ensures that the padding is modified without being affected by\\n the component's scoping.\\n Without this achieving left alignment for the checkboxes would not\\n be possible.\\n */\\n\\t\\t\\tspan {\\n\\t\\t\\t\\t::v-deep label {\\n\\t\\t\\t\\t\\tpadding-left: 0 !important;\\n\\t\\t\\t\\t\\tbackground-color: initial !important;\\n\\t\\t\\t\\t\\tborder: none !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\tsection.custom-permissions-group {\\n\\t\\t\\t\\tpadding-left: 1.5em;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__delete {\\n\\t\\t>button:first-child {\\n\\t\\t\\tcolor: rgb(223, 7, 7);\\n\\t\\t}\\n\\t}\\n\\n\\t&__footer {\\n\\t\\twidth: 100%;\\n\\t\\tdisplay: flex;\\n\\t\\tposition: sticky;\\n\\t\\tbottom: 0;\\n\\t\\tflex-direction: column;\\n\\t\\tjustify-content: space-between;\\n\\t\\talign-items: flex-start;\\n\\t\\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\\n\\n\\t\\t.button-group {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tjustify-content: space-between;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmargin-top: 16px;\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\tmargin-left: 16px;\\n\\n\\t\\t\\t\\t&:first-child {\\n\\t\\t\\t\\t\\tmargin-left: 0;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.sharing-entry__inherited .avatar-shared[data-v-50f9af8c]{width:32px;height:32px;line-height:32px;font-size:18px;background-color:var(--color-text-maxcontrast);border-radius:50%;flex-shrink:0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/SharingInherited.vue\"],\"names\":[],\"mappings\":\"AAEC,0DACC,UAAA,CACA,WAAA,CACA,gBAAA,CACA,cAAA,CACA,8CAAA,CACA,iBAAA,CACA,aAAA\",\"sourcesContent\":[\"\\n.sharing-entry__inherited {\\n\\t.avatar-shared {\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tline-height: 32px;\\n\\t\\tfont-size: 18px;\\n\\t\\tbackground-color: var(--color-text-maxcontrast);\\n\\t\\tborder-radius: 50%;\\n\\t\\tflex-shrink: 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.emptyContentWithSections[data-v-a65c443a]{margin:1rem auto}.sharingTab[data-v-a65c443a]{position:relative;height:100%}.sharingTab__content[data-v-a65c443a]{padding:0 6px}.sharingTab__additionalContent[data-v-a65c443a]{margin:44px 0}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/views/SharingTab.vue\"],\"names\":[],\"mappings\":\"AACA,2CACC,gBAAA,CAGD,6BACC,iBAAA,CACA,WAAA,CAEA,sCACC,aAAA,CAGD,gDACC,aAAA\",\"sourcesContent\":[\"\\n.emptyContentWithSections {\\n\\tmargin: 1rem auto;\\n}\\n\\n.sharingTab {\\n\\tposition: relative;\\n\\theight: 100%;\\n\\n\\t&__content {\\n\\t\\tpadding: 0 6px;\\n\\t}\\n\\n\\t&__additionalContent {\\n\\t\\tmargin: 44px 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.generateUrl = exports.generateRemoteUrl = exports.generateOcsUrl = exports.generateFilePath = void 0;\nexports.getAppRootUrl = getAppRootUrl;\nexports.getRootUrl = getRootUrl;\nexports.linkTo = exports.imagePath = void 0;\nrequire(\"core-js/modules/es.string.replace.js\");\n/**\n * Get an url with webroot to a file in an app\n *\n * @param {string} app the id of the app the file belongs to\n * @param {string} file the file path relative to the app folder\n * @return {string} URL with webroot to a file\n */\nconst linkTo = (app, file) => generateFilePath(app, '', file);\n\n/**\n * Creates a relative url for remote use\n *\n * @param {string} service id\n * @return {string} the url\n */\nexports.linkTo = linkTo;\nconst linkToRemoteBase = service => getRootUrl() + '/remote.php/' + service;\n\n/**\n * @brief Creates an absolute url for remote use\n * @param {string} service id\n * @return {string} the url\n */\nconst generateRemoteUrl = service => window.location.protocol + '//' + window.location.host + linkToRemoteBase(service);\n\n/**\n * Get the base path for the given OCS API service\n *\n * @param {string} url OCS API service url\n * @param {object} params parameters to be replaced into the service url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @param {Number} options.ocsVersion OCS version to use (defaults to 2)\n * @return {string} Absolute path for the OCS URL\n */\nexports.generateRemoteUrl = generateRemoteUrl;\nconst generateOcsUrl = (url, params, options) => {\n const allOptions = Object.assign({\n ocsVersion: 2\n }, options || {});\n const version = allOptions.ocsVersion === 1 ? 1 : 2;\n return window.location.protocol + '//' + window.location.host + getRootUrl() + '/ocs/v' + version + '.php' + _generateUrlPath(url, params, options);\n};\nexports.generateOcsUrl = generateOcsUrl;\n/**\n * Generate a url path, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the address\n * @param {UrlOptions} options options for the parameter replacement\n * @return {string} Path part for the given URL\n */\nconst _generateUrlPath = (url, params, options) => {\n const allOptions = Object.assign({\n escape: true\n }, options || {});\n const _build = function (text, vars) {\n vars = vars || {};\n return text.replace(/{([^{}]*)}/g, function (a, b) {\n var r = vars[b];\n if (allOptions.escape) {\n return typeof r === 'string' || typeof r === 'number' ? encodeURIComponent(r.toString()) : encodeURIComponent(a);\n } else {\n return typeof r === 'string' || typeof r === 'number' ? r.toString() : a;\n }\n });\n };\n if (url.charAt(0) !== '/') {\n url = '/' + url;\n }\n return _build(url, params || {});\n};\n\n/**\n * Generate the url with webroot for the given relative url, which can contain parameters\n *\n * Parameters will be URL encoded automatically\n *\n * @param {string} url address (can contain placeholders e.g. /call/{token} would replace {token} with the value of params.token\n * @param {object} params parameters to be replaced into the url\n * @param {UrlOptions} options options for the parameter replacement\n * @param {boolean} options.noRewrite True if you want to force index.php being added\n * @param {boolean} options.escape Set to false if parameters should not be URL encoded (default true)\n * @return {string} URL with webroot for the given relative URL\n */\nconst generateUrl = (url, params, options) => {\n var _window;\n const allOptions = Object.assign({\n noRewrite: false\n }, options || {});\n if (((_window = window) === null || _window === void 0 || (_window = _window.OC) === null || _window === void 0 || (_window = _window.config) === null || _window === void 0 ? void 0 : _window.modRewriteWorking) === true && !allOptions.noRewrite) {\n return getRootUrl() + _generateUrlPath(url, params, options);\n }\n return getRootUrl() + '/index.php' + _generateUrlPath(url, params, options);\n};\n\n/**\n * Get the path with webroot to an image file\n * if no extension is given for the image, it will automatically decide\n * between .png and .svg based on what the browser supports\n *\n * @param {string} app the app id to which the image belongs\n * @param {string} file the name of the image file\n * @return {string}\n */\nexports.generateUrl = generateUrl;\nconst imagePath = (app, file) => {\n if (file.indexOf('.') === -1) {\n //if no extension is given, use svg\n return generateFilePath(app, 'img', file + '.svg');\n }\n return generateFilePath(app, 'img', file);\n};\n\n/**\n * Get the url with webroot for a file in an app\n *\n * @param {string} app the id of the app\n * @param {string} type the type of the file to link to (e.g. css,img,ajax.template)\n * @param {string} file the filename\n * @return {string} URL with webroot for a file in an app\n */\nexports.imagePath = imagePath;\nconst generateFilePath = (app, type, file) => {\n var _window2;\n const isCore = ((_window2 = window) === null || _window2 === void 0 || (_window2 = _window2.OC) === null || _window2 === void 0 || (_window2 = _window2.coreApps) === null || _window2 === void 0 ? void 0 : _window2.indexOf(app)) !== -1;\n let link = getRootUrl();\n if (file.substring(file.length - 3) === 'php' && !isCore) {\n link += '/index.php/apps/' + app;\n if (file !== 'index.php') {\n link += '/';\n if (type) {\n link += encodeURI(type + '/');\n }\n link += file;\n }\n } else if (file.substring(file.length - 3) !== 'php' && !isCore) {\n link = getAppRootUrl(app);\n if (type) {\n link += '/' + type + '/';\n }\n if (link.substring(link.length - 1) !== '/') {\n link += '/';\n }\n link += file;\n } else {\n if ((app === 'settings' || app === 'core' || app === 'search') && type === 'ajax') {\n link += '/index.php/';\n } else {\n link += '/';\n }\n if (!isCore) {\n link += 'apps/';\n }\n if (app !== '') {\n app += '/';\n link += app;\n }\n if (type) {\n link += type + '/';\n }\n link += file;\n }\n return link;\n};\n\n/**\n * Return the web root path where this Nextcloud instance\n * is accessible, with a leading slash.\n * For example \"/nextcloud\".\n *\n * @return {string} web root path\n */\nexports.generateFilePath = generateFilePath;\nfunction getRootUrl() {\n let webroot = window._oc_webroot;\n if (typeof webroot === 'undefined') {\n webroot = location.pathname;\n const pos = webroot.indexOf('/index.php/');\n if (pos !== -1) {\n webroot = webroot.substr(0, pos);\n } else {\n webroot = webroot.substr(0, webroot.lastIndexOf('/'));\n }\n }\n return webroot;\n}\n\n/**\n * Return the web root path for a given app\n * @param {string} app The ID of the app\n */\nfunction getAppRootUrl(app) {\n var _window$_oc_appswebro, _webroots$app;\n const webroots = (_window$_oc_appswebro = window._oc_appswebroots) !== null && _window$_oc_appswebro !== void 0 ? _window$_oc_appswebro : {};\n return (_webroots$app = webroots[app]) !== null && _webroots$app !== void 0 ? _webroots$app : '';\n}\n//# sourceMappingURL=index.js.map","/**!\n * url-search-params-polyfill\n *\n * @author Jerry Bendy (https://github.com/jerrybendy)\n * @licence MIT\n */\n(function(self) {\n 'use strict';\n\n var nativeURLSearchParams = (function() {\n // #41 Fix issue in RN\n try {\n if (self.URLSearchParams && (new self.URLSearchParams('foo=bar')).get('foo') === 'bar') {\n return self.URLSearchParams;\n }\n } catch (e) {}\n return null;\n })(),\n isSupportObjectConstructor = nativeURLSearchParams && (new nativeURLSearchParams({a: 1})).toString() === 'a=1',\n // There is a bug in safari 10.1 (and earlier) that incorrectly decodes `%2B` as an empty space and not a plus.\n decodesPlusesCorrectly = nativeURLSearchParams && (new nativeURLSearchParams('s=%2B').get('s') === '+'),\n isSupportSize = nativeURLSearchParams && 'size' in nativeURLSearchParams.prototype,\n __URLSearchParams__ = \"__URLSearchParams__\",\n // Fix bug in Edge which cannot encode ' &' correctly\n encodesAmpersandsCorrectly = nativeURLSearchParams ? (function() {\n var ampersandTest = new nativeURLSearchParams();\n ampersandTest.append('s', ' &');\n return ampersandTest.toString() === 's=+%26';\n })() : true,\n prototype = URLSearchParamsPolyfill.prototype,\n iterable = !!(self.Symbol && self.Symbol.iterator);\n\n if (nativeURLSearchParams && isSupportObjectConstructor && decodesPlusesCorrectly && encodesAmpersandsCorrectly && isSupportSize) {\n return;\n }\n\n\n /**\n * Make a URLSearchParams instance\n *\n * @param {object|string|URLSearchParams} search\n * @constructor\n */\n function URLSearchParamsPolyfill(search) {\n search = search || \"\";\n\n // support construct object with another URLSearchParams instance\n if (search instanceof URLSearchParams || search instanceof URLSearchParamsPolyfill) {\n search = search.toString();\n }\n this [__URLSearchParams__] = parseToDict(search);\n }\n\n\n /**\n * Appends a specified key/value pair as a new search parameter.\n *\n * @param {string} name\n * @param {string} value\n */\n prototype.append = function(name, value) {\n appendTo(this [__URLSearchParams__], name, value);\n };\n\n /**\n * Deletes the given search parameter, and its associated value,\n * from the list of all search parameters.\n *\n * @param {string} name\n */\n prototype['delete'] = function(name) {\n delete this [__URLSearchParams__] [name];\n };\n\n /**\n * Returns the first value associated to the given search parameter.\n *\n * @param {string} name\n * @returns {string|null}\n */\n prototype.get = function(name) {\n var dict = this [__URLSearchParams__];\n return this.has(name) ? dict[name][0] : null;\n };\n\n /**\n * Returns all the values association with a given search parameter.\n *\n * @param {string} name\n * @returns {Array}\n */\n prototype.getAll = function(name) {\n var dict = this [__URLSearchParams__];\n return this.has(name) ? dict [name].slice(0) : [];\n };\n\n /**\n * Returns a Boolean indicating if such a search parameter exists.\n *\n * @param {string} name\n * @returns {boolean}\n */\n prototype.has = function(name) {\n return hasOwnProperty(this [__URLSearchParams__], name);\n };\n\n /**\n * Sets the value associated to a given search parameter to\n * the given value. If there were several values, delete the\n * others.\n *\n * @param {string} name\n * @param {string} value\n */\n prototype.set = function set(name, value) {\n this [__URLSearchParams__][name] = ['' + value];\n };\n\n /**\n * Returns a string containg a query string suitable for use in a URL.\n *\n * @returns {string}\n */\n prototype.toString = function() {\n var dict = this[__URLSearchParams__], query = [], i, key, name, value;\n for (key in dict) {\n name = encode(key);\n for (i = 0, value = dict[key]; i < value.length; i++) {\n query.push(name + '=' + encode(value[i]));\n }\n }\n return query.join('&');\n };\n\n // There is a bug in Safari 10.1 and `Proxy`ing it is not enough.\n var useProxy = self.Proxy && nativeURLSearchParams && (!decodesPlusesCorrectly || !encodesAmpersandsCorrectly || !isSupportObjectConstructor || !isSupportSize);\n var propValue;\n if (useProxy) {\n // Safari 10.0 doesn't support Proxy, so it won't extend URLSearchParams on safari 10.0\n propValue = new Proxy(nativeURLSearchParams, {\n construct: function (target, args) {\n return new target((new URLSearchParamsPolyfill(args[0]).toString()));\n }\n })\n // Chrome <=60 .toString() on a function proxy got error \"Function.prototype.toString is not generic\"\n propValue.toString = Function.prototype.toString.bind(URLSearchParamsPolyfill);\n } else {\n propValue = URLSearchParamsPolyfill;\n }\n\n /*\n * Apply polyfill to global object and append other prototype into it\n */\n Object.defineProperty(self, 'URLSearchParams', {\n value: propValue\n });\n\n var USPProto = self.URLSearchParams.prototype;\n\n USPProto.polyfill = true;\n\n // Fix #54, `toString.call(new URLSearchParams)` will return correct value when Proxy not used\n if (!useProxy && self.Symbol) {\n USPProto[self.Symbol.toStringTag] = 'URLSearchParams';\n }\n\n /**\n *\n * @param {function} callback\n * @param {object} thisArg\n */\n if (!('forEach' in USPProto)) {\n USPProto.forEach = function(callback, thisArg) {\n var dict = parseToDict(this.toString());\n Object.getOwnPropertyNames(dict).forEach(function(name) {\n dict[name].forEach(function(value) {\n callback.call(thisArg, value, name, this);\n }, this);\n }, this);\n };\n }\n\n /**\n * Sort all name-value pairs\n */\n if (!('sort' in USPProto)) {\n USPProto.sort = function() {\n var dict = parseToDict(this.toString()), keys = [], k, i, j;\n for (k in dict) {\n keys.push(k);\n }\n keys.sort();\n\n for (i = 0; i < keys.length; i++) {\n this['delete'](keys[i]);\n }\n for (i = 0; i < keys.length; i++) {\n var key = keys[i], values = dict[key];\n for (j = 0; j < values.length; j++) {\n this.append(key, values[j]);\n }\n }\n };\n }\n\n /**\n * Returns an iterator allowing to go through all keys of\n * the key/value pairs contained in this object.\n *\n * @returns {function}\n */\n if (!('keys' in USPProto)) {\n USPProto.keys = function() {\n var items = [];\n this.forEach(function(item, name) {\n items.push(name);\n });\n return makeIterator(items);\n };\n }\n\n /**\n * Returns an iterator allowing to go through all values of\n * the key/value pairs contained in this object.\n *\n * @returns {function}\n */\n if (!('values' in USPProto)) {\n USPProto.values = function() {\n var items = [];\n this.forEach(function(item) {\n items.push(item);\n });\n return makeIterator(items);\n };\n }\n\n /**\n * Returns an iterator allowing to go through all key/value\n * pairs contained in this object.\n *\n * @returns {function}\n */\n if (!('entries' in USPProto)) {\n USPProto.entries = function() {\n var items = [];\n this.forEach(function(item, name) {\n items.push([name, item]);\n });\n return makeIterator(items);\n };\n }\n\n if (iterable) {\n USPProto[self.Symbol.iterator] = USPProto[self.Symbol.iterator] || USPProto.entries;\n }\n\n if (!('size' in USPProto)) {\n Object.defineProperty(USPProto, 'size', {\n get: function () {\n var dict = parseToDict(this.toString())\n if (USPProto === this) {\n throw new TypeError('Illegal invocation at URLSearchParams.invokeGetter')\n }\n return Object.keys(dict).reduce(function (prev, cur) {\n return prev + dict[cur].length;\n }, 0);\n }\n });\n }\n\n function encode(str) {\n var replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'\\(\\)~]|%20|%00/g, function(match) {\n return replace[match];\n });\n }\n\n function decode(str) {\n return str\n .replace(/[ +]/g, '%20')\n .replace(/(%[a-f0-9]{2})+/ig, function(match) {\n return decodeURIComponent(match);\n });\n }\n\n function makeIterator(arr) {\n var iterator = {\n next: function() {\n var value = arr.shift();\n return {done: value === undefined, value: value};\n }\n };\n\n if (iterable) {\n iterator[self.Symbol.iterator] = function() {\n return iterator;\n };\n }\n\n return iterator;\n }\n\n function parseToDict(search) {\n var dict = {};\n\n if (typeof search === \"object\") {\n // if `search` is an array, treat it as a sequence\n if (isArray(search)) {\n for (var i = 0; i < search.length; i++) {\n var item = search[i];\n if (isArray(item) && item.length === 2) {\n appendTo(dict, item[0], item[1]);\n } else {\n throw new TypeError(\"Failed to construct 'URLSearchParams': Sequence initializer must only contain pair elements\");\n }\n }\n\n } else {\n for (var key in search) {\n if (search.hasOwnProperty(key)) {\n appendTo(dict, key, search[key]);\n }\n }\n }\n\n } else {\n // remove first '?'\n if (search.indexOf(\"?\") === 0) {\n search = search.slice(1);\n }\n\n var pairs = search.split(\"&\");\n for (var j = 0; j < pairs.length; j++) {\n var value = pairs [j],\n index = value.indexOf('=');\n\n if (-1 < index) {\n appendTo(dict, decode(value.slice(0, index)), decode(value.slice(index + 1)));\n\n } else {\n if (value) {\n appendTo(dict, decode(value), '');\n }\n }\n }\n }\n\n return dict;\n }\n\n function appendTo(dict, name, value) {\n var val = typeof value === 'string' ? value : (\n value !== null && value !== undefined && typeof value.toString === 'function' ? value.toString() : JSON.stringify(value)\n );\n\n // #47 Prevent using `hasOwnProperty` as a property name\n if (hasOwnProperty(dict, name)) {\n dict[name].push(val);\n } else {\n dict[name] = [val];\n }\n }\n\n function isArray(val) {\n return !!val && '[object Array]' === Object.prototype.toString.call(val);\n }\n\n function hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n\n})(typeof global !== 'undefined' ? global : (typeof window !== 'undefined' ? window : this));\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTab\",class:{ 'icon-loading': _vm.loading }},[(_vm.error)?_c('div',{staticClass:\"emptycontent\",class:{ emptyContentWithSections: _vm.sections.length > 0 }},[_c('div',{staticClass:\"icon icon-error\"}),_vm._v(\" \"),_c('h2',[_vm._v(_vm._s(_vm.error))])]):_vm._e(),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView),expression:\"!showSharingDetailsView\"}],staticClass:\"sharingTab__content\"},[_c('ul',[(_vm.isSharedWithMe)?_c('SharingEntrySimple',_vm._b({staticClass:\"sharing-entry__reshare\",scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.sharedWithMe.user,\"display-name\":_vm.sharedWithMe.displayName}})]},proxy:true}],null,false,3197855346)},'SharingEntrySimple',_vm.sharedWithMe,false)):_vm._e()],1),_vm._v(\" \"),(!_vm.loading)?_c('SharingInput',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"link-shares\":_vm.linkShares,\"reshare\":_vm.reshare,\"shares\":_vm.shares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingLinkList',{ref:\"linkShareList\",attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo,\"shares\":_vm.linkShares},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('SharingList',{ref:\"shareList\",attrs:{\"shares\":_vm.shares,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":_vm.toggleShareDetailsView}}):_vm._e(),_vm._v(\" \"),(_vm.canReshare && !_vm.loading)?_c('SharingInherited',{attrs:{\"file-info\":_vm.fileInfo}}):_vm._e(),_vm._v(\" \"),_c('SharingEntryInternal',{attrs:{\"file-info\":_vm.fileInfo}}),_vm._v(\" \"),(_vm.projectsEnabled && _vm.fileInfo)?_c('CollectionList',{attrs:{\"id\":`${_vm.fileInfo.id}`,\"type\":\"file\",\"name\":_vm.fileInfo.name}}):_vm._e()],1),_vm._v(\" \"),_vm._l((_vm.sections),function(section,index){return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showSharingDetailsView),expression:\"!showSharingDetailsView\"}],key:index,ref:'section-' + index,refInFor:true,staticClass:\"sharingTab__additionalContent\"},[_c(section(_vm.$refs['section-'+index], _vm.fileInfo),{tag:\"component\",attrs:{\"file-info\":_vm.fileInfo}})],1)}),_vm._v(\" \"),(_vm.showSharingDetailsView)?_c('SharingDetailsTab',{attrs:{\"file-info\":_vm.shareDetailsData.fileInfo,\"share\":_vm.shareDetailsData.share},on:{\"close-sharing-details\":_vm.toggleShareDetailsView,\"add:share\":_vm.addShare,\"remove:share\":_vm.removeShare}}):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n import API from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../css-loader/dist/cjs.js!./index-Au1Gr_G6.css\";\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 \"!!../../../css-loader/dist/cjs.js!./index-Au1Gr_G6.css\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nexport default now;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nexport default trimmedEndIndex;\n","import trimmedEndIndex from './_trimmedEndIndex.js';\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nexport default baseTrim;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","import baseTrim from './_baseTrim.js';\nimport isObject from './isObject.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nexport default toNumber;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import isObject from './isObject.js';\nimport now from './now.js';\nimport toNumber from './toNumber.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nexport default debounce;\n","import './assets/index-Au1Gr_G6.css';\nimport w from \"@nextcloud/vue/dist/Components/NcAvatar.js\";\nimport O from \"@nextcloud/vue/dist/Components/NcSelect.js\";\nimport T from \"lodash-es/debounce.js\";\nimport S from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport k from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport A, { set as f } from \"vue\";\nimport $ from \"@nextcloud/axios\";\nimport { generateOcsUrl as d } from \"@nextcloud/router\";\n/*\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nclass D {\n constructor() {\n this.http = $;\n }\n listCollection(e) {\n return this.http.get(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }));\n }\n renameCollection(e, o) {\n return this.http.put(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }), {\n collectionName: o\n }).then((n) => n.data.ocs.data);\n }\n getCollectionsByResource(e, o) {\n return this.http.get(d(\"collaboration/resources/{resourceType}/{resourceId}\", { resourceType: e, resourceId: o })).then((n) => n.data.ocs.data);\n }\n createCollection(e, o, n) {\n return this.http.post(d(\"collaboration/resources/{resourceType}/{resourceId}\", { resourceType: e, resourceId: o }), {\n name: n\n }).then((r) => r.data.ocs.data);\n }\n addResource(e, o, n) {\n return n = \"\" + n, this.http.post(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }), {\n resourceType: o,\n resourceId: n\n }).then((r) => r.data.ocs.data);\n }\n removeResource(e, o, n) {\n return this.http.delete(d(\"collaboration/resources/collections/{collectionId}\", { collectionId: e }), { params: { resourceType: o, resourceId: n } }).then((r) => r.data.ocs.data);\n }\n search(e) {\n return this.http.get(d(\"collaboration/resources/collections/search/{query}\", { query: e })).then((o) => o.data.ocs.data);\n }\n}\nconst p = new D();\n/*\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nconst u = A.observable({\n collections: []\n}), h = {\n addCollections(s) {\n f(u, \"collections\", s);\n },\n addCollection(s) {\n u.collections.push(s);\n },\n removeCollection(s) {\n f(u, \"collections\", u.collections.filter((e) => e.id !== s));\n },\n updateCollection(s) {\n const e = u.collections.findIndex((o) => o.id === s.id);\n e !== -1 ? f(u.collections, e, s) : u.collections.push(s);\n }\n}, l = {\n fetchCollectionsByResource({ resourceType: s, resourceId: e }) {\n return p.getCollectionsByResource(s, e).then((o) => (h.addCollections(o), o));\n },\n createCollection({ baseResourceType: s, baseResourceId: e, resourceType: o, resourceId: n, name: r }) {\n return p.createCollection(s, e, r).then((m) => {\n h.addCollection(m), l.addResourceToCollection({\n collectionId: m.id,\n resourceType: o,\n resourceId: n\n });\n });\n },\n renameCollection({ collectionId: s, name: e }) {\n return p.renameCollection(s, e).then((o) => (h.updateCollection(o), o));\n },\n addResourceToCollection({ collectionId: s, resourceType: e, resourceId: o }) {\n return p.addResource(s, e, o).then((n) => (h.updateCollection(n), n));\n },\n removeResource({ collectionId: s, resourceType: e, resourceId: o }) {\n return p.removeResource(s, e, o).then((n) => {\n n.resources.length > 0 ? h.updateCollection(n) : h.removeCollection(n);\n });\n },\n search(s) {\n return p.search(s);\n }\n};\nfunction R(s, e, o, n, r, m, _, I) {\n var i = typeof s == \"function\" ? s.options : s;\n e && (i.render = e, i.staticRenderFns = o, i._compiled = !0), n && (i.functional = !0), m && (i._scopeId = \"data-v-\" + m);\n var a;\n if (_ ? (a = function(c) {\n c = c || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, !c && typeof __VUE_SSR_CONTEXT__ < \"u\" && (c = __VUE_SSR_CONTEXT__), r && r.call(this, c), c && c._registeredComponents && c._registeredComponents.add(_);\n }, i._ssrRegister = a) : r && (a = I ? function() {\n r.call(\n this,\n (i.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : r), a)\n if (i.functional) {\n i._injectStyles = a;\n var b = i.render;\n i.render = function(N, v) {\n return a.call(v), b(N, v);\n };\n } else {\n var C = i.beforeCreate;\n i.beforeCreate = C ? [].concat(C, a) : [a];\n }\n return {\n exports: s,\n options: i\n };\n}\nconst B = {\n name: \"CollectionListItem\",\n components: {\n NcAvatar: w,\n NcActions: S,\n NcActionButton: k\n },\n props: {\n collection: {\n type: Object,\n default: null\n }\n },\n data() {\n return {\n detailsOpen: !1,\n newName: null,\n error: {}\n };\n },\n computed: {\n getIcon() {\n return (s) => [s.iconClass];\n },\n typeClass() {\n return (s) => \"resource-type-\" + s.type;\n },\n limitedResources() {\n return (s) => s.resources ? s.resources.slice(0, 2) : [];\n },\n iconUrl() {\n return (s) => s.mimetype ? OC.MimeType.getIconUrl(s.mimetype) : s.iconUrl ? s.iconUrl : \"\";\n }\n },\n methods: {\n toggleDetails() {\n this.detailsOpen = !this.detailsOpen;\n },\n showDetails() {\n this.detailsOpen = !0;\n },\n hideDetails() {\n this.detailsOpen = !1;\n },\n removeResource(s, e) {\n l.removeResource({\n collectionId: s.id,\n resourceType: e.type,\n resourceId: e.id\n });\n },\n openRename() {\n this.newName = this.collection.name;\n },\n renameCollection() {\n if (this.newName === \"\") {\n this.newName = null;\n return;\n }\n l.renameCollection({\n collectionId: this.collection.id,\n name: this.newName\n }).then((s) => {\n this.newName = null;\n }).catch((s) => {\n this.$set(this.error, \"rename\", t(\"core\", \"Failed to rename the project\")), console.error(s), setTimeout(() => {\n f(this.error, \"rename\", null);\n }, 3e3);\n });\n }\n }\n};\nvar E = function() {\n var e = this, o = e._self._c;\n return o(\"li\", { staticClass: \"collection-list-item\" }, [o(\"NcAvatar\", { staticClass: \"collection-avatar\", attrs: { \"display-name\": e.collection.name, \"allow-placeholder\": \"\" } }), e.newName === null ? o(\"span\", { staticClass: \"collection-item-name\", attrs: { title: \"\" }, on: { click: e.showDetails } }, [e._v(e._s(e.collection.name))]) : o(\"form\", { class: { shouldshake: e.error.rename }, on: { submit: function(n) {\n return n.preventDefault(), e.renameCollection.apply(null, arguments);\n } } }, [o(\"input\", { directives: [{ name: \"model\", rawName: \"v-model\", value: e.newName, expression: \"newName\" }], attrs: { type: \"text\", autocomplete: \"off\", autocapitalize: \"off\" }, domProps: { value: e.newName }, on: { input: function(n) {\n n.target.composing || (e.newName = n.target.value);\n } } }), o(\"input\", { staticClass: \"icon-confirm\", attrs: { type: \"submit\", value: \"\" } })]), !e.detailsOpen && e.newName === null ? o(\"div\", { staticClass: \"linked-icons\" }, e._l(e.limitedResources(e.collection), function(n) {\n return o(\"a\", { key: n.type + \"|\" + n.id, class: e.typeClass(n), attrs: { title: n.name, href: n.link } }, [o(\"img\", { attrs: { src: e.iconUrl(n) } })]);\n }), 0) : e._e(), e.newName === null ? o(\"span\", { staticClass: \"sharingOptionsGroup\" }, [o(\"NcActions\", [o(\"NcActionButton\", { attrs: { icon: \"icon-info\" }, on: { click: function(n) {\n return n.preventDefault(), e.toggleDetails.apply(null, arguments);\n } } }, [e._v(\" \" + e._s(e.detailsOpen ? e.t(\"core\", \"Hide details\") : e.t(\"core\", \"Show details\")) + \" \")]), o(\"NcActionButton\", { attrs: { icon: \"icon-rename\" }, on: { click: function(n) {\n return n.preventDefault(), e.openRename.apply(null, arguments);\n } } }, [e._v(\" \" + e._s(e.t(\"core\", \"Rename project\")) + \" \")])], 1)], 1) : e._e(), o(\"transition\", { attrs: { name: \"fade\" } }, [e.error.rename ? o(\"div\", { staticClass: \"error\" }, [e._v(\" \" + e._s(e.error.rename) + \" \")]) : e._e()]), o(\"transition\", { attrs: { name: \"fade\" } }, [e.detailsOpen ? o(\"ul\", { staticClass: \"resource-list-details\" }, e._l(e.collection.resources, function(n) {\n return o(\"li\", { key: n.type + \"|\" + n.id, class: e.typeClass(n) }, [o(\"a\", { attrs: { href: n.link } }, [o(\"img\", { attrs: { src: e.iconUrl(n) } }), o(\"span\", { staticClass: \"resource-name\" }, [e._v(e._s(n.name || \"\"))])]), o(\"span\", { staticClass: \"icon-close\", on: { click: function(r) {\n return e.removeResource(e.collection, n);\n } } })]);\n }), 0) : e._e()])], 1);\n}, L = [], U = /* @__PURE__ */ R(\n B,\n E,\n L,\n !1,\n null,\n \"8e58e0a5\",\n null,\n null\n);\nconst j = U.exports, y = 0, g = 1, F = T(\n function(s, e) {\n s !== \"\" && (e(!0), l.search(s).then((o) => {\n this.searchCollections = o;\n }).catch((o) => {\n console.error(\"Failed to search for collections\", o);\n }).finally(() => {\n e(!1);\n }));\n },\n 500,\n {}\n), P = {\n name: \"CollectionList\",\n components: {\n CollectionListItem: j,\n NcAvatar: w,\n NcSelect: O\n },\n props: {\n /**\n * Resource type identifier\n */\n type: {\n type: String,\n default: null\n },\n /**\n * Unique id of the resource\n */\n id: {\n type: String,\n default: null\n },\n /**\n * Name of the resource\n */\n name: {\n type: String,\n default: \"\"\n },\n isActive: {\n type: Boolean,\n default: !0\n }\n },\n data() {\n return {\n selectIsOpen: !1,\n generatingCodes: !1,\n codes: void 0,\n value: null,\n model: {},\n searchCollections: [],\n error: null,\n state: u,\n isSelectOpen: !1\n };\n },\n computed: {\n collections() {\n return this.state.collections.filter((s) => typeof s.resources.find((e) => e && e.id === \"\" + this.id && e.type === this.type) < \"u\");\n },\n placeholder() {\n return this.isSelectOpen ? t(\"core\", \"Type to search for existing projects\") : t(\"core\", \"Add to a project\");\n },\n options() {\n const s = [];\n window.OCP.Collaboration.getTypes().sort().forEach((e) => {\n s.push({\n method: y,\n type: e,\n title: window.OCP.Collaboration.getLabel(e),\n class: window.OCP.Collaboration.getIcon(e),\n action: () => window.OCP.Collaboration.trigger(e)\n });\n });\n for (const e in this.searchCollections)\n this.collections.findIndex((o) => o.id === this.searchCollections[e].id) === -1 && s.push({\n method: g,\n title: this.searchCollections[e].name,\n collectionId: this.searchCollections[e].id\n });\n return s;\n }\n },\n watch: {\n type() {\n this.isActive && l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n },\n id() {\n this.isActive && l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n },\n isActive(s) {\n s && l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n }\n },\n mounted() {\n l.fetchCollectionsByResource({\n resourceType: this.type,\n resourceId: this.id\n });\n },\n methods: {\n select(s, e) {\n s.method === y && s.action().then((o) => {\n l.createCollection({\n baseResourceType: this.type,\n baseResourceId: this.id,\n resourceType: s.type,\n resourceId: o,\n name: this.name\n }).catch((n) => {\n this.setError(t(\"core\", \"Failed to create a project\"), n);\n });\n }).catch((o) => {\n console.error(\"No resource selected\", o);\n }), s.method === g && l.addResourceToCollection({\n collectionId: s.collectionId,\n resourceType: this.type,\n resourceId: this.id\n }).catch((o) => {\n this.setError(t(\"core\", \"Failed to add the item to the project\"), o);\n });\n },\n search(s, e) {\n F.bind(this)(s, e);\n },\n showSelect() {\n this.selectIsOpen = !0, this.$refs.select.$el.focus();\n },\n hideSelect() {\n this.selectIsOpen = !1;\n },\n isVueComponent(s) {\n return s._isVue;\n },\n setError(s, e) {\n console.error(s, e), this.error = s, setTimeout(() => {\n this.error = null;\n }, 5e3);\n }\n }\n};\nvar V = function() {\n var e = this, o = e._self._c;\n return e.collections && e.type && e.id ? o(\"ul\", { staticClass: \"collection-list\", attrs: { id: \"collection-list\" } }, [o(\"li\", { on: { click: e.showSelect } }, [e._m(0), o(\"div\", { attrs: { id: \"collection-select-container\" } }, [o(\"NcSelect\", { ref: \"select\", attrs: { \"aria-label-combobox\": e.t(\"core\", \"Add to a project\"), options: e.options, placeholder: e.placeholder, label: \"title\", limit: 5 }, on: { close: function(n) {\n e.isSelectOpen = !1;\n }, open: function(n) {\n e.isSelectOpen = !0;\n }, \"option:selected\": e.select, search: e.search }, scopedSlots: e._u([{ key: \"selected-option\", fn: function(n) {\n return [o(\"span\", { staticClass: \"option__desc\" }, [o(\"span\", { staticClass: \"option__title\" }, [e._v(e._s(n.title))])])];\n } }, { key: \"option\", fn: function(n) {\n return [o(\"span\", { staticClass: \"option__wrapper\" }, [n.class ? o(\"span\", { staticClass: \"avatar\", class: n.class }) : n.method !== 2 ? o(\"NcAvatar\", { attrs: { \"allow-placeholder\": \"\", \"display-name\": n.title } }) : e._e(), o(\"span\", { staticClass: \"option__title\" }, [e._v(e._s(n.title))])], 1)];\n } }], null, !1, 2397208459), model: { value: e.value, callback: function(n) {\n e.value = n;\n }, expression: \"value\" } }, [o(\"p\", { staticClass: \"hint\" }, [e._v(\" \" + e._s(e.t(\"core\", \"Connect items to a project to make them easier to find\")) + \" \")])])], 1)]), o(\"transition\", { attrs: { name: \"fade\" } }, [e.error ? o(\"li\", { staticClass: \"error\" }, [e._v(\" \" + e._s(e.error) + \" \")]) : e._e()]), e._l(e.collections, function(n) {\n return o(\"CollectionListItem\", { key: n.id, attrs: { collection: n } });\n })], 2) : e._e();\n}, x = [function() {\n var s = this, e = s._self._c;\n return e(\"div\", { staticClass: \"avatar\" }, [e(\"span\", { staticClass: \"icon-projects\" })]);\n}], H = /* @__PURE__ */ R(\n P,\n V,\n x,\n !1,\n null,\n \"75a4370b\",\n null,\n null\n);\nconst Q = H.exports;\nexport {\n Q as CollectionList,\n j as CollectionListItem\n};\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Arthur Schiwon <blizzz@arthur-schiwon.de>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getCapabilities } from '@nextcloud/capabilities'\n\nexport default class Config {\n\n\tconstructor() {\n\t\tthis._capabilities = getCapabilities()\n\t}\n\n\t/**\n\t * Get default share permissions, if any\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\t get defaultPermissions() {\n\t\treturn this._capabilities.files_sharing?.default_permissions\n\t}\n\n\t/**\n\t * Is public upload allowed on link shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isPublicUploadEnabled() {\n\t\treturn this._capabilities.files_sharing?.public.upload\n\t}\n\n\t/**\n\t * Are link share allowed ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isShareWithLinkAllowed() {\n\t\treturn document.getElementById('allowShareWithLink')\n\t\t\t&& document.getElementById('allowShareWithLink').value === 'yes'\n\t}\n\n\t/**\n\t * Get the federated sharing documentation link\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget federatedShareDocLink() {\n\t\treturn OC.appConfig.core.federatedCloudShareDoc\n\t}\n\n\t/**\n\t * Get the default link share expiration date\n\t *\n\t * @return {Date|null}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultExpirationDate() {\n\t\tif (this.isDefaultExpireDateEnabled) {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + this.defaultExpireDate))\n\t\t}\n\t\treturn null\n\t}\n\n\t/**\n\t * Get the default internal expiration date\n\t *\n\t * @return {Date|null}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultInternalExpirationDate() {\n\t\tif (this.isDefaultInternalExpireDateEnabled) {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + this.defaultInternalExpireDate))\n\t\t}\n\t\treturn null\n\t}\n\n\t/**\n\t * Get the default remote expiration date\n\t *\n\t * @return {Date|null}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultRemoteExpirationDateString() {\n\t\tif (this.isDefaultRemoteExpireDateEnabled) {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + this.defaultRemoteExpireDate))\n\t\t}\n\t\treturn null\n\t}\n\n\t/**\n\t * Are link shares password-enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget enforcePasswordForPublicLink() {\n\t\treturn OC.appConfig.core.enforcePasswordForPublicLink === true\n\t}\n\n\t/**\n\t * Is password asked by default on link shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget enableLinkPasswordByDefault() {\n\t\treturn OC.appConfig.core.enableLinkPasswordByDefault === true\n\t}\n\n\t/**\n\t * Is link shares expiration enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultExpireDateEnforced() {\n\t\treturn OC.appConfig.core.defaultExpireDateEnforced === true\n\t}\n\n\t/**\n\t * Is there a default expiration date for new link shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultExpireDateEnabled() {\n\t\treturn OC.appConfig.core.defaultExpireDateEnabled === true\n\t}\n\n\t/**\n\t * Is internal shares expiration enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultInternalExpireDateEnforced() {\n\t\treturn OC.appConfig.core.defaultInternalExpireDateEnforced === true\n\t}\n\n\t/**\n\t * Is remote shares expiration enforced ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultRemoteExpireDateEnforced() {\n\t\treturn OC.appConfig.core.defaultRemoteExpireDateEnforced === true\n\t}\n\n\t/**\n\t * Is there a default expiration date for new internal shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultInternalExpireDateEnabled() {\n\t\treturn OC.appConfig.core.defaultInternalExpireDateEnabled === true\n\t}\n\n\t/**\n\t * Is there a default expiration date for new remote shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isDefaultRemoteExpireDateEnabled() {\n\t\treturn OC.appConfig.core.defaultRemoteExpireDateEnabled === true\n\t}\n\n\t/**\n\t * Are users on this server allowed to send shares to other servers ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isRemoteShareAllowed() {\n\t\treturn OC.appConfig.core.remoteShareAllowed === true\n\t}\n\n\t/**\n\t * Is sharing my mail (link share) enabled ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isMailShareAllowed() {\n\t\t// eslint-disable-next-line camelcase\n\t\treturn this._capabilities?.files_sharing?.sharebymail !== undefined\n\t\t\t// eslint-disable-next-line camelcase\n\t\t\t&& this._capabilities?.files_sharing?.public?.enabled === true\n\t}\n\n\t/**\n\t * Get the default days to link shares expiration\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultExpireDate() {\n\t\treturn OC.appConfig.core.defaultExpireDate\n\t}\n\n\t/**\n\t * Get the default days to internal shares expiration\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultInternalExpireDate() {\n\t\treturn OC.appConfig.core.defaultInternalExpireDate\n\t}\n\n\t/**\n\t * Get the default days to remote shares expiration\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget defaultRemoteExpireDate() {\n\t\treturn OC.appConfig.core.defaultRemoteExpireDate\n\t}\n\n\t/**\n\t * Is resharing allowed ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isResharingAllowed() {\n\t\treturn OC.appConfig.core.resharingAllowed === true\n\t}\n\n\t/**\n\t * Is password enforced for mail shares ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget isPasswordForMailSharesRequired() {\n\t\treturn (this._capabilities.files_sharing.sharebymail === undefined) ? false : this._capabilities.files_sharing.sharebymail.password.enforced\n\t}\n\n\t/**\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget shouldAlwaysShowUnique() {\n\t\treturn (this._capabilities.files_sharing?.sharee?.always_show_unique === true)\n\t}\n\n\t/**\n\t * Is sharing with groups allowed ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget allowGroupSharing() {\n\t\treturn OC.appConfig.core.allowGroupSharing === true\n\t}\n\n\t/**\n\t * Get the maximum results of a share search\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget maxAutocompleteResults() {\n\t\treturn parseInt(OC.config['sharing.maxAutocompleteResults'], 10) || 25\n\t}\n\n\t/**\n\t * Get the minimal string length\n\t * to initiate a share search\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget minSearchStringLength() {\n\t\treturn parseInt(OC.config['sharing.minSearchStringLength'], 10) || 0\n\t}\n\n\t/**\n\t * Get the password policy config\n\t *\n\t * @return {object}\n\t * @readonly\n\t * @memberof Config\n\t */\n\tget passwordPolicy() {\n\t\treturn this._capabilities.password_policy ? this._capabilities.password_policy : {}\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Gary Kim <gary@garykim.dev>\n * @author Georg Ehrke <oc.list@georgehrke.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class Share {\n\n\t_share\n\n\t/**\n\t * Create the share object\n\t *\n\t * @param {object} ocsData ocs request response\n\t */\n\tconstructor(ocsData) {\n\t\tif (ocsData.ocs && ocsData.ocs.data && ocsData.ocs.data[0]) {\n\t\t\tocsData = ocsData.ocs.data[0]\n\t\t}\n\n\t\t// convert int into boolean\n\t\tocsData.hide_download = !!ocsData.hide_download\n\t\tocsData.mail_send = !!ocsData.mail_send\n\n\t\tif (ocsData.attributes && typeof ocsData.attributes === 'string') {\n\t\t\ttry {\n\t\t\t\tocsData.attributes = JSON.parse(ocsData.attributes)\n\t\t\t} catch (e) {\n\t\t\t\tconsole.warn('Could not parse share attributes returned by server', ocsData.attributes)\n\t\t\t}\n\t\t}\n\t\tocsData.attributes = ocsData.attributes ?? []\n\n\t\t// store state\n\t\tthis._share = ocsData\n\t}\n\n\t/**\n\t * Get the share state\n\t * ! used for reactivity purpose\n\t * Do not remove. It allow vuejs to\n\t * inject its watchers into the #share\n\t * state and make the whole class reactive\n\t *\n\t * @return {object} the share raw state\n\t * @readonly\n\t * @memberof Sidebar\n\t */\n\tget state() {\n\t\treturn this._share\n\t}\n\n\t/**\n\t * get the share id\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget id() {\n\t\treturn this._share.id\n\t}\n\n\t/**\n\t * Get the share type\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget type() {\n\t\treturn this._share.share_type\n\t}\n\n\t/**\n\t * Get the share permissions\n\t * See OC.PERMISSION_* variables\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget permissions() {\n\t\treturn this._share.permissions\n\t}\n\n\t/**\n\t * Get the share attributes\n\t *\n\t * @return {Array}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget attributes() {\n\t\treturn this._share.attributes\n\t}\n\n\t/**\n\t * Set the share permissions\n\t * See OC.PERMISSION_* variables\n\t *\n\t * @param {number} permissions valid permission, See OC.PERMISSION_* variables\n\t * @memberof Share\n\t */\n\tset permissions(permissions) {\n\t\tthis._share.permissions = permissions\n\t}\n\n\t// SHARE OWNER --------------------------------------------------\n\t/**\n\t * Get the share owner uid\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget owner() {\n\t\treturn this._share.uid_owner\n\t}\n\n\t/**\n\t * Get the share owner's display name\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget ownerDisplayName() {\n\t\treturn this._share.displayname_owner\n\t}\n\n\t// SHARED WITH --------------------------------------------------\n\t/**\n\t * Get the share with entity uid\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWith() {\n\t\treturn this._share.share_with\n\t}\n\n\t/**\n\t * Get the share with entity display name\n\t * fallback to its uid if none\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithDisplayName() {\n\t\treturn this._share.share_with_displayname\n\t\t\t|| this._share.share_with\n\t}\n\n\t/**\n\t * Unique display name in case of multiple\n\t * duplicates results with the same name.\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithDisplayNameUnique() {\n\t\treturn this._share.share_with_displayname_unique\n\t\t\t|| this._share.share_with\n\t}\n\n\t/**\n\t * Get the share with entity link\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithLink() {\n\t\treturn this._share.share_with_link\n\t}\n\n\t/**\n\t * Get the share with avatar if any\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget shareWithAvatar() {\n\t\treturn this._share.share_with_avatar\n\t}\n\n\t// SHARED FILE OR FOLDER OWNER ----------------------------------\n\t/**\n\t * Get the shared item owner uid\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget uidFileOwner() {\n\t\treturn this._share.uid_file_owner\n\t}\n\n\t/**\n\t * Get the shared item display name\n\t * fallback to its uid if none\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget displaynameFileOwner() {\n\t\treturn this._share.displayname_file_owner\n\t\t\t|| this._share.uid_file_owner\n\t}\n\n\t// TIME DATA ----------------------------------------------------\n\t/**\n\t * Get the share creation timestamp\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget createdTime() {\n\t\treturn this._share.stime\n\t}\n\n\t/**\n\t * Get the expiration date\n\t *\n\t * @return {string} date with YYYY-MM-DD format\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget expireDate() {\n\t\treturn this._share.expiration\n\t}\n\n\t/**\n\t * Set the expiration date\n\t *\n\t * @param {string} date the share expiration date with YYYY-MM-DD format\n\t * @memberof Share\n\t */\n\tset expireDate(date) {\n\t\tthis._share.expiration = date\n\t}\n\n\t// EXTRA DATA ---------------------------------------------------\n\t/**\n\t * Get the public share token\n\t *\n\t * @return {string} the token\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget token() {\n\t\treturn this._share.token\n\t}\n\n\t/**\n\t * Get the share note if any\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget note() {\n\t\treturn this._share.note\n\t}\n\n\t/**\n\t * Set the share note if any\n\t *\n\t * @param {string} note the note\n\t * @memberof Share\n\t */\n\tset note(note) {\n\t\tthis._share.note = note\n\t}\n\n\t/**\n\t * Get the share label if any\n\t * Should only exist on link shares\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget label() {\n\t\treturn this._share.label ?? ''\n\t}\n\n\t/**\n\t * Set the share label if any\n\t * Should only be set on link shares\n\t *\n\t * @param {string} label the label\n\t * @memberof Share\n\t */\n\tset label(label) {\n\t\tthis._share.label = label\n\t}\n\n\t/**\n\t * Have a mail been sent\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget mailSend() {\n\t\treturn this._share.mail_send === true\n\t}\n\n\t/**\n\t * Hide the download button on public page\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hideDownload() {\n\t\treturn this._share.hide_download === true\n\t}\n\n\t/**\n\t * Hide the download button on public page\n\t *\n\t * @param {boolean} state hide the button ?\n\t * @memberof Share\n\t */\n\tset hideDownload(state) {\n\t\tthis._share.hide_download = state === true\n\t}\n\n\t/**\n\t * Password protection of the share\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget password() {\n\t\treturn this._share.password\n\t}\n\n\t/**\n\t * Password protection of the share\n\t *\n\t * @param {string} password the share password\n\t * @memberof Share\n\t */\n\tset password(password) {\n\t\tthis._share.password = password\n\t}\n\n\t/**\n\t * Password expiration time\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget passwordExpirationTime() {\n\t\treturn this._share.password_expiration_time\n\t}\n\n\t/**\n\t * Password expiration time\n\t *\n\t * @param {string} password expiration time\n\t * @memberof Share\n\t */\n\tset passwordExpirationTime(passwordExpirationTime) {\n\t\tthis._share.password_expiration_time = passwordExpirationTime\n\t}\n\n\t/**\n\t * Password protection by Talk of the share\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget sendPasswordByTalk() {\n\t\treturn this._share.send_password_by_talk\n\t}\n\n\t/**\n\t * Password protection by Talk of the share\n\t *\n\t * @param {boolean} sendPasswordByTalk whether to send the password by Talk\n\t * or not\n\t * @memberof Share\n\t */\n\tset sendPasswordByTalk(sendPasswordByTalk) {\n\t\tthis._share.send_password_by_talk = sendPasswordByTalk\n\t}\n\n\t// SHARED ITEM DATA ---------------------------------------------\n\t/**\n\t * Get the shared item absolute full path\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget path() {\n\t\treturn this._share.path\n\t}\n\n\t/**\n\t * Return the item type: file or folder\n\t *\n\t * @return {string} 'folder' or 'file'\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget itemType() {\n\t\treturn this._share.item_type\n\t}\n\n\t/**\n\t * Get the shared item mimetype\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget mimetype() {\n\t\treturn this._share.mimetype\n\t}\n\n\t/**\n\t * Get the shared item id\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget fileSource() {\n\t\treturn this._share.file_source\n\t}\n\n\t/**\n\t * Get the target path on the receiving end\n\t * e.g the file /xxx/aaa will be shared in\n\t * the receiving root as /aaa, the fileTarget is /aaa\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget fileTarget() {\n\t\treturn this._share.file_target\n\t}\n\n\t/**\n\t * Get the parent folder id if any\n\t *\n\t * @return {number}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget fileParent() {\n\t\treturn this._share.file_parent\n\t}\n\n\t// PERMISSIONS Shortcuts\n\n\t/**\n\t * Does this share have READ permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasReadPermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_READ))\n\t}\n\n\t/**\n\t * Does this share have CREATE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasCreatePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_CREATE))\n\t}\n\n\t/**\n\t * Does this share have DELETE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasDeletePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_DELETE))\n\t}\n\n\t/**\n\t * Does this share have UPDATE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasUpdatePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_UPDATE))\n\t}\n\n\t/**\n\t * Does this share have SHARE permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasSharePermission() {\n\t\treturn !!((this.permissions & OC.PERMISSION_SHARE))\n\t}\n\n\t/**\n\t * Does this share have download permissions\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget hasDownloadPermission() {\n\t\tfor (const i in this._share.attributes) {\n\t\t\tconst attr = this._share.attributes[i]\n\t\t\tif (attr.scope === 'permissions' && attr.key === 'download') {\n\t\t\t\treturn attr.enabled\n\t\t\t}\n\t\t}\n\n\t\treturn true\n\t}\n\n\tset hasDownloadPermission(enabled) {\n\t\tthis.setAttribute('permissions', 'download', !!enabled)\n\t}\n\n\tsetAttribute(scope, key, enabled) {\n\t\tconst attrUpdate = {\n\t\t\tscope,\n\t\t\tkey,\n\t\t\tenabled,\n\t\t}\n\n\t\t// try and replace existing\n\t\tfor (const i in this._share.attributes) {\n\t\t\tconst attr = this._share.attributes[i]\n\t\t\tif (attr.scope === attrUpdate.scope && attr.key === attrUpdate.key) {\n\t\t\t\tthis._share.attributes.splice(i, 1, attrUpdate)\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\n\t\tthis._share.attributes.push(attrUpdate)\n\t}\n\n\t// PERMISSIONS Shortcuts for the CURRENT USER\n\t// ! the permissions above are the share settings,\n\t// ! meaning the permissions for the recipient\n\t/**\n\t * Can the current user EDIT this share ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget canEdit() {\n\t\treturn this._share.can_edit === true\n\t}\n\n\t/**\n\t * Can the current user DELETE this share ?\n\t *\n\t * @return {boolean}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget canDelete() {\n\t\treturn this._share.can_delete === true\n\t}\n\n\t/**\n\t * Top level accessible shared folder fileid for the current user\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget viaFileid() {\n\t\treturn this._share.via_fileid\n\t}\n\n\t/**\n\t * Top level accessible shared folder path for the current user\n\t *\n\t * @return {string}\n\t * @readonly\n\t * @memberof Share\n\t */\n\tget viaPath() {\n\t\treturn this._share.via_path\n\t}\n\n\t// TODO: SORT THOSE PROPERTIES\n\n\tget parent() {\n\t\treturn this._share.parent\n\t}\n\n\tget storageId() {\n\t\treturn this._share.storage_id\n\t}\n\n\tget storage() {\n\t\treturn this._share.storage\n\t}\n\n\tget itemSource() {\n\t\treturn this._share.item_source\n\t}\n\n\tget status() {\n\t\treturn this._share.status\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { Type as ShareTypes } from '@nextcloud/sharing'\n\nexport default {\n\tdata() {\n\t\treturn {\n\t\t\tSHARE_TYPES: ShareTypes,\n\t\t}\n\t},\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',[_c('SharingEntrySimple',{ref:\"shareEntrySimple\",staticClass:\"sharing-entry__internal\",attrs:{\"title\":_vm.t('files_sharing', 'Internal link'),\"subtitle\":_vm.internalLinkSubtitle},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-external icon-external-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"title\":_vm.copyLinkTooltip,\"aria-label\":_vm.copyLinkTooltip},on:{\"click\":_vm.copyLink},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.copied && _vm.copySuccess)?_c('CheckIcon',{staticClass:\"icon-checkmark-color\",attrs:{\"size\":20}}):_c('ClipboardIcon',{attrs:{\"size\":20}})]},proxy:true}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon check-bold-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CheckBoldIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CheckBold.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CheckBold.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CheckBold.vue?vue&type=template&id=5603f41f\"\nimport script from \"./CheckBold.vue?vue&type=script&lang=js\"\nexport * from \"./CheckBold.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon check-bold-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardFlow.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ClipboardFlow.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon clipboard-flow-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M15,19L11,15H14V8H16V15H19L15,19M10,16H8V9H5L9,5L13,9H10V16\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ClipboardFlowIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./ClipboardFlow.vue?vue&type=template&id=62186d55\"\nimport script from \"./ClipboardFlow.vue?vue&type=script&lang=js\"\nexport * from \"./ClipboardFlow.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-flow-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3M15,19L11,15H14V8H16V15H19L15,19M10,16H8V9H5L9,5L13,9H10V16\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<li class=\"sharing-entry\">\n\t\t<slot name=\"avatar\" />\n\t\t<div class=\"sharing-entry__desc\">\n\t\t\t<span class=\"sharing-entry__title\">{{ title }}</span>\n\t\t\t<p v-if=\"subtitle\">\n\t\t\t\t{{ subtitle }}\n\t\t\t</p>\n\t\t</div>\n\t\t<NcActions v-if=\"$slots['default']\"\n\t\t\tref=\"actionsComponent\"\n\t\t\tclass=\"sharing-entry__actions\"\n\t\t\tmenu-align=\"right\"\n\t\t\t:aria-expanded=\"ariaExpandedValue\">\n\t\t\t<slot />\n\t\t</NcActions>\n\t</li>\n</template>\n\n<script>\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\n\nexport default {\n\tname: 'SharingEntrySimple',\n\n\tcomponents: {\n\t\tNcActions,\n\t},\n\n\tprops: {\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t\trequired: true,\n\t\t},\n\t\tsubtitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tisUnique: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\tariaExpanded: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tariaExpandedValue() {\n\t\t\tif (this.ariaExpanded === null) {\n\t\t\t\treturn this.ariaExpanded\n\t\t\t}\n\t\t\treturn this.ariaExpanded ? 'true' : 'false'\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\t&__desc {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tposition: relative;\n\t\tflex: 1 1;\n\t\tmin-width: 0;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__title {\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t\tmax-width: inherit;\n\t}\n\t&__actions {\n\t\tmargin-left: auto !important;\n\t}\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntrySimple.vue?vue&type=template&id=1852ea78&scoped=true\"\nimport script from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntrySimple.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntrySimple.vue?vue&type=style&index=0&id=1852ea78&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1852ea78\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry\"},[_vm._t(\"avatar\"),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\"},[_vm._v(_vm._s(_vm.title))]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\")]):_vm._e()]),_vm._v(\" \"),(_vm.$slots['default'])?_c('NcActions',{ref:\"actionsComponent\",staticClass:\"sharing-entry__actions\",attrs:{\"menu-align\":\"right\",\"aria-expanded\":_vm.ariaExpandedValue}},[_vm._t(\"default\")],2):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<ul>\n\t\t<SharingEntrySimple ref=\"shareEntrySimple\"\n\t\t\tclass=\"sharing-entry__internal\"\n\t\t\t:title=\"t('files_sharing', 'Internal link')\"\n\t\t\t:subtitle=\"internalLinkSubtitle\">\n\t\t\t<template #avatar>\n\t\t\t\t<div class=\"avatar-external icon-external-white\" />\n\t\t\t</template>\n\n\t\t\t<NcActionButton :title=\"copyLinkTooltip\"\n\t\t\t\t:aria-label=\"copyLinkTooltip\"\n\t\t\t\t@click=\"copyLink\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CheckIcon v-if=\"copied && copySuccess\"\n\t\t\t\t\t\t:size=\"20\"\n\t\t\t\t\t\tclass=\"icon-checkmark-color\" />\n\t\t\t\t\t<ClipboardIcon v-else :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionButton>\n\t\t</SharingEntrySimple>\n\t</ul>\n</template>\n\n<script>\nimport { generateUrl } from '@nextcloud/router'\nimport { showSuccess } from '@nextcloud/dialogs'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\n\nimport CheckIcon from 'vue-material-design-icons/CheckBold.vue'\nimport ClipboardIcon from 'vue-material-design-icons/ClipboardFlow.vue'\n\nimport SharingEntrySimple from './SharingEntrySimple.vue'\n\nexport default {\n\tname: 'SharingEntryInternal',\n\n\tcomponents: {\n\t\tNcActionButton,\n\t\tSharingEntrySimple,\n\t\tCheckIcon,\n\t\tClipboardIcon,\n\t},\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcopied: false,\n\t\t\tcopySuccess: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Get the internal link to this file id\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tinternalLink() {\n\t\t\treturn window.location.protocol + '//' + window.location.host + generateUrl('/f/') + this.fileInfo.id\n\t\t},\n\n\t\t/**\n\t\t * Tooltip message\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tcopyLinkTooltip() {\n\t\t\tif (this.copied) {\n\t\t\t\tif (this.copySuccess) {\n\t\t\t\t\treturn ''\n\t\t\t\t}\n\t\t\t\treturn t('files_sharing', 'Cannot copy, please copy the link manually')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Copy internal link to clipboard')\n\t\t},\n\n\t\tinternalLinkSubtitle() {\n\t\t\tif (this.fileInfo.type === 'dir') {\n\t\t\t\treturn t('files_sharing', 'Only works for people with access to this folder')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Only works for people with access to this file')\n\t\t},\n\t},\n\n\tmethods: {\n\t\tasync copyLink() {\n\t\t\ttry {\n\t\t\t\tawait navigator.clipboard.writeText(this.internalLink)\n\t\t\t\tshowSuccess(t('files_sharing', 'Link copied'))\n\t\t\t\tthis.$refs.shareEntrySimple.$refs.actionsComponent.$el.focus()\n\t\t\t\tthis.copySuccess = true\n\t\t\t\tthis.copied = true\n\t\t\t} catch (error) {\n\t\t\t\tthis.copySuccess = false\n\t\t\t\tthis.copied = true\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.copySuccess = false\n\t\t\t\t\tthis.copied = false\n\t\t\t\t}, 4000)\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry__internal {\n\t.avatar-external {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInternal.vue?vue&type=template&id=e40cd936&scoped=true\"\nimport script from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInternal.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInternal.vue?vue&type=style&index=0&id=e40cd936&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e40cd936\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharing-search\"},[_c('label',{attrs:{\"for\":\"sharing-search-input\"}},[_vm._v(_vm._s(_vm.t('files_sharing', 'Search for share recipients')))]),_vm._v(\" \"),_c('NcSelect',{ref:\"select\",staticClass:\"sharing-search__input\",attrs:{\"input-id\":\"sharing-search-input\",\"disabled\":!_vm.canReshare,\"loading\":_vm.loading,\"filterable\":false,\"placeholder\":_vm.inputPlaceholder,\"clear-search-on-blur\":() => false,\"user-select\":true,\"options\":_vm.options},on:{\"search\":_vm.asyncFind,\"option:selected\":_vm.onSelected},scopedSlots:_vm._u([{key:\"no-options\",fn:function({ search }){return [_vm._v(\"\\n\\t\\t\\t\"+_vm._s(search ? _vm.noResultText : _vm.t('files_sharing', 'No recommendations. Start typing.'))+\"\\n\\t\\t\")]}}]),model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport axios from '@nextcloud/axios'\nimport Config from '../services/ConfigService.js'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\n\nconst config = new Config()\n// note: some chars removed on purpose to make them human friendly when read out\nconst passwordSet = 'abcdefgijkmnopqrstwxyzABCDEFGHJKLMNPQRSTWXYZ23456789'\n\n/**\n * Generate a valid policy password or\n * request a valid password if password_policy\n * is enabled\n *\n * @return {string} a valid password\n */\nexport default async function() {\n\t// password policy is enabled, let's request a pass\n\tif (config.passwordPolicy.api && config.passwordPolicy.api.generate) {\n\t\ttry {\n\t\t\tconst request = await axios.get(config.passwordPolicy.api.generate)\n\t\t\tif (request.data.ocs.data.password) {\n\t\t\t\tshowSuccess(t('files_sharing', 'Password created successfully'))\n\t\t\t\treturn request.data.ocs.data.password\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.info('Error generating password from password_policy', error)\n\t\t\tshowError(t('files_sharing', 'Error generating password from password policy'))\n\t\t}\n\t}\n\n\tconst array = new Uint8Array(10)\n\tconst ratio = passwordSet.length / 255\n\tself.crypto.getRandomValues(array)\n\tlet password = ''\n\tfor (let i = 0; i < array.length; i++) {\n\t\tpassword += passwordSet.charAt(array[i] * ratio)\n\t}\n\treturn password\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// TODO: remove when ie not supported\nimport 'url-search-params-polyfill'\n\nimport { generateOcsUrl } from '@nextcloud/router'\nimport axios from '@nextcloud/axios'\nimport Share from '../models/Share.js'\nimport { emit } from '@nextcloud/event-bus'\n\nconst shareUrl = generateOcsUrl('apps/files_sharing/api/v1/shares')\n\nexport default {\n\tmethods: {\n\t\t/**\n\t\t * Create a new share\n\t\t *\n\t\t * @param {object} data destructuring object\n\t\t * @param {string} data.path path to the file/folder which should be shared\n\t\t * @param {number} data.shareType 0 = user; 1 = group; 3 = public link; 6 = federated cloud share\n\t\t * @param {string} data.shareWith user/group id with which the file should be shared (optional for shareType > 1)\n\t\t * @param {boolean} [data.publicUpload] allow public upload to a public shared folder\n\t\t * @param {string} [data.password] password to protect public link Share with\n\t\t * @param {number} [data.permissions] 1 = read; 2 = update; 4 = create; 8 = delete; 16 = share; 31 = all (default: 31, for public shares: 1)\n\t\t * @param {boolean} [data.sendPasswordByTalk] send the password via a talk conversation\n\t\t * @param {string} [data.expireDate] expire the shareautomatically after\n\t\t * @param {string} [data.label] custom label\n\t\t * @param {string} [data.attributes] Share attributes encoded as json\n\t\t * @param data.note\n\t\t * @return {Share} the new share\n\t\t * @throws {Error}\n\t\t */\n\t\tasync createShare({ path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes }) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.post(shareUrl, { path, permissions, shareType, shareWith, publicUpload, password, sendPasswordByTalk, expireDate, label, note, attributes })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\tconst share = new Share(request.data.ocs.data)\n\t\t\t\temit('files_sharing:share:created', { share })\n\t\t\t\treturn share\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error while creating share', error)\n\t\t\t\tconst errorMessage = error?.response?.data?.ocs?.meta?.message\n\t\t\t\tOC.Notification.showTemporary(\n\t\t\t\t\terrorMessage ? t('files_sharing', 'Error creating the share: {errorMessage}', { errorMessage }) : t('files_sharing', 'Error creating the share'),\n\t\t\t\t\t{ type: 'error' },\n\t\t\t\t)\n\t\t\t\tthrow error\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @throws {Error}\n\t\t */\n\t\tasync deleteShare(id) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.delete(shareUrl + `/${id}`)\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t}\n\t\t\t\temit('files_sharing:share:deleted', { id })\n\t\t\t\treturn true\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error while deleting share', error)\n\t\t\t\tconst errorMessage = error?.response?.data?.ocs?.meta?.message\n\t\t\t\tOC.Notification.showTemporary(\n\t\t\t\t\terrorMessage ? t('files_sharing', 'Error deleting the share: {errorMessage}', { errorMessage }) : t('files_sharing', 'Error deleting the share'),\n\t\t\t\t\t{ type: 'error' },\n\t\t\t\t)\n\t\t\t\tthrow error\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update a share\n\t\t *\n\t\t * @param {number} id share id\n\t\t * @param {object} properties key-value object of the properties to update\n\t\t */\n\t\tasync updateShare(id, properties) {\n\t\t\ttry {\n\t\t\t\tconst request = await axios.put(shareUrl + `/${id}`, properties)\n\t\t\t\temit('files_sharing:share:updated', { id })\n\t\t\t\tif (!request?.data?.ocs) {\n\t\t\t\t\tthrow request\n\t\t\t\t} else {\n\t\t\t\t\treturn request.data.ocs.data\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error while updating share', error)\n\t\t\t\tif (error.response.status !== 400) {\n\t\t\t\t\tconst errorMessage = error?.response?.data?.ocs?.meta?.message\n\t\t\t\t\tOC.Notification.showTemporary(\n\t\t\t\t\t\terrorMessage ? t('files_sharing', 'Error updating the share: {errorMessage}', { errorMessage }) : t('files_sharing', 'Error updating the share'),\n\t\t\t\t\t\t{ type: 'error' },\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t\tconst message = error.response.data.ocs.meta.message\n\t\t\t\tthrow new Error(message)\n\t\t\t}\n\t\t},\n\t},\n}\n","import Share from '../models/Share.js'\nimport Config from '../services/ConfigService.js'\n\nexport default {\n\tmethods: {\n\t\tasync openSharingDetails(shareRequestObject) {\n\t\t\tlet share = {}\n\t\t\t// handle externalResults from OCA.Sharing.ShareSearch\n\t\t\t// TODO : Better name/interface for handler required\n\t\t\t// For example `externalAppCreateShareHook` with proper documentation\n\t\t\tif (shareRequestObject.handler) {\n\t\t\t\tconst handlerInput = {}\n\t\t\t\tif (this.suggestions) {\n\t\t\t\t\thandlerInput.suggestions = this.suggestions\n\t\t\t\t\thandlerInput.fileInfo = this.fileInfo\n\t\t\t\t\thandlerInput.query = this.query\n\t\t\t\t}\n\t\t\t\tconst externalShareRequestObject = await shareRequestObject.handler(handlerInput)\n\t\t\t\tshare = this.mapShareRequestToShareObject(externalShareRequestObject)\n\t\t\t} else {\n\t\t\t\tshare = this.mapShareRequestToShareObject(shareRequestObject)\n\t\t\t}\n\n\t\t\tconst shareDetails = {\n\t\t\t\tfileInfo: this.fileInfo,\n\t\t\t\tshare,\n\t\t\t}\n\n\t\t\tthis.$emit('open-sharing-details', shareDetails)\n\t\t},\n\t\topenShareDetailsForCustomSettings(share) {\n\t\t\tshare.setCustomPermissions = true\n\t\t\tthis.openSharingDetails(share)\n\t\t},\n\t\tmapShareRequestToShareObject(shareRequestObject) {\n\n\t\t\tif (shareRequestObject.id) {\n\t\t\t\treturn shareRequestObject\n\t\t\t}\n\n\t\t\tconst share = {\n\t\t\t\tattributes: [\n\t\t\t\t\t{\n\t\t\t\t\t\tenabled: true,\n\t\t\t\t\t\tkey: 'download',\n\t\t\t\t\t\tscope: 'permissions',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tshare_type: shareRequestObject.shareType,\n\t\t\t\tshare_with: shareRequestObject.shareWith,\n\t\t\t\tis_no_user: shareRequestObject.isNoUser,\n\t\t\t\tuser: shareRequestObject.shareWith,\n\t\t\t\tshare_with_displayname: shareRequestObject.displayName,\n\t\t\t\tsubtitle: shareRequestObject.subtitle,\n\t\t\t\tpermissions: shareRequestObject.permissions ?? new Config().defaultPermissions,\n\t\t\t\texpiration: '',\n\t\t\t}\n\n\t\t\treturn new Share(share)\n\t\t},\n\t},\n}\n","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div class=\"sharing-search\">\n\t\t<label for=\"sharing-search-input\">{{ t('files_sharing', 'Search for share recipients') }}</label>\n\t\t<NcSelect ref=\"select\"\n\t\t\tv-model=\"value\"\n\t\t\tinput-id=\"sharing-search-input\"\n\t\t\tclass=\"sharing-search__input\"\n\t\t\t:disabled=\"!canReshare\"\n\t\t\t:loading=\"loading\"\n\t\t\t:filterable=\"false\"\n\t\t\t:placeholder=\"inputPlaceholder\"\n\t\t\t:clear-search-on-blur=\"() => false\"\n\t\t\t:user-select=\"true\"\n\t\t\t:options=\"options\"\n\t\t\t@search=\"asyncFind\"\n\t\t\t@option:selected=\"onSelected\">\n\t\t\t<template #no-options=\"{ search }\">\n\t\t\t\t{{ search ? noResultText : t('files_sharing', 'No recommendations. Start typing.') }}\n\t\t\t</template>\n\t\t</NcSelect>\n\t</div>\n</template>\n\n<script>\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { getCapabilities } from '@nextcloud/capabilities'\nimport axios from '@nextcloud/axios'\nimport debounce from 'debounce'\nimport NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'\n\nimport Config from '../services/ConfigService.js'\nimport GeneratePassword from '../utils/GeneratePassword.js'\nimport Share from '../models/Share.js'\nimport ShareRequests from '../mixins/ShareRequests.js'\nimport ShareTypes from '../mixins/ShareTypes.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\n\nexport default {\n\tname: 'SharingInput',\n\n\tcomponents: {\n\t\tNcSelect,\n\t},\n\n\tmixins: [ShareTypes, ShareRequests, ShareDetails],\n\n\tprops: {\n\t\tshares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t\tlinkShares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t\treshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t\tcanReshare: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tloading: false,\n\t\t\tquery: '',\n\t\t\trecommendations: [],\n\t\t\tShareSearch: OCA.Sharing.ShareSearch.state,\n\t\t\tsuggestions: [],\n\t\t\tvalue: null,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Implement ShareSearch\n\t\t * allows external appas to inject new\n\t\t * results into the autocomplete dropdown\n\t\t * Used for the guests app\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\texternalResults() {\n\t\t\treturn this.ShareSearch.results\n\t\t},\n\t\tinputPlaceholder() {\n\t\t\tconst allowRemoteSharing = this.config.isRemoteShareAllowed\n\n\t\t\tif (!this.canReshare) {\n\t\t\t\treturn t('files_sharing', 'Resharing is not allowed')\n\t\t\t}\n\t\t\t// We can always search with email addresses for users too\n\t\t\tif (!allowRemoteSharing) {\n\t\t\t\treturn t('files_sharing', 'Name or email …')\n\t\t\t}\n\n\t\t\treturn t('files_sharing', 'Name, email, or Federated Cloud ID …')\n\t\t},\n\n\t\tisValidQuery() {\n\t\t\treturn this.query && this.query.trim() !== '' && this.query.length > this.config.minSearchStringLength\n\t\t},\n\n\t\toptions() {\n\t\t\tif (this.isValidQuery) {\n\t\t\t\treturn this.suggestions\n\t\t\t}\n\t\t\treturn this.recommendations\n\t\t},\n\n\t\tnoResultText() {\n\t\t\tif (this.loading) {\n\t\t\t\treturn t('files_sharing', 'Searching …')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'No elements found.')\n\t\t},\n\t},\n\n\tmounted() {\n\t\tthis.getRecommendations()\n\t},\n\n\tmethods: {\n\t\tonSelected(option) {\n\t\t\tthis.value = null // Reset selected option\n\t\t\tthis.openSharingDetails(option)\n\t\t},\n\n\t\tasync asyncFind(query) {\n\t\t\t// save current query to check if we display\n\t\t\t// recommendations or search results\n\t\t\tthis.query = query.trim()\n\t\t\tif (this.isValidQuery) {\n\t\t\t\t// start loading now to have proper ux feedback\n\t\t\t\t// during the debounce\n\t\t\t\tthis.loading = true\n\t\t\t\tawait this.debounceGetSuggestions(query)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Get suggestions\n\t\t *\n\t\t * @param {string} search the search query\n\t\t * @param {boolean} [lookup] search on lookup server\n\t\t */\n\t\tasync getSuggestions(search, lookup = false) {\n\t\t\tthis.loading = true\n\n\t\t\tif (getCapabilities().files_sharing.sharee.query_lookup_default === true) {\n\t\t\t\tlookup = true\n\t\t\t}\n\n\t\t\tconst shareType = [\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_USER,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_GROUP,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_REMOTE,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_CIRCLE,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_ROOM,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_GUEST,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_DECK,\n\t\t\t\tthis.SHARE_TYPES.SHARE_TYPE_SCIENCEMESH,\n\t\t\t]\n\n\t\t\tif (getCapabilities().files_sharing.public.enabled === true) {\n\t\t\t\tshareType.push(this.SHARE_TYPES.SHARE_TYPE_EMAIL)\n\t\t\t}\n\n\t\t\tlet request = null\n\t\t\ttry {\n\t\t\t\trequest = await axios.get(generateOcsUrl('apps/files_sharing/api/v1/sharees'), {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat: 'json',\n\t\t\t\t\t\titemType: this.fileInfo.type === 'dir' ? 'folder' : 'file',\n\t\t\t\t\t\tsearch,\n\t\t\t\t\t\tlookup,\n\t\t\t\t\t\tperPage: this.config.maxAutocompleteResults,\n\t\t\t\t\t\tshareType,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error fetching suggestions', error)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst data = request.data.ocs.data\n\t\t\tconst exact = request.data.ocs.data.exact\n\t\t\tdata.exact = [] // removing exact from general results\n\n\t\t\t// flatten array of arrays\n\t\t\tconst rawExactSuggestions = Object.values(exact).reduce((arr, elem) => arr.concat(elem), [])\n\t\t\tconst rawSuggestions = Object.values(data).reduce((arr, elem) => arr.concat(elem), [])\n\n\t\t\t// remove invalid data and format to user-select layout\n\t\t\tconst exactSuggestions = this.filterOutExistingShares(rawExactSuggestions)\n\t\t\t\t.map(share => this.formatForMultiselect(share))\n\t\t\t\t// sort by type so we can get user&groups first...\n\t\t\t\t.sort((a, b) => a.shareType - b.shareType)\n\t\t\tconst suggestions = this.filterOutExistingShares(rawSuggestions)\n\t\t\t\t.map(share => this.formatForMultiselect(share))\n\t\t\t\t// sort by type so we can get user&groups first...\n\t\t\t\t.sort((a, b) => a.shareType - b.shareType)\n\n\t\t\t// lookup clickable entry\n\t\t\t// show if enabled and not already requested\n\t\t\tconst lookupEntry = []\n\t\t\tif (data.lookupEnabled && !lookup) {\n\t\t\t\tlookupEntry.push({\n\t\t\t\t\tid: 'global-lookup',\n\t\t\t\t\tisNoUser: true,\n\t\t\t\t\tdisplayName: t('files_sharing', 'Search globally'),\n\t\t\t\t\tlookup: true,\n\t\t\t\t})\n\t\t\t}\n\n\t\t\t// if there is a condition specified, filter it\n\t\t\tconst externalResults = this.externalResults.filter(result => !result.condition || result.condition(this))\n\n\t\t\tconst allSuggestions = exactSuggestions.concat(suggestions).concat(externalResults).concat(lookupEntry)\n\n\t\t\t// Count occurrences of display names in order to provide a distinguishable description if needed\n\t\t\tconst nameCounts = allSuggestions.reduce((nameCounts, result) => {\n\t\t\t\tif (!result.displayName) {\n\t\t\t\t\treturn nameCounts\n\t\t\t\t}\n\t\t\t\tif (!nameCounts[result.displayName]) {\n\t\t\t\t\tnameCounts[result.displayName] = 0\n\t\t\t\t}\n\t\t\t\tnameCounts[result.displayName]++\n\t\t\t\treturn nameCounts\n\t\t\t}, {})\n\n\t\t\tthis.suggestions = allSuggestions.map(item => {\n\t\t\t\t// Make sure that items with duplicate displayName get the shareWith applied as a description\n\t\t\t\tif (nameCounts[item.displayName] > 1 && !item.desc) {\n\t\t\t\t\treturn { ...item, desc: item.shareWithDisplayNameUnique }\n\t\t\t\t}\n\t\t\t\treturn item\n\t\t\t})\n\n\t\t\tthis.loading = false\n\t\t\tconsole.info('suggestions', this.suggestions)\n\t\t},\n\n\t\t/**\n\t\t * Debounce getSuggestions\n\t\t *\n\t\t * @param {...*} args the arguments\n\t\t */\n\t\tdebounceGetSuggestions: debounce(function(...args) {\n\t\t\tthis.getSuggestions(...args)\n\t\t}, 300),\n\n\t\t/**\n\t\t * Get the sharing recommendations\n\t\t */\n\t\tasync getRecommendations() {\n\t\t\tthis.loading = true\n\n\t\t\tlet request = null\n\t\t\ttry {\n\t\t\t\trequest = await axios.get(generateOcsUrl('apps/files_sharing/api/v1/sharees_recommended'), {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat: 'json',\n\t\t\t\t\t\titemType: this.fileInfo.type,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error('Error fetching recommendations', error)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Add external results from the OCA.Sharing.ShareSearch api\n\t\t\tconst externalResults = this.externalResults.filter(result => !result.condition || result.condition(this))\n\n\t\t\t// flatten array of arrays\n\t\t\tconst rawRecommendations = Object.values(request.data.ocs.data.exact)\n\t\t\t\t.reduce((arr, elem) => arr.concat(elem), [])\n\n\t\t\t// remove invalid data and format to user-select layout\n\t\t\tthis.recommendations = this.filterOutExistingShares(rawRecommendations)\n\t\t\t\t.map(share => this.formatForMultiselect(share))\n\t\t\t\t.concat(externalResults)\n\n\t\t\tthis.loading = false\n\t\t\tconsole.info('recommendations', this.recommendations)\n\t\t},\n\n\t\t/**\n\t\t * Filter out existing shares from\n\t\t * the provided shares search results\n\t\t *\n\t\t * @param {object[]} shares the array of shares object\n\t\t * @return {object[]}\n\t\t */\n\t\tfilterOutExistingShares(shares) {\n\t\t\treturn shares.reduce((arr, share) => {\n\t\t\t\t// only check proper objects\n\t\t\t\tif (typeof share !== 'object') {\n\t\t\t\t\treturn arr\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tif (share.value.shareType === this.SHARE_TYPES.SHARE_TYPE_USER) {\n\t\t\t\t\t\t// filter out current user\n\t\t\t\t\t\tif (share.value.shareWith === getCurrentUser().uid) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// filter out the owner of the share\n\t\t\t\t\t\tif (this.reshare && share.value.shareWith === this.reshare.owner) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// filter out existing mail shares\n\t\t\t\t\tif (share.value.shareType === this.SHARE_TYPES.SHARE_TYPE_EMAIL) {\n\t\t\t\t\t\tconst emails = this.linkShares.map(elem => elem.shareWith)\n\t\t\t\t\t\tif (emails.indexOf(share.value.shareWith.trim()) !== -1) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\t\t\t\t\t} else { // filter out existing shares\n\t\t\t\t\t\t// creating an object of uid => type\n\t\t\t\t\t\tconst sharesObj = this.shares.reduce((obj, elem) => {\n\t\t\t\t\t\t\tobj[elem.shareWith] = elem.type\n\t\t\t\t\t\t\treturn obj\n\t\t\t\t\t\t}, {})\n\n\t\t\t\t\t\t// if shareWith is the same and the share type too, ignore it\n\t\t\t\t\t\tconst key = share.value.shareWith.trim()\n\t\t\t\t\t\tif (key in sharesObj\n\t\t\t\t\t\t\t&& sharesObj[key] === share.value.shareType) {\n\t\t\t\t\t\t\treturn arr\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// ALL GOOD\n\t\t\t\t\t// let's add the suggestion\n\t\t\t\t\tarr.push(share)\n\t\t\t\t} catch {\n\t\t\t\t\treturn arr\n\t\t\t\t}\n\t\t\t\treturn arr\n\t\t\t}, [])\n\t\t},\n\n\t\t/**\n\t\t * Get the icon based on the share type\n\t\t *\n\t\t * @param {number} type the share type\n\t\t * @return {string} the icon class\n\t\t */\n\t\tshareTypeToIcon(type) {\n\t\t\tswitch (type) {\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_GUEST:\n\t\t\t\t// default is a user, other icons are here to differentiate\n\t\t\t\t// themselves from it, so let's not display the user icon\n\t\t\t\t// case this.SHARE_TYPES.SHARE_TYPE_REMOTE:\n\t\t\t\t// case this.SHARE_TYPES.SHARE_TYPE_USER:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-user',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Guest'),\n\t\t\t\t}\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP:\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_GROUP:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-group',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Group'),\n\t\t\t\t}\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_EMAIL:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-mail',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Email'),\n\t\t\t\t}\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_CIRCLE:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-teams',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Team'),\n\t\t\t\t}\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_ROOM:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-room',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Talk conversation'),\n\t\t\t\t}\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_DECK:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-deck',\n\t\t\t\t\ticonTitle: t('files_sharing', 'Deck board'),\n\t\t\t\t}\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_SCIENCEMESH:\n\t\t\t\treturn {\n\t\t\t\t\ticon: 'icon-sciencemesh',\n\t\t\t\t\ticonTitle: t('files_sharing', 'ScienceMesh'),\n\t\t\t\t}\n\t\t\tdefault:\n\t\t\t\treturn {}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Format shares for the multiselect options\n\t\t *\n\t\t * @param {object} result select entry item\n\t\t * @return {object}\n\t\t */\n\t\tformatForMultiselect(result) {\n\t\t\tlet subname\n\t\t\tif (result.value.shareType === this.SHARE_TYPES.SHARE_TYPE_USER && this.config.shouldAlwaysShowUnique) {\n\t\t\t\tsubname = result.shareWithDisplayNameUnique ?? ''\n\t\t\t} else if ((result.value.shareType === this.SHARE_TYPES.SHARE_TYPE_REMOTE\n\t\t\t\t\t|| result.value.shareType === this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP\n\t\t\t) && result.value.server) {\n\t\t\t\tsubname = t('files_sharing', 'on {server}', { server: result.value.server })\n\t\t\t} else if (result.value.shareType === this.SHARE_TYPES.SHARE_TYPE_EMAIL) {\n\t\t\t\tsubname = result.value.shareWith\n\t\t\t} else {\n\t\t\t\tsubname = result.shareWithDescription ?? ''\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tshareWith: result.value.shareWith,\n\t\t\t\tshareType: result.value.shareType,\n\t\t\t\tuser: result.uuid || result.value.shareWith,\n\t\t\t\tisNoUser: result.value.shareType !== this.SHARE_TYPES.SHARE_TYPE_USER,\n\t\t\t\tdisplayName: result.name || result.label,\n\t\t\t\tsubname,\n\t\t\t\tshareWithDisplayNameUnique: result.shareWithDisplayNameUnique || '',\n\t\t\t\t...this.shareTypeToIcon(result.value.shareType),\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\">\n.sharing-search {\n\tdisplay: flex;\n\tflex-direction: column;\n\tmargin-bottom: 4px;\n\n\tlabel[for=\"sharing-search-input\"] {\n\t\tmargin-bottom: 2px;\n\t}\n\n\t&__input {\n\t\twidth: 100%;\n\t\tmargin: 10px 0;\n\t}\n}\n\n.vs__dropdown-menu {\n\t// properly style the lookup entry\n\tspan[lookup] {\n\t\t.avatardiv {\n\t\t\tbackground-image: var(--icon-search-white);\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tbackground-color: var(--color-text-maxcontrast) !important;\n\t\t\t.avatardiv__initials-wrapper {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=style&index=0&id=19527463&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInput.vue?vue&type=style&index=0&id=19527463&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInput.vue?vue&type=template&id=19527463\"\nimport script from \"./SharingInput.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInput.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInput.vue?vue&type=style&index=0&id=19527463&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{attrs:{\"id\":\"sharing-inherited-shares\"}},[_c('SharingEntrySimple',{staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.mainTitle,\"subtitle\":_vm.subTitle,\"aria-expanded\":_vm.showInheritedShares},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('div',{staticClass:\"avatar-shared icon-more-white\"})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionButton',{attrs:{\"icon\":_vm.showInheritedSharesIcon,\"aria-label\":_vm.toggleTooltip,\"title\":_vm.toggleTooltip},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.toggleInheritedShares.apply(null, arguments)}}})],1),_vm._v(\" \"),_vm._l((_vm.shares),function(share){return _c('SharingEntryInherited',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share},on:{\"remove:share\":_vm.removeShare}})})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nexport const client = davGetClient();\nexport const fetchNode = async (node) => {\n const propfindPayload = davGetDefaultPropfind();\n const result = await client.stat(`${davRootPath}${node.path}`, {\n details: true,\n data: propfindPayload,\n });\n return davResultToNode(result.data);\n};\n","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport default getLoggerBuilder()\n .setApp('files_sharing')\n .detectUser()\n .build();\n","/**\n * @copyright 2022 Louis Chmn <louis@chmn.me>\n *\n * @author Louis Chmn <louis@chmn.me>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport const ATOMIC_PERMISSIONS = {\n\tNONE: 0,\n\tREAD: 1,\n\tUPDATE: 2,\n\tCREATE: 4,\n\tDELETE: 8,\n\tSHARE: 16,\n}\n\nexport const BUNDLED_PERMISSIONS = {\n\tREAD_ONLY: ATOMIC_PERMISSIONS.READ,\n\tUPLOAD_AND_UPDATE: ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.DELETE,\n\tFILE_DROP: ATOMIC_PERMISSIONS.CREATE,\n\tALL: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.CREATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.DELETE | ATOMIC_PERMISSIONS.SHARE,\n\tALL_FILE: ATOMIC_PERMISSIONS.UPDATE | ATOMIC_PERMISSIONS.READ | ATOMIC_PERMISSIONS.SHARE,\n}\n\n/**\n * Return whether a given permissions set contains some permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToCheck - the permissions to check.\n * @return {boolean}\n */\nexport function hasPermissions(initialPermissionSet, permissionsToCheck) {\n\treturn initialPermissionSet !== ATOMIC_PERMISSIONS.NONE && (initialPermissionSet & permissionsToCheck) === permissionsToCheck\n}\n\n/**\n * Return whether a given permissions set is valid.\n *\n * @param {number} permissionsSet - the permissions set.\n *\n * @return {boolean}\n */\nexport function permissionsSetIsValid(permissionsSet) {\n\t// Must have at least READ or CREATE permission.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && !hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.CREATE)) {\n\t\treturn false\n\t}\n\n\t// Must have READ permission if have UPDATE or DELETE.\n\tif (!hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.READ) && (\n\t\thasPermissions(permissionsSet, ATOMIC_PERMISSIONS.UPDATE) || hasPermissions(permissionsSet, ATOMIC_PERMISSIONS.DELETE)\n\t)) {\n\t\treturn false\n\t}\n\n\treturn true\n}\n\n/**\n * Add some permissions to an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToAdd - the permissions to add.\n *\n * @return {number}\n */\nexport function addPermissions(initialPermissionSet, permissionsToAdd) {\n\treturn initialPermissionSet | permissionsToAdd\n}\n\n/**\n * Remove some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the initial permissions.\n * @param {number} permissionsToSubtract - the permissions to remove.\n *\n * @return {number}\n */\nexport function subtractPermissions(initialPermissionSet, permissionsToSubtract) {\n\treturn initialPermissionSet & ~permissionsToSubtract\n}\n\n/**\n * Toggle some permissions from an initial set of permissions.\n *\n * @param {number} initialPermissionSet - the permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {number}\n */\nexport function togglePermissions(initialPermissionSet, permissionsToToggle) {\n\tif (hasPermissions(initialPermissionSet, permissionsToToggle)) {\n\t\treturn subtractPermissions(initialPermissionSet, permissionsToToggle)\n\t} else {\n\t\treturn addPermissions(initialPermissionSet, permissionsToToggle)\n\t}\n}\n\n/**\n * Return whether some given permissions can be toggled from a permission set.\n *\n * @param {number} permissionSet - the initial permissions set.\n * @param {number} permissionsToToggle - the permissions to toggle.\n *\n * @return {boolean}\n */\nexport function canTogglePermissions(permissionSet, permissionsToToggle) {\n\treturn permissionsSetIsValid(togglePermissions(permissionSet, permissionsToToggle))\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Gary Kim <gary@garykim.dev>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Vincent Petry <vincent@nextcloud.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { emit } from '@nextcloud/event-bus'\nimport { fetchNode } from '../services/WebdavClient.ts'\n\nimport PQueue from 'p-queue'\nimport debounce from 'debounce'\n\nimport Share from '../models/Share.js'\nimport SharesRequests from './ShareRequests.js'\nimport ShareTypes from './ShareTypes.js'\nimport Config from '../services/ConfigService.js'\nimport logger from '../services/logger.ts'\n\nimport {\n\tBUNDLED_PERMISSIONS,\n} from '../lib/SharePermissionsToolBox.js'\n\nexport default {\n\tmixins: [SharesRequests, ShareTypes],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { },\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t\tisUnique: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tnode: null,\n\n\t\t\t// errors helpers\n\t\t\terrors: {},\n\n\t\t\t// component status toggles\n\t\t\tloading: false,\n\t\t\tsaving: false,\n\t\t\topen: false,\n\n\t\t\t// concurrency management queue\n\t\t\t// we want one queue per share\n\t\t\tupdateQueue: new PQueue({ concurrency: 1 }),\n\n\t\t\t/**\n\t\t\t * ! This allow vue to make the Share class state reactive\n\t\t\t * ! do not remove it ot you'll lose all reactivity here\n\t\t\t */\n\t\t\treactiveState: this.share?.state,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tpath() {\n\t\t\treturn (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\t\t},\n\t\t/**\n\t\t * Does the current share have a note\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasNote: {\n\t\t\tget() {\n\t\t\t\treturn this.share.note !== ''\n\t\t\t},\n\t\t\tset(enabled) {\n\t\t\t\tthis.share.note = enabled\n\t\t\t\t\t? null // enabled but user did not changed the content yet\n\t\t\t\t\t: '' // empty = no note = disabled\n\t\t\t},\n\t\t},\n\n\t\tdateTomorrow() {\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + 1))\n\t\t},\n\n\t\t// Datepicker language\n\t\tlang() {\n\t\t\tconst weekdaysShort = window.dayNamesShort\n\t\t\t\t? window.dayNamesShort // provided by Nextcloud\n\t\t\t\t: ['Sun.', 'Mon.', 'Tue.', 'Wed.', 'Thu.', 'Fri.', 'Sat.']\n\t\t\tconst monthsShort = window.monthNamesShort\n\t\t\t\t? window.monthNamesShort // provided by Nextcloud\n\t\t\t\t: ['Jan.', 'Feb.', 'Mar.', 'Apr.', 'May.', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Oct.', 'Nov.', 'Dec.']\n\t\t\tconst firstDayOfWeek = window.firstDay ? window.firstDay : 0\n\n\t\t\treturn {\n\t\t\t\tformatLocale: {\n\t\t\t\t\tfirstDayOfWeek,\n\t\t\t\t\tmonthsShort,\n\t\t\t\t\tweekdaysMin: weekdaysShort,\n\t\t\t\t\tweekdaysShort,\n\t\t\t\t},\n\t\t\t\tmonthFormat: 'MMM',\n\t\t\t}\n\t\t},\n\t\tisFolder() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t},\n\t\tisPublicShare() {\n\t\t\tconst shareType = this.share.shareType ?? this.share.type\n\t\t\treturn [this.SHARE_TYPES.SHARE_TYPE_LINK, this.SHARE_TYPES.SHARE_TYPE_EMAIL].includes(shareType)\n\t\t},\n\t\tisRemoteShare() {\n\t\t\treturn this.share.type === this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP || this.share.type === this.SHARE_TYPES.SHARE_TYPE_REMOTE\n\t\t},\n\t\tisShareOwner() {\n\t\t\treturn this.share && this.share.owner === getCurrentUser().uid\n\t\t},\n\t\tisExpiryDateEnforced() {\n\t\t\tif (this.isPublicShare) {\n\t\t\t\treturn this.config.isDefaultExpireDateEnforced\n\t\t\t}\n\t\t\tif (this.isRemoteShare) {\n\t\t\t\treturn this.config.isDefaultRemoteExpireDateEnforced\n\t\t\t}\n\t\t\treturn this.config.isDefaultInternalExpireDateEnforced\n\t\t},\n\t\thasCustomPermissions() {\n\t\t\tconst bundledPermissions = [\n\t\t\t\tBUNDLED_PERMISSIONS.ALL,\n\t\t\t\tBUNDLED_PERMISSIONS.READ_ONLY,\n\t\t\t\tBUNDLED_PERMISSIONS.FILE_DROP,\n\t\t\t]\n\t\t\treturn !bundledPermissions.includes(this.share.permissions)\n\t\t},\n\t\tmaxExpirationDateEnforced() {\n\t\t\tif (this.isExpiryDateEnforced) {\n\t\t\t\tif (this.isPublicShare) {\n\t\t\t\t\treturn this.config.defaultExpirationDate\n\t\t\t\t}\n\t\t\t\tif (this.isRemoteShare) {\n\t\t\t\t\treturn this.config.defaultRemoteExpirationDateString\n\t\t\t\t}\n\t\t\t\t// If it get's here then it must be an internal share\n\t\t\t\treturn this.config.defaultInternalExpirationDate\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Fetch WebDAV node\n\t\t *\n\t\t * @return {Node}\n\t\t */\n\t\tasync getNode() {\n\t\t\tconst node = { path: this.path }\n\t\t\ttry {\n\t\t\t\tthis.node = await fetchNode(node)\n\t\t\t\tlogger.info('Fetched node:', { node: this.node })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error:', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Check if a share is valid before\n\t\t * firing the request\n\t\t *\n\t\t * @param {Share} share the share to check\n\t\t * @return {boolean}\n\t\t */\n\t\tcheckShare(share) {\n\t\t\tif (share.password) {\n\t\t\t\tif (typeof share.password !== 'string' || share.password.trim() === '') {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (share.expirationDate) {\n\t\t\t\tconst date = share.expirationDate\n\t\t\t\tif (!date.isValid()) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true\n\t\t},\n\n\t\t/**\n\t\t * @param {Date} date the date to format\n\t\t * @return {string} date a date with YYYY-MM-DD format\n\t\t */\n\t\tformatDateToString(date) {\n\t\t\t// Force utc time. Drop time information to be timezone-less\n\t\t\tconst utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))\n\t\t\t// Format to YYYY-MM-DD\n\t\t\treturn utcDate.toISOString().split('T')[0]\n\t\t},\n\n\t\t/**\n\t\t * Save given value to expireDate and trigger queueUpdate\n\t\t *\n\t\t * @param {Date} date\n\t\t */\n\t\tonExpirationChange(date) {\n\t\t\tthis.share.expireDate = this.formatDateToString(new Date(date))\n\t\t},\n\n\t\t/**\n\t\t * Uncheck expire date\n\t\t * We need this method because @update:checked\n\t\t * is ran simultaneously as @uncheck, so\n\t\t * so we cannot ensure data is up-to-date\n\t\t */\n\t\tonExpirationDisable() {\n\t\t\tthis.share.expireDate = ''\n\t\t},\n\n\t\t/**\n\t\t * Note changed, let's save it to a different key\n\t\t *\n\t\t * @param {string} note the share note\n\t\t */\n\t\tonNoteChange(note) {\n\t\t\tthis.$set(this.share, 'newNote', note.trim())\n\t\t},\n\n\t\t/**\n\t\t * When the note change, we trim, save and dispatch\n\t\t *\n\t\t */\n\t\tonNoteSubmit() {\n\t\t\tif (this.share.newNote) {\n\t\t\t\tthis.share.note = this.share.newNote\n\t\t\t\tthis.$delete(this.share, 'newNote')\n\t\t\t\tthis.queueUpdate('note')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Delete share button handler\n\t\t */\n\t\tasync onDelete() {\n\t\t\ttry {\n\t\t\t\tthis.loading = true\n\t\t\t\tthis.open = false\n\t\t\t\tawait this.deleteShare(this.share.id)\n\t\t\t\tconsole.debug('Share deleted', this.share.id)\n\t\t\t\tconst message = this.share.itemType === 'file'\n\t\t\t\t\t? t('files_sharing', 'File \"{path}\" has been unshared', { path: this.share.path })\n\t\t\t\t\t: t('files_sharing', 'Folder \"{path}\" has been unshared', { path: this.share.path })\n\t\t\t\tshowSuccess(message)\n\t\t\t\tthis.$emit('remove:share', this.share)\n\t\t\t\tawait this.getNode()\n\t\t\t\temit('files:node:updated', this.node)\n\t\t\t} catch (error) {\n\t\t\t\t// re-open menu if error\n\t\t\t\tthis.open = true\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Send an update of the share to the queue\n\t\t *\n\t\t * @param {Array<string>} propertyNames the properties to sync\n\t\t */\n\t\tqueueUpdate(...propertyNames) {\n\t\t\tif (propertyNames.length === 0) {\n\t\t\t\t// Nothing to update\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.share.id) {\n\t\t\t\tconst properties = {}\n\t\t\t\t// force value to string because that is what our\n\t\t\t\t// share api controller accepts\n\t\t\t\tpropertyNames.forEach(name => {\n\t\t\t\t\tif ((typeof this.share[name]) === 'object') {\n\t\t\t\t\t\tproperties[name] = JSON.stringify(this.share[name])\n\t\t\t\t\t} else {\n\t\t\t\t\t\tproperties[name] = this.share[name].toString()\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\tthis.updateQueue.add(async () => {\n\t\t\t\t\tthis.saving = true\n\t\t\t\t\tthis.errors = {}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst updatedShare = await this.updateShare(this.share.id, properties)\n\n\t\t\t\t\t\tif (propertyNames.indexOf('password') >= 0) {\n\t\t\t\t\t\t\t// reset password state after sync\n\t\t\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\n\t\t\t\t\t\t\t// updates password expiration time after sync\n\t\t\t\t\t\t\tthis.share.passwordExpirationTime = updatedShare.password_expiration_time\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// clear any previous errors\n\t\t\t\t\t\tthis.$delete(this.errors, propertyNames[0])\n\t\t\t\t\t\tshowSuccess(this.updateSuccessMessage(propertyNames))\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tlogger.error('Could not update share', { error, share: this.share, propertyNames })\n\n\t\t\t\t\t\tconst { message } = error\n\t\t\t\t\t\tif (message && message !== '') {\n\t\t\t\t\t\t\tthis.onSyncError(propertyNames[0], message)\n\t\t\t\t\t\t\tshowError(message)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// We do not have information what happened, but we should still inform the user\n\t\t\t\t\t\t\tshowError(t('files_sharing', 'Could not update share'))\n\t\t\t\t\t\t}\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tthis.saving = false\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// This share does not exists on the server yet\n\t\t\tconsole.debug('Updated local share', this.share)\n\t\t},\n\n\t\t/**\n\t\t * @param {string[]} names Properties changed\n\t\t */\n\t\tupdateSuccessMessage(names) {\n\t\t\tif (names.length !== 1) {\n\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\n\t\t\tswitch (names[0]) {\n\t\t\tcase 'expireDate':\n\t\t\t\treturn t('files_sharing', 'Share expire date saved')\n\t\t\tcase 'hideDownload':\n\t\t\t\treturn t('files_sharing', 'Share hide-download state saved')\n\t\t\tcase 'label':\n\t\t\t\treturn t('files_sharing', 'Share label saved')\n\t\t\tcase 'note':\n\t\t\t\treturn t('files_sharing', 'Share note for recipient saved')\n\t\t\tcase 'password':\n\t\t\t\treturn t('files_sharing', 'Share password saved')\n\t\t\tcase 'permissions':\n\t\t\t\treturn t('files_sharing', 'Share permissions saved')\n\t\t\tdefault:\n\t\t\t\treturn t('files_sharing', 'Share saved')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Manage sync errors\n\t\t *\n\t\t * @param {string} property the errored property, e.g. 'password'\n\t\t * @param {string} message the error message\n\t\t */\n\t\tonSyncError(property, message) {\n\t\t\t// re-open menu if closed\n\t\t\tthis.open = true\n\t\t\tswitch (property) {\n\t\t\tcase 'password':\n\t\t\tcase 'pending':\n\t\t\tcase 'expireDate':\n\t\t\tcase 'label':\n\t\t\tcase 'note': {\n\t\t\t\t// show error\n\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\tlet propertyEl = this.$refs[property]\n\t\t\t\tif (propertyEl) {\n\t\t\t\t\tif (propertyEl.$el) {\n\t\t\t\t\t\tpropertyEl = propertyEl.$el\n\t\t\t\t\t}\n\t\t\t\t\t// focus if there is a focusable action element\n\t\t\t\t\tconst focusable = propertyEl.querySelector('.focusable')\n\t\t\t\t\tif (focusable) {\n\t\t\t\t\t\tfocusable.focus()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tcase 'sendPasswordByTalk': {\n\t\t\t\t// show error\n\t\t\t\tthis.$set(this.errors, property, message)\n\n\t\t\t\t// Restore previous state\n\t\t\t\tthis.share.sendPasswordByTalk = !this.share.sendPasswordByTalk\n\t\t\t\tbreak\n\t\t\t}\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Debounce queueUpdate to avoid requests spamming\n\t\t * more importantly for text data\n\t\t *\n\t\t * @param {string} property the property to sync\n\t\t */\n\t\tdebounceQueueUpdate: debounce(function(property) {\n\t\t\tthis.queueUpdate(property)\n\t\t}, 500),\n\t},\n}\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<SharingEntrySimple :key=\"share.id\"\n\t\tclass=\"sharing-entry__inherited\"\n\t\t:title=\"share.shareWithDisplayName\">\n\t\t<template #avatar>\n\t\t\t<NcAvatar :user=\"share.shareWith\"\n\t\t\t\t:display-name=\"share.shareWithDisplayName\"\n\t\t\t\tclass=\"sharing-entry__avatar\" />\n\t\t</template>\n\t\t<NcActionText icon=\"icon-user\">\n\t\t\t{{ t('files_sharing', 'Added by {initiator}', { initiator: share.ownerDisplayName }) }}\n\t\t</NcActionText>\n\t\t<NcActionLink v-if=\"share.viaPath && share.viaFileid\"\n\t\t\ticon=\"icon-folder\"\n\t\t\t:href=\"viaFileTargetUrl\">\n\t\t\t{{ t('files_sharing', 'Via “{folder}”', {folder: viaFolderName} ) }}\n\t\t</NcActionLink>\n\t\t<NcActionButton v-if=\"share.canDelete\"\n\t\t\ticon=\"icon-close\"\n\t\t\t@click.prevent=\"onDelete\">\n\t\t\t{{ t('files_sharing', 'Unshare') }}\n\t\t</NcActionButton>\n\t</SharingEntrySimple>\n</template>\n\n<script>\nimport { generateUrl } from '@nextcloud/router'\nimport { basename } from '@nextcloud/paths'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcActionLink from '@nextcloud/vue/dist/Components/NcActionLink.js'\nimport NcActionText from '@nextcloud/vue/dist/Components/NcActionText.js'\n\n// eslint-disable-next-line no-unused-vars\nimport Share from '../models/Share.js'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport SharingEntrySimple from '../components/SharingEntrySimple.vue'\n\nexport default {\n\tname: 'SharingEntryInherited',\n\n\tcomponents: {\n\t\tNcActionButton,\n\t\tNcActionLink,\n\t\tNcActionText,\n\t\tNcAvatar,\n\t\tSharingEntrySimple,\n\t},\n\n\tmixins: [SharesMixin],\n\n\tprops: {\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tviaFileTargetUrl() {\n\t\t\treturn generateUrl('/f/{fileid}', {\n\t\t\t\tfileid: this.share.viaFileid,\n\t\t\t})\n\t\t},\n\n\t\tviaFolderName() {\n\t\t\treturn basename(this.share.viaPath)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__desc {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tline-height: 1.2em;\n\t\tp {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t}\n\t&__actions {\n\t\tmargin-left: auto;\n\t}\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryInherited.vue?vue&type=template&id=283ca89e&scoped=true\"\nimport script from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryInherited.vue?vue&type=style&index=0&id=283ca89e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"283ca89e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('SharingEntrySimple',{key:_vm.share.id,staticClass:\"sharing-entry__inherited\",attrs:{\"title\":_vm.share.shareWithDisplayName},scopedSlots:_vm._u([{key:\"avatar\",fn:function(){return [_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName}})]},proxy:true}])},[_vm._v(\" \"),_c('NcActionText',{attrs:{\"icon\":\"icon-user\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Added by {initiator}', { initiator: _vm.share.ownerDisplayName }))+\"\\n\\t\")]),_vm._v(\" \"),(_vm.share.viaPath && _vm.share.viaFileid)?_c('NcActionLink',{attrs:{\"icon\":\"icon-folder\",\"href\":_vm.viaFileTargetUrl}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Via “{folder}”', {folder: _vm.viaFolderName} ))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"icon\":\"icon-close\"},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\")]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<ul id=\"sharing-inherited-shares\">\n\t\t<!-- Main collapsible entry -->\n\t\t<SharingEntrySimple class=\"sharing-entry__inherited\"\n\t\t\t:title=\"mainTitle\"\n\t\t\t:subtitle=\"subTitle\"\n\t\t\t:aria-expanded=\"showInheritedShares\">\n\t\t\t<template #avatar>\n\t\t\t\t<div class=\"avatar-shared icon-more-white\" />\n\t\t\t</template>\n\t\t\t<NcActionButton :icon=\"showInheritedSharesIcon\"\n\t\t\t\t:aria-label=\"toggleTooltip\"\n\t\t\t\t:title=\"toggleTooltip\"\n\t\t\t\t@click.prevent.stop=\"toggleInheritedShares\" />\n\t\t</SharingEntrySimple>\n\n\t\t<!-- Inherited shares list -->\n\t\t<SharingEntryInherited v-for=\"share in shares\"\n\t\t\t:key=\"share.id\"\n\t\t\t:file-info=\"fileInfo\"\n\t\t\t:share=\"share\"\n\t\t\t@remove:share=\"removeShare\" />\n\t</ul>\n</template>\n\n<script>\nimport { generateOcsUrl } from '@nextcloud/router'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport axios from '@nextcloud/axios'\n\nimport Share from '../models/Share.js'\nimport SharingEntryInherited from '../components/SharingEntryInherited.vue'\nimport SharingEntrySimple from '../components/SharingEntrySimple.vue'\n\nexport default {\n\tname: 'SharingInherited',\n\n\tcomponents: {\n\t\tNcActionButton,\n\t\tSharingEntryInherited,\n\t\tSharingEntrySimple,\n\t},\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tloaded: false,\n\t\t\tloading: false,\n\t\t\tshowInheritedShares: false,\n\t\t\tshares: [],\n\t\t}\n\t},\n\tcomputed: {\n\t\tshowInheritedSharesIcon() {\n\t\t\tif (this.loading) {\n\t\t\t\treturn 'icon-loading-small'\n\t\t\t}\n\t\t\tif (this.showInheritedShares) {\n\t\t\t\treturn 'icon-triangle-n'\n\t\t\t}\n\t\t\treturn 'icon-triangle-s'\n\t\t},\n\t\tmainTitle() {\n\t\t\treturn t('files_sharing', 'Others with access')\n\t\t},\n\t\tsubTitle() {\n\t\t\treturn (this.showInheritedShares && this.shares.length === 0)\n\t\t\t\t? t('files_sharing', 'No other accounts with access found')\n\t\t\t\t: ''\n\t\t},\n\t\ttoggleTooltip() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t\t\t? t('files_sharing', 'Toggle list of others with access to this directory')\n\t\t\t\t: t('files_sharing', 'Toggle list of others with access to this file')\n\t\t},\n\t\tfullPath() {\n\t\t\tconst path = `${this.fileInfo.path}/${this.fileInfo.name}`\n\t\t\treturn path.replace('//', '/')\n\t\t},\n\t},\n\twatch: {\n\t\tfileInfo() {\n\t\t\tthis.resetState()\n\t\t},\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Toggle the list view and fetch/reset the state\n\t\t */\n\t\ttoggleInheritedShares() {\n\t\t\tthis.showInheritedShares = !this.showInheritedShares\n\t\t\tif (this.showInheritedShares) {\n\t\t\t\tthis.fetchInheritedShares()\n\t\t\t} else {\n\t\t\t\tthis.resetState()\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Fetch the Inherited Shares array\n\t\t */\n\t\tasync fetchInheritedShares() {\n\t\t\tthis.loading = true\n\t\t\ttry {\n\t\t\t\tconst url = generateOcsUrl('apps/files_sharing/api/v1/shares/inherited?format=json&path={path}', { path: this.fullPath })\n\t\t\t\tconst shares = await axios.get(url)\n\t\t\t\tthis.shares = shares.data.ocs.data\n\t\t\t\t\t.map(share => new Share(share))\n\t\t\t\t\t.sort((a, b) => b.createdTime - a.createdTime)\n\t\t\t\tconsole.info(this.shares)\n\t\t\t\tthis.loaded = true\n\t\t\t} catch (error) {\n\t\t\t\tOC.Notification.showTemporary(t('files_sharing', 'Unable to fetch inherited shares'), { type: 'error' })\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Reset current component state\n\t\t */\n\t\tresetState() {\n\t\t\tthis.loaded = false\n\t\t\tthis.loading = false\n\t\t\tthis.showInheritedShares = false\n\t\t\tthis.shares = []\n\t\t},\n\t\t/**\n\t\t * Remove a share from the shares list\n\t\t *\n\t\t * @param {Share} share the share to remove\n\t\t */\n\t\tremoveShare(share) {\n\t\t\tconst index = this.shares.findIndex(item => item === share)\n\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\tthis.shares.splice(index, 1)\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry__inherited {\n\t.avatar-shared {\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tline-height: 32px;\n\t\tfont-size: 18px;\n\t\tbackground-color: var(--color-text-maxcontrast);\n\t\tborder-radius: 50%;\n\t\tflex-shrink: 0;\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingInherited.vue?vue&type=template&id=50f9af8c&scoped=true\"\nimport script from \"./SharingInherited.vue?vue&type=script&lang=js\"\nexport * from \"./SharingInherited.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingInherited.vue?vue&type=style&index=0&id=50f9af8c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"50f9af8c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.canLinkShare)?_c('ul',{staticClass:\"sharing-link-list\"},[(!_vm.hasLinkShares && _vm.canReshare)?_c('SharingEntryLink',{attrs:{\"can-reshare\":_vm.canReshare,\"file-info\":_vm.fileInfo},on:{\"add:share\":_vm.addShare}}):_vm._e(),_vm._v(\" \"),(_vm.hasShares)?_vm._l((_vm.shares),function(share,index){return _c('SharingEntryLink',{key:share.id,attrs:{\"index\":_vm.shares.length > 1 ? index + 1 : null,\"can-reshare\":_vm.canReshare,\"share\":_vm.shares[index],\"file-info\":_vm.fileInfo},on:{\"update:share\":[function($event){return _vm.$set(_vm.shares, index, $event)},function($event){return _vm.awaitForShare(...arguments)}],\"add:share\":function($event){return _vm.addShare(...arguments)},\"remove:share\":_vm.removeShare,\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}):_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon tune-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TuneIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tune.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tune.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Tune.vue?vue&type=template&id=18d04e6a\"\nimport script from \"./Tune.vue?vue&type=script&lang=js\"\nexport * from \"./Tune.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tune-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlank.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CalendarBlank.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon calendar-blank-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CalendarBlankIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./CalendarBlank.vue?vue&type=template&id=41fe7db9\"\nimport script from \"./CalendarBlank.vue?vue&type=script&lang=js\"\nexport * from \"./CalendarBlank.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon calendar-blank-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Qrcode.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Qrcode.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon qrcode-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"QrcodeIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Qrcode.vue?vue&type=template&id=aba87788\"\nimport script from \"./Qrcode.vue?vue&type=script&lang=js\"\nexport * from \"./Qrcode.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon qrcode-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,11H5V13H3V11M11,5H13V9H11V5M9,11H13V15H11V13H9V11M15,11H17V13H19V11H21V13H19V15H21V19H19V21H17V19H13V21H11V17H15V15H17V13H15V11M19,19V15H17V19H19M15,3H21V9H15V3M17,5V7H19V5H17M3,3H9V9H3V3M5,5V7H7V5H5M3,15H9V21H3V15M5,17V19H7V17H5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Exclamation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Exclamation.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon exclamation-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ExclamationIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Exclamation.vue?vue&type=template&id=03239926\"\nimport script from \"./Exclamation.vue?vue&type=script&lang=js\"\nexport * from \"./Exclamation.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon exclamation-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M 11,4L 13,4L 13,15L 11,15L 11,4 Z M 13,18L 13,20L 11,20L 11,18L 13,18 Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Lock.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon lock-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"LockIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Lock.vue?vue&type=template&id=6d856da2\"\nimport script from \"./Lock.vue?vue&type=script&lang=js\"\nexport * from \"./Lock.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon lock-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon triangle-small-down-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M8 9H16L12 16\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TriangleSmallDownIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./TriangleSmallDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TriangleSmallDown.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TriangleSmallDown.vue?vue&type=template&id=1eed3dd9\"\nimport script from \"./TriangleSmallDown.vue?vue&type=script&lang=js\"\nexport * from \"./TriangleSmallDown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon triangle-small-down-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M8 9H16L12 16\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./EyeOutline.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon eye-outline-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"EyeOutlineIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./EyeOutline.vue?vue&type=template&id=e26de6f6\"\nimport script from \"./EyeOutline.vue?vue&type=script&lang=js\"\nexport * from \"./EyeOutline.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon eye-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,9A3,3 0 0,1 15,12A3,3 0 0,1 12,15A3,3 0 0,1 9,12A3,3 0 0,1 12,9M12,4.5C17,4.5 21.27,7.61 23,12C21.27,16.39 17,19.5 12,19.5C7,19.5 2.73,16.39 1,12C2.73,7.61 7,4.5 12,4.5M3.18,12C4.83,15.36 8.24,17.5 12,17.5C15.76,17.5 19.17,15.36 20.82,12C19.17,8.64 15.76,6.5 12,6.5C8.24,6.5 4.83,8.64 3.18,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon file-upload-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FileUploadIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileUpload.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FileUpload.vue?vue&type=template&id=caa55e94\"\nimport script from \"./FileUpload.vue?vue&type=script&lang=js\"\nexport * from \"./FileUpload.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-upload-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<NcActions ref=\"quickShareActions\"\n\t\tclass=\"share-select\"\n\t\t:menu-name=\"selectedOption\"\n\t\t:aria-label=\"ariaLabel\"\n\t\ttype=\"tertiary-no-background\"\n\t\t:disabled=\"!share.canEdit\"\n\t\tforce-name>\n\t\t<template #icon>\n\t\t\t<DropdownIcon :size=\"15\" />\n\t\t</template>\n\t\t<NcActionButton v-for=\"option in options\"\n\t\t\t:key=\"option.label\"\n\t\t\ttype=\"radio\"\n\t\t\t:model-value=\"option.label === selectedOption\"\n\t\t\tclose-after-click\n\t\t\t@click=\"selectOption(option.label)\">\n\t\t\t<template #icon>\n\t\t\t\t<component :is=\"option.icon\" />\n\t\t\t</template>\n\t\t\t{{ option.label }}\n\t\t</NcActionButton>\n\t</NcActions>\n</template>\n\n<script>\nimport DropdownIcon from 'vue-material-design-icons/TriangleSmallDown.vue'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\nimport ShareTypes from '../mixins/ShareTypes.js'\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport IconEyeOutline from 'vue-material-design-icons/EyeOutline.vue'\nimport IconPencil from 'vue-material-design-icons/Pencil.vue'\nimport IconFileUpload from 'vue-material-design-icons/FileUpload.vue'\nimport IconTune from 'vue-material-design-icons/Tune.vue'\n\nimport {\n\tBUNDLED_PERMISSIONS,\n\tATOMIC_PERMISSIONS,\n} from '../lib/SharePermissionsToolBox.js'\n\nexport default {\n\tname: 'SharingEntryQuickShareSelect',\n\n\tcomponents: {\n\t\tDropdownIcon,\n\t\tNcActions,\n\t\tNcActionButton,\n\t},\n\n\tmixins: [SharesMixin, ShareDetails, ShareTypes],\n\n\tprops: {\n\t\tshare: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\temits: ['open-sharing-details'],\n\n\tdata() {\n\t\treturn {\n\t\t\tselectedOption: '',\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tariaLabel() {\n\t\t\treturn t('files_sharing', 'Quick share options, the current selected is \"{selectedOption}\"', { selectedOption: this.selectedOption })\n\t\t},\n\t\tcanViewText() {\n\t\t\treturn t('files_sharing', 'View only')\n\t\t},\n\t\tcanEditText() {\n\t\t\treturn t('files_sharing', 'Can edit')\n\t\t},\n\t\tfileDropText() {\n\t\t\treturn t('files_sharing', 'File drop')\n\t\t},\n\t\tcustomPermissionsText() {\n\t\t\treturn t('files_sharing', 'Custom permissions')\n\t\t},\n\t\tpreSelectedOption() {\n\t\t\t// We remove the share permission for the comparison as it is not relevant for bundled permissions.\n\t\t\tif ((this.share.permissions & ~ATOMIC_PERMISSIONS.SHARE) === BUNDLED_PERMISSIONS.READ_ONLY) {\n\t\t\t\treturn this.canViewText\n\t\t\t} else if (this.share.permissions === BUNDLED_PERMISSIONS.ALL || this.share.permissions === BUNDLED_PERMISSIONS.ALL_FILE) {\n\t\t\t\treturn this.canEditText\n\t\t\t} else if ((this.share.permissions & ~ATOMIC_PERMISSIONS.SHARE) === BUNDLED_PERMISSIONS.FILE_DROP) {\n\t\t\t\treturn this.fileDropText\n\t\t\t}\n\n\t\t\treturn this.customPermissionsText\n\n\t\t},\n\t\toptions() {\n\t\t\tconst options = [{\n\t\t\t\tlabel: this.canViewText,\n\t\t\t\ticon: IconEyeOutline,\n\t\t\t}, {\n\t\t\t\tlabel: this.canEditText,\n\t\t\t\ticon: IconPencil,\n\t\t\t}]\n\t\t\tif (this.supportsFileDrop) {\n\t\t\t\toptions.push({\n\t\t\t\t\tlabel: this.fileDropText,\n\t\t\t\t\ticon: IconFileUpload,\n\t\t\t\t})\n\t\t\t}\n\t\t\toptions.push({\n\t\t\t\tlabel: this.customPermissionsText,\n\t\t\t\ticon: IconTune,\n\t\t\t})\n\n\t\t\treturn options\n\t\t},\n\t\tsupportsFileDrop() {\n\t\t\tif (this.isFolder && this.config.isPublicUploadEnabled) {\n\t\t\t\tconst shareType = this.share.type ?? this.share.shareType\n\t\t\t\treturn [this.SHARE_TYPES.SHARE_TYPE_LINK, this.SHARE_TYPES.SHARE_TYPE_EMAIL].includes(shareType)\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\tdropDownPermissionValue() {\n\t\t\tswitch (this.selectedOption) {\n\t\t\tcase this.canEditText:\n\t\t\t\treturn this.isFolder ? BUNDLED_PERMISSIONS.ALL : BUNDLED_PERMISSIONS.ALL_FILE\n\t\t\tcase this.fileDropText:\n\t\t\t\treturn BUNDLED_PERMISSIONS.FILE_DROP\n\t\t\tcase this.customPermissionsText:\n\t\t\t\treturn 'custom'\n\t\t\tcase this.canViewText:\n\t\t\tdefault:\n\t\t\t\treturn BUNDLED_PERMISSIONS.READ_ONLY\n\t\t\t}\n\t\t},\n\t},\n\n\tcreated() {\n\t\tthis.selectedOption = this.preSelectedOption\n\t},\n\n\tmethods: {\n\t\tselectOption(optionLabel) {\n\t\t\tthis.selectedOption = optionLabel\n\t\t\tif (optionLabel === this.customPermissionsText) {\n\t\t\t\tthis.$emit('open-sharing-details')\n\t\t\t} else {\n\t\t\t\tthis.share.permissions = this.dropDownPermissionValue\n\t\t\t\tthis.queueUpdate('permissions')\n\t\t\t\t// TODO: Add a focus method to NcActions or configurable returnFocus enabling to NcActionButton with closeAfterClick\n\t\t\t\tthis.$refs.quickShareActions.$refs.menuButton.$el.focus()\n\t\t\t}\n\t\t},\n\t},\n\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.share-select {\n\tdisplay: block;\n\n\t// TODO: NcActions should have a slot for custom trigger button like NcPopover\n\t// Overrider NcActionms button to make it small\n\t:deep(.action-item__menutoggle) {\n\t\tcolor: var(--color-primary-element) !important;\n\t\tfont-size: 12.5px !important;\n\t\theight: auto !important;\n\t\tmin-height: auto !important;\n\n\t\t.button-vue__text {\n\t\t\tfont-weight: normal !important;\n\t\t}\n\n\t\t.button-vue__icon {\n\t\t\theight: 24px !important;\n\t\t\tmin-height: 24px !important;\n\t\t\twidth: 24px !important;\n\t\t\tmin-width: 24px !important;\n\t\t}\n\n\t\t.button-vue__wrapper {\n\t\t\t// Emulate NcButton's alignment=center-reverse\n\t\t\tflex-direction: row-reverse !important;\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=dab76140&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=dab76140&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryQuickShareSelect.vue?vue&type=template&id=dab76140&scoped=true\"\nimport script from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryQuickShareSelect.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryQuickShareSelect.vue?vue&type=style&index=0&id=dab76140&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"dab76140\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcActions',{ref:\"quickShareActions\",staticClass:\"share-select\",attrs:{\"menu-name\":_vm.selectedOption,\"aria-label\":_vm.ariaLabel,\"type\":\"tertiary-no-background\",\"disabled\":!_vm.share.canEdit,\"force-name\":\"\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DropdownIcon',{attrs:{\"size\":15}})]},proxy:true}])},[_vm._v(\" \"),_vm._l((_vm.options),function(option){return _c('NcActionButton',{key:option.label,attrs:{\"type\":\"radio\",\"model-value\":option.label === _vm.selectedOption,\"close-after-click\":\"\"},on:{\"click\":function($event){return _vm.selectOption(option.label)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c(option.icon,{tag:\"component\"})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\"+_vm._s(option.label)+\"\\n\\t\")])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExternalShareAction.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ExternalShareAction.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Component :is=\"data.is\"\n\t\tv-bind=\"data\"\n\t\tv-on=\"action.handlers\">\n\t\t{{ data.text }}\n\t</Component>\n</template>\n\n<script>\nimport Share from '../models/Share.js'\n\nexport default {\n\tname: 'ExternalShareAction',\n\n\tprops: {\n\t\tid: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\taction: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => ({}),\n\t\t},\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Share,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tcomputed: {\n\t\tdata() {\n\t\t\treturn this.action.data(this)\n\t\t},\n\t},\n}\n</script>\n","import { render, staticRenderFns } from \"./ExternalShareAction.vue?vue&type=template&id=0f0e27d0\"\nimport script from \"./ExternalShareAction.vue?vue&type=script&lang=js\"\nexport * from \"./ExternalShareAction.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c(_vm.data.is,_vm._g(_vm._b({tag:\"Component\"},'Component',_vm.data,false),_vm.action.handlers),[_vm._v(\"\\n\\t\"+_vm._s(_vm.data.text)+\"\\n\")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<li :class=\"{ 'sharing-entry--share': share }\"\n\t\tclass=\"sharing-entry sharing-entry__link\">\n\t\t<NcAvatar :is-no-user=\"true\"\n\t\t\t:icon-class=\"isEmailShareType ? 'avatar-link-share icon-mail-white' : 'avatar-link-share icon-public-white'\"\n\t\t\tclass=\"sharing-entry__avatar\" />\n\n\t\t<div class=\"sharing-entry__summary\">\n\t\t\t<div class=\"sharing-entry__desc\">\n\t\t\t\t<span class=\"sharing-entry__title\" :title=\"title\">\n\t\t\t\t\t{{ title }}\n\t\t\t\t</span>\n\t\t\t\t<p v-if=\"subtitle\">\n\t\t\t\t\t{{ subtitle }}\n\t\t\t\t</p>\n\t\t\t\t<SharingEntryQuickShareSelect v-if=\"share && share.permissions !== undefined\"\n\t\t\t\t\t:share=\"share\"\n\t\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t\t@open-sharing-details=\"openShareDetailsForCustomSettings(share)\" />\n\t\t\t</div>\n\n\t\t\t<!-- clipboard -->\n\t\t\t<NcActions v-if=\"share && !isEmailShareType && share.token\" ref=\"copyButton\" class=\"sharing-entry__copy\">\n\t\t\t\t<NcActionButton\t:title=\"copyLinkTooltip\"\n\t\t\t\t\t:aria-label=\"copyLinkTooltip\"\n\t\t\t\t\t@click.prevent=\"copyLink\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CheckIcon v-if=\"copied && copySuccess\"\n\t\t\t\t\t\t\t:size=\"20\"\n\t\t\t\t\t\t\tclass=\"icon-checkmark-color\" />\n\t\t\t\t\t\t<ClipboardIcon v-else :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t</NcActionButton>\n\t\t\t</NcActions>\n\t\t</div>\n\n\t\t<!-- pending actions -->\n\t\t<NcActions v-if=\"!pending && pendingDataIsMissing\"\n\t\t\tclass=\"sharing-entry__actions\"\n\t\t\t:aria-label=\"actionsTooltip\"\n\t\t\tmenu-align=\"right\"\n\t\t\t:open.sync=\"open\"\n\t\t\t@close=\"onCancel\">\n\t\t\t<!-- pending data menu -->\n\t\t\t<NcActionText v-if=\"errors.pending\"\n\t\t\t\tclass=\"error\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<ErrorIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ errors.pending }}\n\t\t\t</NcActionText>\n\t\t\t<NcActionText v-else icon=\"icon-info\">\n\t\t\t\t{{ t('files_sharing', 'Please enter the following required information before creating the share') }}\n\t\t\t</NcActionText>\n\n\t\t\t<!-- password -->\n\t\t\t<NcActionCheckbox v-if=\"pendingPassword\"\n\t\t\t\t:checked.sync=\"isPasswordProtected\"\n\t\t\t\t:disabled=\"config.enforcePasswordForPublicLink || saving\"\n\t\t\t\tclass=\"share-link-password-checkbox\"\n\t\t\t\t@uncheck=\"onPasswordDisable\">\n\t\t\t\t{{ config.enforcePasswordForPublicLink ? t('files_sharing', 'Password protection (enforced)') : t('files_sharing', 'Password protection') }}\n\t\t\t</NcActionCheckbox>\n\n\t\t\t<NcActionInput v-if=\"pendingEnforcedPassword || share.password\"\n\t\t\t\tclass=\"share-link-password\"\n\t\t\t\t:label=\"t('files_sharing', 'Enter a password')\"\n\t\t\t\t:value.sync=\"share.password\"\n\t\t\t\t:disabled=\"saving\"\n\t\t\t\t:required=\"config.enableLinkPasswordByDefault || config.enforcePasswordForPublicLink\"\n\t\t\t\t:minlength=\"isPasswordPolicyEnabled && config.passwordPolicy.minLength\"\n\t\t\t\tautocomplete=\"new-password\"\n\t\t\t\t@submit=\"onNewLinkShare(true)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<LockIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionInput>\n\n\t\t\t<NcActionCheckbox v-if=\"pendingDefaultExpirationDate\"\n\t\t\t\t:checked.sync=\"defaultExpirationDateEnabled\"\n\t\t\t\t:disabled=\"pendingEnforcedExpirationDate || saving\"\n\t\t\t\tclass=\"share-link-expiration-date-checkbox\"\n\t\t\t\t@change=\"onDefaultExpirationDateEnabledChange\">\n\t\t\t\t{{ config.enforcePasswordForPublicLink ? t('files_sharing', 'Enable link expiration (enforced)') : t('files_sharing', 'Enable link expiration') }}\n\t\t\t</NcActionCheckbox>\n\n\t\t\t<!-- expiration date -->\n\t\t\t<NcActionInput v-if=\"(pendingDefaultExpirationDate || pendingEnforcedExpirationDate) && defaultExpirationDateEnabled\"\n\t\t\t\tclass=\"share-link-expire-date\"\n\t\t\t\t:label=\"pendingEnforcedExpirationDate ? t('files_sharing', 'Enter expiration date (enforced)') : t('files_sharing', 'Enter expiration date')\"\n\t\t\t\t:disabled=\"saving\"\n\t\t\t\t:is-native-picker=\"true\"\n\t\t\t\t:hide-label=\"true\"\n\t\t\t\t:value=\"new Date(share.expireDate)\"\n\t\t\t\ttype=\"date\"\n\t\t\t\t:min=\"dateTomorrow\"\n\t\t\t\t:max=\"maxExpirationDateEnforced\"\n\t\t\t\t@input=\"onExpirationChange /* let's not submit when picked, the user might want to still edit or copy the password */\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<IconCalendarBlank :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcActionInput>\n\n\t\t\t<NcActionButton @click.prevent.stop=\"onNewLinkShare(true)\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CheckIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ t('files_sharing', 'Create share') }}\n\t\t\t</NcActionButton>\n\t\t\t<NcActionButton @click.prevent.stop=\"onCancel\">\n\t\t\t\t<template #icon>\n\t\t\t\t\t<CloseIcon :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t\t{{ t('files_sharing', 'Cancel') }}\n\t\t\t</NcActionButton>\n\t\t</NcActions>\n\n\t\t<!-- actions -->\n\t\t<NcActions v-else-if=\"!loading\"\n\t\t\tclass=\"sharing-entry__actions\"\n\t\t\t:aria-label=\"actionsTooltip\"\n\t\t\tmenu-align=\"right\"\n\t\t\t:open.sync=\"open\"\n\t\t\t@close=\"onMenuClose\">\n\t\t\t<template v-if=\"share\">\n\t\t\t\t<template v-if=\"share.canEdit && canReshare\">\n\t\t\t\t\t<NcActionButton :disabled=\"saving\"\n\t\t\t\t\t\t:close-after-click=\"true\"\n\t\t\t\t\t\t@click.prevent=\"openSharingDetails\">\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<Tune :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t{{ t('files_sharing', 'Customize link') }}\n\t\t\t\t\t</NcActionButton>\n\t\t\t\t</template>\n\n\t\t\t\t<NcActionButton :close-after-click=\"true\"\n\t\t\t\t\t@click.prevent=\"showQRCode = true\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<IconQr :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('files_sharing', 'Generate QR code') }}\n\t\t\t\t</NcActionButton>\n\n\t\t\t\t<NcActionSeparator />\n\n\t\t\t\t<!-- external actions -->\n\t\t\t\t<ExternalShareAction v-for=\"action in externalLinkActions\"\n\t\t\t\t\t:id=\"action.id\"\n\t\t\t\t\t:key=\"action.id\"\n\t\t\t\t\t:action=\"action\"\n\t\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t\t:share=\"share\" />\n\n\t\t\t\t<!-- external legacy sharing via url (social...) -->\n\t\t\t\t<NcActionLink v-for=\"({ icon, url, name }, index) in externalLegacyLinkActions\"\n\t\t\t\t\t:key=\"index\"\n\t\t\t\t\t:href=\"url(shareLink)\"\n\t\t\t\t\t:icon=\"icon\"\n\t\t\t\t\ttarget=\"_blank\">\n\t\t\t\t\t{{ name }}\n\t\t\t\t</NcActionLink>\n\n\t\t\t\t<NcActionButton v-if=\"!isEmailShareType && canReshare\"\n\t\t\t\t\tclass=\"new-share-link\"\n\t\t\t\t\t@click.prevent.stop=\"onNewLinkShare\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<PlusIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('files_sharing', 'Add another link') }}\n\t\t\t\t</NcActionButton>\n\n\t\t\t\t<NcActionButton v-if=\"share.canDelete\"\n\t\t\t\t\t:disabled=\"saving\"\n\t\t\t\t\t@click.prevent=\"onDelete\">\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<CloseIcon :size=\"20\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t{{ t('files_sharing', 'Unshare') }}\n\t\t\t\t</NcActionButton>\n\t\t\t</template>\n\n\t\t\t<!-- Create new share -->\n\t\t\t<NcActionButton v-else-if=\"canReshare\"\n\t\t\t\tclass=\"new-share-link\"\n\t\t\t\t:title=\"t('files_sharing', 'Create a new share link')\"\n\t\t\t\t:aria-label=\"t('files_sharing', 'Create a new share link')\"\n\t\t\t\t:icon=\"loading ? 'icon-loading-small' : 'icon-add'\"\n\t\t\t\t@click.prevent.stop=\"onNewLinkShare\" />\n\t\t</NcActions>\n\n\t\t<!-- loading indicator to replace the menu -->\n\t\t<div v-else class=\"icon-loading-small sharing-entry__loading\" />\n\n\t\t<!-- Modal to open whenever we have a QR code -->\n\t\t<NcDialog v-if=\"showQRCode\"\n\t\t\tsize=\"normal\"\n\t\t\t:open.sync=\"showQRCode\"\n\t\t\t:name=\"title\"\n\t\t\t:close-on-click-outside=\"true\"\n\t\t\t@close=\"showQRCode = false\">\n\t\t\t<div class=\"qr-code-dialog\">\n\t\t\t\t<VueQrcode tag=\"img\"\n\t\t\t\t\t:value=\"shareLink\"\n\t\t\t\t\tclass=\"qr-code-dialog__img\" />\n\t\t\t</div>\n\t\t</NcDialog>\n\t</li>\n</template>\n\n<script>\nimport { emit } from '@nextcloud/event-bus'\nimport { generateUrl } from '@nextcloud/router'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { Type as ShareTypes } from '@nextcloud/sharing'\nimport Vue from 'vue'\nimport VueQrcode from '@chenfengyuan/vue-qrcode'\n\nimport NcActionButton from '@nextcloud/vue/dist/Components/NcActionButton.js'\nimport NcActionCheckbox from '@nextcloud/vue/dist/Components/NcActionCheckbox.js'\nimport NcActionInput from '@nextcloud/vue/dist/Components/NcActionInput.js'\nimport NcActionLink from '@nextcloud/vue/dist/Components/NcActionLink.js'\nimport NcActionText from '@nextcloud/vue/dist/Components/NcActionText.js'\nimport NcActionSeparator from '@nextcloud/vue/dist/Components/NcActionSeparator.js'\nimport NcActions from '@nextcloud/vue/dist/Components/NcActions.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcDialog from '@nextcloud/vue/dist/Components/NcDialog.js'\n\nimport Tune from 'vue-material-design-icons/Tune.vue'\nimport IconCalendarBlank from 'vue-material-design-icons/CalendarBlank.vue'\nimport IconQr from 'vue-material-design-icons/Qrcode.vue'\nimport ErrorIcon from 'vue-material-design-icons/Exclamation.vue'\nimport LockIcon from 'vue-material-design-icons/Lock.vue'\nimport CheckIcon from 'vue-material-design-icons/CheckBold.vue'\nimport ClipboardIcon from 'vue-material-design-icons/ClipboardFlow.vue'\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\nimport PlusIcon from 'vue-material-design-icons/Plus.vue'\n\nimport SharingEntryQuickShareSelect from './SharingEntryQuickShareSelect.vue'\n\nimport ExternalShareAction from './ExternalShareAction.vue'\nimport GeneratePassword from '../utils/GeneratePassword.js'\nimport Share from '../models/Share.js'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default {\n\tname: 'SharingEntryLink',\n\n\tcomponents: {\n\t\tExternalShareAction,\n\t\tNcActions,\n\t\tNcActionButton,\n\t\tNcActionCheckbox,\n\t\tNcActionInput,\n\t\tNcActionLink,\n\t\tNcActionText,\n\t\tNcActionSeparator,\n\t\tNcAvatar,\n\t\tNcDialog,\n\t\tVueQrcode,\n\t\tTune,\n\t\tIconCalendarBlank,\n\t\tIconQr,\n\t\tErrorIcon,\n\t\tLockIcon,\n\t\tCheckIcon,\n\t\tClipboardIcon,\n\t\tCloseIcon,\n\t\tPlusIcon,\n\t\tSharingEntryQuickShareSelect,\n\t},\n\n\tmixins: [SharesMixin, ShareDetails],\n\n\tprops: {\n\t\tcanReshare: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true,\n\t\t},\n\t\tindex: {\n\t\t\ttype: Number,\n\t\t\tdefault: null,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tshareCreationComplete: false,\n\t\t\tcopySuccess: true,\n\t\t\tcopied: false,\n\t\t\tdefaultExpirationDateEnabled: false,\n\n\t\t\t// Are we waiting for password/expiration date\n\t\t\tpending: false,\n\n\t\t\tExternalLegacyLinkActions: OCA.Sharing.ExternalLinkActions.state,\n\t\t\tExternalShareActions: OCA.Sharing.ExternalShareActions.state,\n\t\t\tlogger: getLoggerBuilder()\n\t\t\t\t.setApp('files_sharing')\n\t\t\t\t.detectUser()\n\t\t\t\t.build(),\n\n\t\t\t// tracks whether modal should be opened or not\n\t\t\tshowQRCode: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Link share label\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\ttitle() {\n\t\t\t// if we have a valid existing share (not pending)\n\t\t\tif (this.share && this.share.id) {\n\t\t\t\tif (!this.isShareOwner && this.share.ownerDisplayName) {\n\t\t\t\t\tif (this.isEmailShareType) {\n\t\t\t\t\t\treturn t('files_sharing', '{shareWith} by {initiator}', {\n\t\t\t\t\t\t\tshareWith: this.share.shareWith,\n\t\t\t\t\t\t\tinitiator: this.share.ownerDisplayName,\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\treturn t('files_sharing', 'Shared via link by {initiator}', {\n\t\t\t\t\t\tinitiator: this.share.ownerDisplayName,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (this.share.label && this.share.label.trim() !== '') {\n\t\t\t\t\tif (this.isEmailShareType) {\n\t\t\t\t\t\treturn t('files_sharing', 'Mail share ({label})', {\n\t\t\t\t\t\t\tlabel: this.share.label.trim(),\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\treturn t('files_sharing', 'Share link ({label})', {\n\t\t\t\t\t\tlabel: this.share.label.trim(),\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t\tif (this.isEmailShareType) {\n\t\t\t\t\treturn this.share.shareWith\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (this.index > 1) {\n\t\t\t\treturn t('files_sharing', 'Share link ({index})', { index: this.index })\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Share link')\n\t\t},\n\n\t\t/**\n\t\t * Show the email on a second line if a label is set for mail shares\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tsubtitle() {\n\t\t\tif (this.isEmailShareType\n\t\t\t\t&& this.title !== this.share.shareWith) {\n\t\t\t\treturn this.share.shareWith\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtected: {\n\t\t\tget() {\n\t\t\t\treturn this.config.enforcePasswordForPublicLink\n\t\t\t\t\t|| !!this.share.password\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\t// TODO: directly save after generation to make sure the share is always protected\n\t\t\t\tVue.set(this.share, 'password', enabled ? await GeneratePassword() : '')\n\t\t\t\tVue.set(this.share, 'newPassword', this.share.password)\n\t\t\t},\n\t\t},\n\n\t\tpasswordExpirationTime() {\n\t\t\tif (this.share.passwordExpirationTime === null) {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst expirationTime = moment(this.share.passwordExpirationTime)\n\n\t\t\tif (expirationTime.diff(moment()) < 0) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn expirationTime.fromNow()\n\t\t},\n\n\t\t/**\n\t\t * Is Talk enabled?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisTalkEnabled() {\n\t\t\treturn OC.appswebroots.spreed !== undefined\n\t\t},\n\n\t\t/**\n\t\t * Is it possible to protect the password by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalkAvailable() {\n\t\t\treturn this.isPasswordProtected && this.isTalkEnabled\n\t\t},\n\n\t\t/**\n\t\t * Is the current share password protected by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalk: {\n\t\t\tget() {\n\t\t\t\treturn this.share.sendPasswordByTalk\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tthis.share.sendPasswordByTalk = enabled\n\t\t\t},\n\t\t},\n\n\t\t/**\n\t\t * Is the current share an email share ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisEmailShareType() {\n\t\t\treturn this.share\n\t\t\t\t? this.share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL\n\t\t\t\t: false\n\t\t},\n\n\t\tcanTogglePasswordProtectedByTalkAvailable() {\n\t\t\tif (!this.isPasswordProtected) {\n\t\t\t\t// Makes no sense\n\t\t\t\treturn false\n\t\t\t} else if (this.isEmailShareType && !this.hasUnsavedPassword) {\n\t\t\t\t// For email shares we need a new password in order to enable or\n\t\t\t\t// disable\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\t// Anything else should be fine\n\t\t\treturn true\n\t\t},\n\n\t\t/**\n\t\t * Pending data.\n\t\t * If the share still doesn't have an id, it is not synced\n\t\t * Therefore this is still not valid and requires user input\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tpendingDataIsMissing() {\n\t\t\treturn this.pendingPassword || this.pendingEnforcedPassword || this.pendingDefaultExpirationDate || this.pendingEnforcedExpirationDate\n\t\t},\n\t\tpendingPassword() {\n\t\t\treturn this.config.enableLinkPasswordByDefault && this.isPendingShare\n\t\t},\n\t\tpendingEnforcedPassword() {\n\t\t\treturn this.config.enforcePasswordForPublicLink && this.isPendingShare\n\t\t},\n\t\tpendingEnforcedExpirationDate() {\n\t\t\treturn this.config.isDefaultExpireDateEnforced && this.isPendingShare\n\t\t},\n\t\tpendingDefaultExpirationDate() {\n\t\t\treturn (this.config.defaultExpirationDate instanceof Date || !isNaN(new Date(this.config.defaultExpirationDate).getTime())) && this.isPendingShare\n\t\t},\n\t\tisPendingShare() {\n\t\t\treturn !!(this.share && !this.share.id)\n\t\t},\n\t\tsharePolicyHasEnforcedProperties() {\n\t\t\treturn this.config.enforcePasswordForPublicLink || this.config.isDefaultExpireDateEnforced\n\t\t},\n\n\t\tenforcedPropertiesMissing() {\n\t\t\t// Ensure share exist and the share policy has required properties\n\t\t\tif (!this.sharePolicyHasEnforcedProperties) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tif (!this.share) {\n\t\t\t\t// if no share, we can't tell if properties are missing or not so we assume properties are missing\n\t\t\t\treturn true\n\t\t\t}\n\n\t\t\t// If share has ID, then this is an incoming link share created from the existing link share\n\t\t\t// Hence assume required properties\n\t\t\tif (this.share.id) {\n\t\t\t\treturn true\n\t\t\t}\n\t\t\t// Check if either password or expiration date is missing and enforced\n\t\t\tconst isPasswordMissing = this.config.enforcePasswordForPublicLink && !this.share.password\n\t\t\tconst isExpireDateMissing = this.config.isDefaultExpireDateEnforced && !this.share.expireDate\n\n\t\t\treturn isPasswordMissing || isExpireDateMissing\n\t\t},\n\t\t// if newPassword exists, but is empty, it means\n\t\t// the user deleted the original password\n\t\thasUnsavedPassword() {\n\t\t\treturn this.share.newPassword !== undefined\n\t\t},\n\n\t\t/**\n\t\t * Return the public share link\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tshareLink() {\n\t\t\treturn window.location.protocol + '//' + window.location.host + generateUrl('/s/') + this.share.token\n\t\t},\n\n\t\t/**\n\t\t * Tooltip message for actions button\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tactionsTooltip() {\n\t\t\treturn t('files_sharing', 'Actions for \"{title}\"', { title: this.title })\n\t\t},\n\n\t\t/**\n\t\t * Tooltip message for copy button\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tcopyLinkTooltip() {\n\t\t\tif (this.copied) {\n\t\t\t\tif (this.copySuccess) {\n\t\t\t\t\treturn ''\n\t\t\t\t}\n\t\t\t\treturn t('files_sharing', 'Cannot copy, please copy the link manually')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Copy public link of \"{title}\" to clipboard', { title: this.title })\n\t\t},\n\n\t\t/**\n\t\t * External additionnai actions for the menu\n\t\t *\n\t\t * @deprecated use OCA.Sharing.ExternalShareActions\n\t\t * @return {Array}\n\t\t */\n\t\texternalLegacyLinkActions() {\n\t\t\treturn this.ExternalLegacyLinkActions.actions\n\t\t},\n\n\t\t/**\n\t\t * Additional actions for the menu\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\texternalLinkActions() {\n\t\t\tconst filterValidAction = (action) => (action.shareType.includes(ShareTypes.SHARE_TYPE_LINK) || action.shareType.includes(ShareTypes.SHARE_TYPE_EMAIL)) && !action.advanced\n\t\t\t// filter only the registered actions for said link\n\t\t\treturn this.ExternalShareActions.actions\n\t\t\t\t.filter(filterValidAction)\n\t\t},\n\n\t\tisPasswordPolicyEnabled() {\n\t\t\treturn typeof this.config.passwordPolicy === 'object'\n\t\t},\n\n\t\tcanChangeHideDownload() {\n\t\t\tconst hasDisabledDownload = (shareAttribute) => shareAttribute.key === 'download' && shareAttribute.scope === 'permissions' && shareAttribute.enabled === false\n\t\t\treturn this.fileInfo.shareAttributes.some(hasDisabledDownload)\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.defaultExpirationDateEnabled = this.config.defaultExpirationDate instanceof Date\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Check if the share requires review\n\t\t *\n\t\t * @param {boolean} shareReviewComplete if the share was reviewed\n\t\t * @return {boolean}\n\t\t */\n\t\tshareRequiresReview(shareReviewComplete) {\n\t\t\t// If a user clicks 'Create share' it means they have reviewed the share\n\t\t\tif (shareReviewComplete) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\treturn this.defaultExpirationDateEnabled || this.config.enableLinkPasswordByDefault\n\t\t},\n\t\t/**\n\t\t * Create a new share link and append it to the list\n\t\t * @param {boolean} shareReviewComplete if the share was reviewed\n\t\t */\n\t\tasync onNewLinkShare(shareReviewComplete = false) {\n\t\t\tthis.logger.debug('onNewLinkShare called (with this.share)', this.share)\n\t\t\t// do not run again if already loading\n\t\t\tif (this.loading) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst shareDefaults = {\n\t\t\t\tshare_type: ShareTypes.SHARE_TYPE_LINK,\n\t\t\t}\n\t\t\tif (this.config.isDefaultExpireDateEnforced) {\n\t\t\t\t// default is empty string if not set\n\t\t\t\t// expiration is the share object key, not expireDate\n\t\t\t\tshareDefaults.expiration = this.formatDateToString(this.config.defaultExpirationDate)\n\t\t\t}\n\n\t\t\tthis.logger.debug('Missing required properties?', this.enforcedPropertiesMissing)\n\t\t\t// Do not push yet if we need a password or an expiration date: show pending menu\n\t\t\t// A share would require a review for example is default expiration date is set but not enforced, this allows\n\t\t\t// the user to review the share and remove the expiration date if they don't want it\n\t\t\tif ((this.sharePolicyHasEnforcedProperties && this.enforcedPropertiesMissing) || this.shareRequiresReview(shareReviewComplete === true)) {\n\t\t\t\tthis.pending = true\n\t\t\t\tthis.shareCreationComplete = false\n\n\t\t\t\tthis.logger.info('Share policy requires a review or has mandated properties (password, expirationDate)...')\n\n\t\t\t\t// ELSE, show the pending popovermenu\n\t\t\t\t// if password default or enforced, pre-fill with random one\n\t\t\t\tif (this.config.enableLinkPasswordByDefault || this.config.enforcePasswordForPublicLink) {\n\t\t\t\t\tshareDefaults.password = await GeneratePassword()\n\t\t\t\t}\n\n\t\t\t\t// create share & close menu\n\t\t\t\tconst share = new Share(shareDefaults)\n\t\t\t\tconst component = await new Promise(resolve => {\n\t\t\t\t\tthis.$emit('add:share', share, resolve)\n\t\t\t\t})\n\n\t\t\t\t// open the menu on the\n\t\t\t\t// freshly created share component\n\t\t\t\tthis.open = false\n\t\t\t\tthis.pending = false\n\t\t\t\tcomponent.open = true\n\n\t\t\t\t// Nothing is enforced, creating share directly\n\t\t\t} else {\n\n\t\t\t\t// if a share already exists, pushing it\n\t\t\t\tif (this.share && !this.share.id) {\n\t\t\t\t\t// if the share is valid, create it on the server\n\t\t\t\t\tif (this.checkShare(this.share)) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tthis.logger.info('Sending existing share to server', this.share)\n\t\t\t\t\t\t\tawait this.pushNewLinkShare(this.share, true)\n\t\t\t\t\t\t\tthis.shareCreationComplete = true\n\t\t\t\t\t\t\tthis.logger.info('Share created on server', this.share)\n\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\tthis.pending = false\n\t\t\t\t\t\t\tthis.logger.error('Error creating share', e)\n\t\t\t\t\t\t\treturn false\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn true\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.open = true\n\t\t\t\t\t\tshowError(t('files_sharing', 'Error, please enter proper password and/or expiration date'))\n\t\t\t\t\t\treturn false\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst share = new Share(shareDefaults)\n\t\t\t\tawait this.pushNewLinkShare(share)\n\t\t\t\tthis.shareCreationComplete = true\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Push a new link share to the server\n\t\t * And update or append to the list\n\t\t * accordingly\n\t\t *\n\t\t * @param {Share} share the new share\n\t\t * @param {boolean} [update] do we update the current share ?\n\t\t */\n\t\tasync pushNewLinkShare(share, update) {\n\t\t\ttry {\n\t\t\t\t// do nothing if we're already pending creation\n\t\t\t\tif (this.loading) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\n\t\t\t\tthis.loading = true\n\t\t\t\tthis.errors = {}\n\n\t\t\t\tconst path = (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\t\t\t\tconst options = {\n\t\t\t\t\tpath,\n\t\t\t\t\tshareType: ShareTypes.SHARE_TYPE_LINK,\n\t\t\t\t\tpassword: share.password,\n\t\t\t\t\texpireDate: share.expireDate,\n\t\t\t\t\tattributes: JSON.stringify(this.fileInfo.shareAttributes),\n\t\t\t\t\t// we do not allow setting the publicUpload\n\t\t\t\t\t// before the share creation.\n\t\t\t\t\t// Todo: We also need to fix the createShare method in\n\t\t\t\t\t// lib/Controller/ShareAPIController.php to allow file drop\n\t\t\t\t\t// (currently not supported on create, only update)\n\t\t\t\t}\n\n\t\t\t\tconsole.debug('Creating link share with options', options)\n\t\t\t\tconst newShare = await this.createShare(options)\n\n\t\t\t\tthis.open = false\n\t\t\t\tthis.shareCreationComplete = true\n\t\t\t\tconsole.debug('Link share created', newShare)\n\t\t\t\t// if share already exists, copy link directly on next tick\n\t\t\t\tlet component\n\t\t\t\tif (update) {\n\t\t\t\t\tcomponent = await new Promise(resolve => {\n\t\t\t\t\t\tthis.$emit('update:share', newShare, resolve)\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\t// adding new share to the array and copying link to clipboard\n\t\t\t\t\t// using promise so that we can copy link in the same click function\n\t\t\t\t\t// and avoid firefox copy permissions issue\n\t\t\t\t\tcomponent = await new Promise(resolve => {\n\t\t\t\t\t\tthis.$emit('add:share', newShare, resolve)\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tawait this.getNode()\n\t\t\t\temit('files:node:updated', this.node)\n\n\t\t\t\t// Execute the copy link method\n\t\t\t\t// freshly created share component\n\t\t\t\t// ! somehow does not works on firefox !\n\t\t\t\tif (!this.config.enforcePasswordForPublicLink) {\n\t\t\t\t\t// Only copy the link when the password was not forced,\n\t\t\t\t\t// otherwise the user needs to copy/paste the password before finishing the share.\n\t\t\t\t\tcomponent.copyLink()\n\t\t\t\t}\n\t\t\t\tshowSuccess(t('files_sharing', 'Link share created'))\n\n\t\t\t} catch (data) {\n\t\t\t\tconst message = data?.response?.data?.ocs?.meta?.message\n\t\t\t\tif (!message) {\n\t\t\t\t\tshowError(t('files_sharing', 'Error while creating the share'))\n\t\t\t\t\tconsole.error(data)\n\t\t\t\t\treturn\n\t\t\t\t}\n\n\t\t\t\tif (message.match(/password/i)) {\n\t\t\t\t\tthis.onSyncError('password', message)\n\t\t\t\t} else if (message.match(/date/i)) {\n\t\t\t\t\tthis.onSyncError('expireDate', message)\n\t\t\t\t} else {\n\t\t\t\t\tthis.onSyncError('pending', message)\n\t\t\t\t}\n\t\t\t\tthrow data\n\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t\tthis.shareCreationComplete = true\n\t\t\t}\n\t\t},\n\t\tasync copyLink() {\n\t\t\ttry {\n\t\t\t\tawait navigator.clipboard.writeText(this.shareLink)\n\t\t\t\tshowSuccess(t('files_sharing', 'Link copied'))\n\t\t\t\t// focus and show the tooltip\n\t\t\t\tthis.$refs.copyButton.$el.focus()\n\t\t\t\tthis.copySuccess = true\n\t\t\t\tthis.copied = true\n\t\t\t} catch (error) {\n\t\t\t\tthis.copySuccess = false\n\t\t\t\tthis.copied = true\n\t\t\t\tconsole.error(error)\n\t\t\t} finally {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.copySuccess = false\n\t\t\t\t\tthis.copied = false\n\t\t\t\t}, 4000)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update newPassword values\n\t\t * of share. If password is set but not newPassword\n\t\t * then the user did not changed the password\n\t\t * If both co-exists, the password have changed and\n\t\t * we show it in plain text.\n\t\t * Then on submit (or menu close), we sync it.\n\t\t *\n\t\t * @param {string} password the changed password\n\t\t */\n\t\tonPasswordChange(password) {\n\t\t\tthis.$set(this.share, 'newPassword', password)\n\t\t},\n\n\t\t/**\n\t\t * Uncheck password protection\n\t\t * We need this method because @update:checked\n\t\t * is ran simultaneously as @uncheck, so we\n\t\t * cannot ensure data is up-to-date\n\t\t */\n\t\tonPasswordDisable() {\n\t\t\tthis.share.password = ''\n\n\t\t\t// reset password state after sync\n\t\t\tthis.$delete(this.share, 'newPassword')\n\n\t\t\t// only update if valid share.\n\t\t\tif (this.share.id) {\n\t\t\t\tthis.queueUpdate('password')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Menu have been closed or password has been submitted.\n\t\t * The only property that does not get\n\t\t * synced automatically is the password\n\t\t * So let's check if we have an unsaved\n\t\t * password.\n\t\t * expireDate is saved on datepicker pick\n\t\t * or close.\n\t\t */\n\t\tonPasswordSubmit() {\n\t\t\tif (this.hasUnsavedPassword) {\n\t\t\t\tthis.share.password = this.share.newPassword.trim()\n\t\t\t\tthis.queueUpdate('password')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update the password along with \"sendPasswordByTalk\".\n\t\t *\n\t\t * If the password was modified the new password is sent; otherwise\n\t\t * updating a mail share would fail, as in that case it is required that\n\t\t * a new password is set when enabling or disabling\n\t\t * \"sendPasswordByTalk\".\n\t\t */\n\t\tonPasswordProtectedByTalkChange() {\n\t\t\tif (this.hasUnsavedPassword) {\n\t\t\t\tthis.share.password = this.share.newPassword.trim()\n\t\t\t}\n\n\t\t\tthis.queueUpdate('sendPasswordByTalk', 'password')\n\t\t},\n\n\t\t/**\n\t\t * Save potential changed data on menu close\n\t\t */\n\t\tonMenuClose() {\n\t\t\tthis.onPasswordSubmit()\n\t\t\tthis.onNoteSubmit()\n\t\t},\n\t\tonDefaultExpirationDateEnabledChange(enabled) {\n\t\t\tthis.share.expireDate = enabled ? this.formatDateToString(this.config.defaultExpirationDate) : ''\n\t\t},\n\n\t\t/**\n\t\t * Cancel the share creation\n\t\t * Used in the pending popover\n\t\t */\n\t\tonCancel() {\n\t\t\t// this.share already exists at this point,\n\t\t\t// but is incomplete as not pushed to server\n\t\t\t// YET. We can safely delete the share :)\n\t\t\tif (!this.shareCreationComplete) {\n\t\t\t\tthis.$emit('remove:share', this.share)\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\tmin-height: 44px;\n\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\t}\n\n\t\t&__desc {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tline-height: 1.2em;\n\n\t\t\tp {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&__title {\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t}\n\t\t}\n\n\t&:not(.sharing-entry--share) &__actions {\n\t\t.new-share-link {\n\t\t\tborder-top: 1px solid var(--color-border);\n\t\t}\n\t}\n\n\t::v-deep .avatar-link-share {\n\t\tbackground-color: var(--color-primary-element);\n\t}\n\n\t.sharing-entry__action--public-upload {\n\t\tborder-bottom: 1px solid var(--color-border);\n\t}\n\n\t&__loading {\n\t\twidth: 44px;\n\t\theight: 44px;\n\t\tmargin: 0;\n\t\tpadding: 14px;\n\t\tmargin-left: auto;\n\t}\n\n\t// put menus to the left\n\t// but only the first one\n\t.action-item {\n\n\t\t~.action-item,\n\t\t~.sharing-entry__loading {\n\t\t\tmargin-left: 0;\n\t\t}\n\t}\n\n\t.icon-checkmark-color {\n\t\topacity: 1;\n\t\tcolor: var(--color-success);\n\t}\n}\n\n// styling for the qr-code container\n.qr-code-dialog {\n\tdisplay: flex;\n\twidth: 100%;\n\tjustify-content: center;\n\n\t&__img {\n\t\twidth: 100%;\n\t\theight: auto;\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=style&index=0&id=74a80015&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntryLink.vue?vue&type=style&index=0&id=74a80015&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntryLink.vue?vue&type=template&id=74a80015&scoped=true\"\nimport script from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntryLink.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntryLink.vue?vue&type=style&index=0&id=74a80015&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"74a80015\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingLinkList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingLinkList.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<ul v-if=\"canLinkShare\" class=\"sharing-link-list\">\n\t\t<!-- If no link shares, show the add link default entry -->\n\t\t<SharingEntryLink v-if=\"!hasLinkShares && canReshare\"\n\t\t\t:can-reshare=\"canReshare\"\n\t\t\t:file-info=\"fileInfo\"\n\t\t\t@add:share=\"addShare\" />\n\n\t\t<!-- Else we display the list -->\n\t\t<template v-if=\"hasShares\">\n\t\t\t<!-- using shares[index] to work with .sync -->\n\t\t\t<SharingEntryLink v-for=\"(share, index) in shares\"\n\t\t\t\t:key=\"share.id\"\n\t\t\t\t:index=\"shares.length > 1 ? index + 1 : null\"\n\t\t\t\t:can-reshare=\"canReshare\"\n\t\t\t\t:share.sync=\"shares[index]\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t@add:share=\"addShare(...arguments)\"\n\t\t\t\t@update:share=\"awaitForShare(...arguments)\"\n\t\t\t\t@remove:share=\"removeShare\"\n\t\t\t\t@open-sharing-details=\"openSharingDetails(share)\" />\n\t\t</template>\n\t</ul>\n</template>\n\n<script>\nimport { getCapabilities } from '@nextcloud/capabilities'\n\n// eslint-disable-next-line no-unused-vars\nimport Share from '../models/Share.js'\nimport ShareTypes from '../mixins/ShareTypes.js'\nimport SharingEntryLink from '../components/SharingEntryLink.vue'\nimport ShareDetails from '../mixins/ShareDetails.js'\n\nexport default {\n\tname: 'SharingLinkList',\n\n\tcomponents: {\n\t\tSharingEntryLink,\n\t},\n\n\tmixins: [ShareTypes, ShareDetails],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => {},\n\t\t\trequired: true,\n\t\t},\n\t\tshares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t\tcanReshare: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcanLinkShare: getCapabilities().files_sharing.public.enabled,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Do we have link shares?\n\t\t * Using this to still show the `new link share`\n\t\t * button regardless of mail shares\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\thasLinkShares() {\n\t\t\treturn this.shares.filter(share => share.type === this.SHARE_TYPES.SHARE_TYPE_LINK).length > 0\n\t\t},\n\n\t\t/**\n\t\t * Do we have any link or email shares?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasShares() {\n\t\t\treturn this.shares.length > 0\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Add a new share into the link shares list\n\t\t * and return the newly created share component\n\t\t *\n\t\t * @param {Share} share the share to add to the array\n\t\t * @param {Function} resolve a function to run after the share is added and its component initialized\n\t\t */\n\t\taddShare(share, resolve) {\n\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\tthis.shares.push(share)\n\t\t\tthis.awaitForShare(share, resolve)\n\t\t},\n\n\t\t/**\n\t\t * Await for next tick and render after the list updated\n\t\t * Then resolve with the matched vue component of the\n\t\t * provided share object\n\t\t *\n\t\t * @param {Share} share newly created share\n\t\t * @param {Function} resolve a function to execute after\n\t\t */\n\t\tawaitForShare(share, resolve) {\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tconst newShare = this.$children.find(component => component.share === share)\n\t\t\t\tif (newShare) {\n\t\t\t\t\tresolve(newShare)\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Remove a share from the shares list\n\t\t *\n\t\t * @param {Share} share the share to remove\n\t\t */\n\t\tremoveShare(share) {\n\t\t\tconst index = this.shares.findIndex(item => item === share)\n\t\t\t// eslint-disable-next-line vue/no-mutating-props\n\t\t\tthis.shares.splice(index, 1)\n\t\t},\n\t},\n}\n</script>\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry sharing-entry__link\",class:{ 'sharing-entry--share': _vm.share }},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":true,\"icon-class\":_vm.isEmailShareType ? 'avatar-link-share icon-mail-white' : 'avatar-link-share icon-public-white'}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c('div',{staticClass:\"sharing-entry__desc\"},[_c('span',{staticClass:\"sharing-entry__title\",attrs:{\"title\":_vm.title}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.title)+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),(_vm.subtitle)?_c('p',[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.subtitle)+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share && _vm.share.permissions !== undefined)?_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}}):_vm._e()],1),_vm._v(\" \"),(_vm.share && !_vm.isEmailShareType && _vm.share.token)?_c('NcActions',{ref:\"copyButton\",staticClass:\"sharing-entry__copy\"},[_c('NcActionButton',{attrs:{\"title\":_vm.copyLinkTooltip,\"aria-label\":_vm.copyLinkTooltip},on:{\"click\":function($event){$event.preventDefault();return _vm.copyLink.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.copied && _vm.copySuccess)?_c('CheckIcon',{staticClass:\"icon-checkmark-color\",attrs:{\"size\":20}}):_c('ClipboardIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,4269614823)})],1):_vm._e()],1),_vm._v(\" \"),(!_vm.pending && _vm.pendingDataIsMissing)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onCancel}},[(_vm.errors.pending)?_c('NcActionText',{staticClass:\"error\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ErrorIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1966124155)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.errors.pending)+\"\\n\\t\\t\")]):_c('NcActionText',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Please enter the following required information before creating the share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.pendingPassword)?_c('NcActionCheckbox',{staticClass:\"share-link-password-checkbox\",attrs:{\"checked\":_vm.isPasswordProtected,\"disabled\":_vm.config.enforcePasswordForPublicLink || _vm.saving},on:{\"update:checked\":function($event){_vm.isPasswordProtected=$event},\"uncheck\":_vm.onPasswordDisable}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.enforcePasswordForPublicLink ? _vm.t('files_sharing', 'Password protection (enforced)') : _vm.t('files_sharing', 'Password protection'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.pendingEnforcedPassword || _vm.share.password)?_c('NcActionInput',{staticClass:\"share-link-password\",attrs:{\"label\":_vm.t('files_sharing', 'Enter a password'),\"value\":_vm.share.password,\"disabled\":_vm.saving,\"required\":_vm.config.enableLinkPasswordByDefault || _vm.config.enforcePasswordForPublicLink,\"minlength\":_vm.isPasswordPolicyEnabled && _vm.config.passwordPolicy.minLength,\"autocomplete\":\"new-password\"},on:{\"update:value\":function($event){return _vm.$set(_vm.share, \"password\", $event)},\"submit\":function($event){return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('LockIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2056568168)}):_vm._e(),_vm._v(\" \"),(_vm.pendingDefaultExpirationDate)?_c('NcActionCheckbox',{staticClass:\"share-link-expiration-date-checkbox\",attrs:{\"checked\":_vm.defaultExpirationDateEnabled,\"disabled\":_vm.pendingEnforcedExpirationDate || _vm.saving},on:{\"update:checked\":function($event){_vm.defaultExpirationDateEnabled=$event},\"change\":_vm.onDefaultExpirationDateEnabledChange}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.config.enforcePasswordForPublicLink ? _vm.t('files_sharing', 'Enable link expiration (enforced)') : _vm.t('files_sharing', 'Enable link expiration'))+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),((_vm.pendingDefaultExpirationDate || _vm.pendingEnforcedExpirationDate) && _vm.defaultExpirationDateEnabled)?_c('NcActionInput',{staticClass:\"share-link-expire-date\",attrs:{\"label\":_vm.pendingEnforcedExpirationDate ? _vm.t('files_sharing', 'Enter expiration date (enforced)') : _vm.t('files_sharing', 'Enter expiration date'),\"disabled\":_vm.saving,\"is-native-picker\":true,\"hide-label\":true,\"value\":new Date(_vm.share.expireDate),\"type\":\"date\",\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced},on:{\"input\":function($event){_vm.onExpirationChange /* let's not submit when picked, the user might want to still edit or copy the password */}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconCalendarBlank',{attrs:{\"size\":20}})]},proxy:true}],null,false,3418578971)}):_vm._e(),_vm._v(\" \"),_c('NcActionButton',{on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare(true)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CheckIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2630571749)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create share'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcActionButton',{on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onCancel.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\")])],1):(!_vm.loading)?_c('NcActions',{staticClass:\"sharing-entry__actions\",attrs:{\"aria-label\":_vm.actionsTooltip,\"menu-align\":\"right\",\"open\":_vm.open},on:{\"update:open\":function($event){_vm.open=$event},\"close\":_vm.onMenuClose}},[(_vm.share)?[(_vm.share.canEdit && _vm.canReshare)?[_c('NcActionButton',{attrs:{\"disabled\":_vm.saving,\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();return _vm.openSharingDetails.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('Tune',{attrs:{\"size\":20}})]},proxy:true}],null,false,1300586850)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Customize link'))+\"\\n\\t\\t\\t\\t\")])]:_vm._e(),_vm._v(\" \"),_c('NcActionButton',{attrs:{\"close-after-click\":true},on:{\"click\":function($event){$event.preventDefault();_vm.showQRCode = true}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconQr',{attrs:{\"size\":20}})]},proxy:true}],null,false,1082198240)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Generate QR code'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.externalLinkActions),function(action){return _c('ExternalShareAction',{key:action.id,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),_vm._l((_vm.externalLegacyLinkActions),function({ icon, url, name },index){return _c('NcActionLink',{key:index,attrs:{\"href\":url(_vm.shareLink),\"icon\":icon,\"target\":\"_blank\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(name)+\"\\n\\t\\t\\t\")])}),_vm._v(\" \"),(!_vm.isEmailShareType && _vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('PlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2953566425)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Add another link'))+\"\\n\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(_vm.share.canDelete)?_c('NcActionButton',{attrs:{\"disabled\":_vm.saving},on:{\"click\":function($event){$event.preventDefault();return _vm.onDelete.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2428343285)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Unshare'))+\"\\n\\t\\t\\t\")]):_vm._e()]:(_vm.canReshare)?_c('NcActionButton',{staticClass:\"new-share-link\",attrs:{\"title\":_vm.t('files_sharing', 'Create a new share link'),\"aria-label\":_vm.t('files_sharing', 'Create a new share link'),\"icon\":_vm.loading ? 'icon-loading-small' : 'icon-add'},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onNewLinkShare.apply(null, arguments)}}}):_vm._e()],2):_c('div',{staticClass:\"icon-loading-small sharing-entry__loading\"}),_vm._v(\" \"),(_vm.showQRCode)?_c('NcDialog',{attrs:{\"size\":\"normal\",\"open\":_vm.showQRCode,\"name\":_vm.title,\"close-on-click-outside\":true},on:{\"update:open\":function($event){_vm.showQRCode=$event},\"close\":function($event){_vm.showQRCode = false}}},[_c('div',{staticClass:\"qr-code-dialog\"},[_c('VueQrcode',{staticClass:\"qr-code-dialog__img\",attrs:{\"tag\":\"img\",\"value\":_vm.shareLink}})],1)]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SharingLinkList.vue?vue&type=template&id=5e313274\"\nimport script from \"./SharingLinkList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingLinkList.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{staticClass:\"sharing-sharee-list\"},_vm._l((_vm.shares),function(share){return _c('SharingEntry',{key:share.id,attrs:{\"file-info\":_vm.fileInfo,\"share\":share,\"is-unique\":_vm.isUnique(share)},on:{\"open-sharing-details\":function($event){return _vm.openSharingDetails(share)}}})}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon dots-horizontal-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"DotsHorizontalIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DotsHorizontal.vue?vue&type=template&id=a8ba8946\"\nimport script from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\nexport * from \"./DotsHorizontal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon dots-horizontal-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<li class=\"sharing-entry\">\n\t\t<NcAvatar class=\"sharing-entry__avatar\"\n\t\t\t:is-no-user=\"share.type !== SHARE_TYPES.SHARE_TYPE_USER\"\n\t\t\t:user=\"share.shareWith\"\n\t\t\t:display-name=\"share.shareWithDisplayName\"\n\t\t\t:menu-position=\"'left'\"\n\t\t\t:url=\"share.shareWithAvatar\" />\n\n\t\t<div class=\"sharing-entry__summary\">\n\t\t\t<component :is=\"share.shareWithLink ? 'a' : 'div'\"\n\t\t\t\t:title=\"tooltip\"\n\t\t\t\t:aria-label=\"tooltip\"\n\t\t\t\t:href=\"share.shareWithLink\"\n\t\t\t\tclass=\"sharing-entry__summary__desc\">\n\t\t\t\t<span>{{ title }}\n\t\t\t\t\t<span v-if=\"!isUnique\" class=\"sharing-entry__summary__desc-unique\"> ({{\n\t\t\t\t\t\tshare.shareWithDisplayNameUnique }})</span>\n\t\t\t\t\t<small v-if=\"hasStatus && share.status.message\">({{ share.status.message }})</small>\n\t\t\t\t</span>\n\t\t\t</component>\n\t\t\t<SharingEntryQuickShareSelect :share=\"share\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t@open-sharing-details=\"openShareDetailsForCustomSettings(share)\" />\n\t\t</div>\n\t\t<NcButton v-if=\"share.canEdit\"\n\t\t\tclass=\"sharing-entry__action\"\n\t\t\tdata-cy-files-sharing-share-actions\n\t\t\t:aria-label=\"t('files_sharing', 'Open Sharing Details')\"\n\t\t\ttype=\"tertiary\"\n\t\t\t@click=\"openSharingDetails(share)\">\n\t\t\t<template #icon>\n\t\t\t\t<DotsHorizontalIcon :size=\"20\" />\n\t\t\t</template>\n\t\t</NcButton>\n\t</li>\n</template>\n\n<script>\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcSelect from '@nextcloud/vue/dist/Components/NcSelect.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\n\nimport SharingEntryQuickShareSelect from './SharingEntryQuickShareSelect.vue'\n\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\n\nexport default {\n\tname: 'SharingEntry',\n\n\tcomponents: {\n\t\tNcButton,\n\t\tNcAvatar,\n\t\tDotsHorizontalIcon,\n\t\tNcSelect,\n\t\tSharingEntryQuickShareSelect,\n\t},\n\n\tmixins: [SharesMixin, ShareDetails],\n\n\tcomputed: {\n\t\ttitle() {\n\t\t\tlet title = this.share.shareWithDisplayName\n\t\t\tif (this.share.type === this.SHARE_TYPES.SHARE_TYPE_GROUP) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'group')})`\n\t\t\t} else if (this.share.type === this.SHARE_TYPES.SHARE_TYPE_ROOM) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'conversation')})`\n\t\t\t} else if (this.share.type === this.SHARE_TYPES.SHARE_TYPE_REMOTE) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'remote')})`\n\t\t\t} else if (this.share.type === this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'remote group')})`\n\t\t\t} else if (this.share.type === this.SHARE_TYPES.SHARE_TYPE_GUEST) {\n\t\t\t\ttitle += ` (${t('files_sharing', 'guest')})`\n\t\t\t}\n\t\t\treturn title\n\t\t},\n\t\ttooltip() {\n\t\t\tif (this.share.owner !== this.share.uidFileOwner) {\n\t\t\t\tconst data = {\n\t\t\t\t\t// todo: strong or italic?\n\t\t\t\t\t// but the t function escape any html from the data :/\n\t\t\t\t\tuser: this.share.shareWithDisplayName,\n\t\t\t\t\towner: this.share.ownerDisplayName,\n\t\t\t\t}\n\t\t\t\tif (this.share.type === this.SHARE_TYPES.SHARE_TYPE_GROUP) {\n\t\t\t\t\treturn t('files_sharing', 'Shared with the group {user} by {owner}', data)\n\t\t\t\t} else if (this.share.type === this.SHARE_TYPES.SHARE_TYPE_ROOM) {\n\t\t\t\t\treturn t('files_sharing', 'Shared with the conversation {user} by {owner}', data)\n\t\t\t\t}\n\n\t\t\t\treturn t('files_sharing', 'Shared with {user} by {owner}', data)\n\t\t\t}\n\t\t\treturn null\n\t\t},\n\n\t\t/**\n\t\t * @return {boolean}\n\t\t */\n\t\thasStatus() {\n\t\t\tif (this.share.type !== this.SHARE_TYPES.SHARE_TYPE_USER) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn (typeof this.share.status === 'object' && !Array.isArray(this.share.status))\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Save potential changed data on menu close\n\t\t */\n\t\tonMenuClose() {\n\t\t\tthis.onNoteSubmit()\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharing-entry {\n\tdisplay: flex;\n\talign-items: center;\n\theight: 44px;\n\t&__summary {\n\t\tpadding: 8px;\n\t\tpadding-left: 10px;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tjustify-content: center;\n\t\talign-items: flex-start;\n\t\tflex: 1 0;\n\t\tmin-width: 0;\n\n\t\t&__desc {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding-bottom: 0;\n\t\t\tline-height: 1.2em;\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\tp,\n\t\t\tsmall {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\n\t\t\t&-unique {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t}\n\t\t}\n\t}\n\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=style&index=0&id=939d5de0&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingEntry.vue?vue&type=style&index=0&id=939d5de0&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingEntry.vue?vue&type=template&id=939d5de0&scoped=true\"\nimport script from \"./SharingEntry.vue?vue&type=script&lang=js\"\nexport * from \"./SharingEntry.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingEntry.vue?vue&type=style&index=0&id=939d5de0&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"939d5de0\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingList.vue?vue&type=script&lang=js\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<ul class=\"sharing-sharee-list\">\n\t\t<SharingEntry v-for=\"share in shares\"\n\t\t\t:key=\"share.id\"\n\t\t\t:file-info=\"fileInfo\"\n\t\t\t:share=\"share\"\n\t\t\t:is-unique=\"isUnique(share)\"\n\t\t\t@open-sharing-details=\"openSharingDetails(share)\" />\n\t</ul>\n</template>\n\n<script>\n// eslint-disable-next-line no-unused-vars\nimport SharingEntry from '../components/SharingEntry.vue'\nimport ShareTypes from '../mixins/ShareTypes.js'\nimport ShareDetails from '../mixins/ShareDetails.js'\n\nexport default {\n\tname: 'SharingList',\n\n\tcomponents: {\n\t\tSharingEntry,\n\t},\n\n\tmixins: [ShareTypes, ShareDetails],\n\n\tprops: {\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\tdefault: () => { },\n\t\t\trequired: true,\n\t\t},\n\t\tshares: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => [],\n\t\t\trequired: true,\n\t\t},\n\t},\n\tcomputed: {\n\t\thasShares() {\n\t\t\treturn this.shares.length === 0\n\t\t},\n\t\tisUnique() {\n\t\t\treturn (share) => {\n\t\t\t\treturn [...this.shares].filter((item) => {\n\t\t\t\t\treturn share.type === this.SHARE_TYPES.SHARE_TYPE_USER && share.shareWithDisplayName === item.shareWithDisplayName\n\t\t\t\t}).length <= 1\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('li',{staticClass:\"sharing-entry\"},[_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.type !== _vm.SHARE_TYPES.SHARE_TYPE_USER,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":'left',\"url\":_vm.share.shareWithAvatar}}),_vm._v(\" \"),_c('div',{staticClass:\"sharing-entry__summary\"},[_c(_vm.share.shareWithLink ? 'a' : 'div',{tag:\"component\",staticClass:\"sharing-entry__summary__desc\",attrs:{\"title\":_vm.tooltip,\"aria-label\":_vm.tooltip,\"href\":_vm.share.shareWithLink}},[_c('span',[_vm._v(_vm._s(_vm.title)+\"\\n\\t\\t\\t\\t\"),(!_vm.isUnique)?_c('span',{staticClass:\"sharing-entry__summary__desc-unique\"},[_vm._v(\" (\"+_vm._s(_vm.share.shareWithDisplayNameUnique)+\")\")]):_vm._e(),_vm._v(\" \"),(_vm.hasStatus && _vm.share.status.message)?_c('small',[_vm._v(\"(\"+_vm._s(_vm.share.status.message)+\")\")]):_vm._e()])]),_vm._v(\" \"),_c('SharingEntryQuickShareSelect',{attrs:{\"share\":_vm.share,\"file-info\":_vm.fileInfo},on:{\"open-sharing-details\":function($event){return _vm.openShareDetailsForCustomSettings(_vm.share)}}})],1),_vm._v(\" \"),(_vm.share.canEdit)?_c('NcButton',{staticClass:\"sharing-entry__action\",attrs:{\"data-cy-files-sharing-share-actions\":\"\",\"aria-label\":_vm.t('files_sharing', 'Open Sharing Details'),\"type\":\"tertiary\"},on:{\"click\":function($event){return _vm.openSharingDetails(_vm.share)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1700783217)}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SharingList.vue?vue&type=template&id=445a39ed\"\nimport script from \"./SharingList.vue?vue&type=script&lang=js\"\nexport * from \"./SharingList.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"sharingTabDetailsView\"},[_c('div',{staticClass:\"sharingTabDetailsView__header\"},[_c('span',[(_vm.isUserShare)?_c('NcAvatar',{staticClass:\"sharing-entry__avatar\",attrs:{\"is-no-user\":_vm.share.shareType !== _vm.SHARE_TYPES.SHARE_TYPE_USER,\"user\":_vm.share.shareWith,\"display-name\":_vm.share.shareWithDisplayName,\"menu-position\":'left',\"url\":_vm.share.shareWithAvatar}}):_vm._e(),_vm._v(\" \"),_c(_vm.getShareTypeIcon(_vm.share.type),{tag:\"component\",attrs:{\"size\":32}})],1),_vm._v(\" \"),_c('span',[_c('h1',[_vm._v(_vm._s(_vm.title))])])]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__wrapper\"},[_c('div',{ref:\"quickPermissions\",staticClass:\"sharingTabDetailsView__quick-permissions\"},[_c('div',[_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"read-only\",\"checked\":_vm.sharingPermission,\"value\":_vm.bundledPermissions.READ_ONLY.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.toggleCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ViewIcon',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'View only'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"upload-edit\",\"checked\":_vm.sharingPermission,\"value\":_vm.bundledPermissions.ALL.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.toggleCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('EditIcon',{attrs:{\"size\":20}})]},proxy:true}])},[(_vm.allowsFileDrop)?[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow upload and editing'))+\"\\n\\t\\t\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow editing'))+\"\\n\\t\\t\\t\\t\\t\")]],2),_vm._v(\" \"),(_vm.allowsFileDrop)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-sharing-share-permissions-bundle\":\"file-drop\",\"button-variant\":true,\"checked\":_vm.sharingPermission,\"value\":_vm.bundledPermissions.FILE_DROP.toString(),\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.toggleCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('UploadIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,1083194048)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'File drop'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.t('files_sharing', 'Upload only')))])]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"button-variant\":true,\"data-cy-files-sharing-share-permissions-bundle\":\"custom\",\"checked\":_vm.sharingPermission,\"value\":'custom',\"name\":\"sharing_permission_radio\",\"type\":\"radio\",\"button-variant-grouped\":\"vertical\"},on:{\"update:checked\":[function($event){_vm.sharingPermission=$event},_vm.expandCustomPermissions]},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('DotsHorizontalIcon',{attrs:{\"size\":20}})]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\\t\"),_c('small',{staticClass:\"subline\"},[_vm._v(_vm._s(_vm.customPermissionsList))])])],1)]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__advanced-control\"},[_c('NcButton',{attrs:{\"id\":\"advancedSectionAccordionAdvancedControl\",\"type\":\"tertiary\",\"alignment\":\"end-reverse\",\"aria-controls\":\"advancedSectionAccordionAdvanced\",\"aria-expanded\":_vm.advancedControlExpandedValue},on:{\"click\":function($event){_vm.advancedSectionAccordionExpanded = !_vm.advancedSectionAccordionExpanded}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(!_vm.advancedSectionAccordionExpanded)?_c('MenuDownIcon'):_c('MenuUpIcon')]},proxy:true}])},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Advanced settings'))+\"\\n\\t\\t\\t\\t\")])],1),_vm._v(\" \"),(_vm.advancedSectionAccordionExpanded)?_c('div',{staticClass:\"sharingTabDetailsView__advanced\",attrs:{\"id\":\"advancedSectionAccordionAdvanced\",\"aria-labelledby\":\"advancedSectionAccordionAdvancedControl\",\"role\":\"region\"}},[_c('section',[(_vm.isPublicShare)?_c('NcInputField',{attrs:{\"autocomplete\":\"off\",\"label\":_vm.t('files_sharing', 'Share label'),\"value\":_vm.share.label},on:{\"update:value\":function($event){return _vm.$set(_vm.share, \"label\", $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?[_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.isPasswordProtected,\"disabled\":_vm.isPasswordEnforced},on:{\"update:checked\":function($event){_vm.isPasswordProtected=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Set password'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isPasswordProtected)?_c('NcPasswordField',{attrs:{\"autocomplete\":\"new-password\",\"value\":_vm.hasUnsavedPassword ? _vm.share.newPassword : '',\"error\":_vm.passwordError,\"helper-text\":_vm.errorPasswordLabel || _vm.passwordHint,\"required\":_vm.isPasswordEnforced && _vm.isNewShare,\"label\":_vm.t('files_sharing', 'Password')},on:{\"update:value\":_vm.onPasswordChange}}):_vm._e(),_vm._v(\" \"),(_vm.isEmailShareType && _vm.passwordExpirationTime)?_c('span',{attrs:{\"icon\":\"icon-info\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expires {passwordExpirationTime}', { passwordExpirationTime: _vm.passwordExpirationTime }))+\"\\n\\t\\t\\t\\t\\t\")]):(_vm.isEmailShareType && _vm.passwordExpirationTime !== null)?_c('span',{attrs:{\"icon\":\"icon-error\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Password expired'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e()]:_vm._e(),_vm._v(\" \"),(_vm.canTogglePasswordProtectedByTalkAvailable)?_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.isPasswordProtectedByTalk},on:{\"update:checked\":[function($event){_vm.isPasswordProtectedByTalk=$event},_vm.onPasswordProtectedByTalkChange]}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Video verification'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.hasExpirationDate,\"disabled\":_vm.isExpiryDateEnforced},on:{\"update:checked\":function($event){_vm.hasExpirationDate=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.isExpiryDateEnforced\n\t\t\t\t\t\t? _vm.t('files_sharing', 'Expiration date (enforced)')\n\t\t\t\t\t\t: _vm.t('files_sharing', 'Set expiration date'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.hasExpirationDate)?_c('NcDateTimePickerNative',{attrs:{\"id\":\"share-date-picker\",\"value\":new Date(_vm.share.expireDate ?? _vm.dateTomorrow),\"min\":_vm.dateTomorrow,\"max\":_vm.maxExpirationDateEnforced,\"hide-label\":\"\",\"label\":_vm.t('files_sharing', 'Expiration date'),\"placeholder\":_vm.t('files_sharing', 'Expiration date'),\"type\":\"date\"},on:{\"input\":_vm.onExpirationChange}}):_vm._e(),_vm._v(\" \"),(_vm.isPublicShare)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":_vm.canChangeHideDownload,\"checked\":_vm.share.hideDownload},on:{\"update:checked\":[function($event){return _vm.$set(_vm.share, \"hideDownload\", $event)},function($event){return _vm.queueUpdate('hideDownload')}]}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Hide download'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),(!_vm.isPublicShare)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDownload,\"checked\":_vm.canDownload,\"data-cy-files-sharing-share-permissions-checkbox\":\"download\"},on:{\"update:checked\":function($event){_vm.canDownload=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Allow download'))+\"\\n\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.writeNoteToRecipientIsChecked},on:{\"update:checked\":function($event){_vm.writeNoteToRecipientIsChecked=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Note to recipient'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.writeNoteToRecipientIsChecked)?[_c('label',{attrs:{\"for\":\"share-note-textarea\"}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Enter a note for the share recipient'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),_c('textarea',{attrs:{\"id\":\"share-note-textarea\"},domProps:{\"value\":_vm.share.note},on:{\"input\":function($event){_vm.share.note = $event.target.value}}})]:_vm._e(),_vm._v(\" \"),_vm._l((_vm.externalLinkActions),function(action){return _c('ExternalShareAction',{key:action.id,ref:\"externalLinkActions\",refInFor:true,attrs:{\"id\":action.id,\"action\":action,\"file-info\":_vm.fileInfo,\"share\":_vm.share}})}),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"checked\":_vm.setCustomPermissions},on:{\"update:checked\":function($event){_vm.setCustomPermissions=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Custom permissions'))+\"\\n\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.setCustomPermissions)?_c('section',{staticClass:\"custom-permissions-group\"},[_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canRemoveReadPermission,\"checked\":_vm.hasRead,\"data-cy-files-sharing-share-permissions-checkbox\":\"read\"},on:{\"update:checked\":function($event){_vm.hasRead=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Read'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.isFolder)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetCreate,\"checked\":_vm.canCreate,\"data-cy-files-sharing-share-permissions-checkbox\":\"create\"},on:{\"update:checked\":function($event){_vm.canCreate=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Create'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetEdit,\"checked\":_vm.canEdit,\"data-cy-files-sharing-share-permissions-checkbox\":\"update\"},on:{\"update:checked\":function($event){_vm.canEdit=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Edit'))+\"\\n\\t\\t\\t\\t\\t\")]),_vm._v(\" \"),(_vm.config.isResharingAllowed && _vm.share.type !== _vm.SHARE_TYPES.SHARE_TYPE_LINK)?_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetReshare,\"checked\":_vm.canReshare,\"data-cy-files-sharing-share-permissions-checkbox\":\"share\"},on:{\"update:checked\":function($event){_vm.canReshare=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Share'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"disabled\":!_vm.canSetDelete,\"checked\":_vm.canDelete,\"data-cy-files-sharing-share-permissions-checkbox\":\"delete\"},on:{\"update:checked\":function($event){_vm.canDelete=$event}}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete'))+\"\\n\\t\\t\\t\\t\\t\")])],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__delete\"},[(!_vm.isNewShare)?_c('NcButton',{attrs:{\"aria-label\":_vm.t('files_sharing', 'Delete share'),\"disabled\":false,\"readonly\":false,\"type\":\"tertiary\"},on:{\"click\":function($event){$event.preventDefault();return _vm.removeShare.apply(null, arguments)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('CloseIcon',{attrs:{\"size\":16}})]},proxy:true}],null,false,2746485232)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Delete share'))+\"\\n\\t\\t\\t\\t\\t\")]):_vm._e()],1)],2)]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"sharingTabDetailsView__footer\"},[_c('div',{staticClass:\"button-group\"},[_c('NcButton',{attrs:{\"data-cy-files-sharing-share-editor-action\":\"cancel\"},on:{\"click\":function($event){return _vm.$emit('close-sharing-details')}}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files_sharing', 'Cancel'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcButton',{attrs:{\"type\":\"primary\",\"data-cy-files-sharing-share-editor-action\":\"save\"},on:{\"click\":_vm.saveShare},scopedSlots:_vm._u([(_vm.creating)?{key:\"icon\",fn:function(){return [_c('NcLoadingIcon')]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.shareButtonText)+\"\\n\\t\\t\\t\\t\")])],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon circle-outline-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CircleOutlineIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./CircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./CircleOutline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CircleOutline.vue?vue&type=template&id=c013567c\"\nimport script from \"./CircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./CircleOutline.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon circle-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Email.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon email-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"EmailIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Email.vue?vue&type=template&id=7dd7f6aa\"\nimport script from \"./Email.vue?vue&type=script&lang=js\"\nexport * from \"./Email.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon email-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon share-circle-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ShareCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShareCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ShareCircle.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ShareCircle.vue?vue&type=template&id=0e958886\"\nimport script from \"./ShareCircle.vue?vue&type=script&lang=js\"\nexport * from \"./ShareCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon share-circle-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M14 16V13C10.39 13 7.81 14.43 6 17C6.72 13.33 8.94 9.73 14 9V6L19 11L14 16Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountCircleOutline.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon account-circle-outline-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"AccountCircleOutlineIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./AccountCircleOutline.vue?vue&type=template&id=5b2fe1de\"\nimport script from \"./AccountCircleOutline.vue?vue&type=script&lang=js\"\nexport * from \"./AccountCircleOutline.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-circle-outline-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M7.07,18.28C7.5,17.38 10.12,16.5 12,16.5C13.88,16.5 16.5,17.38 16.93,18.28C15.57,19.36 13.86,20 12,20C10.14,20 8.43,19.36 7.07,18.28M18.36,16.83C16.93,15.09 13.46,14.5 12,14.5C10.54,14.5 7.07,15.09 5.64,16.83C4.62,15.5 4,13.82 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,13.82 19.38,15.5 18.36,16.83M12,6C10.06,6 8.5,7.56 8.5,9.5C8.5,11.44 10.06,13 12,13C13.94,13 15.5,11.44 15.5,9.5C15.5,7.56 13.94,6 12,6M12,11A1.5,1.5 0 0,1 10.5,9.5A1.5,1.5 0 0,1 12,8A1.5,1.5 0 0,1 13.5,9.5A1.5,1.5 0 0,1 12,11Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Eye.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Eye.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon eye-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"EyeIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Eye.vue?vue&type=template&id=4ae2345c\"\nimport script from \"./Eye.vue?vue&type=script&lang=js\"\nexport * from \"./Eye.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon eye-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div class=\"sharingTabDetailsView\">\n\t\t<div class=\"sharingTabDetailsView__header\">\n\t\t\t<span>\n\t\t\t\t<NcAvatar v-if=\"isUserShare\"\n\t\t\t\t\tclass=\"sharing-entry__avatar\"\n\t\t\t\t\t:is-no-user=\"share.shareType !== SHARE_TYPES.SHARE_TYPE_USER\"\n\t\t\t\t\t:user=\"share.shareWith\"\n\t\t\t\t\t:display-name=\"share.shareWithDisplayName\"\n\t\t\t\t\t:menu-position=\"'left'\"\n\t\t\t\t\t:url=\"share.shareWithAvatar\" />\n\t\t\t\t<component :is=\"getShareTypeIcon(share.type)\" :size=\"32\" />\n\t\t\t</span>\n\t\t\t<span>\n\t\t\t\t<h1>{{ title }}</h1>\n\t\t\t</span>\n\t\t</div>\n\t\t<div class=\"sharingTabDetailsView__wrapper\">\n\t\t\t<div ref=\"quickPermissions\" class=\"sharingTabDetailsView__quick-permissions\">\n\t\t\t\t<div>\n\t\t\t\t\t<NcCheckboxRadioSwitch :button-variant=\"true\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"read-only\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"bundledPermissions.READ_ONLY.toString()\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"toggleCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'View only') }}\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<ViewIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :button-variant=\"true\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"upload-edit\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"bundledPermissions.ALL.toString()\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"toggleCustomPermissions\">\n\t\t\t\t\t\t<template v-if=\"allowsFileDrop\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Allow upload and editing') }}\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Allow editing') }}\n\t\t\t\t\t\t</template>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<EditIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"allowsFileDrop\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"file-drop\"\n\t\t\t\t\t\t:button-variant=\"true\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"bundledPermissions.FILE_DROP.toString()\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"toggleCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'File drop') }}\n\t\t\t\t\t\t<small class=\"subline\">{{ t('files_sharing', 'Upload only') }}</small>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<UploadIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :button-variant=\"true\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-bundle=\"custom\"\n\t\t\t\t\t\t:checked.sync=\"sharingPermission\"\n\t\t\t\t\t\t:value=\"'custom'\"\n\t\t\t\t\t\tname=\"sharing_permission_radio\"\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tbutton-variant-grouped=\"vertical\"\n\t\t\t\t\t\t@update:checked=\"expandCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Custom permissions') }}\n\t\t\t\t\t\t<small class=\"subline\">{{ customPermissionsList }}</small>\n\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t<DotsHorizontalIcon :size=\"20\" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=\"sharingTabDetailsView__advanced-control\">\n\t\t\t\t<NcButton id=\"advancedSectionAccordionAdvancedControl\"\n\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\talignment=\"end-reverse\"\n\t\t\t\t\taria-controls=\"advancedSectionAccordionAdvanced\"\n\t\t\t\t\t:aria-expanded=\"advancedControlExpandedValue\"\n\t\t\t\t\t@click=\"advancedSectionAccordionExpanded = !advancedSectionAccordionExpanded\">\n\t\t\t\t\t{{ t('files_sharing', 'Advanced settings') }}\n\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t<MenuDownIcon v-if=\"!advancedSectionAccordionExpanded\" />\n\t\t\t\t\t\t<MenuUpIcon v-else />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t\t<div v-if=\"advancedSectionAccordionExpanded\"\n\t\t\t\tid=\"advancedSectionAccordionAdvanced\"\n\t\t\t\tclass=\"sharingTabDetailsView__advanced\"\n\t\t\t\taria-labelledby=\"advancedSectionAccordionAdvancedControl\"\n\t\t\t\trole=\"region\">\n\t\t\t\t<section>\n\t\t\t\t\t<NcInputField v-if=\"isPublicShare\"\n\t\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t\t:label=\"t('files_sharing', 'Share label')\"\n\t\t\t\t\t\t:value.sync=\"share.label\" />\n\t\t\t\t\t<template v-if=\"isPublicShare\">\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"isPasswordProtected\" :disabled=\"isPasswordEnforced\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Set password') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcPasswordField v-if=\"isPasswordProtected\"\n\t\t\t\t\t\t\tautocomplete=\"new-password\"\n\t\t\t\t\t\t\t:value=\"hasUnsavedPassword ? share.newPassword : ''\"\n\t\t\t\t\t\t\t:error=\"passwordError\"\n\t\t\t\t\t\t\t:helper-text=\"errorPasswordLabel || passwordHint\"\n\t\t\t\t\t\t\t:required=\"isPasswordEnforced && isNewShare\"\n\t\t\t\t\t\t\t:label=\"t('files_sharing', 'Password')\"\n\t\t\t\t\t\t\t@update:value=\"onPasswordChange\" />\n\n\t\t\t\t\t\t<!-- Migrate icons and remote -> icon=\"icon-info\"-->\n\t\t\t\t\t\t<span v-if=\"isEmailShareType && passwordExpirationTime\" icon=\"icon-info\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Password expires {passwordExpirationTime}', { passwordExpirationTime }) }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span v-else-if=\"isEmailShareType && passwordExpirationTime !== null\" icon=\"icon-error\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Password expired') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</template>\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"canTogglePasswordProtectedByTalkAvailable\"\n\t\t\t\t\t\t:checked.sync=\"isPasswordProtectedByTalk\"\n\t\t\t\t\t\t@update:checked=\"onPasswordProtectedByTalkChange\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Video verification') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"hasExpirationDate\" :disabled=\"isExpiryDateEnforced\">\n\t\t\t\t\t\t{{ isExpiryDateEnforced\n\t\t\t\t\t\t\t? t('files_sharing', 'Expiration date (enforced)')\n\t\t\t\t\t\t\t: t('files_sharing', 'Set expiration date') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcDateTimePickerNative v-if=\"hasExpirationDate\"\n\t\t\t\t\t\tid=\"share-date-picker\"\n\t\t\t\t\t\t:value=\"new Date(share.expireDate ?? dateTomorrow)\"\n\t\t\t\t\t\t:min=\"dateTomorrow\"\n\t\t\t\t\t\t:max=\"maxExpirationDateEnforced\"\n\t\t\t\t\t\thide-label\n\t\t\t\t\t\t:label=\"t('files_sharing', 'Expiration date')\"\n\t\t\t\t\t\t:placeholder=\"t('files_sharing', 'Expiration date')\"\n\t\t\t\t\t\ttype=\"date\"\n\t\t\t\t\t\t@input=\"onExpirationChange\" />\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"isPublicShare\"\n\t\t\t\t\t\t:disabled=\"canChangeHideDownload\"\n\t\t\t\t\t\t:checked.sync=\"share.hideDownload\"\n\t\t\t\t\t\t@update:checked=\"queueUpdate('hideDownload')\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Hide download') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"!isPublicShare\"\n\t\t\t\t\t\t:disabled=\"!canSetDownload\"\n\t\t\t\t\t\t:checked.sync=\"canDownload\"\n\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"download\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Allow download') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"writeNoteToRecipientIsChecked\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Note to recipient') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<template v-if=\"writeNoteToRecipientIsChecked\">\n\t\t\t\t\t\t<label for=\"share-note-textarea\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Enter a note for the share recipient') }}\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<textarea id=\"share-note-textarea\" :value=\"share.note\" @input=\"share.note = $event.target.value\" />\n\t\t\t\t\t</template>\n\t\t\t\t\t<ExternalShareAction v-for=\"action in externalLinkActions\"\n\t\t\t\t\t\t:id=\"action.id\"\n\t\t\t\t\t\tref=\"externalLinkActions\"\n\t\t\t\t\t\t:key=\"action.id\"\n\t\t\t\t\t\t:action=\"action\"\n\t\t\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t\t\t:share=\"share\" />\n\t\t\t\t\t<NcCheckboxRadioSwitch :checked.sync=\"setCustomPermissions\">\n\t\t\t\t\t\t{{ t('files_sharing', 'Custom permissions') }}\n\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t<section v-if=\"setCustomPermissions\" class=\"custom-permissions-group\">\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :disabled=\"!canRemoveReadPermission\"\n\t\t\t\t\t\t\t:checked.sync=\"hasRead\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"read\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Read') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"isFolder\"\n\t\t\t\t\t\t\t:disabled=\"!canSetCreate\"\n\t\t\t\t\t\t\t:checked.sync=\"canCreate\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"create\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Create') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :disabled=\"!canSetEdit\"\n\t\t\t\t\t\t\t:checked.sync=\"canEdit\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"update\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Edit') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch v-if=\"config.isResharingAllowed && share.type !== SHARE_TYPES.SHARE_TYPE_LINK\"\n\t\t\t\t\t\t\t:disabled=\"!canSetReshare\"\n\t\t\t\t\t\t\t:checked.sync=\"canReshare\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"share\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Share') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t\t<NcCheckboxRadioSwitch :disabled=\"!canSetDelete\"\n\t\t\t\t\t\t\t:checked.sync=\"canDelete\"\n\t\t\t\t\t\t\tdata-cy-files-sharing-share-permissions-checkbox=\"delete\">\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Delete') }}\n\t\t\t\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t\t\t</section>\n\t\t\t\t\t<div class=\"sharingTabDetailsView__delete\">\n\t\t\t\t\t\t<NcButton v-if=\"!isNewShare\"\n\t\t\t\t\t\t\t:aria-label=\"t('files_sharing', 'Delete share')\"\n\t\t\t\t\t\t\t:disabled=\"false\"\n\t\t\t\t\t\t\t:readonly=\"false\"\n\t\t\t\t\t\t\ttype=\"tertiary\"\n\t\t\t\t\t\t\t@click.prevent=\"removeShare\">\n\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t<CloseIcon :size=\"16\" />\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t{{ t('files_sharing', 'Delete share') }}\n\t\t\t\t\t\t</NcButton>\n\t\t\t\t\t</div>\n\t\t\t\t</section>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class=\"sharingTabDetailsView__footer\">\n\t\t\t<div class=\"button-group\">\n\t\t\t\t<NcButton data-cy-files-sharing-share-editor-action=\"cancel\"\n\t\t\t\t\t@click=\"$emit('close-sharing-details')\">\n\t\t\t\t\t{{ t('files_sharing', 'Cancel') }}\n\t\t\t\t</NcButton>\n\t\t\t\t<NcButton type=\"primary\"\n\t\t\t\t\tdata-cy-files-sharing-share-editor-action=\"save\"\n\t\t\t\t\t@click=\"saveShare\">\n\t\t\t\t\t{{ shareButtonText }}\n\t\t\t\t\t<template v-if=\"creating\" #icon>\n\t\t\t\t\t\t<NcLoadingIcon />\n\t\t\t\t\t</template>\n\t\t\t\t</NcButton>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport { emit } from '@nextcloud/event-bus'\nimport { getLanguage } from '@nextcloud/l10n'\nimport { Type as ShareType } from '@nextcloud/sharing'\n\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'\nimport NcPasswordField from '@nextcloud/vue/dist/Components/NcPasswordField.js'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport NcDateTimePickerNative from '@nextcloud/vue/dist/Components/NcDateTimePickerNative.js'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport NcLoadingIcon from '@nextcloud/vue/dist/Components/NcLoadingIcon.js'\nimport CircleIcon from 'vue-material-design-icons/CircleOutline.vue'\nimport CloseIcon from 'vue-material-design-icons/Close.vue'\nimport EditIcon from 'vue-material-design-icons/Pencil.vue'\nimport EmailIcon from 'vue-material-design-icons/Email.vue'\nimport LinkIcon from 'vue-material-design-icons/Link.vue'\nimport GroupIcon from 'vue-material-design-icons/AccountGroup.vue'\nimport ShareIcon from 'vue-material-design-icons/ShareCircle.vue'\nimport UserIcon from 'vue-material-design-icons/AccountCircleOutline.vue'\nimport ViewIcon from 'vue-material-design-icons/Eye.vue'\nimport UploadIcon from 'vue-material-design-icons/Upload.vue'\nimport MenuDownIcon from 'vue-material-design-icons/MenuDown.vue'\nimport MenuUpIcon from 'vue-material-design-icons/MenuUp.vue'\nimport DotsHorizontalIcon from 'vue-material-design-icons/DotsHorizontal.vue'\n\nimport ExternalShareAction from '../components/ExternalShareAction.vue'\n\nimport GeneratePassword from '../utils/GeneratePassword.js'\nimport Share from '../models/Share.js'\nimport ShareRequests from '../mixins/ShareRequests.js'\nimport ShareTypes from '../mixins/ShareTypes.js'\nimport SharesMixin from '../mixins/SharesMixin.js'\nimport logger from '../services/logger.ts'\n\nimport {\n\tATOMIC_PERMISSIONS,\n\tBUNDLED_PERMISSIONS,\n\thasPermissions,\n} from '../lib/SharePermissionsToolBox.js'\n\nexport default {\n\tname: 'SharingDetailsTab',\n\tcomponents: {\n\t\tNcAvatar,\n\t\tNcButton,\n\t\tNcInputField,\n\t\tNcPasswordField,\n\t\tNcDateTimePickerNative,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcLoadingIcon,\n\t\tCloseIcon,\n\t\tCircleIcon,\n\t\tEditIcon,\n\t\tExternalShareAction,\n\t\tLinkIcon,\n\t\tGroupIcon,\n\t\tShareIcon,\n\t\tUserIcon,\n\t\tUploadIcon,\n\t\tViewIcon,\n\t\tMenuDownIcon,\n\t\tMenuUpIcon,\n\t\tDotsHorizontalIcon,\n\t},\n\tmixins: [ShareTypes, ShareRequests, SharesMixin],\n\tprops: {\n\t\tshareRequestValue: {\n\t\t\ttype: Object,\n\t\t\trequired: false,\n\t\t},\n\t\tfileInfo: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t\tshare: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\twriteNoteToRecipientIsChecked: false,\n\t\t\tsharingPermission: BUNDLED_PERMISSIONS.ALL.toString(),\n\t\t\trevertSharingPermission: BUNDLED_PERMISSIONS.ALL.toString(),\n\t\t\tsetCustomPermissions: false,\n\t\t\tpasswordError: false,\n\t\t\tadvancedSectionAccordionExpanded: false,\n\t\t\tbundledPermissions: BUNDLED_PERMISSIONS,\n\t\t\tisFirstComponentLoad: true,\n\t\t\ttest: false,\n\t\t\tcreating: false,\n\n\t\t\tExternalShareActions: OCA.Sharing.ExternalShareActions.state,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\ttitle() {\n\t\t\tswitch (this.share.type) {\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_USER:\n\t\t\t\treturn t('files_sharing', 'Share with {userName}', { userName: this.share.shareWithDisplayName })\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_EMAIL:\n\t\t\t return t('files_sharing', 'Share with email {email}', { email: this.share.shareWith })\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_LINK:\n\t\t\t\treturn t('files_sharing', 'Share link')\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_GROUP:\n\t\t\t\treturn t('files_sharing', 'Share with group')\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_ROOM:\n\t\t\t\treturn t('files_sharing', 'Share in conversation')\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_REMOTE: {\n\t\t\t\tconst [user, server] = this.share.shareWith.split('@')\n\t\t\t\treturn t('files_sharing', 'Share with {user} on remote server {server}', { user, server })\n\t\t\t}\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP:\n\t\t\t\treturn t('files_sharing', 'Share with remote group')\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_GUEST:\n\t\t\t\treturn t('files_sharing', 'Share with guest')\n\t\t\tdefault: {\n\t\t\t if (this.share.id) {\n\t\t\t\t\t // Share already exists\n\t\t\t\t\t return t('files_sharing', 'Update share')\n\t\t\t\t } else {\n\t\t\t\t\t return t('files_sharing', 'Create share')\n\t\t\t\t }\n\t\t\t}\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Can the sharee edit the shared file ?\n\t\t */\n\t\tcanEdit: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasUpdatePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isEditChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee create the shared file ?\n\t\t */\n\t\tcanCreate: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasCreatePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isCreateChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee delete the shared file ?\n\t\t */\n\t\tcanDelete: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasDeletePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isDeleteChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee reshare the file ?\n\t\t */\n\t\tcanReshare: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasSharePermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isReshareChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Can the sharee download files or only view them ?\n\t\t */\n\t\tcanDownload: {\n\t\t\tget() {\n\t\t\t\treturn this.share.attributes.find(attr => attr.key === 'download')?.enabled || false\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\t// Find the 'download' attribute and update its value\n\t\t\t\tconst downloadAttr = this.share.attributes.find(attr => attr.key === 'download')\n\t\t\t\tif (downloadAttr) {\n\t\t\t\t\tdownloadAttr.enabled = checked\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is this share readable\n\t\t * Needed for some federated shares that might have been added from file drop links\n\t\t */\n\t\thasRead: {\n\t\t\tget() {\n\t\t\t\treturn this.share.hasReadPermission\n\t\t\t},\n\t\t\tset(checked) {\n\t\t\t\tthis.updateAtomicPermissions({ isReadChecked: checked })\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Does the current share have an expiration date\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\thasExpirationDate: {\n\t\t\tget() {\n\t\t\t\treturn this.isValidShareAttribute(this.share.expireDate)\n\t\t\t},\n\t\t\tset(enabled) {\n\t\t\t\tthis.share.expireDate = enabled\n\t\t\t\t\t? this.formatDateToString(this.defaultExpiryDate)\n\t\t\t\t\t: ''\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtected: {\n\t\t\tget() {\n\t\t\t\treturn this.config.enforcePasswordForPublicLink\n\t\t\t\t\t|| !!this.share.password\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tif (enabled) {\n\t\t\t\t\tthis.share.password = await GeneratePassword()\n\t\t\t\t\tthis.$set(this.share, 'newPassword', this.share.password)\n\t\t\t\t} else {\n\t\t\t\t\tthis.share.password = ''\n\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is the current share a folder ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisFolder() {\n\t\t\treturn this.fileInfo.type === 'dir'\n\t\t},\n\t\t/**\n\t\t * @return {boolean}\n\t\t */\n\t\tisSetDownloadButtonVisible() {\n\t\t\tconst allowedMimetypes = [\n\t\t\t\t// Office documents\n\t\t\t\t'application/msword',\n\t\t\t\t'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n\t\t\t\t'application/vnd.ms-powerpoint',\n\t\t\t\t'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n\t\t\t\t'application/vnd.ms-excel',\n\t\t\t\t'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n\t\t\t\t'application/vnd.oasis.opendocument.text',\n\t\t\t\t'application/vnd.oasis.opendocument.spreadsheet',\n\t\t\t\t'application/vnd.oasis.opendocument.presentation',\n\t\t\t]\n\n\t\t\treturn this.isFolder || allowedMimetypes.includes(this.fileInfo.mimetype)\n\t\t},\n\t\tisPasswordEnforced() {\n\t\t\treturn this.isPublicShare && this.config.enforcePasswordForPublicLink\n\t\t},\n\t\tdefaultExpiryDate() {\n\t\t\tif ((this.isGroupShare || this.isUserShare) && this.config.isDefaultInternalExpireDateEnabled) {\n\t\t\t\treturn new Date(this.config.defaultInternalExpirationDate)\n\t\t\t} else if (this.isRemoteShare && this.config.isDefaultRemoteExpireDateEnabled) {\n\t\t\t\treturn new Date(this.config.defaultRemoteExpireDateEnabled)\n\t\t\t} else if (this.isPublicShare && this.config.isDefaultExpireDateEnabled) {\n\t\t\t\treturn new Date(this.config.defaultExpirationDate)\n\t\t\t}\n\t\t\treturn new Date(new Date().setDate(new Date().getDate() + 1))\n\t\t},\n\t\tisUserShare() {\n\t\t\treturn this.share.type === this.SHARE_TYPES.SHARE_TYPE_USER\n\t\t},\n\t\tisGroupShare() {\n\t\t\treturn this.share.type === this.SHARE_TYPES.SHARE_TYPE_GROUP\n\t\t},\n\t\tisNewShare() {\n\t\t\treturn !this.share.id\n\t\t},\n\t\tallowsFileDrop() {\n\t\t\tif (this.isFolder && this.config.isPublicUploadEnabled) {\n\t\t\t\tif (this.share.type === this.SHARE_TYPES.SHARE_TYPE_LINK || this.share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\t\thasFileDropPermissions() {\n\t\t\treturn this.share.permissions === this.bundledPermissions.FILE_DROP\n\t\t},\n\t\tshareButtonText() {\n\t\t\tif (this.isNewShare) {\n\t\t\t\treturn t('files_sharing', 'Save share')\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Update share')\n\n\t\t},\n\t\t/**\n\t\t * Can the sharer set whether the sharee can edit the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetEdit() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_UPDATE) || this.canEdit\n\t\t},\n\n\t\t/**\n\t\t * Can the sharer set whether the sharee can create the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetCreate() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_CREATE) || this.canCreate\n\t\t},\n\n\t\t/**\n\t\t * Can the sharer set whether the sharee can delete the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetDelete() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_DELETE) || this.canDelete\n\t\t},\n\t\t/**\n\t\t * Can the sharer set whether the sharee can reshare the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetReshare() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.sharePermissions & OC.PERMISSION_SHARE) || this.canReshare\n\t\t},\n\t\t/**\n\t\t * Can the sharer set whether the sharee can download the file ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tcanSetDownload() {\n\t\t\t// If the owner revoked the permission after the resharer granted it\n\t\t\t// the share still has the permission, and the resharer is still\n\t\t\t// allowed to revoke it too (but not to grant it again).\n\t\t\treturn (this.fileInfo.canDownload() || this.canDownload)\n\t\t},\n\t\tcanRemoveReadPermission() {\n\t\t\treturn this.allowsFileDrop && (\n\t\t\t\tthis.share.type === this.SHARE_TYPES.SHARE_TYPE_LINK\n\t\t\t\t\t|| this.share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL\n\t\t\t)\n\t\t},\n\t\t// if newPassword exists, but is empty, it means\n\t\t// the user deleted the original password\n\t\thasUnsavedPassword() {\n\t\t\treturn this.share.newPassword !== undefined\n\t\t},\n\t\tpasswordExpirationTime() {\n\t\t\tif (!this.isValidShareAttribute(this.share.passwordExpirationTime)) {\n\t\t\t\treturn null\n\t\t\t}\n\n\t\t\tconst expirationTime = moment(this.share.passwordExpirationTime)\n\n\t\t\tif (expirationTime.diff(moment()) < 0) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn expirationTime.fromNow()\n\t\t},\n\n\t\t/**\n\t\t * Is Talk enabled?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisTalkEnabled() {\n\t\t\treturn OC.appswebroots.spreed !== undefined\n\t\t},\n\n\t\t/**\n\t\t * Is it possible to protect the password by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalkAvailable() {\n\t\t\treturn this.isPasswordProtected && this.isTalkEnabled\n\t\t},\n\t\t/**\n\t\t * Is the current share password protected by Talk?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisPasswordProtectedByTalk: {\n\t\t\tget() {\n\t\t\t\treturn this.share.sendPasswordByTalk\n\t\t\t},\n\t\t\tasync set(enabled) {\n\t\t\t\tthis.share.sendPasswordByTalk = enabled\n\t\t\t},\n\t\t},\n\t\t/**\n\t\t * Is the current share an email share ?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisEmailShareType() {\n\t\t\treturn this.share\n\t\t\t\t? this.share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL\n\t\t\t\t: false\n\t\t},\n\t\tcanTogglePasswordProtectedByTalkAvailable() {\n\t\t\tif (!this.isPublicShare || !this.isPasswordProtected) {\n\t\t\t\t// Makes no sense\n\t\t\t\treturn false\n\t\t\t} else if (this.isEmailShareType && !this.hasUnsavedPassword) {\n\t\t\t\t// For email shares we need a new password in order to enable or\n\t\t\t\t// disable\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\t// Is Talk enabled?\n\t\t\treturn OC.appswebroots.spreed !== undefined\n\t\t},\n\t\tcanChangeHideDownload() {\n\t\t\tconst hasDisabledDownload = (shareAttribute) => shareAttribute.key === 'download' && shareAttribute.scope === 'permissions' && shareAttribute.enabled === false\n\t\t\treturn this.fileInfo.shareAttributes.some(hasDisabledDownload)\n\t\t},\n\t\tcustomPermissionsList() {\n\t\t\t// Key order will be different, because ATOMIC_PERMISSIONS are numbers\n\t\t\tconst translatedPermissions = {\n\t\t\t\t[ATOMIC_PERMISSIONS.READ]: this.t('files_sharing', 'Read'),\n\t\t\t\t[ATOMIC_PERMISSIONS.CREATE]: this.t('files_sharing', 'Create'),\n\t\t\t\t[ATOMIC_PERMISSIONS.UPDATE]: this.t('files_sharing', 'Edit'),\n\t\t\t\t[ATOMIC_PERMISSIONS.SHARE]: this.t('files_sharing', 'Share'),\n\t\t\t\t[ATOMIC_PERMISSIONS.DELETE]: this.t('files_sharing', 'Delete'),\n\t\t\t}\n\n\t\t\treturn [ATOMIC_PERMISSIONS.READ, ATOMIC_PERMISSIONS.CREATE, ATOMIC_PERMISSIONS.UPDATE, ATOMIC_PERMISSIONS.SHARE, ATOMIC_PERMISSIONS.DELETE]\n\t\t\t\t.filter((permission) => hasPermissions(this.share.permissions, permission))\n\t\t\t\t.map((permission, index) => index === 0\n\t\t\t\t\t? translatedPermissions[permission]\n\t\t\t\t\t: translatedPermissions[permission].toLocaleLowerCase(getLanguage()))\n\t\t\t\t.join(', ')\n\t\t},\n\t\tadvancedControlExpandedValue() {\n\t\t\treturn this.advancedSectionAccordionExpanded ? 'true' : 'false'\n\t\t},\n\t\terrorPasswordLabel() {\n\t\t\tif (this.passwordError) {\n\t\t\t\treturn t('files_sharing', \"Password field can't be empty\")\n\t\t\t}\n\t\t\treturn undefined\n\t\t},\n\n\t\tpasswordHint() {\n\t\t\tif (this.isNewShare || this.hasUnsavedPassword) {\n\t\t\t\treturn undefined\n\t\t\t}\n\t\t\treturn t('files_sharing', 'Replace current password')\n\t\t},\n\n\t\t/**\n\t\t * Additional actions for the menu\n\t\t *\n\t\t * @return {Array}\n\t\t */\n\t\texternalLinkActions() {\n\t\t\tconst filterValidAction = (action) => (action.shareType.includes(ShareType.SHARE_TYPE_LINK) || action.shareType.includes(ShareType.SHARE_TYPE_EMAIL)) && action.advanced\n\t\t\t// filter only the advanced registered actions for said link\n\t\t\treturn this.ExternalShareActions.actions\n\t\t\t\t.filter(filterValidAction)\n\t\t},\n\t},\n\twatch: {\n\t\tsetCustomPermissions(isChecked) {\n\t\t\tif (isChecked) {\n\t\t\t\tthis.sharingPermission = 'custom'\n\t\t\t} else {\n\t\t\t\tthis.sharingPermission = this.revertSharingPermission\n\t\t\t}\n\t\t},\n\t},\n\tbeforeMount() {\n\t\tthis.initializePermissions()\n\t\tthis.initializeAttributes()\n\t\tlogger.debug('Share object received', { share: this.share })\n\t\tlogger.debug('Configuration object received', { config: this.config })\n\t},\n\n\tmounted() {\n\t\tthis.$refs.quickPermissions?.querySelector('input:checked')?.focus()\n\t},\n\n\tmethods: {\n\t\tupdateAtomicPermissions({\n\t\t\tisReadChecked = this.hasRead,\n\t\t\tisEditChecked = this.canEdit,\n\t\t\tisCreateChecked = this.canCreate,\n\t\t\tisDeleteChecked = this.canDelete,\n\t\t\tisReshareChecked = this.canReshare,\n\t\t} = {}) {\n\t\t\t// calc permissions if checked\n\t\t\tconst permissions = 0\n\t\t\t\t| (isReadChecked ? ATOMIC_PERMISSIONS.READ : 0)\n\t\t\t\t| (isCreateChecked ? ATOMIC_PERMISSIONS.CREATE : 0)\n\t\t\t\t| (isDeleteChecked ? ATOMIC_PERMISSIONS.DELETE : 0)\n\t\t\t\t| (isEditChecked ? ATOMIC_PERMISSIONS.UPDATE : 0)\n\t\t\t\t| (isReshareChecked ? ATOMIC_PERMISSIONS.SHARE : 0)\n\t\t\tthis.share.permissions = permissions\n\t\t},\n\t\texpandCustomPermissions() {\n\t\t\tif (!this.advancedSectionAccordionExpanded) {\n\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t}\n\t\t\tthis.toggleCustomPermissions()\n\t\t},\n\t\ttoggleCustomPermissions(selectedPermission) {\n\t\t\tconst isCustomPermissions = this.sharingPermission === 'custom'\n\t\t\tthis.revertSharingPermission = !isCustomPermissions ? selectedPermission : 'custom'\n\t\t\tthis.setCustomPermissions = isCustomPermissions\n\t\t},\n\t\tasync initializeAttributes() {\n\n\t\t\tif (this.isNewShare) {\n\t\t\t\tif (this.isPasswordEnforced && this.isPublicShare) {\n\t\t\t\t\tthis.$set(this.share, 'newPassword', await GeneratePassword())\n\t\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\t}\n\t\t\t\t/* Set default expiration dates if configured */\n\t\t\t\tif (this.isPublicShare && this.config.isDefaultExpireDateEnabled) {\n\t\t\t\t\tthis.share.expireDate = this.config.defaultExpirationDate.toDateString()\n\t\t\t\t} else if (this.isRemoteShare && this.config.isDefaultRemoteExpireDateEnabled) {\n\t\t\t\t\tthis.share.expireDate = this.config.defaultRemoteExpirationDateString.toDateString()\n\t\t\t\t} else if (this.config.isDefaultInternalExpireDateEnabled) {\n\t\t\t\t\tthis.share.expireDate = this.config.defaultInternalExpirationDate.toDateString()\n\t\t\t\t}\n\n\t\t\t\tif (this.isValidShareAttribute(this.share.expireDate)) {\n\t\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\t}\n\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// If there is an enforced expiry date, then existing shares created before enforcement\n\t\t\t// have no expiry date, hence we set it here.\n\t\t\tif (!this.isValidShareAttribute(this.share.expireDate) && this.isExpiryDateEnforced) {\n\t\t\t\tthis.hasExpirationDate = true\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tthis.isValidShareAttribute(this.share.password)\n\t\t\t\t|| this.isValidShareAttribute(this.share.expireDate)\n\t\t\t\t|| this.isValidShareAttribute(this.share.label)\n\t\t\t) {\n\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t}\n\n\t\t},\n\t\thandleShareType() {\n\t\t\tif ('shareType' in this.share) {\n\t\t\t\tthis.share.type = this.share.shareType\n\t\t\t} else if (this.share.share_type) {\n\t\t\t\tthis.share.type = this.share.share_type\n\t\t\t}\n\t\t},\n\t\thandleDefaultPermissions() {\n\t\t\tif (this.isNewShare) {\n\t\t\t\tconst defaultPermissions = this.config.defaultPermissions\n\t\t\t\tif (defaultPermissions === BUNDLED_PERMISSIONS.READ_ONLY || defaultPermissions === BUNDLED_PERMISSIONS.ALL) {\n\t\t\t\t\tthis.sharingPermission = defaultPermissions.toString()\n\t\t\t\t} else {\n\t\t\t\t\tthis.sharingPermission = 'custom'\n\t\t\t\t\tthis.share.permissions = defaultPermissions\n\t\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\t\tthis.setCustomPermissions = true\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Read permission required for share creation\n\t\t\tif (!this.canRemoveReadPermission) {\n\t\t\t\tthis.hasRead = true\n\t\t\t}\n\t\t},\n\t\thandleCustomPermissions() {\n\t\t\tif (!this.isNewShare && (this.hasCustomPermissions || this.share.setCustomPermissions)) {\n\t\t\t\tthis.sharingPermission = 'custom'\n\t\t\t\tthis.advancedSectionAccordionExpanded = true\n\t\t\t\tthis.setCustomPermissions = true\n\t\t\t} else if (this.share.permissions) {\n\t\t\t\tthis.sharingPermission = this.share.permissions.toString()\n\t\t\t}\n\t\t},\n\t\tinitializePermissions() {\n\t\t\tthis.handleShareType()\n\t\t\tthis.handleDefaultPermissions()\n\t\t\tthis.handleCustomPermissions()\n\t\t},\n\t\tasync saveShare() {\n\t\t\tconst permissionsAndAttributes = ['permissions', 'attributes', 'note', 'expireDate']\n\t\t\tconst publicShareAttributes = ['label', 'password', 'hideDownload']\n\t\t\tif (this.isPublicShare) {\n\t\t\t\tpermissionsAndAttributes.push(...publicShareAttributes)\n\t\t\t}\n\t\t\tconst sharePermissionsSet = parseInt(this.sharingPermission)\n\t\t\tif (this.setCustomPermissions) {\n\t\t\t\tthis.updateAtomicPermissions()\n\t\t\t} else {\n\t\t\t\tthis.share.permissions = sharePermissionsSet\n\t\t\t}\n\n\t\t\tif (!this.isFolder && this.share.permissions === BUNDLED_PERMISSIONS.ALL) {\n\t\t\t\t// It's not possible to create an existing file.\n\t\t\t\tthis.share.permissions = BUNDLED_PERMISSIONS.ALL_FILE\n\t\t\t}\n\t\t\tif (!this.writeNoteToRecipientIsChecked) {\n\t\t\t\tthis.share.note = ''\n\t\t\t}\n\t\t\tif (this.isPasswordProtected) {\n\t\t\t\tif (this.hasUnsavedPassword && this.isValidShareAttribute(this.share.newPassword)) {\n\t\t\t\t\tthis.share.password = this.share.newPassword\n\t\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t\t} else if (this.isPasswordEnforced && this.isNewShare && !this.isValidShareAttribute(this.share.password)) {\n\t\t\t\t\tthis.passwordError = true\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.share.password = ''\n\t\t\t}\n\n\t\t\tif (!this.hasExpirationDate) {\n\t\t\t\tthis.share.expireDate = ''\n\t\t\t}\n\n\t\t\tif (this.isNewShare) {\n\t\t\t\tconst incomingShare = {\n\t\t\t\t\tpermissions: this.share.permissions,\n\t\t\t\t\tshareType: this.share.type,\n\t\t\t\t\tshareWith: this.share.shareWith,\n\t\t\t\t\tattributes: this.share.attributes,\n\t\t\t\t\tnote: this.share.note,\n\t\t\t\t\tfileInfo: this.fileInfo,\n\t\t\t\t}\n\n\t\t\t\tincomingShare.expireDate = this.hasExpirationDate ? this.share.expireDate : ''\n\n\t\t\t\tif (this.isPasswordProtected) {\n\t\t\t\t\tincomingShare.password = this.share.password\n\t\t\t\t}\n\n\t\t\t\tthis.creating = true\n\t\t\t\tconst share = await this.addShare(incomingShare)\n\t\t\t\tthis.creating = false\n\t\t\t\tthis.share = share\n\t\t\t\tthis.$emit('add:share', this.share)\n\t\t\t} else {\n\t\t\t\tthis.$emit('update:share', this.share)\n\t\t\t\tthis.queueUpdate(...permissionsAndAttributes)\n\t\t\t}\n\n\t\t\tawait this.getNode()\n\t\t\temit('files:node:updated', this.node)\n\n\t\t\tif (this.$refs.externalLinkActions?.length > 0) {\n\t\t\t\tawait Promise.allSettled(this.$refs.externalLinkActions.map((action) => {\n\t\t\t\t\tif (typeof action.$children.at(0)?.onSave !== 'function') {\n\t\t\t\t\t\treturn Promise.resolve()\n\t\t\t\t\t}\n\t\t\t\t\treturn action.$children.at(0)?.onSave?.()\n\t\t\t\t}))\n\t\t\t}\n\n\t\t\tthis.$emit('close-sharing-details')\n\t\t},\n\t\t/**\n\t\t * Process the new share request\n\t\t *\n\t\t * @param {Share} share incoming share object\n\t\t */\n\t\tasync addShare(share) {\n\t\t\tlogger.debug('Adding a new share from the input for', { share })\n\t\t\tconst path = this.path\n\t\t\ttry {\n\t\t\t\tconst resultingShare = await this.createShare({\n\t\t\t\t\tpath,\n\t\t\t\t\tshareType: share.shareType,\n\t\t\t\t\tshareWith: share.shareWith,\n\t\t\t\t\tpermissions: share.permissions,\n\t\t\t\t\texpireDate: share.expireDate,\n\t\t\t\t\tattributes: JSON.stringify(share.attributes),\n\t\t\t\t\t...(share.note ? { note: share.note } : {}),\n\t\t\t\t\t...(share.password ? { password: share.password } : {}),\n\t\t\t\t})\n\t\t\t\treturn resultingShare\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Error while adding new share', { error })\n\t\t\t} finally {\n\t\t\t\t// this.loading = false // No loader here yet\n\t\t\t}\n\t\t},\n\t\tasync removeShare() {\n\t\t\tawait this.onDelete()\n\t\t\tawait this.getNode()\n\t\t\temit('files:node:updated', this.node)\n\t\t\tthis.$emit('close-sharing-details')\n\t\t},\n\t\t/**\n\t\t * Update newPassword values\n\t\t * of share. If password is set but not newPassword\n\t\t * then the user did not changed the password\n\t\t * If both co-exists, the password have changed and\n\t\t * we show it in plain text.\n\t\t * Then on submit (or menu close), we sync it.\n\t\t *\n\t\t * @param {string} password the changed password\n\t\t */\n\t\tonPasswordChange(password) {\n\t\t\tif (password === '') {\n\t\t\t\tthis.$delete(this.share, 'newPassword')\n\t\t\t\tthis.passwordError = this.isNewShare && this.isPasswordEnforced\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.passwordError = !this.isValidShareAttribute(password)\n\t\t\tthis.$set(this.share, 'newPassword', password)\n\t\t},\n\t\t/**\n\t\t * Update the password along with \"sendPasswordByTalk\".\n\t\t *\n\t\t * If the password was modified the new password is sent; otherwise\n\t\t * updating a mail share would fail, as in that case it is required that\n\t\t * a new password is set when enabling or disabling\n\t\t * \"sendPasswordByTalk\".\n\t\t */\n\t\tonPasswordProtectedByTalkChange() {\n\t\t\tif (this.hasUnsavedPassword) {\n\t\t\t\tthis.share.password = this.share.newPassword.trim()\n\t\t\t}\n\n\t\t\tthis.queueUpdate('sendPasswordByTalk', 'password')\n\t\t},\n\t\tisValidShareAttribute(value) {\n\t\t\tif ([null, undefined].includes(value)) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tif (!(value.trim().length > 0)) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn true\n\t\t},\n\t\tgetShareTypeIcon(type) {\n\t\t\tswitch (type) {\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_LINK:\n\t\t\t\treturn LinkIcon\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_GUEST:\n\t\t\t\treturn UserIcon\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_REMOTE_GROUP:\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_GROUP:\n\t\t\t\treturn GroupIcon\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_EMAIL:\n\t\t\t\treturn EmailIcon\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_CIRCLE:\n\t\t\t\treturn CircleIcon\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_ROOM:\n\t\t\t\treturn ShareIcon\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_DECK:\n\t\t\t\treturn ShareIcon\n\t\t\tcase this.SHARE_TYPES.SHARE_TYPE_SCIENCEMESH:\n\t\t\t\treturn ShareIcon\n\t\t\tdefault:\n\t\t\t\treturn null // Or a default icon component if needed\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.sharingTabDetailsView {\n\tdisplay: flex;\n\tflex-direction: column;\n\twidth: 100%;\n\tmargin: 0 auto;\n\tposition: relative;\n\theight: 100%;\n\toverflow: hidden;\n\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tbox-sizing: border-box;\n\t\tmargin: 0.2em;\n\n\t\tspan {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\th1 {\n\t\t\t\tfont-size: 15px;\n\t\t\t\tpadding-left: 0.3em;\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__wrapper {\n\t\tposition: relative;\n\t\toverflow: scroll;\n\t\tflex-shrink: 1;\n\t\tpadding: 4px;\n\t\tpadding-right: 12px;\n\t}\n\n\t&__quick-permissions {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\t\tmargin: 0 auto;\n\t\tborder-radius: 0;\n\n\t\tdiv {\n\t\t\twidth: 100%;\n\n\t\t\tspan {\n\t\t\t\twidth: 100%;\n\n\t\t\t\tspan:nth-child(1) {\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tjustify-content: center;\n\t\t\t\t\tpadding: 0.1em;\n\t\t\t\t}\n\n\t\t\t\t::v-deep label {\n\n\t\t\t\t\tspan {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-direction: column;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/* Target component based style in NcCheckboxRadioSwitch slot content*/\n\t\t\t\t:deep(span.checkbox-content__text.checkbox-radio-switch__text) {\n\t\t\t\t\tflex-wrap: wrap;\n\n\t\t\t\t\t.subline {\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\tflex-basis: 100%;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\t}\n\n\t&__advanced-control {\n\t\twidth: 100%;\n\n\t\tbutton {\n\t\t\tmargin-top: 0.5em;\n\t\t}\n\n\t}\n\n\t&__advanced {\n\t\twidth: 100%;\n\t\tmargin-bottom: 0.5em;\n\t\ttext-align: left;\n\t\tpadding-left: 0;\n\n\t\tsection {\n\n\t\t\ttextarea,\n\t\t\tdiv.mx-datepicker {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\ttextarea {\n\t\t\t\theight: 80px;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t/*\n The following style is applied out of the component's scope\n to remove padding from the label.checkbox-radio-switch__label,\n which is used to group radio checkbox items. The use of ::v-deep\n ensures that the padding is modified without being affected by\n the component's scoping.\n Without this achieving left alignment for the checkboxes would not\n be possible.\n */\n\t\t\tspan {\n\t\t\t\t::v-deep label {\n\t\t\t\t\tpadding-left: 0 !important;\n\t\t\t\t\tbackground-color: initial !important;\n\t\t\t\t\tborder: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsection.custom-permissions-group {\n\t\t\t\tpadding-left: 1.5em;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__delete {\n\t\t>button:first-child {\n\t\t\tcolor: rgb(223, 7, 7);\n\t\t}\n\t}\n\n\t&__footer {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tposition: sticky;\n\t\tbottom: 0;\n\t\tflex-direction: column;\n\t\tjustify-content: space-between;\n\t\talign-items: flex-start;\n\t\tbackground: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--color-main-background));\n\n\t\t.button-group {\n\t\t\tdisplay: flex;\n\t\t\tjustify-content: space-between;\n\t\t\twidth: 100%;\n\t\t\tmargin-top: 16px;\n\n\t\t\tbutton {\n\t\t\t\tmargin-left: 16px;\n\n\t\t\t\t&:first-child {\n\t\t\t\t\tmargin-left: 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=style&index=0&id=56215dac&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingDetailsTab.vue?vue&type=style&index=0&id=56215dac&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingDetailsTab.vue?vue&type=template&id=56215dac&scoped=true\"\nimport script from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingDetailsTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingDetailsTab.vue?vue&type=style&index=0&id=56215dac&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"56215dac\",\n null\n \n)\n\nexport default component.exports","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div class=\"sharingTab\" :class=\"{ 'icon-loading': loading }\">\n\t\t<!-- error message -->\n\t\t<div v-if=\"error\" class=\"emptycontent\" :class=\"{ emptyContentWithSections: sections.length > 0 }\">\n\t\t\t<div class=\"icon icon-error\" />\n\t\t\t<h2>{{ error }}</h2>\n\t\t</div>\n\n\t\t<!-- shares content -->\n\t\t<div v-show=\"!showSharingDetailsView\"\n\t\t\tclass=\"sharingTab__content\">\n\t\t\t<!-- shared with me information -->\n\t\t\t<ul>\n\t\t\t\t<SharingEntrySimple v-if=\"isSharedWithMe\" v-bind=\"sharedWithMe\" class=\"sharing-entry__reshare\">\n\t\t\t\t\t<template #avatar>\n\t\t\t\t\t\t<NcAvatar :user=\"sharedWithMe.user\"\n\t\t\t\t\t\t\t:display-name=\"sharedWithMe.displayName\"\n\t\t\t\t\t\t\tclass=\"sharing-entry__avatar\" />\n\t\t\t\t\t</template>\n\t\t\t\t</SharingEntrySimple>\n\t\t\t</ul>\n\n\t\t\t<!-- add new share input -->\n\t\t\t<SharingInput v-if=\"!loading\"\n\t\t\t\t:can-reshare=\"canReshare\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t:link-shares=\"linkShares\"\n\t\t\t\t:reshare=\"reshare\"\n\t\t\t\t:shares=\"shares\"\n\t\t\t\t@open-sharing-details=\"toggleShareDetailsView\" />\n\n\t\t\t<!-- link shares list -->\n\t\t\t<SharingLinkList v-if=\"!loading\"\n\t\t\t\tref=\"linkShareList\"\n\t\t\t\t:can-reshare=\"canReshare\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t:shares=\"linkShares\"\n\t\t\t\t@open-sharing-details=\"toggleShareDetailsView\" />\n\n\t\t\t<!-- other shares list -->\n\t\t\t<SharingList v-if=\"!loading\"\n\t\t\t\tref=\"shareList\"\n\t\t\t\t:shares=\"shares\"\n\t\t\t\t:file-info=\"fileInfo\"\n\t\t\t\t@open-sharing-details=\"toggleShareDetailsView\" />\n\n\t\t\t<!-- inherited shares -->\n\t\t\t<SharingInherited v-if=\"canReshare && !loading\" :file-info=\"fileInfo\" />\n\n\t\t\t<!-- internal link copy -->\n\t\t\t<SharingEntryInternal :file-info=\"fileInfo\" />\n\n\t\t\t<!-- projects -->\n\t\t\t<CollectionList v-if=\"projectsEnabled && fileInfo\"\n\t\t\t\t:id=\"`${fileInfo.id}`\"\n\t\t\t\ttype=\"file\"\n\t\t\t\t:name=\"fileInfo.name\" />\n\t\t</div>\n\n\t\t<!-- additional entries, use it with cautious -->\n\t\t<div v-for=\"(section, index) in sections\"\n\t\t\tv-show=\"!showSharingDetailsView\"\n\t\t\t:ref=\"'section-' + index\"\n\t\t\t:key=\"index\"\n\t\t\tclass=\"sharingTab__additionalContent\">\n\t\t\t<component :is=\"section($refs['section-'+index], fileInfo)\" :file-info=\"fileInfo\" />\n\t\t</div>\n\n\t\t<!-- share details -->\n\t\t<SharingDetailsTab v-if=\"showSharingDetailsView\"\n\t\t\t:file-info=\"shareDetailsData.fileInfo\"\n\t\t\t:share=\"shareDetailsData.share\"\n\t\t\t@close-sharing-details=\"toggleShareDetailsView\"\n\t\t\t@add:share=\"addShare\"\n\t\t\t@remove:share=\"removeShare\" />\n\t</div>\n</template>\n\n<script>\nimport { CollectionList } from 'nextcloud-vue-collections'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport NcAvatar from '@nextcloud/vue/dist/Components/NcAvatar.js'\nimport axios from '@nextcloud/axios'\nimport { loadState } from '@nextcloud/initial-state'\n\nimport Config from '../services/ConfigService.js'\nimport { shareWithTitle } from '../utils/SharedWithMe.js'\nimport Share from '../models/Share.js'\nimport ShareTypes from '../mixins/ShareTypes.js'\nimport SharingEntryInternal from '../components/SharingEntryInternal.vue'\nimport SharingEntrySimple from '../components/SharingEntrySimple.vue'\nimport SharingInput from '../components/SharingInput.vue'\n\nimport SharingInherited from './SharingInherited.vue'\nimport SharingLinkList from './SharingLinkList.vue'\nimport SharingList from './SharingList.vue'\nimport SharingDetailsTab from './SharingDetailsTab.vue'\n\nexport default {\n\tname: 'SharingTab',\n\n\tcomponents: {\n\t\tNcAvatar,\n\t\tCollectionList,\n\t\tSharingEntryInternal,\n\t\tSharingEntrySimple,\n\t\tSharingInherited,\n\t\tSharingInput,\n\t\tSharingLinkList,\n\t\tSharingList,\n\t\tSharingDetailsTab,\n\t},\n\n\tmixins: [ShareTypes],\n\n\tdata() {\n\t\treturn {\n\t\t\tconfig: new Config(),\n\t\t\tdeleteEvent: null,\n\t\t\terror: '',\n\t\t\texpirationInterval: null,\n\t\t\tloading: true,\n\n\t\t\tfileInfo: null,\n\n\t\t\t// reshare Share object\n\t\t\treshare: null,\n\t\t\tsharedWithMe: {},\n\t\t\tshares: [],\n\t\t\tlinkShares: [],\n\n\t\t\tsections: OCA.Sharing.ShareTabSections.getSections(),\n\t\t\tprojectsEnabled: loadState('core', 'projects_enabled', false),\n\t\t\tshowSharingDetailsView: false,\n\t\t\tshareDetailsData: {},\n\t\t\treturnFocusElement: null,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t/**\n\t\t * Is this share shared with me?\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisSharedWithMe() {\n\t\t\treturn Object.keys(this.sharedWithMe).length > 0\n\t\t},\n\n\t\tcanReshare() {\n\t\t\treturn !!(this.fileInfo.permissions & OC.PERMISSION_SHARE)\n\t\t\t\t|| !!(this.reshare && this.reshare.hasSharePermission && this.config.isResharingAllowed)\n\t\t},\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Update current fileInfo and fetch new data\n\t\t *\n\t\t * @param {object} fileInfo the current file FileInfo\n\t\t */\n\t\tasync update(fileInfo) {\n\t\t\tthis.fileInfo = fileInfo\n\t\t\tthis.resetState()\n\t\t\tthis.getShares()\n\t\t},\n\n\t\t/**\n\t\t * Get the existing shares infos\n\t\t */\n\t\tasync getShares() {\n\t\t\ttry {\n\t\t\t\tthis.loading = true\n\n\t\t\t\t// init params\n\t\t\t\tconst shareUrl = generateOcsUrl('apps/files_sharing/api/v1/shares')\n\t\t\t\tconst format = 'json'\n\t\t\t\t// TODO: replace with proper getFUllpath implementation of our own FileInfo model\n\t\t\t\tconst path = (this.fileInfo.path + '/' + this.fileInfo.name).replace('//', '/')\n\n\t\t\t\t// fetch shares\n\t\t\t\tconst fetchShares = axios.get(shareUrl, {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat,\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\treshares: true,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\tconst fetchSharedWithMe = axios.get(shareUrl, {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tformat,\n\t\t\t\t\t\tpath,\n\t\t\t\t\t\tshared_with_me: true,\n\t\t\t\t\t},\n\t\t\t\t})\n\n\t\t\t\t// wait for data\n\t\t\t\tconst [shares, sharedWithMe] = await Promise.all([fetchShares, fetchSharedWithMe])\n\t\t\t\tthis.loading = false\n\n\t\t\t\t// process results\n\t\t\t\tthis.processSharedWithMe(sharedWithMe)\n\t\t\t\tthis.processShares(shares)\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response.data?.ocs?.meta?.message) {\n\t\t\t\t\tthis.error = error.response.data.ocs.meta.message\n\t\t\t\t} else {\n\t\t\t\t\tthis.error = t('files_sharing', 'Unable to load the shares list')\n\t\t\t\t}\n\t\t\t\tthis.loading = false\n\t\t\t\tconsole.error('Error loading the shares list', error)\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Reset the current view to its default state\n\t\t */\n\t\tresetState() {\n\t\t\tclearInterval(this.expirationInterval)\n\t\t\tthis.loading = true\n\t\t\tthis.error = ''\n\t\t\tthis.sharedWithMe = {}\n\t\t\tthis.shares = []\n\t\t\tthis.linkShares = []\n\t\t\tthis.showSharingDetailsView = false\n\t\t\tthis.shareDetailsData = {}\n\t\t},\n\n\t\t/**\n\t\t * Update sharedWithMe.subtitle with the appropriate\n\t\t * expiration time left\n\t\t *\n\t\t * @param {Share} share the sharedWith Share object\n\t\t */\n\t\tupdateExpirationSubtitle(share) {\n\t\t\tconst expiration = moment(share.expireDate).unix()\n\t\t\tthis.$set(this.sharedWithMe, 'subtitle', t('files_sharing', 'Expires {relativetime}', {\n\t\t\t\trelativetime: OC.Util.relativeModifiedDate(expiration * 1000),\n\t\t\t}))\n\n\t\t\t// share have expired\n\t\t\tif (moment().unix() > expiration) {\n\t\t\t\tclearInterval(this.expirationInterval)\n\t\t\t\t// TODO: clear ui if share is expired\n\t\t\t\tthis.$set(this.sharedWithMe, 'subtitle', t('files_sharing', 'this share just expired.'))\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Process the current shares data\n\t\t * and init shares[]\n\t\t *\n\t\t * @param {object} share the share ocs api request data\n\t\t * @param {object} share.data the request data\n\t\t */\n\t\tprocessShares({ data }) {\n\t\t\tif (data.ocs && data.ocs.data && data.ocs.data.length > 0) {\n\t\t\t\t// create Share objects and sort by newest\n\t\t\t\tconst shares = data.ocs.data\n\t\t\t\t\t.map(share => new Share(share))\n\t\t\t\t\t.sort((a, b) => b.createdTime - a.createdTime)\n\n\t\t\t\tthis.linkShares = shares.filter(share => share.type === this.SHARE_TYPES.SHARE_TYPE_LINK || share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL)\n\t\t\t\tthis.shares = shares.filter(share => share.type !== this.SHARE_TYPES.SHARE_TYPE_LINK && share.type !== this.SHARE_TYPES.SHARE_TYPE_EMAIL)\n\n\t\t\t\tconsole.debug('Processed', this.linkShares.length, 'link share(s)')\n\t\t\t\tconsole.debug('Processed', this.shares.length, 'share(s)')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Process the sharedWithMe share data\n\t\t * and init sharedWithMe\n\t\t *\n\t\t * @param {object} share the share ocs api request data\n\t\t * @param {object} share.data the request data\n\t\t */\n\t\tprocessSharedWithMe({ data }) {\n\t\t\tif (data.ocs && data.ocs.data && data.ocs.data[0]) {\n\t\t\t\tconst share = new Share(data)\n\t\t\t\tconst title = shareWithTitle(share)\n\t\t\t\tconst displayName = share.ownerDisplayName\n\t\t\t\tconst user = share.owner\n\n\t\t\t\tthis.sharedWithMe = {\n\t\t\t\t\tdisplayName,\n\t\t\t\t\ttitle,\n\t\t\t\t\tuser,\n\t\t\t\t}\n\t\t\t\tthis.reshare = share\n\n\t\t\t\t// If we have an expiration date, use it as subtitle\n\t\t\t\t// Refresh the status every 10s and clear if expired\n\t\t\t\tif (share.expireDate && moment(share.expireDate).unix() > moment().unix()) {\n\t\t\t\t\t// first update\n\t\t\t\t\tthis.updateExpirationSubtitle(share)\n\t\t\t\t\t// interval update\n\t\t\t\t\tthis.expirationInterval = setInterval(this.updateExpirationSubtitle, 10000, share)\n\t\t\t\t}\n\t\t\t} else if (this.fileInfo && this.fileInfo.shareOwnerId !== undefined ? this.fileInfo.shareOwnerId !== OC.currentUser : false) {\n\t\t\t\t// Fallback to compare owner and current user.\n\t\t\t\tthis.sharedWithMe = {\n\t\t\t\t\tdisplayName: this.fileInfo.shareOwner,\n\t\t\t\t\ttitle: t(\n\t\t\t\t\t\t'files_sharing',\n\t\t\t\t\t\t'Shared with you by {owner}',\n\t\t\t\t\t\t{ owner: this.fileInfo.shareOwner },\n\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t{ escape: false },\n\t\t\t\t\t),\n\t\t\t\t\tuser: this.fileInfo.shareOwnerId,\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Add a new share into the shares list\n\t\t * and return the newly created share component\n\t\t *\n\t\t * @param {Share} share the share to add to the array\n\t\t * @param {Function} [resolve] a function to run after the share is added and its component initialized\n\t\t */\n\t\taddShare(share, resolve = () => { }) {\n\t\t\t// only catching share type MAIL as link shares are added differently\n\t\t\t// meaning: not from the ShareInput\n\t\t\tif (share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL) {\n\t\t\t\tthis.linkShares.unshift(share)\n\t\t\t} else {\n\t\t\t\tthis.shares.unshift(share)\n\t\t\t}\n\t\t\tthis.awaitForShare(share, resolve)\n\t\t},\n\t\t/**\n\t\t * Remove a share from the shares list\n\t\t *\n\t\t * @param {Share} share the share to remove\n\t\t */\n\t\tremoveShare(share) {\n\t\t\t// Get reference for this.linkShares or this.shares\n\t\t\tconst shareList\n\t\t\t\t= share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL\n\t\t\t\t\t|| share.type === this.SHARE_TYPES.SHARE_TYPE_LINK\n\t\t\t\t\t? this.linkShares\n\t\t\t\t\t: this.shares\n\t\t\tconst index = shareList.findIndex(item => item.id === share.id)\n\t\t\tif (index !== -1) {\n\t\t\t\tshareList.splice(index, 1)\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Await for next tick and render after the list updated\n\t\t * Then resolve with the matched vue component of the\n\t\t * provided share object\n\t\t *\n\t\t * @param {Share} share newly created share\n\t\t * @param {Function} resolve a function to execute after\n\t\t */\n\t\tawaitForShare(share, resolve) {\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tlet listComponent = this.$refs.shareList\n\t\t\t\t// Only mail shares comes from the input, link shares\n\t\t\t\t// are managed internally in the SharingLinkList component\n\t\t\t\tif (share.type === this.SHARE_TYPES.SHARE_TYPE_EMAIL) {\n\t\t\t\t\tlistComponent = this.$refs.linkShareList\n\t\t\t\t}\n\t\t\t\tconst newShare = listComponent.$children.find(component => component.share === share)\n\t\t\t\tif (newShare) {\n\t\t\t\t\tresolve(newShare)\n\t\t\t\t}\n\t\t\t})\n\t\t},\n\n\t\ttoggleShareDetailsView(eventData) {\n\t\t\tif (!this.showSharingDetailsView) {\n\t\t\t\tconst isAction = Array.from(document.activeElement.classList)\n\t\t\t\t\t.some(className => className.startsWith('action-'))\n\t\t\t\tif (isAction) {\n\t\t\t\t\tconst menuId = document.activeElement.closest('[role=\"menu\"]')?.id\n\t\t\t\t\tthis.returnFocusElement = document.querySelector(`[aria-controls=\"${menuId}\"]`)\n\t\t\t\t} else {\n\t\t\t\t\tthis.returnFocusElement = document.activeElement\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (eventData) {\n\t\t\t\tthis.shareDetailsData = eventData\n\t\t\t}\n\n\t\t\tthis.showSharingDetailsView = !this.showSharingDetailsView\n\n\t\t\tif (!this.showSharingDetailsView) {\n\t\t\t\tthis.$nextTick(() => { // Wait for next tick as the element must be visible to be focused\n\t\t\t\t\tthis.returnFocusElement?.focus()\n\t\t\t\t\tthis.returnFocusElement = null\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n.emptyContentWithSections {\n\tmargin: 1rem auto;\n}\n\n.sharingTab {\n\tposition: relative;\n\theight: 100%;\n\n\t&__content {\n\t\tpadding: 0 6px;\n\t}\n\n\t&__additionalContent {\n\t\tmargin: 44px 0;\n\t}\n}\n</style>\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { Type as ShareTypes } from '@nextcloud/sharing'\n\nconst shareWithTitle = function(share) {\n\tif (share.type === ShareTypes.SHARE_TYPE_GROUP) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and the group {group} by {owner}',\n\t\t\t{\n\t\t\t\tgroup: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareTypes.SHARE_TYPE_CIRCLE) {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you and {circle} by {owner}',\n\t\t\t{\n\t\t\t\tcircle: share.shareWithDisplayName,\n\t\t\t\towner: share.ownerDisplayName,\n\t\t\t},\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t} else if (share.type === ShareTypes.SHARE_TYPE_ROOM) {\n\t\tif (share.shareWithDisplayName) {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you and the conversation {conversation} by {owner}',\n\t\t\t\t{\n\t\t\t\t\tconversation: share.shareWithDisplayName,\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t} else {\n\t\t\treturn t(\n\t\t\t\t'files_sharing',\n\t\t\t\t'Shared with you in a conversation by {owner}',\n\t\t\t\t{\n\t\t\t\t\towner: share.ownerDisplayName,\n\t\t\t\t},\n\t\t\t\tundefined,\n\t\t\t\t{ escape: false },\n\t\t\t)\n\t\t}\n\t} else {\n\t\treturn t(\n\t\t\t'files_sharing',\n\t\t\t'Shared with you by {owner}',\n\t\t\t{ owner: share.ownerDisplayName },\n\t\t\tundefined,\n\t\t\t{ escape: false },\n\t\t)\n\t}\n}\n\nexport { shareWithTitle }\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=style&index=0&id=a65c443a&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SharingTab.vue?vue&type=style&index=0&id=a65c443a&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SharingTab.vue?vue&type=template&id=a65c443a&scoped=true\"\nimport script from \"./SharingTab.vue?vue&type=script&lang=js\"\nexport * from \"./SharingTab.vue?vue&type=script&lang=js\"\nimport style0 from \"./SharingTab.vue?vue&type=style&index=0&id=a65c443a&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a65c443a\",\n null\n \n)\n\nexport default component.exports"],"names":["module","exports","commonjsRequire","Error","qrcode","fn","createCommonjsModule","f","r","e","n","t","o","i","u","a","code","p","call","length","require","Promise","prototype","then","getSymbolSize","getRowColCoords","version","posCount","Math","floor","size","intervals","ceil","positions","push","reverse","getPositions","coords","pos","posLength","j","Mode","ALPHA_NUM_CHARS","AlphanumericData","data","this","mode","ALPHANUMERIC","getBitsLength","getLength","write","bitBuffer","value","indexOf","put","BitBuffer","buffer","get","index","bufIndex","num","putBit","getLengthInBits","bit","BufferUtil","BitMatrix","alloc","reservedBit","set","row","col","reserved","xor","isReserved","ByteData","BYTE","from","l","ECLevel","EC_BLOCKS_TABLE","EC_CODEWORDS_TABLE","getBlocksCount","errorCorrectionLevel","L","M","Q","H","getTotalCodewordsCount","isValid","level","defaultValue","string","toLowerCase","fromString","Utils","G15_BCH","getBCHDigit","getEncodedBits","mask","d","EXP_TABLE","LOG_TABLE","x","log","exp","mul","y","KanjiData","KANJI","toSJIS","Patterns","PATTERN000","PATTERN001","PATTERN010","PATTERN011","PATTERN100","PATTERN101","PATTERN110","PATTERN111","PenaltyScores","getMaskAt","maskPattern","isNaN","parseInt","undefined","getPenaltyN1","points","sameCountCol","sameCountRow","lastCol","lastRow","getPenaltyN2","last","getPenaltyN3","bitsCol","bitsRow","getPenaltyN4","darkCount","modulesCount","abs","applyMask","pattern","getBestMask","setupFormatFunc","numPatterns","Object","keys","bestPattern","lowerPenalty","Infinity","penalty","VersionCheck","Regex","NUMERIC","id","ccBits","MIXED","getCharCountIndicator","getBestModeForData","dataStr","testNumeric","testAlphanumeric","testKanji","toString","NumericData","group","substr","remainingNum","GF","p1","p2","coeff","mod","divident","divisor","result","offset","slice","generateECPolynomial","degree","poly","AlignmentPattern","FinderPattern","MaskPattern","ECCode","ReedSolomonEncoder","Version","FormatInfo","Segments","isArray","setupFormatInfo","matrix","bits","createData","segments","forEach","dataTotalCodewordsBits","getSymbolTotalCodewords","remainingByte","totalCodewords","dataTotalCodewords","ecTotalBlocks","blocksInGroup1","totalCodewordsInGroup1","dataCodewordsInGroup1","dataCodewordsInGroup2","ecCount","rs","dcData","Array","ecData","maxDataSize","b","dataSize","encode","max","createCodewords","createSymbol","fromArray","estimatedVersion","rawSegments","rawSplit","getBestVersionForData","bestVersion","dataBits","moduleCount","modules","c","setupFinderPattern","setupTimingPattern","setupAlignmentPattern","setupVersionInfo","inc","bitIndex","byteIndex","dark","setupData","bind","create","options","toSJISFunc","setToSJISFunction","Polynomial","Buffer","genPoly","initialize","pad","paddedData","concat","remainder","start","buff","copy","numeric","kanji","byte","replace","RegExp","BYTE_KANJI","TEST_KANJI","TEST_NUMERIC","TEST_ALPHANUMERIC","str","test","dijkstra","getStringByteLength","unescape","encodeURIComponent","getSegments","regex","exec","getSegmentsFromString","byteSegs","kanjiSegs","numSegs","alphaNumSegs","isKanjiModeEnabled","sort","s1","s2","map","obj","getSegmentBitsLength","buildSingleSegment","modesHint","bestMode","array","reduce","acc","seg","graph","nodes","table","prevNodeIds","nodeGroup","currentNodeIds","node","key","lastCount","prevNodeId","buildGraph","segs","buildNodes","path","find_path","optimizedSegs","curr","prevSeg","toSJISFunction","CODEWORDS_COUNT","digit","G18_BCH","getReservedBitsCount","getTotalBitsFromDataArray","totalBits","reservedBits","getCapacity","usableBits","ecl","currentVersion","getBestVersionForMixedData","getBestVersionForDataLength","canPromise","QRCode","CanvasRenderer","SvgRenderer","renderCanvas","renderFunc","canvas","text","opts","cb","args","arguments","argsNum","isLastArgCb","getContext","resolve","reject","toCanvas","render","toDataURL","renderToDataURL","_","qrData","canvasEl","document","createElement","getCanvasElement","getOptions","getImageWidth","ctx","image","createImageData","qrToImageData","clearRect","width","height","style","clearCanvas","putImageData","type","rendererOpts","quality","getColorAttrib","color","attrib","alpha","hex","toFixed","svgCmd","cmd","qrcodesize","margin","bg","light","moveBy","newRow","lineLength","qrToPath","viewBox","svgTag","hex2rgba","hexCode","split","apply","hexValue","join","g","scale","getScale","qrSize","imgData","qr","symbolSize","scaledMargin","palette","posDst","pxColor","TYPED_ARRAY_SUPPORT","arr","Uint8Array","__proto__","foo","typedArraySupport","K_MAX_LENGTH","arg","allocUnsafe","that","TypeError","ArrayBuffer","byteOffset","byteLength","RangeError","buf","fromArrayLike","fromArrayBuffer","createBuffer","actual","isBuffer","len","checked","val","fromObject","utf8ToBytes","units","codePoint","leadSurrogate","bytes","charCodeAt","isView","Symbol","species","defineProperty","configurable","enumerable","writable","isFinite","remaining","src","dst","blitBuffer","utf8Write","end","newBuf","subarray","sliceLen","target","targetStart","fill","list","_isBuffer","b64","lens","getLens","validLen","placeHoldersLen","toByteArray","tmp","Arr","_byteLength","curByte","revLookup","fromByteArray","uint8","extraBytes","parts","maxChunkLength","len2","encodeChunk","lookup","output","base64","ieee754","customInspectSymbol","for","SlowBuffer","INSPECT_MAX_BYTES","setPrototypeOf","encodingOrOffset","encoding","isEncoding","isInstance","valueOf","numberIsNaN","toPrimitive","assertSize","mustMatch","loweredCase","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","m","bidirectionalIndexOf","dir","arrayIndexOf","lastIndexOf","indexSize","arrLength","valLength","String","read","readUInt16BE","foundIndex","found","hexWrite","Number","strLen","parsed","asciiWrite","byteArray","asciiToBytes","latin1Write","base64Write","ucs2Write","hi","lo","utf16leToBytes","min","res","secondByte","thirdByte","fourthByte","tempCodePoint","firstByte","bytesPerSequence","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","kMaxLength","proto","console","error","poolSize","allocUnsafeSlow","compare","swap16","swap32","swap64","toLocaleString","equals","inspect","trim","thisStart","thisEnd","thisCopy","targetCopy","includes","toJSON","_arr","ret","out","hexSliceLookupTable","checkOffset","ext","checkInt","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","readUIntLE","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","writeUIntBE","writeUInt8","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","copyWithin","INVALID_BASE64_RE","base64clean","constructor","name","alphabet","i16","single_source_shortest_paths","s","predecessors","costs","closest","v","cost_of_s_to_u","adjacent_nodes","cost_of_s_to_u_plus_cost_of_e","cost_of_s_to_v","open","PriorityQueue","make","empty","pop","cost","hasOwnProperty","msg","extract_shortest_path_from_predecessor_list","T","queue","sorter","default_sorter","item","shift","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","NaN","rt","LN2","props","tag","default","$slots","watch","$props","deep","immediate","handler","$el","generate","methods","_this","url","innerHTML","mounted","factory","___CSS_LOADER_EXPORT___","params","assign","ocsVersion","window","location","protocol","host","getRootUrl","_generateUrlPath","allOptions","escape","charAt","vars","webroot","_oc_webroot","pathname","self","ampersandTest","nativeURLSearchParams","URLSearchParams","isSupportObjectConstructor","decodesPlusesCorrectly","isSupportSize","__URLSearchParams__","encodesAmpersandsCorrectly","append","URLSearchParamsPolyfill","iterable","iterator","appendTo","dict","has","getAll","query","propValue","useProxy","Proxy","construct","Function","USPProto","polyfill","toStringTag","callback","thisArg","parseToDict","getOwnPropertyNames","k","values","items","makeIterator","entries","prev","cur","search","match","decode","decodeURIComponent","next","done","pairs","JSON","stringify","prop","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","global","freeSelf","Date","now","reWhitespace","reTrimStart","objectProto","nativeObjectToString","symToStringTag","isOwn","unmasked","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","other","isBinary","nativeMax","nativeMin","http","listCollection","collectionId","renameCollection","collectionName","ocs","getCollectionsByResource","resourceType","resourceId","createCollection","post","addResource","removeResource","delete","observable","collections","h","addCollections","addCollection","removeCollection","filter","updateCollection","findIndex","fetchCollectionsByResource","baseResourceType","baseResourceId","addResourceToCollection","resources","R","I","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","N","C","beforeCreate","components","NcAvatar","NcActions","NcActionButton","collection","detailsOpen","newName","computed","getIcon","iconClass","typeClass","limitedResources","iconUrl","mimetype","OC","MimeType","getIconUrl","toggleDetails","showDetails","hideDetails","openRename","catch","$set","setTimeout","_self","_c","staticClass","attrs","title","on","click","_v","_s","class","shouldshake","rename","submit","preventDefault","directives","rawName","expression","autocomplete","autocapitalize","domProps","input","composing","_e","_l","href","link","icon","F","func","wait","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","invokeFunc","time","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","timeWaiting","remainingWait","debounced","isInvoking","leadingEdge","clearTimeout","cancel","flush","searchCollections","finally","CollectionListItem","NcSelect","isActive","Boolean","selectIsOpen","generatingCodes","codes","model","state","isSelectOpen","find","placeholder","OCP","Collaboration","getTypes","method","getLabel","action","trigger","select","setError","showSelect","$refs","focus","hideSelect","isVueComponent","_isVue","_m","ref","label","close","scopedSlots","_u","Config","_capabilities","getCapabilities","defaultPermissions","_this$_capabilities$f","files_sharing","default_permissions","isPublicUploadEnabled","_this$_capabilities$f2","public","upload","isShareWithLinkAllowed","getElementById","federatedShareDocLink","appConfig","core","federatedCloudShareDoc","defaultExpirationDate","isDefaultExpireDateEnabled","setDate","getDate","defaultExpireDate","defaultInternalExpirationDate","isDefaultInternalExpireDateEnabled","defaultInternalExpireDate","defaultRemoteExpirationDateString","isDefaultRemoteExpireDateEnabled","defaultRemoteExpireDate","enforcePasswordForPublicLink","enableLinkPasswordByDefault","isDefaultExpireDateEnforced","defaultExpireDateEnforced","defaultExpireDateEnabled","isDefaultInternalExpireDateEnforced","defaultInternalExpireDateEnforced","isDefaultRemoteExpireDateEnforced","defaultRemoteExpireDateEnforced","defaultInternalExpireDateEnabled","defaultRemoteExpireDateEnabled","isRemoteShareAllowed","remoteShareAllowed","isMailShareAllowed","_this$_capabilities","_this$_capabilities2","sharebymail","enabled","isResharingAllowed","resharingAllowed","isPasswordForMailSharesRequired","password","enforced","shouldAlwaysShowUnique","_this$_capabilities$f3","sharee","always_show_unique","allowGroupSharing","maxAutocompleteResults","config","minSearchStringLength","passwordPolicy","password_policy","Share","ocsData","_ocsData$attributes","hide_download","mail_send","attributes","parse","warn","_share","share_type","permissions","owner","uid_owner","ownerDisplayName","displayname_owner","shareWith","share_with","shareWithDisplayName","share_with_displayname","shareWithDisplayNameUnique","share_with_displayname_unique","shareWithLink","share_with_link","shareWithAvatar","share_with_avatar","uidFileOwner","uid_file_owner","displaynameFileOwner","displayname_file_owner","createdTime","stime","expireDate","expiration","date","token","note","_this$_share$label","mailSend","hideDownload","passwordExpirationTime","password_expiration_time","sendPasswordByTalk","send_password_by_talk","itemType","item_type","fileSource","file_source","fileTarget","file_target","fileParent","file_parent","hasReadPermission","PERMISSION_READ","hasCreatePermission","PERMISSION_CREATE","hasDeletePermission","PERMISSION_DELETE","hasUpdatePermission","PERMISSION_UPDATE","hasSharePermission","PERMISSION_SHARE","hasDownloadPermission","attr","scope","setAttribute","attrUpdate","splice","canEdit","can_edit","canDelete","can_delete","viaFileid","via_fileid","viaPath","via_path","storageId","storage_id","storage","itemSource","item_source","status","SHARE_TYPES","ShareTypes","emits","fillColor","_vm","_b","$event","$emit","$attrs","required","subtitle","isUnique","ariaExpanded","ariaExpandedValue","_t","SharingEntrySimple","CheckIcon","ClipboardIcon","fileInfo","copied","copySuccess","internalLink","generateUrl","copyLinkTooltip","internalLinkSubtitle","copyLink","navigator","clipboard","writeText","showSuccess","shareEntrySimple","actionsComponent","proxy","async","api","request","axios","info","showError","crypto","getRandomValues","passwordSet","shareUrl","generateOcsUrl","createShare","_ref","shareType","publicUpload","_request$data","share","emit","_error$response","errorMessage","response","meta","message","Notification","showTemporary","deleteShare","_request$data2","_error$response2","updateShare","properties","_request$data3","_error$response3","openSharingDetails","shareRequestObject","handlerInput","suggestions","externalShareRequestObject","mapShareRequestToShareObject","shareDetails","openShareDetailsForCustomSettings","setCustomPermissions","_shareRequestObject$p","is_no_user","isNoUser","user","displayName","mixins","ShareRequests","ShareDetails","shares","linkShares","reshare","canReshare","loading","recommendations","ShareSearch","OCA","Sharing","externalResults","results","inputPlaceholder","allowRemoteSharing","isValidQuery","noResultText","getRecommendations","onSelected","option","asyncFind","debounceGetSuggestions","getSuggestions","query_lookup_default","SHARE_TYPE_USER","SHARE_TYPE_GROUP","SHARE_TYPE_REMOTE","SHARE_TYPE_REMOTE_GROUP","SHARE_TYPE_CIRCLE","SHARE_TYPE_ROOM","SHARE_TYPE_GUEST","SHARE_TYPE_DECK","SHARE_TYPE_SCIENCEMESH","SHARE_TYPE_EMAIL","format","perPage","exact","rawExactSuggestions","elem","rawSuggestions","exactSuggestions","filterOutExistingShares","formatForMultiselect","lookupEntry","lookupEnabled","condition","allSuggestions","nameCounts","desc","debounce","rawRecommendations","getCurrentUser","uid","sharesObj","shareTypeToIcon","iconTitle","subname","_result$shareWithDisp","server","_result$shareWithDesc","shareWithDescription","uuid","clear-search-on-blur","$$v","client","davGetClient","getLoggerBuilder","setApp","detectUser","build","ATOMIC_PERMISSIONS","NONE","READ","UPDATE","CREATE","DELETE","SHARE","BUNDLED_PERMISSIONS","READ_ONLY","UPLOAD_AND_UPDATE","FILE_DROP","ALL","ALL_FILE","SharesRequests","_this$share","errors","saving","updateQueue","PQueue","concurrency","reactiveState","hasNote","dateTomorrow","lang","weekdaysShort","dayNamesShort","monthsShort","monthNamesShort","formatLocale","firstDayOfWeek","firstDay","weekdaysMin","monthFormat","isFolder","isPublicShare","_this$share$shareType","SHARE_TYPE_LINK","isRemoteShare","isShareOwner","isExpiryDateEnforced","hasCustomPermissions","maxExpirationDateEnforced","getNode","propfindPayload","davGetDefaultPropfind","stat","davRootPath","details","davResultToNode","fetchNode","logger","checkShare","expirationDate","formatDateToString","UTC","getFullYear","getMonth","toISOString","onExpirationChange","onExpirationDisable","onNoteChange","onNoteSubmit","newNote","$delete","queueUpdate","onDelete","debug","_len","propertyNames","_key","updatedShare","updateSuccessMessage","onSyncError","names","property","propertyEl","focusable","querySelector","debounceQueueUpdate","NcActionLink","NcActionText","SharesMixin","viaFileTargetUrl","fileid","viaFolderName","basename","initiator","folder","SharingEntryInherited","loaded","showInheritedShares","showInheritedSharesIcon","mainTitle","subTitle","toggleTooltip","fullPath","resetState","toggleInheritedShares","fetchInheritedShares","removeShare","stopPropagation","DropdownIcon","selectedOption","ariaLabel","canViewText","canEditText","fileDropText","customPermissionsText","preSelectedOption","IconEyeOutline","IconPencil","supportsFileDrop","IconFileUpload","IconTune","_this$share$type","dropDownPermissionValue","created","selectOption","optionLabel","quickShareActions","menuButton","is","_g","handlers","ExternalShareAction","NcActionCheckbox","NcActionInput","NcActionSeparator","NcDialog","VueQrcode","Tune","IconCalendarBlank","IconQr","ErrorIcon","LockIcon","CloseIcon","PlusIcon","SharingEntryQuickShareSelect","shareCreationComplete","defaultExpirationDateEnabled","pending","ExternalLegacyLinkActions","ExternalLinkActions","ExternalShareActions","showQRCode","isEmailShareType","isPasswordProtected","Vue","GeneratePassword","expirationTime","moment","diff","fromNow","isTalkEnabled","appswebroots","spreed","isPasswordProtectedByTalkAvailable","isPasswordProtectedByTalk","canTogglePasswordProtectedByTalkAvailable","hasUnsavedPassword","pendingDataIsMissing","pendingPassword","pendingEnforcedPassword","pendingDefaultExpirationDate","pendingEnforcedExpirationDate","isPendingShare","getTime","sharePolicyHasEnforcedProperties","enforcedPropertiesMissing","isPasswordMissing","isExpireDateMissing","newPassword","shareLink","actionsTooltip","externalLegacyLinkActions","actions","externalLinkActions","advanced","isPasswordPolicyEnabled","canChangeHideDownload","shareAttributes","some","shareAttribute","shareRequiresReview","shareReviewComplete","onNewLinkShare","shareDefaults","component","pushNewLinkShare","update","newShare","_data$response","copyButton","onPasswordChange","onPasswordDisable","onPasswordSubmit","onPasswordProtectedByTalkChange","onMenuClose","onDefaultExpirationDateEnabledChange","onCancel","SharingEntryLink","minLength","canLinkShare","hasLinkShares","hasShares","addShare","awaitForShare","$nextTick","$children","NcButton","DotsHorizontalIcon","tooltip","hasStatus","SharingEntry","NcInputField","NcPasswordField","NcDateTimePickerNative","NcCheckboxRadioSwitch","NcLoadingIcon","CircleIcon","EditIcon","LinkIcon","GroupIcon","ShareIcon","UserIcon","UploadIcon","ViewIcon","MenuDownIcon","MenuUpIcon","shareRequestValue","writeNoteToRecipientIsChecked","sharingPermission","revertSharingPermission","passwordError","advancedSectionAccordionExpanded","bundledPermissions","isFirstComponentLoad","creating","userName","email","updateAtomicPermissions","isEditChecked","canCreate","isCreateChecked","isDeleteChecked","isReshareChecked","canDownload","_this$share$attribute","downloadAttr","hasRead","isReadChecked","hasExpirationDate","isValidShareAttribute","defaultExpiryDate","isSetDownloadButtonVisible","isPasswordEnforced","isGroupShare","isUserShare","isNewShare","allowsFileDrop","hasFileDropPermissions","shareButtonText","canSetEdit","sharePermissions","canSetCreate","canSetDelete","canSetReshare","canSetDownload","canRemoveReadPermission","customPermissionsList","translatedPermissions","permission","hasPermissions","initialPermissionSet","permissionsToCheck","toLocaleLowerCase","getLanguage","advancedControlExpandedValue","errorPasswordLabel","passwordHint","ShareType","isChecked","beforeMount","initializePermissions","initializeAttributes","_this$$refs$quickPerm","quickPermissions","expandCustomPermissions","toggleCustomPermissions","selectedPermission","isCustomPermissions","toDateString","handleShareType","handleDefaultPermissions","handleCustomPermissions","saveShare","_this$$refs$externalL","permissionsAndAttributes","sharePermissionsSet","incomingShare","allSettled","_action$$children$at","_action$$children$at2","_action$$children$at3","at","onSave","getShareTypeIcon","EmailIcon","_vm$share$expireDate","refInFor","CollectionList","SharingEntryInternal","SharingInherited","SharingInput","SharingLinkList","SharingList","SharingDetailsTab","deleteEvent","expirationInterval","sharedWithMe","sections","ShareTabSections","getSections","projectsEnabled","loadState","showSharingDetailsView","shareDetailsData","returnFocusElement","isSharedWithMe","getShares","fetchShares","reshares","fetchSharedWithMe","shared_with_me","all","processSharedWithMe","processShares","_error$response$data","clearInterval","updateExpirationSubtitle","unix","relativetime","Util","relativeModifiedDate","_ref2","circle","conversation","shareWithTitle","setInterval","shareOwnerId","currentUser","shareOwner","unshift","shareList","listComponent","linkShareList","toggleShareDetailsView","eventData","activeElement","classList","className","startsWith","_document$activeEleme","menuId","_this$returnFocusElem","emptyContentWithSections","section"],"sourceRoot":""} \ No newline at end of file
diff --git a/dist/files-init.js b/dist/files-init.js
index a2a78a64b87..2a757209450 100644
--- a/dist/files-init.js
+++ b/dist/files-init.js
@@ -1,3 +1,3 @@
/*! For license information please see files-init.js.LICENSE.txt */
-(()=>{var e,s,t,n={9052:e=>{"use strict";var s=Object.prototype.hasOwnProperty,t="~";function n(){}function a(e,s,t){this.fn=e,this.context=s,this.once=t||!1}function i(e,s,n,i,o){if("function"!=typeof n)throw new TypeError("The listener must be a function");var r=new a(n,i||e,o),l=t?t+s:s;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],r]:e._events[l].push(r):(e._events[l]=r,e._eventsCount++),e}function o(e,s){0==--e._eventsCount?e._events=new n:delete e._events[s]}function r(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(t=!1)),r.prototype.eventNames=function(){var e,n,a=[];if(0===this._eventsCount)return a;for(n in e=this._events)s.call(e,n)&&a.push(t?n.slice(1):n);return Object.getOwnPropertySymbols?a.concat(Object.getOwnPropertySymbols(e)):a},r.prototype.listeners=function(e){var s=t?t+e:e,n=this._events[s];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,i=n.length,o=new Array(i);a<i;a++)o[a]=n[a].fn;return o},r.prototype.listenerCount=function(e){var s=t?t+e:e,n=this._events[s];return n?n.fn?1:n.length:0},r.prototype.emit=function(e,s,n,a,i,o){var r=t?t+e:e;if(!this._events[r])return!1;var l,m,d=this._events[r],g=arguments.length;if(d.fn){switch(d.once&&this.removeListener(e,d.fn,void 0,!0),g){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,s),!0;case 3:return d.fn.call(d.context,s,n),!0;case 4:return d.fn.call(d.context,s,n,a),!0;case 5:return d.fn.call(d.context,s,n,a,i),!0;case 6:return d.fn.call(d.context,s,n,a,i,o),!0}for(m=1,l=new Array(g-1);m<g;m++)l[m-1]=arguments[m];d.fn.apply(d.context,l)}else{var c,u=d.length;for(m=0;m<u;m++)switch(d[m].once&&this.removeListener(e,d[m].fn,void 0,!0),g){case 1:d[m].fn.call(d[m].context);break;case 2:d[m].fn.call(d[m].context,s);break;case 3:d[m].fn.call(d[m].context,s,n);break;case 4:d[m].fn.call(d[m].context,s,n,a);break;default:if(!l)for(c=1,l=new Array(g-1);c<g;c++)l[c-1]=arguments[c];d[m].fn.apply(d[m].context,l)}}return!0},r.prototype.on=function(e,s,t){return i(this,e,s,t,!1)},r.prototype.once=function(e,s,t){return i(this,e,s,t,!0)},r.prototype.removeListener=function(e,s,n,a){var i=t?t+e:e;if(!this._events[i])return this;if(!s)return o(this,i),this;var r=this._events[i];if(r.fn)r.fn!==s||a&&!r.once||n&&r.context!==n||o(this,i);else{for(var l=0,m=[],d=r.length;l<d;l++)(r[l].fn!==s||a&&!r[l].once||n&&r[l].context!==n)&&m.push(r[l]);m.length?this._events[i]=1===m.length?m[0]:m:o(this,i)}return this},r.prototype.removeAllListeners=function(e){var s;return e?(s=t?t+e:e,this._events[s]&&o(this,s)):(this._events=new n,this._eventsCount=0),this},r.prototype.off=r.prototype.removeListener,r.prototype.addListener=r.prototype.on,r.prefixed=t,r.EventEmitter=r,e.exports=r},76150:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});const n=(0,t(35947).YK)().setApp("files").detectUser().build()},33001:(e,s,t)=>{"use strict";var n=t(34297),a=t(85168),i=t(53334),o=t(49264),r=t(76150),l=t(61338),m=t(87485),d=t(65043);const g=()=>{var e;return!0===(null===(e=(0,m.F)())||void 0===e||null===(e=e.files)||void 0===e?void 0:e.undelete)},c=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"shared"===e.attributes["mount-type"])),u=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"external"===e.attributes["mount-type"])),f=(e,s)=>c(e)?1===e.length?(0,i.t)("files","Leave this share"):(0,i.t)("files","Leave these shares"):u(e)?1===e.length?(0,i.t)("files","Disconnect storage"):(0,i.t)("files","Disconnect storages"):"trashbin"!==s.id&&g()?(e=>{if(1===e.length)return!1;const s=e.some((e=>c([e]))),t=e.some((e=>!c([e])));return s&&t})(e)?(0,i.t)("files","Delete and unshare"):(e=>!e.some((e=>e.type!==n.pt.File)))(e)?1===e.length?(0,i.t)("files","Delete file"):(0,i.t)("files","Delete files"):(e=>!e.some((e=>e.type!==n.pt.Folder)))(e)?1===e.length?(0,i.t)("files","Delete folder"):(0,i.t)("files","Delete folders"):(0,i.t)("files","Delete"):(0,i.t)("files","Delete permanently"),p=async(e,s)=>{const t="trashbin"!==s.id&&g()?(0,i.n)("files","You are about to delete {count} item","You are about to delete {count} items",e.length,{count:e.length}):(0,i.n)("files","You are about to permanently delete {count} item","You are about to permanently delete {count} items",e.length,{count:e.length});return new Promise((n=>{window.OC.dialogs.confirmDestructive(t,(0,i.t)("files","Confirm deletion"),{type:window.OC.dialogs.YES_NO_BUTTONS,confirm:f(e,s),confirmClasses:"error",cancel:(0,i.t)("files","Cancel")},(e=>{n(e)}))}))},h=async e=>{await d.Ay.delete(e.encodedSource),(0,l.Ic)("files:node:deleted",e)},w=new o.A({concurrency:5}),v=new n.hY({id:"delete",displayName:f,iconSvgInline:e=>c(e)?'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-close" viewBox="0 0 24 24"><path d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" /></svg>':u(e)?'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-network-off" viewBox="0 0 24 24"><path d="M1,5.27L5,9.27V15A2,2 0 0,0 7,17H11V19H10A1,1 0 0,0 9,20H2V22H9A1,1 0 0,0 10,23H14A1,1 0 0,0 15,22H17.73L19.73,24L21,22.72L2.28,4L1,5.27M15,20A1,1 0 0,0 14,19H13V17.27L15.73,20H15M17.69,16.87L5.13,4.31C5.41,3.55 6.14,3 7,3H17A2,2 0 0,1 19,5V15C19,15.86 18.45,16.59 17.69,16.87M22,20V21.18L20.82,20H22Z" /></svg>':'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-trash-can" viewBox="0 0 24 24"><path d="M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M9,8H11V17H9V8M13,8H15V17H13V8Z" /></svg>',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>Boolean(e&n.aX.DELETE))),async exec(e,s){try{let t=!0;return g()||(t=await p([e],s)),!1===t?((0,a.cf)((0,i.Tl)("files","Deletion cancelled")),null):(await h(e),!0)}catch(s){return r.A.error("Error while deleting a file",{error:s,source:e.source,node:e}),!1}},async execBatch(e,s){let t=!0;if(g()?e.length>=5&&!c(e)&&!u(e)&&(t=await p(e,s)):t=await p(e,s),!1===t)return(0,a.cf)((0,i.Tl)("files","Deletion cancelled")),Promise.all(e.map((()=>null)));const n=e.map((e=>new Promise((s=>{w.add((async()=>{try{await h(e),s(!0)}catch(t){r.A.error("Error while deleting a file",{error:t,source:e.source,node:e}),s(!1)}}))}))));return Promise.all(n)},order:100});var y=t(63814);const T=function(e){const s=document.createElement("a");s.download="",s.href=e,s.click()};function C(e,s){const t=e.split("/").filter(Boolean),n=s.split("/").filter(Boolean);let a="/";for(const[e,i]of t.entries()){if(e>=s.length)break;if(i!==n[e])break;const t="/"===a?"":"/";a="".concat(a).concat(t).concat(i)}return a}function x(e){const s=e.filter((s=>void 0===e.find((e=>e.type===n.pt.Folder&&s.path.startsWith("".concat(e.path,"/"))))));let t=s[0].dirname;for(const e of s.slice(1))t=C(t,e.dirname);t=t||"/";const a=s.map((e=>e.path.slice("/"===t?1:t.length+1))),i=Math.random().toString(36).substring(2),o=(0,y.Jv)("/apps/files/ajax/download.php?dir={base}&files={files}&downloadStartSecret={secret}",{base:t,secret:i,files:JSON.stringify(a)});T(o)}const k=function(e){if(0==(e.permissions&n.aX.READ))return!1;if("shared"===e.attributes["mount-type"]){var s,t;const n=JSON.parse(null!==(s=e.attributes["share-attributes"])&&void 0!==s?s:"null"),a=null==n||null===(t=n.find)||void 0===t?void 0:t.call(n,(e=>"permissions"===e.scope&&"download"===e.key));if(void 0!==a&&!1===a.enabled)return!1}return!0},b=new n.hY({id:"download",default:n.m9.DEFAULT,displayName:()=>(0,i.Tl)("files","Download"),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-down" viewBox="0 0 24 24"><path d="M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z" /></svg>',enabled:e=>0!==e.length&&(!e.some((e=>e.type===n.pt.Folder))||!e.some((e=>{var s;return!(null!==(s=e.root)&&void 0!==s&&s.startsWith("/files"))})))&&e.every(k),exec:async(e,s,t)=>e.type===n.pt.Folder?(x([e]),null):(T(e.encodedSource),null),async execBatch(e,s,t){return 1===e.length?(this.exec(e[0],s,t),[null]):(x(e),new Array(e.length).fill(null))},order:30});var L=t(71225),F=t(21777);const U=async function(e){const s=(0,y.KT)("apps/files/api/v1")+"/openlocaleditor?format=json";try{var t;const n=await d.Ay.post(s,{path:e}),a=null===(t=(0,F.HW)())||void 0===t?void 0:t.uid;let i="nc://open/".concat(a,"@")+window.location.host+(0,L.O0)(e);i+="?token="+n.data.ocs.data.token,window.location.href=i}catch(e){(0,a.Qg)((0,i.Tl)("files","Failed to redirect to client"))}},S=new n.hY({id:"edit-locally",displayName:()=>(0,i.Tl)("files","Edit locally"),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-laptop" viewBox="0 0 24 24"><path d="M4,6H20V16H4M20,18A2,2 0 0,0 22,16V6C22,4.89 21.1,4 20,4H4C2.89,4 2,4.89 2,6V16A2,2 0 0,0 4,18H0V20H24V18H20Z" /></svg>',enabled:e=>1===e.length&&0!=(e[0].permissions&n.aX.UPDATE),exec:async e=>((async e=>{U(e),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:()=>{},s=!1;(new a.ik).setName((0,i.Tl)("files","Edit file locally")).setText((0,i.Tl)("files","The file should now open on your device. If it doesn't, please check that you have the desktop app installed.")).setButtons([{label:(0,i.Tl)("files","Retry and close"),type:"secondary",callback:()=>{s=!0,e(!0)}},{label:(0,i.Tl)("files","Edit online"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-web" viewBox="0 0 24 24"><path d="M16.36,14C16.44,13.34 16.5,12.68 16.5,12C16.5,11.32 16.44,10.66 16.36,10H19.74C19.9,10.64 20,11.31 20,12C20,12.69 19.9,13.36 19.74,14M14.59,19.56C15.19,18.45 15.65,17.25 15.97,16H18.92C17.96,17.65 16.43,18.93 14.59,19.56M14.34,14H9.66C9.56,13.34 9.5,12.68 9.5,12C9.5,11.32 9.56,10.65 9.66,10H14.34C14.43,10.65 14.5,11.32 14.5,12C14.5,12.68 14.43,13.34 14.34,14M12,19.96C11.17,18.76 10.5,17.43 10.09,16H13.91C13.5,17.43 12.83,18.76 12,19.96M8,8H5.08C6.03,6.34 7.57,5.06 9.4,4.44C8.8,5.55 8.35,6.75 8,8M5.08,16H8C8.35,17.25 8.8,18.45 9.4,19.56C7.57,18.93 6.03,17.65 5.08,16M4.26,14C4.1,13.36 4,12.69 4,12C4,11.31 4.1,10.64 4.26,10H7.64C7.56,10.66 7.5,11.32 7.5,12C7.5,12.68 7.56,13.34 7.64,14M12,4.03C12.83,5.23 13.5,6.57 13.91,8H10.09C10.5,6.57 11.17,5.23 12,4.03M18.92,8H15.97C15.65,6.75 15.19,5.55 14.59,4.44C16.43,5.07 17.96,6.34 18.92,8M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z" /></svg>',type:"primary",callback:()=>{s=!0,e(!1)}}]).build().show().then((()=>{s||e(!1)}))}((s=>{s?U(e):window.OCA.Viewer.open({path:e})}))})(e.path),null),order:25});var N=t(85471);const _='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star" viewBox="0 0 24 24"><path d="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z" /></svg>',P=new o.A({concurrency:5}),A=e=>e.some((e=>1!==e.attributes.favorite)),z=async(e,s,t)=>{try{const n=(0,y.Jv)("/apps/files/api/v1/files")+(0,L.O0)(e.path);return await d.Ay.post(n,{tags:t?[window.OC.TAG_FAVORITE]:[]}),"favorites"!==s.id||t||"/"!==e.dirname||(0,l.Ic)("files:node:deleted",e),N.Ay.set(e.attributes,"favorite",t?1:0),t?(0,l.Ic)("files:favorites:added",e):(0,l.Ic)("files:favorites:removed",e),!0}catch(s){const n=t?"adding a file to favourites":"removing a file from favourites";return r.A.error("Error while "+n,{error:s,source:e.source,node:e}),!1}},j=new n.hY({id:"favorite",displayName:e=>A(e)?(0,i.Tl)("files","Add to favorites"):(0,i.Tl)("files","Remove from favorites"),iconSvgInline:e=>A(e)?'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star-outline" viewBox="0 0 24 24"><path d="M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z" /></svg>':_,enabled:e=>!e.some((e=>{var s,t;return!(null!==(s=e.root)&&void 0!==s&&null!==(t=s.startsWith)&&void 0!==t&&t.call(s,"/files"))}))&&e.every((e=>e.permissions!==n.aX.NONE)),async exec(e,s){const t=A([e]);return await z(e,s,t)},async execBatch(e,s){const t=A(e),n=e.map((e=>new Promise((n=>{P.add((async()=>{try{await z(e,s,t),n(!0)}catch(s){r.A.error("Error while adding file to favorite",{error:s,source:e.source,node:e}),n(!1)}}))}))));return Promise.all(n)},order:-50});t(18205);var M=t(53110),B=t(43627),E=t(94997),I=t(36882),R=t(39285);let D;var H;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(H||(H={}));const O=e=>0!=(e.reduce(((e,s)=>Math.min(e,s.permissions)),n.aX.ALL)&n.aX.UPDATE),V=e=>(e=>e.every((e=>{var s,t;return!JSON.parse(null!==(s=null===(t=e.attributes)||void 0===t?void 0:t["share-attributes"])&&void 0!==s?s:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===n.aX.NONE));var W=t(36117);const Y=e=>(0,n.Al)(e),q=(0,n.H4)(),K=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";e="".concat(n.lJ).concat(e);const s=new AbortController,t=(0,n.VL)();return new W.CancelablePromise((async(n,a,i)=>{i((()=>s.abort()));try{const a=await q.getDirectoryContents(e,{details:!0,data:t,includeSelf:!0,signal:s.signal}),i=a.data[0],o=a.data.slice(1);if(i.filename!==e&&"".concat(i.filename,"/")!==e)throw new Error("Root node does not match requested path");n({folder:Y(i),contents:o.map((e=>{try{return Y(e)}catch(s){return r.A.error("Invalid node detected '".concat(e.basename,"'"),{error:s}),null}})).filter(Boolean)})}catch(e){a(e)}}))},J=e=>O(e)?V(e)?H.MOVE_OR_COPY:H.MOVE:H.COPY,G=async function(e,s,t){let m=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!s)return;if(s.type!==n.pt.Folder)throw new Error((0,i.Tl)("files","Destination is not a folder"));if(t===H.MOVE&&e.dirname===s.path)throw new Error((0,i.Tl)("files","This file/folder is already in that directory"));if("".concat(s.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,i.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));N.Ay.set(e,"status",n.zI.LOADING);const d=function(e,s,t){const n=e===H.MOVE?(0,i.Tl)("files",'Moving "{source}" to "{destination}" …',{source:s,destination:t}):(0,i.Tl)("files",'Copying "{source}" to "{destination}" …',{source:s,destination:t});let o;return o=(0,a.cf)('<span class="icon icon-loading-small toast-loading-icon"></span> '.concat(n),{isHTML:!0,timeout:a.DH,onRemove:()=>{var e;null===(e=o)||void 0===e||e.hideToast(),o=void 0}}),()=>o&&o.hideToast()}(t,e.basename,s.path),g=(D||(D=new o.A({concurrency:5})),D);return await g.add((async()=>{const o=e=>1===e?(0,i.Tl)("files","(copy)"):(0,i.Tl)("files","(copy %n)",void 0,e);try{const r=(0,n.H4)(),d=(0,B.join)(n.lJ,e.path),u=(0,B.join)(n.lJ,s.path);if(t===H.COPY){let t=e.basename;if(!m){const s=await r.getDirectoryContents(u);t=(0,n.E6)(e.basename,s.map((e=>e.basename)),{suffix:o,ignoreFileExtension:e.type===n.pt.Folder})}if(await r.copyFile(d,(0,B.join)(u,t)),e.dirname===s.path){const{data:e}=await r.stat((0,B.join)(u,t),{details:!0,data:(0,n.VL)()});(0,l.Ic)("files:node:created",(0,n.Al)(e))}}else{if(!m){const t=await K(s.path);if((0,E.h)([e],t.contents))try{const{selected:n,renamed:a}=await(0,E.o)(s.path,[e],t.contents);if(!n.length&&!a.length)return}catch(e){return void(0,a.Qg)((0,i.Tl)("files","Move cancelled"))}}try{await r.moveFile(d,(0,B.join)(u,e.basename))}catch(e){var g,c;const s=new DOMParser,t=await(null===(g=e.response)||void 0===g?void 0:g.text()),n=null===(c=s.parseFromString(null!=t?t:"","text/xml").querySelector("message"))||void 0===c?void 0:c.textContent;throw n&&(0,a.Qg)(n),e}(0,l.Ic)("files:node:deleted",e)}}catch(e){if(e instanceof M.pe){var u,f,p;if(412===(null==e||null===(u=e.response)||void 0===u?void 0:u.status))throw new Error((0,i.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null==e||null===(f=e.response)||void 0===f?void 0:f.status))throw new Error((0,i.Tl)("files","The files are locked"));if(404===(null==e||null===(p=e.response)||void 0===p?void 0:p.status))throw new Error((0,i.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw r.A.debug(e),new Error}finally{N.Ay.set(e,"status",""),d()}}))};async function $(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",t=arguments.length>2?arguments[2]:void 0;const{resolve:n,reject:o,promise:l}=Promise.withResolvers(),m=t.map((e=>e.fileid)).filter(Boolean);return(0,a.a1)((0,i.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!m.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(s).setButtonFactory(((s,a)=>{const o=[],r=(0,B.basename)(a),l=t.map((e=>e.dirname)),m=t.map((e=>e.path));return e!==H.COPY&&e!==H.MOVE_OR_COPY||o.push({label:r?(0,i.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,i.Tl)("files","Copy"),type:"primary",icon:I,async callback(e){n({destination:e[0],action:H.COPY})}}),l.includes(a)||m.includes(a)||e!==H.MOVE&&e!==H.MOVE_OR_COPY||o.push({label:r?(0,i.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,i.Tl)("files","Move"),type:e===H.MOVE?"primary":"secondary",icon:R,async callback(e){n({destination:e[0],action:H.MOVE})}}),o})).build().pick().catch((e=>{r.A.debug(e),e instanceof a.vT?n(!1):o(new Error((0,i.Tl)("files","Move or copy operation failed")))})),l}const Z=new n.hY({id:"move-copy",displayName(e){switch(J(e)){case H.MOVE:return(0,i.Tl)("files","Move");case H.COPY:return(0,i.Tl)("files","Copy");case H.MOVE_OR_COPY:return(0,i.Tl)("files","Move or copy")}},iconSvgInline:()=>R,enabled:e=>!!e.every((e=>{var s;return null===(s=e.root)||void 0===s?void 0:s.startsWith("/files/")}))&&e.length>0&&(O(e)||V(e)),async exec(e,s,t){const n=J([e]);let o;try{o=await $(n,t,[e])}catch(e){return r.A.error(e),!1}if(!1===o)return(0,a.cf)((0,i.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e.displayname})),null;try{return await G(e,o.destination,o.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,a.Qg)(e.message),null)}},async execBatch(e,s,t){const n=J(e),o=await $(n,t,e);if(!1===o)return(0,a.cf)(1===e.length?(0,i.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e[0].displayname}):(0,i.Tl)("files","Cancelled move or copy operation")),e.map((()=>null));const l=e.map((async e=>{try{return await G(e,o.destination,o.action),!0}catch(s){return r.A.error("Failed to ".concat(o.action," node"),{node:e,error:s}),!1}}));return await Promise.all(l)},order:15}),Q='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder" viewBox="0 0 24 24"><path d="M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z" /></svg>',X=new n.hY({id:"open-folder",displayName(e){const s=e[0].displayname;return(0,i.Tl)("files","Open folder {displayName}",{displayName:s})},iconSvgInline:()=>Q,enabled(e){if(1!==e.length)return!1;const s=e[0];return!!s.isDavRessource&&s.type===n.pt.Folder&&0!=(s.permissions&n.aX.READ)},exec:async(e,s)=>!(!e||e.type!==n.pt.Folder)&&(window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{dir:e.path}),null),default:n.m9.HIDDEN,order:-100}),ee=new n.hY({id:"open-in-files-recent",displayName:()=>(0,i.Tl)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,s)=>"recent"===s.id,async exec(e){let s=e.dirname;return e.type===n.pt.Folder&&(s=s+"/"+e.basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:s,openfile:"true"}),null},order:-1e3,default:n.m9.HIDDEN}),se=new n.hY({id:"rename",displayName:()=>(0,i.Tl)("files","Rename"),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-pencil" viewBox="0 0 24 24"><path d="M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z" /></svg>',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&n.aX.UPDATE))),exec:async e=>((0,l.Ic)("files:node:rename",e),null),order:10});var te=t(49981);const ne=new n.hY({id:"details",displayName:()=>(0,i.Tl)("files","Open details"),iconSvgInline:()=>te,enabled:e=>{var s,t,a;return 1===e.length&&!!e[0]&&!(null===(s=window)||void 0===s||null===(s=s.OCA)||void 0===s||null===(s=s.Files)||void 0===s||!s.Sidebar)&&null!==(t=(null===(a=e[0].root)||void 0===a?void 0:a.startsWith("/files/"))&&e[0].permissions!==n.aX.NONE)&&void 0!==t&&t},async exec(e,s,t){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:t},!0),null}catch(e){return r.A.error("Error while opening sidebar",{error:e}),!1}},order:-50}),ae=new n.hY({id:"view-in-folder",displayName:()=>(0,i.Tl)("files","View in folder"),iconSvgInline:()=>R,enabled(e,s){var t;if("files"===s.id)return!1;if(1!==e.length)return!1;const a=e[0];return!(!a.isDavRessource||null===(t=a.root)||void 0===t||!t.startsWith("/files")||a.permissions===n.aX.NONE||a.type!==n.pt.File)},exec:async e=>!(!e||e.type!==n.pt.File)&&(window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname}),null),order:80});var ie=t(18740),oe=t(94219),re=t(82182);const le=(0,N.pM)({__name:"NewNodeDialog",props:{defaultName:{type:String,default:(0,i.t)("files","New folder")},otherNames:{type:Array,default:()=>[]},open:{type:Boolean,default:!0},name:{type:String,default:(0,i.t)("files","Create new folder")},label:{type:String,default:(0,i.t)("files","Folder name")}},emits:["close"],setup(e,s){let{emit:t}=s;const a=e,o=(0,N.KR)(a.defaultName),r=(0,N.KR)(),l=(0,N.KR)(),m=(0,N.KR)("");function d(){(0,N.dY)((()=>{var e;const s=null===(e=r.value)||void 0===e?void 0:e.$el.querySelector("input");if(!a.open||!s)return;const t=o.value.length-(0,B.extname)(o.value).length;s.focus(),s.setSelectionRange(0,t)}))}return(0,N.wB)((()=>a.defaultName),(()=>{o.value=(0,n.E6)(a.defaultName,a.otherNames).trim()})),(0,N.nT)((()=>{var e;a.otherNames.includes(o.value.trim())?m.value=(0,i.t)("files","This name is already in use."):m.value=function(e){let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(""===e.trim())return(0,i.t)("files","Filename must not be empty.");try{return(0,n.KT)(e),""}catch(e){if(!(e instanceof n.di))throw e;switch(e.reason){case n.nF.Character:return(0,i.t)("files",'"{char}" is not allowed inside a filename.',{char:e.segment},void 0,{escape:s});case n.nF.ReservedName:return(0,i.t)("files",'"{segment}" is a reserved name and not allowed for filenames.',{segment:e.segment},void 0,{escape:!1});case n.nF.Extension:return e.segment.match(/\.[a-z]/i)?(0,i.t)("files",'"{extension}" is not an allowed filetype.',{extension:e.segment},void 0,{escape:!1}):(0,i.t)("files",'Filenames must not end with "{extension}".',{extension:e.segment},void 0,{escape:!1});default:return(0,i.t)("files","Invalid filename.")}}}(o.value.trim());const s=null===(e=r.value)||void 0===e?void 0:e.$el.querySelector("input");s&&(s.setCustomValidity(m.value),s.reportValidity())})),(0,N.wB)((()=>a.open),(()=>{(0,N.dY)((()=>{d()}))})),(0,N.sV)((()=>{o.value=(0,n.E6)(o.value,a.otherNames).trim(),(0,N.dY)((()=>d()))})),{__sfc:!0,props:a,emit:t,localDefaultName:o,nameInput:r,formElement:l,validity:m,focusInput:d,submit:function(){var e;null===(e=l.value)||void 0===e||e.requestSubmit()},t:i.t,NcButton:ie.A,NcDialog:oe.A,NcTextField:re.A}}});var me=t(85072),de=t.n(me),ge=t(97825),ce=t.n(ge),ue=t(77659),fe=t.n(ue),pe=t(55056),he=t.n(pe),we=t(10540),ve=t.n(we),ye=t(41113),Te=t.n(ye),Ce=t(6058),xe={};xe.styleTagTransform=Te(),xe.setAttributes=he(),xe.insert=fe().bind(null,"head"),xe.domAPI=ce(),xe.insertStyleElement=ve(),de()(Ce.A,xe),Ce.A&&Ce.A.locals&&Ce.A.locals;const ke=(0,t(14486).A)(le,(function(){var e=this,s=e._self._c,t=e._self._setupProxy;return s(t.NcDialog,{attrs:{"data-cy-files-new-node-dialog":"",name:e.name,open:e.open,"close-on-click-outside":"","out-transition":""},on:{"update:open":function(e){return t.emit("close",null)}},scopedSlots:e._u([{key:"actions",fn:function(){return[s(t.NcButton,{attrs:{"data-cy-files-new-node-dialog-submit":"",type:"primary",disabled:""!==t.validity},on:{click:t.submit}},[e._v("\n\t\t\t"+e._s(t.t("files","Create"))+"\n\t\t")])]},proxy:!0}])},[e._v(" "),s("form",{ref:"formElement",staticClass:"new-node-dialog__form",on:{submit:function(e){return e.preventDefault(),t.emit("close",t.localDefaultName)}}},[s(t.NcTextField,{ref:"nameInput",attrs:{"data-cy-files-new-node-dialog-input":"",error:""!==t.validity,"helper-text":t.validity,label:e.label,value:t.localDefaultName},on:{"update:value":function(e){t.localDefaultName=e}}})],1)])}),[],!1,null,"242a2438",null).exports;function be(e,s){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=s.map((e=>e.basename));return new Promise((s=>{(0,a.Ss)(ke,{...t,defaultName:e,otherNames:n},(e=>{s(e)}))}))}const Le={id:"newFolder",displayName:(0,i.Tl)("files","New folder"),enabled:e=>0!=(e.permissions&n.aX.CREATE),iconSvgInline:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder-plus" viewBox="0 0 24 24"><path d="M13 19C13 19.34 13.04 19.67 13.09 20H4C2.9 20 2 19.11 2 18V6C2 4.89 2.89 4 4 4H10L12 6H20C21.1 6 22 6.89 22 8V13.81C21.12 13.3 20.1 13 19 13C15.69 13 13 15.69 13 19M20 18V15H18V18H15V20H18V23H20V20H23V18H20Z" /></svg>',order:0,async handler(e,s){const t=await be((0,i.Tl)("files","New folder"),s);if(null!==t){var o,m,g,c,u;const{fileid:s,source:f}=await(async(e,s)=>{const t=e.source+"/"+s,n=e.encodedSource+"/"+encodeURIComponent(s),a=await(0,d.Ay)({method:"MKCOL",url:n,headers:{Overwrite:"F"}});return{fileid:parseInt(a.headers["oc-fileid"]),source:t}})(e,t.trim()),p=new n.vd({source:f,id:s,mtime:new Date,owner:(null===(o=(0,F.HW)())||void 0===o?void 0:o.uid)||null,permissions:n.aX.ALL,root:(null==e?void 0:e.root)||"/files/"+(null===(m=(0,F.HW)())||void 0===m?void 0:m.uid),attributes:{"mount-type":null===(g=e.attributes)||void 0===g?void 0:g["mount-type"],"owner-id":null===(c=e.attributes)||void 0===c?void 0:c["owner-id"],"owner-display-name":null===(u=e.attributes)||void 0===u?void 0:u["owner-display-name"]}});(0,l.Ic)("files:node:created",p),(0,a.Te)((0,i.Tl)("files",'Created new folder "{name}"',{name:(0,B.basename)(f)})),r.A.debug("Created new folder",{folder:p,source:f}),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:p.fileid},{dir:e.path})}}};var Fe=t(32981);let Ue=(0,Fe.C)("files","templates_path",!1);r.A.debug("Initial templates folder",{templatesPath:Ue});const Se={id:"template-picker",displayName:(0,i.Tl)("files","Create new templates folder"),iconSvgInline:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-plus" viewBox="0 0 24 24"><path d="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z" /></svg>',order:10,enabled(e){var s;return!Ue&&e.owner===(null===(s=(0,F.HW)())||void 0===s?void 0:s.uid)&&0!=(e.permissions&n.aX.CREATE)},async handler(e,s){const t=await be((0,i.Tl)("files","Templates"),s,{name:(0,i.Tl)("files","New template folder")});null!==t&&(async function(e,s){const t=(0,B.join)(e.path,s);try{r.A.debug("Initializing the templates directory",{templatePath:t});const{data:e}=await d.Ay.post((0,y.KT)("apps/files/api/v1/templates/path"),{templatePath:t,copySystemTemplates:!0});window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:void 0},{dir:t}),r.A.info("Created new templates folder",{...e.ocs.data}),Ue=e.ocs.data.templates_path}catch(e){r.A.error("Unable to initialize the templates directory"),(0,a.Qg)((0,i.Tl)("files","Unable to initialize the templates directory"))}}(e,t),(0,n.gj)("template-picker"))}},Ne=(0,N.$V)((()=>Promise.all([t.e(4208),t.e(5606)]).then(t.bind(t,15606))));let _e=null;const Pe=async e=>{if(null===_e){const s=document.createElement("div");s.id="template-picker",document.body.appendChild(s),_e=new N.Ay({render:s=>s(Ne,{ref:"picker",props:{parent:e}}),methods:{open(){this.$refs.picker.open(...arguments)}},el:s})}return _e};var Ae;const ze="/files/".concat(null===(Ae=(0,F.HW)())||void 0===Ae?void 0:Ae.uid),je=((0,y.dC)("dav"+ze),(0,n.H4)()),Me=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";return"/"!==e?K(e):new W.CancelablePromise(((e,s,t)=>{const a=(0,n.Q$)(je).catch(s).then((t=>{var a;t?e({contents:t,folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(a=(0,F.HW)())||void 0===a?void 0:a.uid)||null,permissions:n.aX.READ})}):s()}));t((()=>a.cancel()))}))},Be=function(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return new n.Ss({id:Ee(e.path),name:(0,B.basename)(e.path),icon:Q,order:s,params:{dir:e.path,fileid:e.fileid.toString(),view:"favorites"},parent:"favorites",columns:[],getContents:Me})},Ee=function(e){return"favorite-".concat(function(e){let s=0;for(let t=0;t<e.length;t++)s=(s<<5)-s+e.charCodeAt(t)|0;return s>>>0}(e))};var Ie=t(65899);const Re=(0,Fe.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),De=(0,Ie.Ey)(),He=(0,n.H4)(),Oe=Math.round(Date.now()/1e3-1209600),Ve=e=>(0,n.Al)(e,n.lJ,(0,y.$_)());var We;const Ye=null===(We=(0,F.HW)())||void 0===We?void 0:We.uid,qe=function(e){const s=e.attributes["mount-type"];return!(Ye&&e.owner!==Ye||["group","shared"].includes(s))};(0,n.Gg)(v),(0,n.Gg)(b),(0,n.Gg)(S),(0,n.Gg)(j),(0,n.Gg)(Z),(0,n.Gg)(X),(0,n.Gg)(ee),(0,n.Gg)(se),(0,n.Gg)(ne),(0,n.Gg)(ae),(0,n.zj)(Le),(0,n.zj)(Se),(0,Fe.C)("files","templates",[]).forEach(((e,s)=>{(0,n.zj)({id:"template-new-".concat(e.app,"-").concat(s),displayName:e.label,iconClass:e.iconClass||"icon-file",iconSvgInline:e.iconSvgInline,enabled:e=>0!=(e.permissions&n.aX.CREATE),order:11,async handler(s,t){const n=Pe(s),a=await be("".concat(e.label).concat(e.extension),t,{label:(0,i.Tl)("files","Filename"),name:e.label});null!==a&&(await n).open(a.trim(),e)}})})),(()=>{const e=(0,Fe.C)("files","favoriteFolders",[]),s=e.map(((e,s)=>Be(e,s)));r.A.debug("Generating favorites view",{favoriteFolders:e});const t=(0,n.bh)();t.register(new n.Ss({id:"favorites",name:(0,i.Tl)("files","Favorites"),caption:(0,i.Tl)("files","List of favorites files and folders."),emptyTitle:(0,i.Tl)("files","No favorites yet"),emptyCaption:(0,i.Tl)("files","Files and folders you mark as favorite will show up here"),icon:_,order:15,columns:[],getContents:Me})),s.forEach((e=>t.register(e))),(0,l.B1)("files:favorites:added",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?o(e):r.A.error("Favorite folder is not within user files root",{node:e}))})),(0,l.B1)("files:favorites:removed",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?m(e.path):r.A.error("Favorite folder is not within user files root",{node:e}))})),(0,l.B1)("files:node:renamed",(e=>{e.type===n.pt.Folder&&1===e.attributes.favorite&&d(e)}));const a=function(){e.sort(((e,s)=>e.path.localeCompare(s.path,(0,i.Z0)(),{ignorePunctuation:!0}))),e.forEach(((e,t)=>{const n=s.find((s=>s.id===Ee(e.path)));n&&(n.order=t)}))},o=function(n){const i={path:n.path,fileid:n.fileid},o=Be(i);e.find((e=>e.path===n.path))||(e.push(i),s.push(o),a(),t.register(o))},m=function(n){const i=Ee(n),o=e.findIndex((e=>e.path===n));-1!==o&&(e.splice(o,1),s.splice(o,1),t.remove(i),a())},d=function(s){const t=e.find((e=>e.fileid===s.fileid));void 0!==t&&(m(t.path),o(s))}})(),(0,n.bh)().register(new n.Ss({id:"files",name:(0,i.Tl)("files","All files"),caption:(0,i.Tl)("files","List of your files and folders."),icon:Q,order:0,getContents:K})),(0,n.bh)().register(new n.Ss({id:"recent",name:(0,i.Tl)("files","Recent"),caption:(0,i.Tl)("files","List of recently modified files and folders."),emptyTitle:(0,i.Tl)("files","No recently modified files"),emptyCaption:(0,i.Tl)("files","Files and folders you recently modified will show up here."),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-history" viewBox="0 0 24 24"><path d="M13.5,8H12V13L16.28,15.54L17,14.33L13.5,12.25V8M13,3A9,9 0 0,0 4,12H1L4.96,16.03L9,12H6A7,7 0 0,1 13,5A7,7 0 0,1 20,12A7,7 0 0,1 13,19C11.07,19 9.32,18.21 8.06,16.94L6.64,18.36C8.27,20 10.5,21 13,21A9,9 0 0,0 22,12A9,9 0 0,0 13,3" /></svg>',order:10,defaultSortKey:"mtime",getContents:async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const s=function(){const e=(0,Ie.nY)("userconfig",{state:()=>({userConfig:Re}),actions:{onUpdate(e,s){N.Ay.set(this.userConfig,e,s)},async update(e,s){await d.Ay.put((0,y.Jv)("/apps/files/api/v1/config/"+e),{value:s}),(0,l.Ic)("files:config:updated",{key:e,value:s})}}})(...arguments);return e._initialized||((0,l.B1)("files:config:updated",(function(s){let{key:t,value:n}=s;e.onUpdate(t,n)})),e._initialized=!0),e}(De),t=t=>"/"!==e||s.userConfig.show_hidden||!t.dirname.split("/").some((e=>e.startsWith("."))),a=new AbortController;return new W.CancelablePromise((async(e,s,i)=>{var o;let r;i((()=>a.abort()));try{r=await He.search("/",{details:!0,data:(0,n.R3)(Oe),signal:a.signal})}catch(e){return void s(e)}a.signal.aborted?s():e({contents:r.data.results.map(Ve).filter(t),folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(o=(0,F.HW)())||void 0===o?void 0:o.uid)||null,permissions:n.aX.READ})})}))}})),(0,n.bh)().register(new n.Ss({id:"personal",name:(0,i.Tl)("files","Personal Files"),caption:(0,i.Tl)("files","List of your files and folders that are not shared."),emptyTitle:(0,i.Tl)("files","No personal files found"),emptyCaption:(0,i.Tl)("files","Files that are not shared will show up here."),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account" viewBox="0 0 24 24"><path d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,14C16.42,14 20,15.79 20,18V20H4V18C4,15.79 7.58,14 12,14Z" /></svg>',order:5,getContents:function(){return K(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/").then((e=>(e.contents=e.contents.filter(qe),e)))}})),"serviceWorker"in navigator?window.addEventListener("load",(async()=>{try{const e=(0,y.Jv)("/apps/files/preview-service-worker.js",{},{noRewrite:!0}),s=await navigator.serviceWorker.register(e,{scope:"/"});r.A.debug("SW registered: ",{registration:s})}catch(e){r.A.error("SW registration failed: ",{error:e})}})):r.A.debug("Service Worker is not enabled on this browser."),(0,n.Yc)("nc:hidden",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:is-mount-root",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:is-federated",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:metadata-files-live-photo",{nc:"http://nextcloud.org/ns"})},96667:(e,s,t)=>{"use strict";t.d(s,{A:()=>r});var n=t(71354),a=t.n(n),i=t(76314),o=t.n(i)()(a());o.push([e.id,".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const r=o},6058:(e,s,t)=>{"use strict";t.d(s,{A:()=>r});var n=t(71354),a=t.n(n),i=t(76314),o=t.n(i)()(a());o.push([e.id,"\n.new-node-dialog__form[data-v-242a2438] {\n\t/* Ensure the dialog does not jump when there is a validity error */\n\tmin-height: calc(3 * var(--default-clickable-area));\n}\n","",{version:3,sources:["webpack://./apps/files/src/components/NewNodeDialog.vue"],names:[],mappings:";AAwJA;CACA,mEAAA;CACA,mDAAA;AACA",sourcesContent:["\x3c!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n--\x3e\n<template>\n\t<NcDialog data-cy-files-new-node-dialog\n\t\t:name=\"name\"\n\t\t:open=\"open\"\n\t\tclose-on-click-outside\n\t\tout-transition\n\t\t@update:open=\"emit('close', null)\">\n\t\t<template #actions>\n\t\t\t<NcButton data-cy-files-new-node-dialog-submit\n\t\t\t\ttype=\"primary\"\n\t\t\t\t:disabled=\"validity !== ''\"\n\t\t\t\t@click=\"submit\">\n\t\t\t\t{{ t('files', 'Create') }}\n\t\t\t</NcButton>\n\t\t</template>\n\t\t<form ref=\"formElement\"\n\t\t\tclass=\"new-node-dialog__form\"\n\t\t\t@submit.prevent=\"emit('close', localDefaultName)\">\n\t\t\t<NcTextField ref=\"nameInput\"\n\t\t\t\tdata-cy-files-new-node-dialog-input\n\t\t\t\t:error=\"validity !== ''\"\n\t\t\t\t:helper-text=\"validity\"\n\t\t\t\t:label=\"label\"\n\t\t\t\t:value.sync=\"localDefaultName\" />\n\t\t</form>\n\t</NcDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport type { ComponentPublicInstance, PropType } from 'vue'\nimport { getUniqueName } from '@nextcloud/files'\nimport { t } from '@nextcloud/l10n'\nimport { extname } from 'path'\nimport { nextTick, onMounted, ref, watch, watchEffect } from 'vue'\nimport { getFilenameValidity } from '../utils/filenameValidity.ts'\n\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcDialog from '@nextcloud/vue/dist/Components/NcDialog.js'\nimport NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js'\n\nconst props = defineProps({\n\t/**\n\t * The name to be used by default\n\t */\n\tdefaultName: {\n\t\ttype: String,\n\t\tdefault: t('files', 'New folder'),\n\t},\n\t/**\n\t * Other files that are in the current directory\n\t */\n\totherNames: {\n\t\ttype: Array as PropType<string[]>,\n\t\tdefault: () => [],\n\t},\n\t/**\n\t * Open state of the dialog\n\t */\n\topen: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * Dialog name\n\t */\n\tname: {\n\t\ttype: String,\n\t\tdefault: t('files', 'Create new folder'),\n\t},\n\t/**\n\t * Input label\n\t */\n\tlabel: {\n\t\ttype: String,\n\t\tdefault: t('files', 'Folder name'),\n\t},\n})\n\nconst emit = defineEmits<{\n\t(event: 'close', name: string | null): void\n}>()\n\nconst localDefaultName = ref<string>(props.defaultName)\nconst nameInput = ref<ComponentPublicInstance>()\nconst formElement = ref<HTMLFormElement>()\nconst validity = ref('')\n\n/**\n * Focus the filename input field\n */\nfunction focusInput() {\n\tnextTick(() => {\n\t\t// get the input element\n\t\tconst input = nameInput.value?.$el.querySelector('input')\n\t\tif (!props.open || !input) {\n\t\t\treturn\n\t\t}\n\n\t\t// length of the basename\n\t\tconst length = localDefaultName.value.length - extname(localDefaultName.value).length\n\t\t// focus the input\n\t\tinput.focus()\n\t\t// and set the selection to the basename (name without extension)\n\t\tinput.setSelectionRange(0, length)\n\t})\n}\n\n/**\n * Trigger submit on the form\n */\nfunction submit() {\n\tformElement.value?.requestSubmit()\n}\n\n// Reset local name on props change\nwatch(() => props.defaultName, () => {\n\tlocalDefaultName.value = getUniqueName(props.defaultName, props.otherNames).trim()\n})\n\n// Validate the local name\nwatchEffect(() => {\n\tif (props.otherNames.includes(localDefaultName.value.trim())) {\n\t\tvalidity.value = t('files', 'This name is already in use.')\n\t} else {\n\t\tvalidity.value = getFilenameValidity(localDefaultName.value.trim())\n\t}\n\tconst input = nameInput.value?.$el.querySelector('input')\n\tif (input) {\n\t\tinput.setCustomValidity(validity.value)\n\t\tinput.reportValidity()\n\t}\n})\n\n// Ensure the input is focussed even if the dialog is already mounted but not open\nwatch(() => props.open, () => {\n\tnextTick(() => {\n\t\tfocusInput()\n\t})\n})\n\nonMounted(() => {\n\t// on mounted lets use the unique name\n\tlocalDefaultName.value = getUniqueName(localDefaultName.value, props.otherNames).trim()\n\tnextTick(() => focusInput())\n})\n<\/script>\n\n<style scoped>\n.new-node-dialog__form {\n\t/* Ensure the dialog does not jump when there is a validity error */\n\tmin-height: calc(3 * var(--default-clickable-area));\n}\n</style>\n"],sourceRoot:""}]);const r=o},51111:e=>{"use strict";const s=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!s.has(e&&e.code)},75270:e=>{function s(e,s){return null==e?s:e}e.exports=function(e){var t,n=s((e=e||{}).max,1),a=s(e.min,0),i=s(e.autostart,!0),o=s(e.ignoreSameProgress,!1),r=null,l=null,m=null,d=(t=s(e.historyTimeConstant,2.5),function(e,s,n){return e+n/(n+t)*(s-e)});function g(){c(a)}function c(e,s){if("number"!=typeof s&&(s=Date.now()),l!==s&&(!o||m!==e)){if(null===l||null===m)return m=e,void(l=s);var t=.001*(s-l),n=(e-m)/t;r=null===r?n:d(r,n,t),m=e,l=s}}return{start:g,reset:function(){r=null,l=null,m=null,i&&g()},report:c,estimate:function(e){if(null===m)return 1/0;if(m>=n)return 0;if(null===r)return 1/0;var s=(n-m)/r;return"number"==typeof e&&"number"==typeof l&&(s-=.001*(e-l)),Math.max(0,s)},rate:function(){return null===r?0:r}}}},98383:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},39075:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill:%23fff;fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},94997:(e,s,t)=>{"use strict";t.d(s,{a:()=>le,b:()=>ce,h:()=>xe,i:()=>re,l:()=>se,n:()=>he,o:()=>Fe,t:()=>ue});var n=t(85072),a=t.n(n),i=t(97825),o=t.n(i),r=t(77659),l=t.n(r),m=t(55056),d=t.n(m),g=t(10540),c=t.n(g),u=t(41113),f=t.n(u),p=t(96667),h={};h.styleTagTransform=f(),h.setAttributes=d(),h.insert=l().bind(null,"head"),h.domAPI=o(),h.insertStyleElement=c(),a()(p.A,h),p.A&&p.A.locals&&p.A.locals;var w=t(82680),v=t(85471),y=t(21777),T=t(34297),C=t(71225),x=t(43627),k=t(65043);class b extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const L=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class F{static fn(e){return(...s)=>new F(((t,n,a)=>{s.push(a),e(...s).then(t,n)}))}#e=[];#s=!0;#t=L.pending;#n;#a;constructor(e){this.#n=new Promise(((s,t)=>{this.#a=t;const n=e=>{if(this.#t!==L.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#t.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#s,set:e=>{this.#s=e}}}),e((e=>{this.#t===L.canceled&&n.shouldReject||(s(e),this.#i(L.resolved))}),(e=>{this.#t===L.canceled&&n.shouldReject||(t(e),this.#i(L.rejected))}),n)}))}then(e,s){return this.#n.then(e,s)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#t===L.pending){if(this.#i(L.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#a(e)}this.#s&&this.#a(new b(e))}}get isCanceled(){return this.#t===L.canceled}#i(e){this.#t===L.pending&&(this.#t=e)}}Object.setPrototypeOf(F.prototype,Promise.prototype);var U=t(57485),S=t(63814),N=t(51111);const _="axios-retry";function P(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&N(e)}const A=["get","head","options"],z=A.concat(["put","delete"]);function j(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function M(e){return!!e.config?.method&&j(e)&&-1!==z.indexOf(e.config.method)}function B(e){return P(e)||M(e)}function E(e=void 0){const s=e?.response?.headers["retry-after"];if(!s)return 0;let t=1e3*(Number(s)||0);return 0===t&&(t=(new Date(s).valueOf()||0)-Date.now()),Math.max(0,t)}function I(e=0,s=void 0,t=100){const n=2**e*t,a=Math.max(n,E(s));return a+.2*a*Math.random()}const R={retries:3,retryCondition:B,retryDelay:function(e=0,s=void 0){return Math.max(0,E(s))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function D(e,s,t=!1){const n=function(e,s){return{...R,...s,...e[_]}}(e,s||{});return n.retryCount=n.retryCount||0,n.lastRequestTime&&!t||(n.lastRequestTime=Date.now()),e[_]=n,n}const H=(e,s)=>{const t=e.interceptors.request.use((e=>(D(e,s,!0),e[_]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async t=>{const{config:n}=t;if(!n)return Promise.reject(t);const a=D(n,s);return t.response&&a.validateResponse?.(t.response)?t.response:await async function(e,s){const{retries:t,retryCondition:n}=e,a=(e.retryCount||0)<t&&n(s);if("object"==typeof a)try{return!1!==await a}catch(e){return!1}return a}(a,t)?async function(e,s,t,n){s.retryCount+=1;const{retryDelay:a,shouldResetTimeout:i,onRetry:o}=s,r=a(s.retryCount,t);if(function(e,s){e.defaults.agent===s.agent&&delete s.agent,e.defaults.httpAgent===s.httpAgent&&delete s.httpAgent,e.defaults.httpsAgent===s.httpsAgent&&delete s.httpsAgent}(e,n),!i&&n.timeout&&s.lastRequestTime){const e=Date.now()-s.lastRequestTime,a=n.timeout-e-r;if(a<=0)return Promise.reject(t);n.timeout=a}return n.transformRequest=[e=>e],await o(s.retryCount,t,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((s=>{const t=()=>{clearTimeout(a),s(e(n))},a=setTimeout((()=>{s(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",t)}),r);n.signal?.addEventListener&&n.signal.addEventListener("abort",t,{once:!0})}))}(e,a,t,n):(await async function(e,s){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(s,e.retryCount)}(a,t),Promise.reject(t))}));return{requestInterceptorId:t,responseInterceptorId:n}};H.isNetworkError=P,H.isSafeRequestError=function(e){return!!e.config?.method&&j(e)&&-1!==A.indexOf(e.config.method)},H.isIdempotentRequestError=M,H.isNetworkOrIdempotentRequestError=B,H.exponentialDelay=I,H.linearDelay=function(e=100){return(s=0,t=void 0)=>{const n=s*e;return Math.max(n,E(t))}},H.isRetryableError=j;const O=H;var V=t(35947),W=t(11195),Y=t(87485),q=t(75270),K=t(89257),J=t(30567),G=t(80114),$=t(24764),Z=t(18740),Q=t(6695),X=t(95101),ee=t(95674);const se=(0,V.YK)().setApp("@nextcloud/upload").detectUser().build();O(k.Ay,{retries:0});const te=async function(e,s,t,n=(()=>{}),a=void 0,i={},o=5){let r;return r=s instanceof Blob?s:await s(),a&&(i.Destination=a),i["Content-Type"]||(i["Content-Type"]="application/octet-stream"),await k.Ay.request({method:"PUT",url:e,data:r,signal:t,onUploadProgress:n,headers:i,"axios-retry":{retries:o,retryDelay:(e,s)=>I(e,s,1e3)}})},ne=function(e,s,t){return 0===s&&e.size<=t?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(s,s+t)],{type:"application/octet-stream"}))},ae=function(e=void 0){const s=window.OC?.appConfig?.files?.max_chunk_size;if(s<=0)return 0;if(!Number(s))return 10485760;const t=Math.max(Number(s),5242880);return void 0===e?t:Math.max(t,Math.ceil(e/1e4))};var ie=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ie||{});class oe{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,s=!1,t,n){const a=Math.min(ae()>0?Math.ceil(t/ae()):1,1e4);this._source=e,this._isChunked=s&&ae()>0&&a>1,this._chunks=this._isChunked?a:1,this._size=t,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}const re=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,le=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;class me extends File{_originalName;_path;_children;constructor(e){super([],(0,C.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,C.P8)(e),this._path=e}get size(){return this.children.reduce(((e,s)=>e+s.size),0)}get lastModified(){return this.children.reduce(((e,s)=>Math.max(e,s.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChildren(e){for(const s of e)await this.addChild(s)}async addChild(e){const s=this._path&&`${this._path}/`;if(re(e))e=await new Promise(((s,t)=>e.file(s,t)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const t=e.createReader(),n=await new Promise(((e,s)=>t.readEntries(e,s))),a=new me(`${s}${e.name}`);return await a.addChildren(n),void this._children.set(e.name,a)}const t=e.webkitRelativePath??e.name;if(t.includes("/")){if(!t.startsWith(this._path))throw new Error(`File ${t} is not a child of ${this._path}`);const n=t.slice(s.length),a=(0,C.P8)(n);if(a===n)this._children.set(a,e);else{const t=n.slice(0,n.indexOf("/"));if(this._children.has(t))await this._children.get(t).addChild(e);else{const n=new me(`${s}${t}`);await n.addChild(e),this._children.set(t,n)}}}else this._children.set(e.name,e)}}const de=(0,W.$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"abusaud, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli <alimahwer@yahoo.com>, 2024\nabusaud, 2024\n"},msgstr:["Last-Translator: abusaud, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" هو اسم ممنوع لملف أو مجلد.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" هو نوع ممنوع أن يكون لملف.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" هو غير مسموح به في اسم ملف أو مجلد.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفان متعارضان في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفات متعارضة في {dirname}","{count} ملفات متعارضة في {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["بضع ثوانٍ متبقية"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['غير مسموح ان ينتهي اسم الملف بـ "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["اسم ملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معروف"]},New:{msgid:"New",msgstr:["جديد"]},"New filename":{msgid:"New filename",msgstr:["اسم ملف جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},Upload:{msgid:"Upload",msgstr:["رفع الملفات"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["تمّ تجاوز الرفع"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['رفع "{folder}" تمّ تجاوزه']},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp <enolp@softastur.org>, 2023\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev <microphprashad@gmail.com>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev <microphprashad@gmail.com>, 2023\n"},msgstr:["Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera <marcriera@softcatala.org>, 2022\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\nMartin Hankovec, 2024\nAppukonrad <appukonrad@gmail.com>, 2024\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ není povoleno použít jako název souboru či složky."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ není povoleného typu souboru."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ není povoleno použít v rámci názvu souboru či složky."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"Create new":{msgid:"Create new",msgstr:["Vytvořit nový"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Názvy souborů nemohou končit na „{segment}“."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný název souboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New filename":{msgid:"New filename",msgstr:["Nový název souboru"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},Rename:{msgid:"Rename",msgstr:["Přejmenovat"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},Skip:{msgid:"Skip",msgstr:["Přeskočit"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},Upload:{msgid:"Upload",msgstr:["Nahrát"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrát složky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrát ze zařízení"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávání bylo zrušeno"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrání bylo přeskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Nahrání „{folder}“ bylo přeskočeno"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRasmus Rosendahl-Kaa, 2024\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tilladt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"Create new":{msgid:"Create new",msgstr:["Opret ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavne må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldigt filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nyt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},Rename:{msgid:"Rename",msgstr:["Omdøb"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Spring over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload fra enhed"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload er blevet annulleret"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload er blevet sprunget over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload af "{folder}" er blevet sprunget over']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Andy Scherzinger <info@andy-scherzinger.de>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMartin Wilichowski, 2024\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\n"},msgstr:["Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\n"},msgstr:["Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is a forbidden file or folder name.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is a forbidden file type.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is not allowed inside a file or folder name.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"Create new":{msgid:"Create new",msgstr:["Create new"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filenames must not end with "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Invalid filename"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New filename":{msgid:"New filename",msgstr:["New filename"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},Rename:{msgid:"Rename",msgstr:["Rename"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},Skip:{msgid:"Skip",msgstr:["Skip"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload folders"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload from device"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload has been cancelled"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload has been skipped"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload of "{folder}" has been skipped']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["You can either rename the file, skip this file or cancel the whole operation."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa de imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Cargar archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Cargar carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Cargar desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Carga cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la carga"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿Cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivo en conflicto en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Cuáles archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi",json:{charset:"utf-8",headers:{"Last-Translator":"teemue, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\nteemue, 2024\n"},msgstr:["Last-Translator: teemue, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" on kielletty tiedoston tai hakemiston nimi.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" on kielletty tiedostotyyppi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ei ole sallittu tiedoston tai hakemiston nimessä.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} tiedoston ristiriita","{count} tiedoston ristiriita"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tiedoston ristiriita kansiossa {dirname}","{count} tiedoston ristiriita kansiossa {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Cancel:{msgid:"Cancel",msgstr:["Peruuta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Peruuta koko toimenpide"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},Continue:{msgid:"Continue",msgstr:["Jatka"]},"Create new":{msgid:"Create new",msgstr:["Luo uusi"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},"Existing version":{msgid:"Existing version",msgstr:["Olemassa oleva versio"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tiedoston nimi ei saa päättyä "{segment}"']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Kielletty/väärä tiedoston nimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimeisin muokkauspäivä on tuntematon"]},New:{msgid:"New",msgstr:["Uusi"]},"New filename":{msgid:"New filename",msgstr:["Uusi tiedostonimi"]},"New version":{msgid:"New version",msgstr:["Uusi versio"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Preview image":{msgid:"Preview image",msgstr:["Esikatsele kuva"]},Rename:{msgid:"Rename",msgstr:["Nimeä uudelleen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Valitse kaikki valintaruudut"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Valitse kaikki olemassa olevat tiedostot"]},"Select all new files":{msgid:"Select all new files",msgstr:["Valitse kaikki uudet tiedostot"]},Skip:{msgid:"Skip",msgstr:["Ohita"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ohita tämä tiedosto","Ohita {count} tiedostoa"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tuntematon koko"]},Upload:{msgid:"Upload",msgstr:["Lähetä"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]},"Upload folders":{msgid:"Upload folders",msgstr:["Lähetä kansioita"]},"Upload from device":{msgid:"Upload from device",msgstr:["Lähetä laitteelta"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Lähetys on peruttu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Lähetys on ohitettu"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Hakemiston "{folder}" lähetys on ohitettu']},"Upload progress":{msgid:"Upload progress",msgstr:["Lähetyksen edistyminen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mitkä tiedostot haluat säilyttää?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi."]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Arnaud Cazenave, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\nJérôme HERBINET, 2024\nArnaud Cazenave, 2024\n"},msgstr:["Last-Translator: Arnaud Cazenave, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" est un nom de fichier ou de dossier interdit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" est un type de fichier interdit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les téléversements"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"Create new":{msgid:"Create new",msgstr:["Créer un nouveau"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Le nom des fichiers ne doit pas finir par "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fichier invalide"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New filename":{msgid:"New filename",msgstr:["Nouveau nom de fichier"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},Rename:{msgid:"Rename",msgstr:["Renommer"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},Skip:{msgid:"Skip",msgstr:["Ignorer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},Upload:{msgid:"Upload",msgstr:["Téléverser"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Téléverser des dossiers"]},"Upload from device":{msgid:"Upload from device",msgstr:["Téléverser depuis l'appareil"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Le téléversement a été annulé"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Le téléversement a été ignoré"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Le téléversement de "{folder}" a été ignoré']},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléversement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Is ainm toirmiscthe comhaid nó fillteáin é "{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Is cineál comhaid toirmiscthe é "{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Ní cheadaítear "{segment}" taobh istigh d\'ainm comhaid nó fillteáin.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} soicind fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Níor cheart go gcríochnaíonn comhaid chomhad le "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New filename":{msgid:"New filename",msgstr:["Ainm comhaid nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},Upload:{msgid:"Upload",msgstr:["Uaslódáil"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó ghléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Léiríodh an uaslódáil"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Léiríodh an uaslódáil "{folder}".']},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» é un nome vedado para un ficheiro ou cartafol."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» é un tipo de ficheiro vedado."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Os nomes de ficheiros non deben rematar con «{segment}»."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O envío foi omitido"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["O envío de «{folder}» foi omitido"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Tiltott fájl- vagy mappanév: „{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Tiltott fájltípus: „{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Nem megengedett egy fájl- vagy mappanévben: „{segment}".']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fájlt érintő konfliktus","{count} fájlt érintő konfliktus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fájlt érintő konfliktus a mappában: {dirname}","{count}fájlt érintő konfliktus a mappában: {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Cancel:{msgid:"Cancel",msgstr:["Mégse"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Teljes művelet megszakítása"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},Continue:{msgid:"Continue",msgstr:["Tovább"]},"Create new":{msgid:"Create new",msgstr:["Új létrehozása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},"Existing version":{msgid:"Existing version",msgstr:["Jelenlegi változat"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Fájlnevek nem végződhetnek erre: „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Érvénytelen fájlnév"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Utolsó módosítás dátuma ismeretlen"]},New:{msgid:"New",msgstr:["Új"]},"New filename":{msgid:"New filename",msgstr:["Új fájlnév"]},"New version":{msgid:"New version",msgstr:["Új verzió"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Preview image":{msgid:"Preview image",msgstr:["Kép előnézete"]},Rename:{msgid:"Rename",msgstr:["Átnevezés"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Minden jelölőnégyzet kijelölése"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Minden jelenlegi fájl kijelölése"]},"Select all new files":{msgid:"Select all new files",msgstr:["Minden új fájl kijelölése"]},Skip:{msgid:"Skip",msgstr:["Kihagyás"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ezen fájl kihagyása","{count}fájl kihagyása"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ismeretlen méret"]},Upload:{msgid:"Upload",msgstr:["Feltöltés"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappák feltöltése"]},"Upload from device":{msgid:"Upload from device",msgstr:["Feltöltés eszközről"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Feltöltés meg lett szakítva"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Feltöltés át lett ugorva"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}” feltöltése át lett ugorva"]},"Upload progress":{msgid:"Upload progress",msgstr:["Feltöltési folyamat"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mely fájlokat kívánja megtartani?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["A folytatáshoz minden fájlból legalább egy verziót ki kell választani."]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly <linerly@proton.me>, 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nEmpty Slot Filler, 2023\nLinerly <linerly@proton.me>, 2023\n"},msgstr:["Last-Translator: Linerly <linerly@proton.me>, 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"albanobattistella <albanobattistella@gmail.com>, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFrancesco Sercia, 2024\nalbanobattistella <albanobattistella@gmail.com>, 2024\n"},msgstr:["Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" è un nome di file o cartella proibito.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"è un tipo di file proibito.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" non è consentito all\'interno di un nome di file o cartella.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},Cancel:{msgid:"Cancel",msgstr:["Annulla"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annulla l'intera operazione"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"Create new":{msgid:"Create new",msgstr:["Crea nuovo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['I nomi dei file non devono terminare con "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome file non valido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New filename":{msgid:"New filename",msgstr:["Nuovo nome file"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},Rename:{msgid:"Rename",msgstr:["Rinomina"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},Skip:{msgid:"Skip",msgstr:["Salta"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},Upload:{msgid:"Upload",msgstr:["Caricamento"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carica cartelle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carica dal dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Caricamento annullato"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Il caricamento è stato saltato"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Il caricamento di "{folder}" è stato saltato']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso del caricamento"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["È possibile rinominare il file, ignorarlo o annullare l'intera operazione."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"ja",json:{charset:"utf-8",headers:{"Last-Translator":"kshimohata, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\nkshimohata, 2024\n"},msgstr:["Last-Translator: kshimohata, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" は禁止されているファイルまたはフォルダ名です。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" は禁止されているファイルタイプです。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ファイルまたはフォルダ名に "{segment}" を含めることはできません。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ファイル数の競合"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} で {count} 個のファイルが競合しています"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Cancel:{msgid:"Cancel",msgstr:["キャンセル"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["すべての操作をキャンセルする"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},Continue:{msgid:"Continue",msgstr:["続ける"]},"Create new":{msgid:"Create new",msgstr:["新規作成"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},"Existing version":{msgid:"Existing version",msgstr:["既存バージョン"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ファイル名の末尾に "{segment}" を付けることはできません。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無効なファイル名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最終更新日不明"]},New:{msgid:"New",msgstr:["新規作成"]},"New filename":{msgid:"New filename",msgstr:["新しいファイル名"]},"New version":{msgid:"New version",msgstr:["新しいバージョン"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Preview image":{msgid:"Preview image",msgstr:["プレビュー画像"]},Rename:{msgid:"Rename",msgstr:["名前を変更"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["すべて選択"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["すべての既存ファイルを選択"]},"Select all new files":{msgid:"Select all new files",msgstr:["すべての新規ファイルを選択"]},Skip:{msgid:"Skip",msgstr:["スキップ"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} 個のファイルをスキップする"]},"Unknown size":{msgid:"Unknown size",msgstr:["サイズ不明"]},Upload:{msgid:"Upload",msgstr:["アップロード"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップロード"]},"Upload folders":{msgid:"Upload folders",msgstr:["フォルダのアップロード"]},"Upload from device":{msgid:"Upload from device",msgstr:["デバイスからのアップロード"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["アップロードはキャンセルされました"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["アップロードがスキップされました"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" のアップロードがスキップされました']},"Upload progress":{msgid:"Upload progress",msgstr:["アップロード進行状況"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["どのファイルを保持しますか?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров <sasetodorov@gmail.com>, 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров <sasetodorov@gmail.com>, 2022\n"},msgstr:["Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb",json:{charset:"utf-8",headers:{"Last-Translator":"Roger Knutsen, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRoger Knutsen, 2024\n"},msgstr:["Last-Translator: Roger Knutsen, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tillatt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hele operasjonen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"Create new":{msgid:"Create new",msgstr:["Opprett ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavn må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldig filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},Rename:{msgid:"Rename",msgstr:["Omdøp"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Hopp over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Last opp mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Last opp fra enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Opplastingen er kansellert"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Opplastingen er hoppet over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Opplasting av "{folder}" er hoppet over']},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico <rico-schwab@hotmail.com>, 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico <rico-schwab@hotmail.com>, 2023\n"},msgstr:["Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” to zabroniona nazwa pliku lub folderu."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” jest zabronionym typem pliku."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"Create new":{msgid:"Create new",msgstr:["Utwórz nowe"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Nazwy plików nie mogą kończyć się na „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nieprawidłowa nazwa pliku"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New filename":{msgid:"New filename",msgstr:["Nowa nazwa pliku"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},Rename:{msgid:"Rename",msgstr:["Zmiana nazwy"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie pola wyboru"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},Skip:{msgid:"Skip",msgstr:["Pomiń"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},Upload:{msgid:"Upload",msgstr:["Prześlij"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload folders":{msgid:"Upload folders",msgstr:["Prześlij foldery"]},"Upload from device":{msgid:"Upload from device",msgstr:["Prześlij z urządzenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Przesyłanie zostało anulowane"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Przesyłanie zostało pominięte"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Przesyłanie „{folder}” zostało pominięte"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Paulo Schopf, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\nPaulo Schopf, 2024\n"},msgstr:["Last-Translator: Paulo Schopf, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de arquivo proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido dentro de um nome de arquivo ou pasta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes dos arquivos não devem terminar com "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de arquivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de arquivo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},Skip:{msgid:"Skip",msgstr:["Pular"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carregar do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O upload foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O upload foi pulado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O upload de "{folder}" foi ignorado']},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva <mmsrs@sky.com>, 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva <mmsrs@sky.com>, 2022\n"},msgstr:["Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Александр, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nВлад, 2024\nAlex <fedotov22091982@gmail.com>, 2024\nRoman Stepanov, 2024\nMaksim Sukharev, 2024\nАлександр, 2024\n"},msgstr:["Last-Translator: Александр, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» — это запрещенное имя файла или папки."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» — это запрещенный тип файла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» не допускается в имени файла или папки."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отменить"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена файлов не должны заканчиваться на «{segment}»"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неверное имя файла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New filename":{msgid:"New filename",msgstr:["Новое имя файла"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Выбрать все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропустить"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},Upload:{msgid:"Upload",msgstr:["Загрузить"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузить файлы"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузить папки"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузить с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Загрузка была пропущена"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Загрузка «{folder}» была пропущена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Прогресс загрузки"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Вы можете переименовать файл, пропустить этот файл или отменить всю операцию."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJozef Gaal <preklady@mayday.sk>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ je zakázaný názov súboru alebo priečinka."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je zákazaný typ súboru.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}“ je zakázané v názve súboru alebo adresára.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} súbor má konflikt","{count} súbory majú konflikt","{count} súborov má konflikt","{count} súborov má konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} súborový konflikt v {dirname}","{count} súborové konflikty v {dirname}","{count} súborových konfliktov v {dirname}","{count} súborových konfliktov v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúnd zostáva"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} zostáva"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zostáva niekoľko sekúnd"]},Cancel:{msgid:"Cancel",msgstr:["Zrušiť"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušiť celú operáciu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušiť nahrávanie"]},Continue:{msgid:"Continue",msgstr:["Pokračovať"]},"Create new":{msgid:"Create new",msgstr:["Vytvoriť nové"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovanie zostávajúceho času"]},"Existing version":{msgid:"Existing version",msgstr:["Existujúca verzia"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Názvy súborov nesmú končiť znakom "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný názov súboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dátum poslednej úpravy neznámy"]},New:{msgid:"New",msgstr:["Nový"]},"New filename":{msgid:"New filename",msgstr:["Nový názov súboru"]},"New version":{msgid:"New version",msgstr:["Nová verzia"]},paused:{msgid:"paused",msgstr:["pozastavené"]},"Preview image":{msgid:"Preview image",msgstr:["Náhľad obrázka"]},Rename:{msgid:"Rename",msgstr:["Premenovať"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označiť všetky výberové políčka"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrať všetky existujúce súbory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrať všetky nové súbory"]},Skip:{msgid:"Skip",msgstr:["Preskočiť"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskočiť tento súbor","Preskočiť {count} súbory","Preskočiť {count} súborov","Preskočiť {count} súborov"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznáma veľkosť"]},Upload:{msgid:"Upload",msgstr:["Nahrať"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrať súbory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrať priečinky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrať zo zariadenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávanie bolo zrušené"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrávanie bolo preskočené"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nahrávanie "{folder}" bolo preskočené']},"Upload progress":{msgid:"Upload progress",msgstr:["Priebeh nahrávania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Ktoré súbory chcete ponechať?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru."]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJan Kraljič <jan.kraljic@patware.eu>, 2024\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" je prepovedano ime datoteka ali mape.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je prepovedan tip datoteke.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ni dovoljeno v imenu datoteke ali mape.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["1{count} datoteka je v konfliktu","1{count} datoteki sta v konfiktu","1{count} datotek je v konfliktu","{count} datotek je v konfliktu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} datoteka je v konfiktu v {dirname}","{count} datoteki sta v konfiktu v {dirname}","{count} datotek je v konfiktu v {dirname}","{count} konfliktov datotek v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Cancel:{msgid:"Cancel",msgstr:["Prekliči"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Prekliči celotni postopek"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},Continue:{msgid:"Continue",msgstr:["Nadaljuj"]},"Create new":{msgid:"Create new",msgstr:["Ustvari nov"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjujem čas do konca"]},"Existing version":{msgid:"Existing version",msgstr:["Obstoječa različica"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Imena datotek se ne smejo končati s "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nepravilno ime datoteke"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum zadnje spremembe neznan"]},New:{msgid:"New",msgstr:["Nov"]},"New filename":{msgid:"New filename",msgstr:["Novo ime datoteke"]},"New version":{msgid:"New version",msgstr:["Nova različica"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Preview image":{msgid:"Preview image",msgstr:["Predogled slike"]},Rename:{msgid:"Rename",msgstr:["Preimenuj"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Izberi vsa potrditvena polja"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Označi vse obstoječe datoteke"]},"Select all new files":{msgid:"Select all new files",msgstr:["Označi vse nove datoteke"]},Skip:{msgid:"Skip",msgstr:["Preskoči"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskoči datoteko","Preskoči {count} datoteki","Preskoči {count} datotek","Preskoči {count} datotek"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznana velikost"]},Upload:{msgid:"Upload",msgstr:["Naloži"]},"Upload files":{msgid:"Upload files",msgstr:["Naloži datoteke"]},"Upload folders":{msgid:"Upload folders",msgstr:["Naloži mape"]},"Upload from device":{msgid:"Upload from device",msgstr:["Naloži iz naprave"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nalaganje je bilo preklicano"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nalaganje je bilo preskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nalaganje "{folder}" je bilo preskočeno']},"Upload progress":{msgid:"Upload progress",msgstr:["Napredek nalaganja"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Katere datoteke želite obdržati?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Izbrati morate vsaj eno različico vsake datoteke da nadaljujete."]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” је забрањено име фајла или фолдера."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” је забрањен тип фајла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}” није дозвољено унутар имена фајла или фолдера."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},Cancel:{msgid:"Cancel",msgstr:["Откажи"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отказује комплетну операцију"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"Create new":{msgid:"Create new",msgstr:["Креирај ново"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена фајлова не смеју да се завршавају на „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име долазног фајла ће се додати број."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неисправно име фајла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New filename":{msgid:"New filename",msgstr:["Ново име фајла"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},Rename:{msgid:"Rename",msgstr:["Промени име"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},Skip:{msgid:"Skip",msgstr:["Прескочи"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},Upload:{msgid:"Upload",msgstr:["Отпреми"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload folders":{msgid:"Upload folders",msgstr:["Отпреми фолдере"]},"Upload from device":{msgid:"Upload from device",msgstr:["Отпреми са уређаја"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Отпремање је отказано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Отпремање је прескочено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Отпремање „{folder}”је прескочено"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" är ett förbjudet fil- eller mappnamn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" är en förbjuden filtyp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" är inte tillåtet i ett fil- eller mappnamn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnamn får inte sluta med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnamn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},Upload:{msgid:"Upload",msgstr:["Ladda upp"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Uppladdningen har hoppats över"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Uppladdningen av "{folder}" har hoppats över']},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat <ppnplus@protonmail.com>, 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" dosya ya da klasör adına izin verilmiyor.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" dosya türüne izin verilmiyor.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Bir dosya ya da klasör adında "{segment}" ifadesine izin verilmiyor.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dosya adları "{segment}" ile bitmemeli.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New filename":{msgid:"New filename",msgstr:["Yeni dosya adı"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},Upload:{msgid:"Upload",msgstr:["Yükle"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Yükleme atlandı"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" klasörünün yüklenmesi atlandı']},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" не є дозволеним ім\'ям файлу або каталогу.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" не є дозволеним типом файлу.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" не дозволене сполучення символів в назві файлу або каталогу.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"Create new":{msgid:"Create new",msgstr:["Створити новий"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Ім\'я файлів не можуть закінчуватися на "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Недійсне ім'я файлу"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New filename":{msgid:"New filename",msgstr:["Нове ім'я файлу"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},Rename:{msgid:"Rename",msgstr:["Перейменувати"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},Skip:{msgid:"Skip",msgstr:["Пропустити"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},Upload:{msgid:"Upload",msgstr:["Завантажити"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload folders":{msgid:"Upload folders",msgstr:["Завантажити каталоги"]},"Upload from device":{msgid:"Upload from device",msgstr:["Завантажити з пристрою"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Завантаження скасовано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Завантаження пропущено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Завантаження "{folder}" пропущено']},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Gloryandel, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGloryandel, 2024\n"},msgstr:["Last-Translator: Gloryandel, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是被禁止的文件名或文件夹名。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是被禁止的文件类型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允许包含在文件名或文件夹名中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整个操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"Create new":{msgid:"Create new",msgstr:["新建"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["服务端版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['文件名不得以 "{segment}" 结尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["如果同时选择两个版本,则上传文件的名称中将添加一个数字。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["无效文件名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},New:{msgid:"New",msgstr:["新建"]},"New filename":{msgid:"New filename",msgstr:["新文件名"]},"New version":{msgid:"New version",msgstr:["上传版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},Rename:{msgid:"Rename",msgstr:["重命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["保留所有服务端版本"]},"Select all new files":{msgid:"Select all new files",msgstr:["保留所有上传版本"]},Skip:{msgid:"Skip",msgstr:["跳过"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},Upload:{msgid:"Upload",msgstr:["上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Upload folders":{msgid:"Upload folders",msgstr:["上传文件夹"]},"Upload from device":{msgid:"Upload from device",msgstr:["从设备上传"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上传已取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上传已跳过"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['已跳过上传"{folder}"']},"Upload progress":{msgid:"Upload progress",msgstr:["上传进度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以重命名文件、跳过此文件或取消整个操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择保留一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是禁止使用的檔案或資料夾名稱。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是禁止使用的檔案類型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允許出現在檔案或資料夾名稱中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"Create new":{msgid:"Create new",msgstr:["創建新"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['檔案名不得以 "{segment}" 結尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無效的檔案名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New filename":{msgid:"New filename",msgstr:["新檔案名"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},Rename:{msgid:"Rename",msgstr:["重新命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},Skip:{msgid:"Skip",msgstr:["跳過"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},Upload:{msgid:"Upload",msgstr:["上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload folders":{msgid:"Upload folders",msgstr:["上傳資料夾"]},"Upload from device":{msgid:"Upload from device",msgstr:["從裝置上傳"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上傳已被取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上傳已被跳過"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 的上傳已被跳過']},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以選擇重新命名檔案、跳過此檔案或取消整個操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 <s8321414@gmail.com>, 2024\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>de.addTranslation(e.locale,e.json)));const ge=de.build(),ce=ge.ngettext.bind(ge),ue=ge.gettext.bind(ge);var fe=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(fe||{});class pe{_destinationFolder;_isPublic;_customHeaders;_uploadQueue=[];_jobQueue=new U.A({concurrency:(0,Y.F)().files?.chunked_upload?.max_parallel_count??5});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,s){if(this._isPublic=e,this._customHeaders={},!s){const t=`${T.PY}${T.lJ}`;let n;if(e)n="anonymous";else{const e=(0,y.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}s=new T.vd({id:0,owner:n,permissions:T.aX.ALL,root:T.lJ,source:t})}this.destination=s,se.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:ae()})}get destination(){return this._destinationFolder}set destination(e){if(!e||e.type!==T.pt.Folder||!e.source)throw new Error("Invalid destination folder");se.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get customHeaders(){return structuredClone(this._customHeaders)}setCustomHeader(e,s=""){this._customHeaders[e]=s}deleteCustomerHeader(e){delete this._customHeaders[e]}get queue(){return this._uploadQueue}reset(){0===this._uploadQueue.length&&0===this._jobQueue.size||(this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0,se.debug("Uploader state reset"))}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,s)=>e+s),0),s=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,s)=>e+s),0);this._queueSize=e,this._queueProgress=s,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const s of this._notifiers)try{s(e)}catch(s){se.warn("Error in upload notifier",{error:s,source:e.source})}}batchUpload(e,s,t){return t||(t=async e=>e),new F((async(n,a,i)=>{const o=new me("");await o.addChildren(s);const r=`${this.root.replace(/\/$/,"")}/${e.replace(/^\//,"")}`,l=new oe(r,!1,0,o);l.status=ie.UPLOADING,this._uploadQueue.push(l),se.debug("Starting new batch upload",{target:r});try{const s=(0,T.H4)(this.root,this._customHeaders),a=this.uploadDirectory(e,o,t,s);i((()=>a.cancel()));const r=await a;l.status=ie.FINISHED,n(r)}catch(e){se.error("Error in batch upload",{error:e}),l.status=ie.FAILED,a(ue("Upload has been cancelled"))}finally{this._notifyAll(l),this.updateStats()}}))}createDirectory(e,s,t){const n=(0,x.normalize)(`${e}/${s.name}`).replace(/\/$/,""),a=`${this.root.replace(/\/$/,"")}/${n.replace(/^\//,"")}`;if(!s.name)throw new Error("Can not create empty directory");const i=new oe(a,!1,0,s);return this._uploadQueue.push(i),new F((async(e,a,o)=>{const r=new AbortController;o((()=>r.abort())),i.signal.addEventListener("abort",(()=>a(ue("Upload has been cancelled")))),await this._jobQueue.add((async()=>{i.status=ie.UPLOADING;try{await t.createDirectory(n,{signal:r.signal}),e(i)}catch(e){e&&"object"==typeof e&&"status"in e&&405===e.status?(i.status=ie.FINISHED,se.debug("Directory already exists, writing into it",{directory:s.name})):(i.status=ie.FAILED,a(e))}finally{this._notifyAll(i),this.updateStats()}}))}))}uploadDirectory(e,s,t,n){const a=(0,x.normalize)(`${e}/${s.name}`).replace(/\/$/,"");return new F((async(i,o,r)=>{const l=new AbortController;r((()=>l.abort()));const m=await t(s.children,a);if(!1===m)return se.debug("Upload canceled by user",{directory:s}),void o(ue("Upload has been cancelled"));if(0===m.length&&s.children.length>0)return se.debug("Skipping directory, as all files were skipped by user",{directory:s}),void i([]);const d=[],g=[];l.signal.addEventListener("abort",(()=>{d.forEach((e=>e.cancel())),g.forEach((e=>e.cancel()))})),se.debug("Start directory upload",{directory:s});try{s.name&&(g.push(this.createDirectory(e,s,n)),await g.at(-1));for(const e of m)e instanceof me?d.push(this.uploadDirectory(a,e,t,n)):g.push(this.upload(`${a}/${e.name}`,e));i([await Promise.all(g),...await Promise.all(d)].flat())}catch(e){l.abort(e),o(e)}}))}upload(e,s,t,n=5){const a=`${(t=t||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:i}=new URL(a),o=i+(0,C.O0)(a.slice(i.length));return se.debug(`Uploading ${s.name} to ${o}`),new F((async(e,t,i)=>{re(s)&&(s=await new Promise((e=>s.file(e,t))));const r=s,l=ae("size"in r?r.size:void 0),m=this._isPublic||0===l||"size"in r&&r.size<l,d=new oe(a,!m,r.size,r);if(this._uploadQueue.push(d),this.updateStats(),i(d.cancel),m){se.debug("Initializing regular upload",{file:r,upload:d});const s=await ne(r,0,d.size),n=async()=>{try{d.response=await te(o,s,d.signal,(e=>{d.uploaded=d.uploaded+e.bytes,this.updateStats()}),void 0,{...this._customHeaders,"X-OC-Mtime":Math.floor(r.lastModified/1e3),"Content-Type":r.type}),d.uploaded=d.size,this.updateStats(),se.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){if((0,k.FZ)(e))return d.status=ie.FAILED,void t(ue("Upload has been cancelled"));e?.response&&(d.response=e.response),d.status=ie.FAILED,se.error(`Failed uploading ${r.name}`,{error:e,file:r,upload:d}),t("Failed uploading the file")}this._notifyAll(d)};this._jobQueue.add(n),this.updateStats()}else{se.debug("Initializing chunked upload",{file:r,upload:d});const s=await async function(e,s=5){const t=`${(0,S.dC)(`dav/uploads/${(0,y.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await k.Ay.request({method:"MKCOL",url:t,headers:n,"axios-retry":{retries:s,retryDelay:(e,s)=>I(e,s,1e3)}}),se.debug("Created temporary upload workspace",{url:t}),t}(o,n),a=[];for(let e=0;e<d.chunks;e++){const t=e*l,i=Math.min(t+l,d.size),m=()=>ne(r,t,l),g=()=>te(`${s}/${e+1}`,m,d.signal,(()=>this.updateStats()),o,{...this._customHeaders,"X-OC-Mtime":Math.floor(r.lastModified/1e3),"OC-Total-Length":r.size,"Content-Type":"application/octet-stream"},n).then((()=>{d.uploaded=d.uploaded+l})).catch((s=>{if(507===s?.response?.status)throw se.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:s,upload:d}),d.cancel(),d.status=ie.FAILED,s;throw(0,k.FZ)(s)||(se.error(`Chunk ${e+1} ${t} - ${i} uploading failed`,{error:s,upload:d}),d.cancel(),d.status=ie.FAILED),s}));a.push(this._jobQueue.add(g))}try{await Promise.all(a),this.updateStats(),d.response=await k.Ay.request({method:"MOVE",url:`${s}/.file`,headers:{...this._customHeaders,"X-OC-Mtime":Math.floor(r.lastModified/1e3),"OC-Total-Length":r.size,Destination:o}}),this.updateStats(),d.status=ie.FINISHED,se.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){(0,k.FZ)(e)?(d.status=ie.FAILED,t(ue("Upload has been cancelled"))):(d.status=ie.FAILED,t("Failed assembling the chunks together")),k.Ay.request({method:"DELETE",url:`${s}`})}this._notifyAll(d)}return this._jobQueue.onIdle().then((()=>this.reset())),d}))}}function he(e,s,t,n,a,i,o,r){var l="function"==typeof e?e.options:e;return s&&(l.render=s,l.staticRenderFns=t,l._compiled=!0),i&&(l._scopeId="data-v-"+i),{exports:e,options:l}}const we=he({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,ve=he({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,ye=he({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,Te=he({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports;function Ce(e){const s=(0,v.$V)((()=>t.e(6429).then(t.bind(t,16429)))),{promise:n,reject:a,resolve:i}=Promise.withResolvers();return(0,ee.Ss)(s,{error:e,validateFilename:T.KT},((...e)=>{const[{skip:s,rename:t}]=e;s?i(!1):t?i(t):a()})),n}function xe(e,s){return ke(e,s).length>0}function ke(e,s){const t=s.map((e=>e.basename));return e.filter((e=>{const s="basename"in e?e.basename:e.name;return-1!==t.indexOf(s)}))}const be=v.Ay.extend({name:"UploadPicker",components:{IconCancel:we,IconFolderUpload:ve,IconPlus:ye,IconUpload:Te,NcActionButton:K.A,NcActionCaption:J.A,NcActionSeparator:G.A,NcActions:$.A,NcButton:Z.A,NcIconSvgWrapper:Q.A,NcProgressBar:X.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noMenu:{type:Boolean,default:!1},destination:{type:T.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:ue,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",newFileMenuEntries:[],uploadManager:Le()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===T.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===T.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===T.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ie.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ie.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===fe.PAUSED},buttonLabel(){return this.noMenu?ue("Upload"):ue("New")},buttonName(){if(!this.isUploading)return this.buttonLabel}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&se.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=q({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),se.debug("UploadPicker initialised")},methods:{async onClick(e){e.handler(this.destination,await this.getContent().catch((()=>[])))},onTriggerPick(e=!1){const s=this.$refs.input;this.canUploadFolders&&(s.webkitdirectory=e),this.$nextTick((()=>s.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},onPick(){const e=this.$refs.input,s=e.files?Array.from(e.files):[];var t;this.uploadManager.batchUpload("",s,(t=this.getContent,async(e,s)=>{try{const n=await t(s).catch((()=>[])),a=ke(e,n);if(a.length>0){const{selected:t,renamed:i}=await Fe(s,a,n,{recursive:!0});e=[...t,...i]}const i=[];for(const s of e)try{(0,T.KT)(s.name),i.push(s)}catch(t){if(!(t instanceof T.di))throw se.error(`Unexpected error while validating ${s.name}`,{error:t}),t;let n=await Ce(t);!1!==n&&(n=(0,T.E6)(n,e.map((e=>e.name))),Object.defineProperty(s,"name",{value:n}),i.push(s))}if(0===i.length&&e.length>0){const e=(0,C.P8)(s);(0,ee.cf)(e?ue('Upload of "{folder}" has been skipped',{folder:e}):ue("Upload has been skipped"))}return i}catch(e){return se.debug("Upload has been cancelled",{error:e}),(0,ee.I9)(ue("Upload has been cancelled")),!1}})).catch((e=>se.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=ue("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=ue("a few seconds left");else if(e>60){const s=new Date(0);s.setSeconds(e);const t=s.toISOString().slice(11,19);this.timeLeft=ue("{time} left",{time:t})}else this.timeLeft=ue("{seconds} seconds left",{seconds:e});else this.timeLeft=ue("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,T.m1)(e)):se.debug("Invalid destination")},onUploadCompletion(e){e.status===ie.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}});function Le(e=(0,w.f)(),s=!1){return(s||void 0===window._nc_uploader)&&(window._nc_uploader=new pe(e)),window._nc_uploader}async function Fe(e,s,n,a){const i=(0,v.$V)((()=>Promise.all([t.e(4208),t.e(918)]).then(t.bind(t,70918))));return new Promise(((t,o)=>{const r=new v.Ay({name:"ConflictPickerRoot",render:l=>l(i,{props:{dirname:e,conflicts:s,content:n,recursiveUpload:!0===a?.recursive},on:{submit(e){t(e),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)},cancel(e){o(e??new Error("Canceled")),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)}}})});r.$mount(),document.body.appendChild(r.$el)}))}he(be,(function(){var e=this,s=e._self._c;return e._self._setupProxy,e.destination?s("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[!e.noMenu&&0!==e.newFileMenuEntries.length||e.canUploadFolders?s("NcActions",{attrs:{"aria-label":e.buttonLabel,"menu-name":e.buttonName,type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[s("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),s("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file","close-after-click":!0},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?s("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":"","data-cy-upload-picker-menu-entry":"upload-folder"},on:{click:function(s){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e.noMenu?e._e():e._l(e.menuEntriesUpload,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})),!e.noMenu&&e.menuEntriesNew.length>0?[s("NcActionSeparator"),s("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e(),!e.noMenu&&e.menuEntriesOther.length>0?[s("NcActionSeparator"),e._l(e.menuEntriesOther,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e()],2):s("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file",type:"secondary"},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]),s("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[s("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),s("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?s("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),s("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],0,0,"c5517ef8").exports},85136:(e,s,t)=>{"use strict";t.d(s,{a:()=>u,j:()=>g,k:()=>c,l:()=>d,t:()=>o});var n=t(84093);const a=(0,t(11195).$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali <alimahwer@yahoo.com>, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAli <alimahwer@yahoo.com>, 2024\n"},msgstr:["Last-Translator: Ali <alimahwer@yahoo.com>, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" لا يصلح كاسم مجلد.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" غير مسموح به كاسم مجلد']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" غير مسموح به داخل اسم مجلد.']},"All files":{msgid:"All files",msgstr:["كل الملفات"]},Choose:{msgid:"Choose",msgstr:["إختَر"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["إختَر {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["إختَر %n ملف","إختَر %n ملف","إختَر %n ملف","إختَر %n ملفات","إختَر %n ملف","إختَر %n ملف"]},Copy:{msgid:"Copy",msgstr:["نسخ"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["نسخٌ إلى {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["تعذّر إنشاء المجلد الجديد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["يتعذّر تحميل إعدادات الملفات"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["يتعذّر تحميل مناظير views الملفات"]},"Create directory":{msgid:"Create directory",msgstr:["أنشِيءْ مجلّداً"]},"Current view selector":{msgid:"Current view selector",msgstr:["مُنتقِي المنظور الحالي"]},Favorites:{msgid:"Favorites",msgstr:["المُفضَّلة"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا."]},"Filter file list":{msgid:"Filter file list",msgstr:["فلترة قائمة الملفات"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["اسم المجلد لا يمكن أن يكون فارغاً."]},Home:{msgid:"Home",msgstr:["البداية"]},Modified:{msgid:"Modified",msgstr:["مُعدَّل"]},Move:{msgid:"Move",msgstr:["أُنقُل"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["أُنقُل إلى {target}"]},Name:{msgid:"Name",msgstr:["الاسم"]},New:{msgid:"New",msgstr:["جديد"]},"New folder":{msgid:"New folder",msgstr:["مٌجلّد جديد"]},"New folder name":{msgid:"New folder name",msgstr:["اسم المجلد الجديد"]},"No files in here":{msgid:"No files in here",msgstr:["لا توجد ملفات هنا"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["لا توجد ملفات تتطابق مع الفلتر الذي وضعته"]},"No matching files":{msgid:"No matching files",msgstr:["لا توجد ملفات مُطابِقة"]},Recent:{msgid:"Recent",msgstr:["الحالي"]},"Select all entries":{msgid:"Select all entries",msgstr:["حدِّد كل المداخل"]},"Select entry":{msgid:"Select entry",msgstr:["إختَر المدخل"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["إختر سطر الـ {nodename}"]},Size:{msgid:"Size",msgstr:["الحجم"]},Undo:{msgid:"Undo",msgstr:["تراجع"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["قُم برفع محتوىً أو قُم بمزامنة أجهزتك!"]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2024","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nenolp <enolp@softastur.org>, 2024\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2024\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» ye un nome de carpeta inválidu."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» ye un nome de carpeta inválidu"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Nun se permite'l caráuter «/» dientro'l nome de les carpetes."]},"All files":{msgid:"All files",msgstr:["Tolos ficheros"]},Choose:{msgid:"Choose",msgstr:["Escoyer"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoyer «{ficheru}»"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoyer %n ficheru","Escoyer %n ficheros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nun se pudo crear la carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nun se pudo cargar la configuración de los ficheros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nun se pudieron cargar les vistes de los ficheros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un direutoriu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de la vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Equí apaecen los ficheros y les carpetes que metas en Favoritos."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Equí apaecen los fichero y les carpetes que modificares apocayá."]},"Filter file list":{msgid:"Filter file list",msgstr:["Peñerar la llista de ficheros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nome de la carpeta nun pue tar baleru."]},Home:{msgid:"Home",msgstr:["Aniciu"]},Modified:{msgid:"Modified",msgstr:["Modificóse"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuevu"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nueva"]},"New folder name":{msgid:"New folder name",msgstr:["Nome de carpeta nuevu"]},"No files in here":{msgid:"No files in here",msgstr:["Equí nun hai nengún ficheru"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nun s'atopó nengún ficheru que concasare cola peñera."]},"No matching files":{msgid:"No matching files",msgstr:["Nun hai nengún ficheru que concase"]},Recent:{msgid:"Recent",msgstr:["De recién"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleicionar toles entraes"]},"Select entry":{msgid:"Select entry",msgstr:["Seleicionar la entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleicionar la filera de: {nodename}"]},Size:{msgid:"Size",msgstr:["Tamañu"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Xubi dalgún elementu o sincroniza colos tos preseos!"]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Disober"]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Sergi Font, 2024","Language-Team":"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nv v <e670006006@gmail.com>, 2024\nMarc Riera <marcriera@softcatala.org>, 2024\nSergi Font, 2024\n"},msgstr:["Last-Translator: Sergi Font, 2024\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" és un nom de carpeta no vàlid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no és permès en el nom de carpeta']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no és permès en el nom de carpeta.']},"All files":{msgid:"All files",msgstr:["Tots els fitxers"]},Choose:{msgid:"Choose",msgstr:["Tria"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Tria {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Tria %n fitxer","Tria %n fitxers"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No s'ha pogut crear la carpeta nova"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No es poden carregar fitxers de configuració"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No es poden carregar fitxers de vistes"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de visualització actual"]},Favorites:{msgid:"Favorites",msgstr:["Preferits"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Els fitxers i les carpetes recentment modificats es mostraran aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar llistat de fitxers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nom de la carpeta no pot estar buit."]},Home:{msgid:"Home",msgstr:["Inici"]},Modified:{msgid:"Modified",msgstr:["Data de modificació"]},Move:{msgid:"Move",msgstr:["Desplaça"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Desplaça a {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Crea"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nova"]},"New folder name":{msgid:"New folder name",msgstr:["Nom de la carpeta nova"]},"No files in here":{msgid:"No files in here",msgstr:["No hi ha cap fitxer"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No s'ha trobat cap fitxer que coincideixi amb el filtre."]},"No matching files":{msgid:"No matching files",msgstr:["No hi ha cap fitxer que coincideixi"]},Recent:{msgid:"Recent",msgstr:["Recents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecciona totes les entrades"]},"Select entry":{msgid:"Select entry",msgstr:["Selecciona l'entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecciona la fila per a {nodename}"]},Size:{msgid:"Size",msgstr:["Mida"]},Undo:{msgid:"Undo",msgstr:["Desfés"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2020","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki <pavel.borecki@gmail.com>, 2020\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:187"},msgstr:["Zpět"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}“ není platný název složky."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}“ není povolený název složky."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky."]},"All files":{msgid:"All files",msgstr:["Veškeré soubory"]},Choose:{msgid:"Choose",msgstr:["Zvolit"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Zvolit {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Zvolte %n soubor","Zvolte %n soubory","Zvolte %n souborů","Zvolte %n soubory"]},Copy:{msgid:"Copy",msgstr:["Zkopírovat"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Zkopírovat do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Novou složku se nepodařilo vytvořit"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodařilo se načíst nastavení pro soubory"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodařilo se načíst pohledy souborů"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvořit složku"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výběr stávajícího zobrazení"]},Favorites:{msgid:"Favorites",msgstr:["Oblíbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Zde se zobrazí soubory a složky, které označíte jako oblíbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Zde se zobrazí soubory a složky, které jste nedávno pozměnili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovat seznam souborů"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Složku je třeba nějak nazvat."]},Home:{msgid:"Home",msgstr:["Domů"]},Modified:{msgid:"Modified",msgstr:["Změněno"]},Move:{msgid:"Move",msgstr:["Přesounout"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Přesunout do {target}"]},Name:{msgid:"Name",msgstr:["Název"]},New:{msgid:"New",msgstr:["Nové"]},"New folder":{msgid:"New folder",msgstr:["Nová složka"]},"New folder name":{msgid:"New folder name",msgstr:["Název pro novou složku"]},"No files in here":{msgid:"No files in here",msgstr:["Nejsou zde žádné soubory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenalezeny žádné soubory odpovídající vašemu filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Žádné odpovídající soubory"]},Recent:{msgid:"Recent",msgstr:["Nedávné"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrat všechny položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrat položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vybrat řádek pro {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Zpět"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!"]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldigt mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tilladt mappenavn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tilladt i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Vælg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vælg {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vælg %n fil","Vælg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke oprette den nye mappe"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Filindstillingerne kunne ikke indlæses"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke indlæse filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opret mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuel visningsvælger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper, du markerer som foretrukne, vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper, du for nylig har ændret, vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer fil liste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavnet må ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Ændret"]},Move:{msgid:"Move",msgstr:["Flyt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flyt til {target}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Ny mappe navn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Der blev ikke fundet nogen filer, der matcher dit filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen matchende filer"]},Recent:{msgid:"Recent",msgstr:["Seneste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vælg alle poster"]},"Select entry":{msgid:"Select entry",msgstr:["Vælg post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vælg rækken for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størelse"]},Undo:{msgid:"Undo",msgstr:["Fortryd"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload noget indhold eller synkroniser med dine enheder!"]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Ettore Atalan <atalanttore@googlemail.com>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2023\nMarkus Eckstein, 2023\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\nJoachim Sokolowski, 2023\nEttore Atalan <atalanttore@googlemail.com>, 2024\n"},msgstr:["Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden."]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Startseite"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Keine Dateien vorhanden"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die deinem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Jüngste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann <mario_siegmann@web.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2024\n"},msgstr:["Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Hier sind keine Dateien"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Neueste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig machen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Αναίρεση"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2023\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is an invalid folder name.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is not an allowed folder name']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is not allowed inside a folder name.']},"All files":{msgid:"All files",msgstr:["All files"]},Choose:{msgid:"Choose",msgstr:["Choose"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choose {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choose %n file","Choose %n files"]},Copy:{msgid:"Copy",msgstr:["Copy"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copy to {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Could not create the new folder"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Could not load files settings"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Could not load files views"]},"Create directory":{msgid:"Create directory",msgstr:["Create directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Current view selector"]},Favorites:{msgid:"Favorites",msgstr:["Favourites"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Files and folders you mark as favourite will show up here."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Files and folders you recently modified will show up here."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter file list"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Folder name cannot be empty."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modified"]},Move:{msgid:"Move",msgstr:["Move"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Move to {target}"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["New"]},"New folder":{msgid:"New folder",msgstr:["New folder"]},"New folder name":{msgid:"New folder name",msgstr:["New folder name"]},"No files in here":{msgid:"No files in here",msgstr:["No files in here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No files matching your filter were found."]},"No matching files":{msgid:"No matching files",msgstr:["No matching files"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Select all entries"]},"Select entry":{msgid:"Select entry",msgstr:["Select entry"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Select the row for {nodename}"]},Size:{msgid:"Size",msgstr:["Size"]},Undo:{msgid:"Undo",msgstr:["Undo"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload some content or sync with your devices!"]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Malfari"]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta no válido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido dentro del nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elige %n archivo","Elige %n archivos","Seleccione %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudieron cargar los ajustes de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:[" Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nuevo nombre de carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidiesen con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Elegir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Elija {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elija %n archivo","Elija %n archivos","Elija %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de la carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleccionar %n archivo","Seleccionar %n archivos","Seleccionar %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear carpeta"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Suba algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Desegin"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"reza reza <forghan89@yahoo.com>, 2024","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAmir Shekoohi, 2024\nreza reza <forghan89@yahoo.com>, 2024\n"},msgstr:["Last-Translator: reza reza <forghan89@yahoo.com>, 2024\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} نام پوشه معتبر نیست"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} نام پوشه مجاز نیست"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" نمی‌تواند در نام پوشه استفاده شود.']},"All files":{msgid:"All files",msgstr:["همه فایل‌ها"]},Choose:{msgid:"Choose",msgstr:["انتخاب"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["انتخاب {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["انتخاب %n فایل","انتخاب %n فایل"]},Copy:{msgid:"Copy",msgstr:["رونوشت"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["رونوشت از {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["پوشه جدید ایجاد نشد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["تنظیمات فایل باز نشد"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["نمای فایل‌ها بارگیری نشد"]},"Create directory":{msgid:"Create directory",msgstr:["ایجاد فهرست"]},"Current view selector":{msgid:"Current view selector",msgstr:["انتخابگر نماگر فعلی"]},Favorites:{msgid:"Favorites",msgstr:["علایق"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند."]},"Filter file list":{msgid:"Filter file list",msgstr:["فیلتر لیست فایل"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["نام پوشه نمی تواند خالی باشد."]},Home:{msgid:"Home",msgstr:["خانه"]},Modified:{msgid:"Modified",msgstr:["اصلاح شده"]},Move:{msgid:"Move",msgstr:["انتقال"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["انتقال به {target}"]},Name:{msgid:"Name",msgstr:["نام"]},New:{msgid:"New",msgstr:["جدید"]},"New folder":{msgid:"New folder",msgstr:["پوشه جدید"]},"New folder name":{msgid:"New folder name",msgstr:["نام پوشه جدید"]},"No files in here":{msgid:"No files in here",msgstr:["فایلی اینجا نیست"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["هیچ فایلی مطابق با فیلتر شما یافت نشد."]},"No matching files":{msgid:"No matching files",msgstr:["فایل منطبقی وجود ندارد"]},Recent:{msgid:"Recent",msgstr:["اخیر"]},"Select all entries":{msgid:"Select all entries",msgstr:["انتخاب همه ورودی ها"]},"Select entry":{msgid:"Select entry",msgstr:["انتخاب ورودی"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["انتخاب ردیف برای {nodename}"]},Size:{msgid:"Size",msgstr:["اندازه"]},Undo:{msgid:"Undo",msgstr:["بازگردانی"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"thingumy, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\n"},msgstr:["Last-Translator: thingumy, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" on virheellinen kansion nimi.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ei ole sallittu kansion nimi']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ei ole sallittu kansion nimessä.']},"All files":{msgid:"All files",msgstr:["Kaikki tiedostot"]},Choose:{msgid:"Choose",msgstr:["Valitse"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Valitse {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Valitse %n tiedosto","Valitse %n tiedostoa"]},Copy:{msgid:"Copy",msgstr:["Kopioi"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopioi sijaintiin {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Uutta kansiota ei voitu luoda"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tiedoston asetuksia ei saa ladattua"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tiedoston näkymiä ei saa ladattua"]},"Create directory":{msgid:"Create directory",msgstr:["Luo kansio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nykyisen näkymän valinta"]},Favorites:{msgid:"Favorites",msgstr:["Suosikit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä."]},"Filter file list":{msgid:"Filter file list",msgstr:["Suodata tiedostolistaa"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Kansion nimi ei voi olla tyhjä."]},Home:{msgid:"Home",msgstr:["Koti"]},Modified:{msgid:"Modified",msgstr:["Muokattu"]},Move:{msgid:"Move",msgstr:["Siirrä"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Siirrä sijaintiin {target}"]},Name:{msgid:"Name",msgstr:["Nimi"]},New:{msgid:"New",msgstr:["Uusi"]},"New folder":{msgid:"New folder",msgstr:["Uusi kansio"]},"New folder name":{msgid:"New folder name",msgstr:["Uuden kansion nimi"]},"No files in here":{msgid:"No files in here",msgstr:["Täällä ei ole tiedostoja"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Suodatinta vastaavia tiedostoja ei löytynyt."]},"No matching files":{msgid:"No matching files",msgstr:["Ei vastaavia tiedostoja"]},Recent:{msgid:"Recent",msgstr:["Viimeisimmät"]},"Select all entries":{msgid:"Select all entries",msgstr:["Valitse kaikki tietueet"]},"Select entry":{msgid:"Select entry",msgstr:["Valitse tietue"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Valitse rivi {nodename}:lle"]},Size:{msgid:"Size",msgstr:["Koko"]},Undo:{msgid:"Undo",msgstr:["Kumoa"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"DEV314R, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nRémi LEBLOND, 2023\nMordecai, 2023\nfleopaulD, 2023\nFrançois Ch., 2024\nJérôme HERBINET, 2024\nBenoit Pruneau, 2024\nDEV314R, 2024\n"},msgstr:["Last-Translator: DEV314R, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" n\'est pas un nom de dossier valide.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" n\'est pas un nom de dossier autorisé.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Le caractère « / » n'est pas autorisé dans un nom de dossier."]},"All files":{msgid:"All files",msgstr:["Tous les fichiers"]},Choose:{msgid:"Choose",msgstr:["Choisir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choisir {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choisir %n fichier","Choisir %n fichiers","Choisir %n fichiers "]},Copy:{msgid:"Copy",msgstr:["Copier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copier vers {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossible de créer le nouveau dossier"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Les paramètres des fichiers n'ont pas pu être chargés"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Les aperçus des fichiers n'ont pas pu être chargés"]},"Create directory":{msgid:"Create directory",msgstr:["Créer un répertoire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Sélecteur de vue courante"]},Favorites:{msgid:"Favorites",msgstr:["Favoris"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Les fichiers et répertoires marqués en favoris apparaîtront ici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Les fichiers et répertoires modifiés récemment apparaîtront ici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer la liste des fichiers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Le nom du dossier ne peut pas être vide."]},Home:{msgid:"Home",msgstr:["Accueil"]},Modified:{msgid:"Modified",msgstr:["Modifié"]},Move:{msgid:"Move",msgstr:["Déplacer"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Déplacer vers {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Nouveau"]},"New folder":{msgid:"New folder",msgstr:["Nouveau répertoire"]},"New folder name":{msgid:"New folder name",msgstr:["Nom du nouveau répertoire"]},"No files in here":{msgid:"No files in here",msgstr:["Aucun fichier ici"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Aucun fichier trouvé correspondant à votre filtre."]},"No matching files":{msgid:"No matching files",msgstr:["Aucun fichier trouvé"]},Recent:{msgid:"Recent",msgstr:["Récents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tous sélectionner"]},"Select entry":{msgid:"Select entry",msgstr:["Sélectionner une entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Sélectionner l'enregistrement pour {nodename}"]},Size:{msgid:"Size",msgstr:["Taille"]},Undo:{msgid:"Undo",msgstr:["Rétablir"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Charger du contenu ou synchroniser avec vos équipements !"]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['Is ainm fillteáin neamhbhailí é "{name}".']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['Ní ainm fillteáin ceadaithe é "{name}".']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Ní cheadaítear "/" taobh istigh d\'ainm fillteáin.']},"All files":{msgid:"All files",msgstr:["Gach comhad"]},Choose:{msgid:"Choose",msgstr:["Roghnaigh"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Roghnaigh {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Roghnaigh %n comhad","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid"]},Copy:{msgid:"Copy",msgstr:["Cóip"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Cóipeáil chuig {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Níorbh fhéidir an fillteán nua a chruthú"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Níorbh fhéidir socruithe comhaid a lódáil"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Níorbh fhéidir radhairc comhad a lódáil"]},"Create directory":{msgid:"Create directory",msgstr:["Cruthaigh eolaire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Roghnóir amhairc reatha"]},Favorites:{msgid:"Favorites",msgstr:["Ceanáin"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo."]},"Filter file list":{msgid:"Filter file list",msgstr:["Scag liosta comhad"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ní féidir ainm fillteáin a bheith folamh."]},Home:{msgid:"Home",msgstr:["Baile"]},Modified:{msgid:"Modified",msgstr:["Athraithe"]},Move:{msgid:"Move",msgstr:["Bog"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Bog go{target}"]},Name:{msgid:"Name",msgstr:["Ainm"]},New:{msgid:"New",msgstr:["Nua"]},"New folder":{msgid:"New folder",msgstr:["Fillteán nua"]},"New folder name":{msgid:"New folder name",msgstr:["Ainm fillteáin nua"]},"No files in here":{msgid:"No files in here",msgstr:["Níl aon chomhaid istigh anseo"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Níor aimsíodh aon chomhad a tháinig le do scagaire."]},"No matching files":{msgid:"No matching files",msgstr:["Gan comhaid meaitseála"]},Recent:{msgid:"Recent",msgstr:["le déanaí"]},"Select all entries":{msgid:"Select all entries",msgstr:["Roghnaigh gach iontráil"]},"Select entry":{msgid:"Select entry",msgstr:["Roghnaigh iontráil"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Roghnaigh an ró do {nodename}"]},Size:{msgid:"Size",msgstr:["Méid"]},Undo:{msgid:"Undo",msgstr:["Cealaigh"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!"]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» non é un nome de cartafol válido."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» non é un nome de cartafol permitido"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["A «/» non está permitida no nome dun cartafol."]},"All files":{msgid:"All files",msgstr:["Todos os ficheiros"]},Choose:{msgid:"Choose",msgstr:["Escoller"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoller {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoller %n ficheiro","Escoller %n ficheiros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Non foi posíbel crear o novo cartafol"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Non foi posíbel cargar os axustes dos ficheiros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Non foi posíbel cargar as vistas dos ficheiros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os ficheiros e cartafoles que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Os ficheiros e cartafoles que modificou recentemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar a lista de ficheiros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome do cartafol non pode estar baleiro."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover cara a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novo cartafol"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome do cartafol"]},"No files in here":{msgid:"No files in here",msgstr:["Aquí non hai ficheiros"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Non se atopou ningún ficheiro que coincida co filtro."]},"No matching files":{msgid:"No matching files",msgstr:["Non hai ficheiros coincidentes"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccionar a fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Enviar algún contido ou sincronizalo cos seus dispositivos!"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["ביטול"]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFőnyedi Áron <sajtman@gmail.com>, 2023\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” érvénytelen mappanév."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” nem engedélyezett mappanév"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” jel nem szerepelhet mappa nevében."]},"All files":{msgid:"All files",msgstr:["Minden fájl"]},Choose:{msgid:"Choose",msgstr:["Kiválasztás"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} kiválasztása"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n fájl kiválasztása","%n fájl kiválasztása"]},Copy:{msgid:"Copy",msgstr:["Másolás"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Másolás ide: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Az új mappa létrehozása nem lehetséges"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Fájlbeállítások betöltése nem lehetséges"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Fájlnézetek betöltése nem lehetséges"]},"Create directory":{msgid:"Create directory",msgstr:["Mappa létrehozása"]},"Current view selector":{msgid:"Current view selector",msgstr:["Jelenlegi nézet választó"]},Favorites:{msgid:"Favorites",msgstr:["Kedvencek"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["A kedvencként megjelölt fájlok és mappák itt jelennek meg."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["A nemrég módosított fájlok és mappák itt jelennek meg."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fájl lista szűrése"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["A mappa neve nem lehet üres."]},Home:{msgid:"Home",msgstr:["Kezdőlap"]},Modified:{msgid:"Modified",msgstr:["Módosítva"]},Move:{msgid:"Move",msgstr:["Mozgatás"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mozgatás ide: {target}"]},Name:{msgid:"Name",msgstr:["Név"]},New:{msgid:"New",msgstr:["Új"]},"New folder":{msgid:"New folder",msgstr:["Új mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Új mappa név"]},"No files in here":{msgid:"No files in here",msgstr:["Itt nincsenek fájlok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nincs a szűrési feltételeknek megfelelő fájl."]},"No matching files":{msgid:"No matching files",msgstr:["Nincs ilyen fájl"]},Recent:{msgid:"Recent",msgstr:["Gyakori"]},"Select all entries":{msgid:"Select all entries",msgstr:["Minden bejegyzés kijelölése"]},"Select entry":{msgid:"Select entry",msgstr:["Bejegyzés kijelölése"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Válassz sort a következőnek: {nodename}"]},Size:{msgid:"Size",msgstr:["Méret"]},Undo:{msgid:"Undo",msgstr:["Visszavonás"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Lun May, 2024","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nLinerly <linerly@proton.me>, 2023\nLun May, 2024\n"},msgstr:["Last-Translator: Lun May, 2024\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" bukan nama folder yang valid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" merupakan nama folder yang tidak diperbolehkan']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" tidak diperbolehkan di dalam nama folder.']},"All files":{msgid:"All files",msgstr:["Semua berkas"]},Choose:{msgid:"Choose",msgstr:["Pilih"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Pilih {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Pilih %n file"]},Copy:{msgid:"Copy",msgstr:["Salin"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Salin ke {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Tidak dapat membuat folder baru"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tidak dapat memuat pengaturan file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tidak dapat memuat tampilan file"]},"Create directory":{msgid:"Create directory",msgstr:["Buat direktori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Pemilih tampilan saat ini"]},Favorites:{msgid:"Favorites",msgstr:["Favorit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini."]},"Filter file list":{msgid:"Filter file list",msgstr:["Saring daftar berkas"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Name berkas tidak boleh kosong."]},Home:{msgid:"Home",msgstr:["Beranda"]},Modified:{msgid:"Modified",msgstr:["Diubah"]},Move:{msgid:"Move",msgstr:["Pindahkan"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Pindahkan ke {target}"]},Name:{msgid:"Name",msgstr:["Nama"]},New:{msgid:"New",msgstr:["Baru"]},"New folder":{msgid:"New folder",msgstr:["Folder baru"]},"New folder name":{msgid:"New folder name",msgstr:["Nama folder baru"]},"No files in here":{msgid:"No files in here",msgstr:["Tidak ada berkas di sini"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Tidak ada berkas yang cocok dengan penyaringan Anda."]},"No matching files":{msgid:"No matching files",msgstr:["Tidak ada berkas yang cocok"]},Recent:{msgid:"Recent",msgstr:["Terkini"]},"Select all entries":{msgid:"Select all entries",msgstr:["Pilih semua entri"]},"Select entry":{msgid:"Select entry",msgstr:["Pilih entri"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Pilih baris untuk {nodename}"]},Size:{msgid:"Size",msgstr:["Ukuran"]},Undo:{msgid:"Undo",msgstr:["Tidak jadi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Unggah beberapa konten atau sinkronkan dengan perangkat Anda!"]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er ógilt möppuheiti.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ekki leyfilegt möppuheiti']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er er ekki leyfilegt innan í skráarheiti.']},"All files":{msgid:"All files",msgstr:["Allar skrár"]},Choose:{msgid:"Choose",msgstr:["Veldu"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Veldu {file}"]},Copy:{msgid:"Copy",msgstr:["Afrita"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Afrita í {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Get ekki búið til nýju möppuna"]},"Create directory":{msgid:"Create directory",msgstr:["Búa til möppu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Núverandi val sýnar"]},Favorites:{msgid:"Favorites",msgstr:["Eftirlæti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Skrár og möppur sem þú merkir sem eftirlæti birtast hér."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Skrár og möppur sem þú breyttir nýlega birtast hér."]},"Filter file list":{msgid:"Filter file list",msgstr:["Sía skráalista"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Möppuheiti má ekki vera tómt."]},Home:{msgid:"Home",msgstr:["Heim"]},Modified:{msgid:"Modified",msgstr:["Breytt"]},Move:{msgid:"Move",msgstr:["Færa"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Færa í {target}"]},Name:{msgid:"Name",msgstr:["Heiti"]},New:{msgid:"New",msgstr:["Nýtt"]},"New folder":{msgid:"New folder",msgstr:["Ný mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Heiti nýrrar möppu"]},"No files in here":{msgid:"No files in here",msgstr:["Engar skrár hér"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Engar skrár fundust sem passa við síuna."]},"No matching files":{msgid:"No matching files",msgstr:["Engar samsvarandi skrár"]},Recent:{msgid:"Recent",msgstr:["Nýlegt"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velja allar færslur"]},"Select entry":{msgid:"Select entry",msgstr:["Velja færslu"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Veldu röðina fyrir {nodename}"]},Size:{msgid:"Size",msgstr:["Stærð"]},Undo:{msgid:"Undo",msgstr:["Afturkalla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Sendu inn eitthvað efni eða samstilltu við tækin þín!"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Sebastiano Furlan, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nClaudio Scandella, 2023\nRaffaele Silano <raffaelone@gmail.com>, 2024\nSebastiano Furlan, 2024\n"},msgstr:["Last-Translator: Sebastiano Furlan, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" non è un nome di cartella valido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" non è un nome di cartella ammesso']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" non è ammesso all\'interno del nome di una cartella.']},"All files":{msgid:"All files",msgstr:["Tutti i file"]},Choose:{msgid:"Choose",msgstr:["Scegli"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Scegli {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleziona %n file","Seleziona %n file","Seleziona %n file"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia in {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossibile creare la nuova cartella"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Impossibile caricare le impostazioni dei file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Impossibile caricare le visualizzazioni dei file"]},"Create directory":{msgid:"Create directory",msgstr:["Crea directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selettore della vista corrente"]},Favorites:{msgid:"Favorites",msgstr:["Preferiti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["I file e le cartelle contrassegnate come preferite saranno mostrate qui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["I file e le cartelle che hai modificato di recente saranno mostrate qui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtra elenco file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Il nome della cartella non può essere vuoto."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificato"]},Move:{msgid:"Move",msgstr:["Sposta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Sposta in {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuovo"]},"New folder":{msgid:"New folder",msgstr:["Nuova cartella"]},"New folder name":{msgid:"New folder name",msgstr:["Nuovo nome cartella"]},"No files in here":{msgid:"No files in here",msgstr:["Nessun file qui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nessun file che corrisponde al tuo filtro è stato trovato."]},"No matching files":{msgid:"No matching files",msgstr:["Nessun file corrispondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Scegli tutte le voci"]},"Select entry":{msgid:"Select entry",msgstr:["Seleziona la voce"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleziona la riga per {nodename}"]},Size:{msgid:"Size",msgstr:["Taglia/dimensioni"]},Undo:{msgid:"Undo",msgstr:["Annulla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carica qualche contenuto o sincronizza con i tuoi dispositivi!"]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"devi, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\ntakehito kondo, 2023\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\n"},msgstr:["Last-Translator: devi, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" はフォルダー名に使用できません。']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}"は許可されたフォルダー名ではありません']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["フォルダー名に「/(スラッシュ)」は使用できません。"]},"All files":{msgid:"All files",msgstr:["すべてのファイル"]},Choose:{msgid:"Choose",msgstr:["選択"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} を選択"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n 個のファイルを選択"]},Copy:{msgid:"Copy",msgstr:["コピー"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} にコピー"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["新しいフォルダーを作成できませんでした"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["ファイル設定を読み込めませんでした"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["ファイルビューを読み込めませんでした"]},"Create directory":{msgid:"Create directory",msgstr:["ディレクトリを作成"]},"Current view selector":{msgid:"Current view selector",msgstr:["現在のビューセレクタ"]},Favorites:{msgid:"Favorites",msgstr:["お気に入り"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["お気に入りとしてマークしたファイルとフォルダがここに表示されます。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["最近変更したファイルとフォルダがここに表示されます。"]},"Filter file list":{msgid:"Filter file list",msgstr:["ファイルリストをフィルタ"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["フォルダ名は空にできません。"]},Home:{msgid:"Home",msgstr:["ホーム"]},Modified:{msgid:"Modified",msgstr:["変更済み"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} に移動"]},Name:{msgid:"Name",msgstr:["名前"]},New:{msgid:"New",msgstr:["新規作成"]},"New folder":{msgid:"New folder",msgstr:["新しいフォルダー"]},"New folder name":{msgid:"New folder name",msgstr:["新しいフォルダーの名前"]},"No files in here":{msgid:"No files in here",msgstr:["ファイルがありません"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["フィルタに一致するファイルは見つかりませんでした。"]},"No matching files":{msgid:"No matching files",msgstr:["一致するファイルはありません"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["すべてのエントリを選択"]},"Select entry":{msgid:"Select entry",msgstr:["エントリを選択"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} の行を選択"]},Size:{msgid:"Size",msgstr:["サイズ"]},Undo:{msgid:"Undo",msgstr:["元に戻す"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["コンテンツをアップロードするか、デバイスと同期してください!"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Sefsex"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["되돌리기"]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"VoXaN24ch, 2024","Language-Team":"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nVoXaN24ch, 2024\n"},msgstr:["Last-Translator: VoXaN24ch, 2024\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} ass en ongëlteg Dossier"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ass net en erlaabten Dossiernumm"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ass net an engem Dossier Numm erlaabt']},"All files":{msgid:"All files",msgstr:["All Dateien"]},Choose:{msgid:"Choose",msgstr:["Wielt"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wielt {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wielt %n Fichieren","Wielt %n Fichier"]},Copy:{msgid:"Copy",msgstr:["Kopie"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopie op {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Konnt den neien Dossier net erstellen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Konnt d'Dateienastellungen net lueden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Konnt d'Dateien net lueden"]},"Create directory":{msgid:"Create directory",msgstr:["Erstellt Verzeechnes"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell Vue selector"]},Favorites:{msgid:"Favorites",msgstr:["Favoritten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter Datei Lëscht"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Dossier Numm kann net eidel sinn"]},Home:{msgid:"Home",msgstr:["Wëllkomm"]},Modified:{msgid:"Modified",msgstr:["Geännert"]},Move:{msgid:"Move",msgstr:["Plënne"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Plënneren {target}"]},Name:{msgid:"Name",msgstr:["Numm"]},New:{msgid:"New",msgstr:["Nei"]},"New folder":{msgid:"New folder",msgstr:["Neien dossier"]},"New folder name":{msgid:"New folder name",msgstr:["Neien dossier numm"]},"No files in here":{msgid:"No files in here",msgstr:["Kee fichier hei"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Kee fichier deen äre filter passt gouf fonnt"]},"No matching files":{msgid:"No matching files",msgstr:["Keng passende dateien"]},Recent:{msgid:"Recent",msgstr:["Rezent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wielt all entréen"]},"Select entry":{msgid:"Select entry",msgstr:["Wielt entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wielt d'zeil fir {nodename}"]},Size:{msgid:"Size",msgstr:["Gréisst"]},Undo:{msgid:"Undo",msgstr:["Undoen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Luet en inhalt erop oder synchroniséiert mat ären apparater"]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Atšaukti"]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Врати"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Буцаах"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["पूर्ववत करा"]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["နဂိုအတိုင်းပြန်ထားရန်"]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"armandg <geirawsm@pm.me>, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nD PE, 2023\nSyvert Fossdal, 2024\narmandg <geirawsm@pm.me>, 2024\n"},msgstr:["Last-Translator: armandg <geirawsm@pm.me>, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldig mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tillatt mappenavn.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tillatt inne i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Velg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Velg {fil}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Velg %n fil","Velg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {destinasjon}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke opprette den nye mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunne ikke laste filinnstillinger"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke laste filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opprett mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nåværende visningsvelger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper du markerer som favoritter vil vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper du nylig har endret, vil vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer filliste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavn kan ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Modifisert"]},Move:{msgid:"Move",msgstr:["Flytt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytt til {destinasjon}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappenavn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer her"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ingen filer funnet med ditt filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen treffende filer"]},Recent:{msgid:"Recent",msgstr:["Nylig"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velg alle oppføringer"]},"Select entry":{msgid:"Select entry",msgstr:["Velg oppføring"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Velg raden for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størrelse"]},Undo:{msgid:"Undo",msgstr:["Angre"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Last opp innhold eller synkroniser med enhetene dine!"]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Casper <casper@vrije-mens.org>, 2024","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJoost <joho500@hotmail.com>, 2023\nJeroen Gui, 2023\nCasper <casper@vrije-mens.org>, 2024\n"},msgstr:["Last-Translator: Casper <casper@vrije-mens.org>, 2024\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is een ongeldige mapnaam.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is geen toegestane mapnaam']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is niet toegestaan binnen een bestandsnaam']},"All files":{msgid:"All files",msgstr:["Alle bestanden"]},Choose:{msgid:"Choose",msgstr:["Kies"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Kies {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Kies %n bestand","Kies %n bestanden"]},Copy:{msgid:"Copy",msgstr:["Kopieer"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopieer naar {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kon de nieuwe map niet maken"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kon de bestandsinstellingen niet laden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kon de bestandsweergaves niet laden"]},"Create directory":{msgid:"Create directory",msgstr:["Maak map"]},"Current view selector":{msgid:"Current view selector",msgstr:["Huidige weergave keuze"]},Favorites:{msgid:"Favorites",msgstr:["Favorieten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Bestanden en mappen die je favoriet maakt, worden hier getoond."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter bestandslijst"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mapnaam mag niet leeg zijn."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Gewijzigd"]},Move:{msgid:"Move",msgstr:["Verplaatsen"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Verplaats naar {target}"]},Name:{msgid:"Name",msgstr:["Naam"]},New:{msgid:"New",msgstr:["Nieuw"]},"New folder":{msgid:"New folder",msgstr:["Nieuwe map"]},"New folder name":{msgid:"New folder name",msgstr:["Nieuwe mapnaam"]},"No files in here":{msgid:"No files in here",msgstr:["Geen bestanden hier"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Geen bestanden gevonden die voldoen aan je filter."]},"No matching files":{msgid:"No matching files",msgstr:["Geen gevonden bestanden"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecteer alle invoer"]},"Select entry":{msgid:"Select entry",msgstr:["Selecteer invoer"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecteer de rij voor {nodename}"]},Size:{msgid:"Size",msgstr:["Grootte"]},Undo:{msgid:"Undo",msgstr:["Ongedaan maken"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload inhoud of synchroniseer met je apparaten!"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anullar"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJUJER wtf, 2023\nM H <haincu@o2.pl>, 2023\nValdnet, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" jest nieprawidłową nazwą folderu']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie jest dozwoloną nazwą folderu']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Znak "/" nie jest dozwolony w nazwie folderu']},"All files":{msgid:"All files",msgstr:["Wszystkie pliki"]},Choose:{msgid:"Choose",msgstr:["Wybierz"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wybierz {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wybierz %n plik","Wybierz %n pliki","Wybierz %n plików","Wybierz %n plików"]},Copy:{msgid:"Copy",msgstr:["Kopiuj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Skopiuj do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nie można utworzyć nowego folderu"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nie można wczytać ustawień plików"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nie można wczytać widoków plików"]},"Create directory":{msgid:"Create directory",msgstr:["Utwórz katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Bieżący selektor widoku"]},Favorites:{msgid:"Favorites",msgstr:["Ulubione"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtruj listę plików"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Nazwa folderu nie może być pusta"]},Home:{msgid:"Home",msgstr:["Strona główna"]},Modified:{msgid:"Modified",msgstr:["Zmodyfikowano"]},Move:{msgid:"Move",msgstr:["Przenieś"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Przejdź do {target}"]},Name:{msgid:"Name",msgstr:["Nazwa"]},New:{msgid:"New",msgstr:["Nowy"]},"New folder":{msgid:"New folder",msgstr:["Nowy folder"]},"New folder name":{msgid:"New folder name",msgstr:["Nowa nazwa folderu"]},"No files in here":{msgid:"No files in here",msgstr:["Brak plików"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nie znaleziono plików spełniających warunki filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Brak pasujących plików"]},Recent:{msgid:"Recent",msgstr:["Ostatni"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wybierz wszystkie wpisy"]},"Select entry":{msgid:"Select entry",msgstr:["Wybierz wpis"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wybierz wiersz dla {nodename}"]},Size:{msgid:"Size",msgstr:["Rozmiar"]},Undo:{msgid:"Undo",msgstr:["Cofnij"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!"]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFlávio Veras <flaviove@gmail.com>, 2023\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\n"},msgstr:["Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" é um nome de pasta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" não é um nome de pasta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" não é permitido dentro de um nome de pasta.']},"All files":{msgid:"All files",msgstr:["Todos os arquivos"]},Choose:{msgid:"Choose",msgstr:["Escolher"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escolher arquivo}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escolher %n arquivo","Escolher %n arquivos","Escolher %n arquivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar para {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Não foi possível criar a nova pasta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Não foi possível carregar configurações de arquivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Não foi possível carregar exibições de arquivos"]},"Create directory":{msgid:"Create directory",msgstr:["Criar diretório"]},"Current view selector":{msgid:"Current view selector",msgstr:["Seletor de visualização atual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os arquivos e pastas marcados como favoritos aparecerão aqui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Arquivos e pastas que você modificou recentemente aparecerão aqui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de arquivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome da pasta não pode ficar vazio."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover para {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Nova pasta"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome de pasta"]},"No files in here":{msgid:"No files in here",msgstr:["Nenhum arquivo aqui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenhum arquivo correspondente ao seu filtro foi encontrado."]},"No matching files":{msgid:"No matching files",msgstr:["Nenhum arquivo correspondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecione todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Selecione a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecione a linha para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamanho"]},Undo:{msgid:"Undo",msgstr:["Desfazer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carregue algum conteúdo ou sincronize com seus dispositivos!"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anular"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Daniel MD <dmihaidumitru@gmail.com>, 2023","Language-Team":"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nDaniel MD <dmihaidumitru@gmail.com>, 2023\n"},msgstr:["Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" este un nume de director invalid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nu este un nume de director permis']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nu este permis în numele unui director.']},"All files":{msgid:"All files",msgstr:["Toate fișierele"]},Choose:{msgid:"Choose",msgstr:["Alege"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Alege {file}"]},Copy:{msgid:"Copy",msgstr:["Copiază"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiază în {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nu s-a putut crea noul director"]},"Create directory":{msgid:"Create directory",msgstr:["Creează director"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selectorul curent al vizualizării"]},Favorites:{msgid:"Favorites",msgstr:["Favorite"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Fișiere și directoare pe care le marcați ca favorite vor apărea aici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Fișiere și directoare pe care le-ați modificat recent vor apărea aici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrează lista de fișiere"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Numele de director nu poate fi necompletat."]},Home:{msgid:"Home",msgstr:["Acasă"]},Modified:{msgid:"Modified",msgstr:["Modificat"]},Move:{msgid:"Move",msgstr:["Mută"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mută către {target}"]},Name:{msgid:"Name",msgstr:["Nume"]},New:{msgid:"New",msgstr:["Nou"]},"New folder":{msgid:"New folder",msgstr:["Director nou"]},"New folder name":{msgid:"New folder name",msgstr:["Numele noului director"]},"No files in here":{msgid:"No files in here",msgstr:["Nu există fișiere"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nu există fișiere potrivite pentru filtrul selectat"]},"No matching files":{msgid:"No matching files",msgstr:["Nu există fișiere potrivite"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selectează toate înregistrările"]},"Select entry":{msgid:"Select entry",msgstr:["Selectează înregistrarea"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selectează rândul pentru {nodename}"]},Size:{msgid:"Size",msgstr:["Mărime"]},Undo:{msgid:"Undo",msgstr:["Anulează"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Kitsune R, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMax Smith <sevinfolds@gmail.com>, 2023\nashed <craysy@gmail.com>, 2023\nAlex <kekcuha@gmail.com>, 2024\nR4SAS, 2024\nВлад, 2024\nKitsune R, 2024\n"},msgstr:["Last-Translator: Kitsune R, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» — недопустимое имя папки."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» не является разрешенным именем папки"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Символ «/» не допускается внутри имени папки."]},"All files":{msgid:"All files",msgstr:["Все файлы"]},Choose:{msgid:"Choose",msgstr:["Выбрать"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Выбрать {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Выбрать %n файл","Выбрать %n файла","Выбрать %n файлов","Выбрать %n файлов"]},Copy:{msgid:"Copy",msgstr:["Копировать"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копировать в «{target}»"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не удалось создать новую папку"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не удалось загрузить настройки файлов"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не удалось загрузить файлы просмотров"]},"Create directory":{msgid:"Create directory",msgstr:["Создать папку"]},"Current view selector":{msgid:"Current view selector",msgstr:["Переключатель текущего вида"]},Favorites:{msgid:"Favorites",msgstr:["Избранное"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Здесь появятся файлы и папки, которые вы пометили как избранные."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Здесь будут отображаться файлы и папки, которые вы недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фильтровать список файлов"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Имя папки не может быть пустым."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Изменен"]},Move:{msgid:"Move",msgstr:["Переместить"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перейти к {target}"]},Name:{msgid:"Name",msgstr:["Имя"]},New:{msgid:"New",msgstr:["Новый"]},"New folder":{msgid:"New folder",msgstr:["Новая папка"]},"New folder name":{msgid:"New folder name",msgstr:["Имя новой папки"]},"No files in here":{msgid:"No files in here",msgstr:["Здесь нет файлов"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Файлы, соответствующие вашему фильтру, не найдены."]},"No matching files":{msgid:"No matching files",msgstr:["Нет подходящих файлов"]},Recent:{msgid:"Recent",msgstr:["Недавний"]},"Select all entries":{msgid:"Select all entries",msgstr:["Выбрать все записи"]},"Select entry":{msgid:"Select entry",msgstr:["Выберите запись"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Выберите строку для {nodename}"]},Size:{msgid:"Size",msgstr:["Размер"]},Undo:{msgid:"Undo",msgstr:["Отменить"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Загрузите контент или синхронизируйте его со своими устройствами!"]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["පෙරසේ"]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nStanislav Prekop <prekop3@gmail.com>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" je neplatný názov pričinka.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie je povolený názov priečinka.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nie je povolené v názve priečinka.']},"All files":{msgid:"All files",msgstr:["Všetky súbory"]},Choose:{msgid:"Choose",msgstr:["Vybrať"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vybrať {súbor}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vybraný %n súbor","Vybrané %n súbory","Vybraných %n súborov","Vybraných %n súborov"]},Copy:{msgid:"Copy",msgstr:["Kopírovať"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopírovať do {umiestnenia}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nepodarilo sa vytvoriť nový priečinok"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodarilo sa načítať nastavenia súborov"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodarilo sa načítať pohľady súborov"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvoriť adresár"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výber aktuálneho zobrazenia"]},Favorites:{msgid:"Favorites",msgstr:["Obľúbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovať zoznam súborov"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Názov priečinka nemôže byť prázdny."]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Upravené"]},Move:{msgid:"Move",msgstr:["Prejsť"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Prejsť na {umiestnenie}"]},Name:{msgid:"Name",msgstr:["Názov"]},New:{msgid:"New",msgstr:["Pridať"]},"New folder":{msgid:"New folder",msgstr:["Pridať priečinok"]},"New folder name":{msgid:"New folder name",msgstr:["Pridať názov priečinka"]},"No files in here":{msgid:"No files in here",msgstr:["Nie sú tu žiadne súbory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenašli sa žiadne súbory zodpovedajúce vášmu filtru."]},"No matching files":{msgid:"No matching files",msgstr:["Žiadne zodpovedajúce súbory"]},Recent:{msgid:"Recent",msgstr:["Nedávne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrať všetky položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrať položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vyberte riadok pre {názov uzla}"]},Size:{msgid:"Size",msgstr:["Veľkosť"]},Undo:{msgid:"Undo",msgstr:["Späť"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!"]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} je neveljavno ime mape."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ni dovoljeno ime mape"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ni dovoljen v imenu mape.']},"All files":{msgid:"All files",msgstr:["Vse datoteke"]},Choose:{msgid:"Choose",msgstr:["Izberi"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izberi {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izberi %n datoteko","Izberi %n datoteki","Izberi %n datotek","Izberi %n datotek"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj v {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nisem mogel ustvariti nove mape"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["NIsem mogel naložiti nastavitev datotek"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nisem mogel naložiti pogledov datotek"]},"Create directory":{msgid:"Create directory",msgstr:["Ustvari mapo"]},"Current view selector":{msgid:"Current view selector",msgstr:["Izbirnik trenutnega pogleda"]},Favorites:{msgid:"Favorites",msgstr:["Priljubljene"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtriraj seznam datotek"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ime mape ne more biti prazno"]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Spremenjeno"]},Move:{msgid:"Move",msgstr:["Premakni"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premakni v {target}"]},Name:{msgid:"Name",msgstr:["Ime"]},New:{msgid:"New",msgstr:["Nov"]},"New folder":{msgid:"New folder",msgstr:["Nova mapa"]},"New folder name":{msgid:"New folder name",msgstr:["Novo ime mape"]},"No files in here":{msgid:"No files in here",msgstr:["Tukaj ni datotek"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ni bilo najdenih ujemajočih datotek glede na vaš filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ni ujemajočih datotek"]},Recent:{msgid:"Recent",msgstr:["Nedavne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izberi vse vnose"]},"Select entry":{msgid:"Select entry",msgstr:["Izberi vnos"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izberi vrstico za {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Razveljavi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!"]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” није исправно име фолдера."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” није дозвољено име за фолдер."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” није дозвољено унутар имена фолдера."]},"All files":{msgid:"All files",msgstr:["Сви фајлови"]},Choose:{msgid:"Choose",msgstr:["Изаберите"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Изаберите {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Изаберите %n фајл","Изаберите %n фајла","Изаберите %n фајлова"]},Copy:{msgid:"Copy",msgstr:["Копирај"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копирај у {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Није могао да се креира нови фолдер"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не могу да се учитају подешавања фајлова"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не могу да се учитају прикази фајлова"]},"Create directory":{msgid:"Create directory",msgstr:["Креирај директоријум"]},"Current view selector":{msgid:"Current view selector",msgstr:["Бирач тренутног приказа"]},Favorites:{msgid:"Favorites",msgstr:["Омиљено"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери које сте означили као омиљене."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери који се се недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фитрирање листе фајлова"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Име фолдера не може бити празно."]},Home:{msgid:"Home",msgstr:["Почетак"]},Modified:{msgid:"Modified",msgstr:["Измењено"]},Move:{msgid:"Move",msgstr:["Премести"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Премести у {target}"]},Name:{msgid:"Name",msgstr:["Име"]},New:{msgid:"New",msgstr:["Ново"]},"New folder":{msgid:"New folder",msgstr:["Нови фолдер"]},"New folder name":{msgid:"New folder name",msgstr:["Име новог фолдера"]},"No files in here":{msgid:"No files in here",msgstr:["Овде нема фајлова"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Није пронађен ниједан фајл који задовољава ваш филтер."]},"No matching files":{msgid:"No matching files",msgstr:["Нема таквих фајлова"]},Recent:{msgid:"Recent",msgstr:["Скорашње"]},"Select all entries":{msgid:"Select all entries",msgstr:["Изаберите све ставке"]},"Select entry":{msgid:"Select entry",msgstr:["Изаберите ставку"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Изаберите ред за {nodename}"]},Size:{msgid:"Size",msgstr:["Величина"]},Undo:{msgid:"Undo",msgstr:["Поништи"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Отпремите нешто или синхронизујте са својим уређајима!"]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Bogdan Vuković, 2024","Language-Team":"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBogdan Vuković, 2024\n"},msgstr:["Last-Translator: Bogdan Vuković, 2024\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” je neispravan naziv foldera."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” je nedozvoljen naziv foldera."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” se ne može koristiti unutar naziva foldera."]},"All files":{msgid:"All files",msgstr:["Svi fajlovi"]},Choose:{msgid:"Choose",msgstr:["Izaberite"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izaberite {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izaberite %n fajl","Izaberite %n fajla","Izaberite %n fajlova"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj u {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Neuspešno kreiranje novog foldera"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Neuspešno učitavanje podešavanja fajlova"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Neuspešno učitavanje prikaza fajlova"]},"Create directory":{msgid:"Create directory",msgstr:["Kreiraj direktorijum"]},"Current view selector":{msgid:"Current view selector",msgstr:["Birač trenutnog prikaza"]},Favorites:{msgid:"Favorites",msgstr:["Omiljeno"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Lista omiljenih fajlova i foldera."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Lista fajlova i foldera sa skorašnjim izmenama."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fitriranje liste fajlova"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Naziv foldera ne može biti prazan."]},Home:{msgid:"Home",msgstr:["Početak"]},Modified:{msgid:"Modified",msgstr:["Izmenjeno"]},Move:{msgid:"Move",msgstr:["Premesti"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premesti u {target}"]},Name:{msgid:"Name",msgstr:["Naziv"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novi folder"]},"New folder name":{msgid:"New folder name",msgstr:["Naziv novog foldera"]},"No files in here":{msgid:"No files in here",msgstr:["Bez fajlova"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nema fajlova koji zadovoljavaju uslove filtera."]},"No matching files":{msgid:"No matching files",msgstr:["Nema takvih fajlova"]},Recent:{msgid:"Recent",msgstr:["Skorašnje"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izaberite sve stavke"]},"Select entry":{msgid:"Select entry",msgstr:["Izaberite stavku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izaberite red za {nodename}"]},Size:{msgid:"Size",msgstr:["Veličina"]},Undo:{msgid:"Undo",msgstr:["Vrati"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Otpremite sadržaj ili sinhronizujte sa svojim uređajima!"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" är ett ogiltigt mappnamn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" är inte ett tillåtet mappnamn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" är inte tillåtet i ett mappnamn.']},"All files":{msgid:"All files",msgstr:["Alla filer"]},Choose:{msgid:"Choose",msgstr:["Välj"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Välj {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Välj %n fil","Välj %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopiera"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiera till {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunde inte skapa den nya mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunde inte ladda filinställningar"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunde inte ladda läsa in filvyer"]},"Create directory":{msgid:"Create directory",msgstr:["Skapa katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell vyväljare"]},Favorites:{msgid:"Favorites",msgstr:["Favoriter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer och mappar som du markerar som favorit kommer att visas här."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer och mappar som du nyligen ändrat kommer att visas här."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrera fillistan"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappnamnet får inte vara tomt."]},Home:{msgid:"Home",msgstr:["Hem"]},Modified:{msgid:"Modified",msgstr:["Ändrad"]},Move:{msgid:"Move",msgstr:["Flytta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytta till {target}"]},Name:{msgid:"Name",msgstr:["Namn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mapp"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappnamn"]},"No files in here":{msgid:"No files in here",msgstr:["Inga filer här"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Inga filer som matchar ditt filter hittades."]},"No matching files":{msgid:"No matching files",msgstr:["Inga matchande filer"]},Recent:{msgid:"Recent",msgstr:["Nyligen"]},"Select all entries":{msgid:"Select all entries",msgstr:["Välj alla poster"]},"Select entry":{msgid:"Select entry",msgstr:["Välj post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Välj raden för {nodename}"]},Size:{msgid:"Size",msgstr:["Storlek"]},Undo:{msgid:"Undo",msgstr:["Ångra"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Ladda upp lite innehåll eller synkronisera med dina enheter!"]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["செயல்தவிர்"]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["เลิกทำ"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" geçersiz bir klasör adı.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" izin verilen bir klasör adı değil']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" karakteri klasör adında kullanılamaz.']},"All files":{msgid:"All files",msgstr:["Tüm dosyalar"]},Choose:{msgid:"Choose",msgstr:["Seçin"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} seçin"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n dosya seçin","%n dosya seçin"]},Copy:{msgid:"Copy",msgstr:["Kopyala"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} üzerine kopyala"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Yeni klasör oluşturulamadı"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dosyalar uygulamasının ayarları yüklenemedi"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dosyalar uygulamasının görünümleri yüklenemedi"]},"Create directory":{msgid:"Create directory",msgstr:["Klasör oluştur"]},"Current view selector":{msgid:"Current view selector",msgstr:["Geçerli görünüm seçici"]},Favorites:{msgid:"Favorites",msgstr:["Sık kullanılanlar"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dosya listesini süz"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Klasör adı boş olamaz."]},Home:{msgid:"Home",msgstr:["Giriş"]},Modified:{msgid:"Modified",msgstr:["Değiştirilme"]},Move:{msgid:"Move",msgstr:["Taşı"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} üzerine taşı"]},Name:{msgid:"Name",msgstr:["Ad"]},New:{msgid:"New",msgstr:["Yeni"]},"New folder":{msgid:"New folder",msgstr:["Yeni klasör"]},"New folder name":{msgid:"New folder name",msgstr:["Yeni klasör adı"]},"No files in here":{msgid:"No files in here",msgstr:["Burada herhangi bir dosya yok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Süzgece uyan bir dosya bulunamadı."]},"No matching files":{msgid:"No matching files",msgstr:["Eşleşen bir dosya yok"]},Recent:{msgid:"Recent",msgstr:["Son kullanılanlar"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tüm kayıtları seç"]},"Select entry":{msgid:"Select entry",msgstr:["Kaydı seç"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} satırını seçin"]},Size:{msgid:"Size",msgstr:["Boyut"]},Undo:{msgid:"Undo",msgstr:["Geri al"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!"]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" є недійсною назвою для каталогу.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" не є дозволеною назвою для каталогу.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" не дозволено у назві каталогу.']},"All files":{msgid:"All files",msgstr:["Всі файли"]},Choose:{msgid:"Choose",msgstr:["Вибрати"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Вибрати {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Вибрати %n файл","Вибрати %n файли","Вибрати %n файлів","Вибрати %n файлів"]},Copy:{msgid:"Copy",msgstr:["Копіювати"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копіювати до {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не вдалося створити новий каталог"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не вдалося завантажити налаштування файлів"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не вдалося завантажити подання файлів"]},"Create directory":{msgid:"Create directory",msgstr:["Створити каталог"]},"Current view selector":{msgid:"Current view selector",msgstr:["Вибір подання"]},Favorites:{msgid:"Favorites",msgstr:["Із зірочкою"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які ви позначите зірочкою."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які було нещодавно змінено."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фільтрувати список файлів"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ім'я каталогу не може бути порожнім."]},Home:{msgid:"Home",msgstr:["Домівка"]},Modified:{msgid:"Modified",msgstr:["Змінено"]},Move:{msgid:"Move",msgstr:["Перемістити"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перемістити до {target}"]},Name:{msgid:"Name",msgstr:["Ім'я"]},New:{msgid:"New",msgstr:["Новий"]},"New folder":{msgid:"New folder",msgstr:["Новий каталог"]},"New folder name":{msgid:"New folder name",msgstr:["Ім'я нового каталогу"]},"No files in here":{msgid:"No files in here",msgstr:["Тут відсутні файли"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Відсутні збіги за фільтром."]},"No matching files":{msgid:"No matching files",msgstr:["Відсутні збіги файлів."]},Recent:{msgid:"Recent",msgstr:["Останні"]},"Select all entries":{msgid:"Select all entries",msgstr:["Вибрати всі записи"]},"Select entry":{msgid:"Select entry",msgstr:["Вибрати запис"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Вибрати рядок для {nodename}"]},Size:{msgid:"Size",msgstr:["Розмір"]},Undo:{msgid:"Undo",msgstr:["Повернути"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Завантажте вміст або синхронізуйте з вашим пристроєм!"]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Trần Đình Tuyển, 2024","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTran Duc, 2024\nTrần Đình Tuyển, 2024\n"},msgstr:["Last-Translator: Trần Đình Tuyển, 2024\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" là tên thư mục không hợp lệ.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"1{name}"không phải là tên thư mục được cho phép']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/"không được phép đặt trong tên thư mục.']},"All files":{msgid:"All files",msgstr:["Tất cả tệp"]},Choose:{msgid:"Choose",msgstr:["Chọn"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Chọn {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Chọn %n tệp"]},Copy:{msgid:"Copy",msgstr:["Sao chép"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Sao chép đến {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Không thể tạo thư mục mới"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Không thể tải tập tin cài đặt"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Không thể tải xuống tệp xem"]},"Create directory":{msgid:"Create directory",msgstr:["Tạo thư mục"]},"Current view selector":{msgid:"Current view selector",msgstr:["Hiện tại chế độ xem của bộ chọn"]},Favorites:{msgid:"Favorites",msgstr:["Yêu cầu thích"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter list file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Thư mục tên không được để trống."]},Home:{msgid:"Home",msgstr:["Trang chủ"]},Modified:{msgid:"Modified",msgstr:["Đã sửa đổi"]},Move:{msgid:"Move",msgstr:["Di chuyển"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Di chuyển đến{target}"]},Name:{msgid:"Name",msgstr:["Tên"]},New:{msgid:"New",msgstr:["Mới"]},"New folder":{msgid:"New folder",msgstr:["New thư mục"]},"New folder name":{msgid:"New folder name",msgstr:["New thư mục tên"]},"No files in here":{msgid:"No files in here",msgstr:["No file at here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Không tìm thấy tệp nào phù hợp với bộ lọc của bạn."]},"No matching files":{msgid:"No matching files",msgstr:["No file phù hợp"]},Recent:{msgid:"Recent",msgstr:["Gần đây"]},"Select all entries":{msgid:"Select all entries",msgstr:["Choose all items"]},"Select entry":{msgid:"Select entry",msgstr:["Chọn mục nhập"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Choose hang cho{nodename}"]},Size:{msgid:"Size",msgstr:["Kích cỡ"]},Undo:{msgid:"Undo",msgstr:["Hoàn tác"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Ruijian Deng, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nken, 2023\nEric, 2023\nPhonebook3599, 2024\nRuijian Deng, 2024\n"},msgstr:["Last-Translator: Ruijian Deng, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["“{name}”是无效的文件夹名称。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["“{name}”不是允许的文件夹名称"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["文件夹名称中不允许包含“/”。"]},"All files":{msgid:"All files",msgstr:["所有文件"]},Choose:{msgid:"Choose",msgstr:["选择"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["选择 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["选择 %n 个文件"]},Copy:{msgid:"Copy",msgstr:["复制"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["复制到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["无法创建新文件夹"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["无法加载文件设置"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["无法加载文件视图"]},"Create directory":{msgid:"Create directory",msgstr:["创建目录"]},"Current view selector":{msgid:"Current view selector",msgstr:["当前视图选择器"]},Favorites:{msgid:"Favorites",msgstr:["最爱"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您标记为最爱的文件与文件夹会显示在这里"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的文件与文件夹会显示在这里"]},"Filter file list":{msgid:"Filter file list",msgstr:["过滤文件列表"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["文件夹名称不能为空。"]},Home:{msgid:"Home",msgstr:["主目录"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移动"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移动至 {target}"]},Name:{msgid:"Name",msgstr:["名称"]},New:{msgid:"New",msgstr:["新建"]},"New folder":{msgid:"New folder",msgstr:["新文件夹"]},"New folder name":{msgid:"New folder name",msgstr:["新文件夹名称"]},"No files in here":{msgid:"No files in here",msgstr:["此处无文件"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您过滤条件的文件"]},"No matching files":{msgid:"No matching files",msgstr:["无符合的文件"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["选择所有条目"]},"Select entry":{msgid:"Select entry",msgstr:["选择条目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["选择 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:[" 撤消"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上传一些项目或与您的设备同步!"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["「{name}」是無效的資料夾名稱。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["「{name}」是無效的資料夾名稱。"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['資料夾名稱中不允許使用 "/"。']},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["選擇 %n 個檔案"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["無法載入檔案設定"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["無法載入文件視圖"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["資料夾名稱不能為空。"]},Home:{msgid:"Home",msgstr:["首頁"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["還原"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2023","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\n黃柏諺 <s8321414@gmail.com>, 2023\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid file name.':{msgid:'"{name}" is an invalid file name.',msgstr:["「{name}」是無效的檔案名稱。"]},'"{name}" is not an allowed filetype':{msgid:'"{name}" is not an allowed filetype',msgstr:["「{name}」並非允許的檔案類型"]},'"/" is not allowed inside a file name.':{msgid:'"/" is not allowed inside a file name.',msgstr:["檔案名稱中不允許使用「/」。"]},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"File name cannot be empty.":{msgid:"File name cannot be empty.",msgstr:["檔案名稱不能為空。"]},"Filepicker sections":{msgid:"Filepicker sections",msgstr:["檔案挑選器選取"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},Home:{msgid:"Home",msgstr:["家"]},"Mime type {mime}":{msgid:"Mime type {mime}",msgstr:["Mime type {mime}"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["復原"]},unknown:{msgid:"unknown",msgstr:["未知"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zu_ZA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)","Content-Type":"text/plain; charset=UTF-8",Language:"zu_ZA","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zu_ZA\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}}].map((e=>a.addTranslation(e.locale,e.json)));const i=a.build(),o=(i.ngettext.bind(i),i.gettext.bind(i));var r=(e=>(e[e.OFF="off"]="OFF",e[e.POLITE="polite"]="POLITE",e[e.ASSERTIVE="assertive"]="ASSERTIVE",e))(r||{});const l=7e3;function m(e,s){var t;if(s=Object.assign({timeout:l,isHTML:!1,type:void 0,selector:void 0,onRemove:()=>{},onClick:void 0,close:!0},s),"string"==typeof e&&!s.isHTML){const s=document.createElement("div");s.innerHTML=e,e=s.innerText}let a=null!=(t=s.type)?t:"";"function"==typeof s.onClick&&(a+=" toast-with-click ");const i=e instanceof Node;let o=r.POLITE;s.ariaLive?o=s.ariaLive:"toast-error"!==s.type&&"toast-undo"!==s.type||(o=r.ASSERTIVE);const m=n({[i?"node":"text"]:e,duration:s.timeout,callback:s.onRemove,onClick:s.onClick,close:s.close,gravity:"top",selector:s.selector,position:"right",backgroundColor:"",className:"dialogs "+a,escapeMarkup:!s.isHTML,ariaLive:o});return m.showToast(),m}function d(e,s){return m(e,{...s,type:"toast-error"})}function g(e,s){return m(e,{...s,type:"toast-warning"})}function c(e,s){return m(e,{...s,type:"toast-info"})}function u(e,s,t,n,a,i,o,r){var l="function"==typeof e?e.options:e;return s&&(l.render=s,l.staticRenderFns=t,l._compiled=!0),i&&(l._scopeId="data-v-"+i),{exports:e,options:l}}},95674:(e,s,t)=>{"use strict";t.d(s,{I9:()=>a.j,Qg:()=>a.l,Ss:()=>r,cf:()=>a.k}),t(43627);var n=t(85471),a=t(85136),i=t(94219),o=t(80910);t(96763);const r=(e,s,t=(()=>{}))=>{const a=document.createElement("div");(document.querySelector(null==s?void 0:s.container)||document.body).appendChild(a);const i=new n.Ay({el:a,name:"VueDialogHelper",render:a=>a(e,{props:s,on:{close:(...e)=>{t(...e.map((e=>(0,n.ux)(e)))),i.$destroy()}}})});return i};Object.defineProperty;const l=(0,n.pM)({__name:"GenericDialog",props:{name:null,text:null,html:null,buttons:null,severity:null},setup(e){const s=e,t=()=>"".concat(s.name,": ").concat(s.text);return(0,n.sV)((()=>window.addEventListener("unload",t))),(0,n.hi)((()=>window.removeEventListener("unload",t))),{__sfc:!0,props:s,handleUnload:t,NcDialog:i.A,NcNoteCard:o.A}}});var m=function(){var e=this,s=e._self._c,t=e._self._setupProxy;return s(t.NcDialog,{attrs:{"dialog-classes":"nc-generic-dialog",buttons:e.buttons,name:e.name,message:e.text},on:{"update:open":function(s){return e.$emit("close")}}},[e.severity?s(t.NcNoteCard,{attrs:{type:e.severity}},[s("p",{domProps:{textContent:e._s(e.text)}})]):e._e(),e.html?s("div",{domProps:{innerHTML:e._s(e.html)}}):e._e()],1)},d=[];(0,a.a)(l,m,d,!1,null,null).exports},57485:(e,s,t)=>{"use strict";t.d(s,{A:()=>m});var n=t(9052);class a extends Error{constructor(e){super(e),this.name="TimeoutError"}}class i extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const o=e=>void 0===globalThis.DOMException?new i(e):new DOMException(e),r=e=>{const s=void 0===e.reason?o("This operation was aborted."):e.reason;return s instanceof Error?s:o(s)};class l{#o=[];enqueue(e,s){const t={priority:(s={priority:0,...s}).priority,run:e};if(this.size&&this.#o[this.size-1].priority>=s.priority)return void this.#o.push(t);const n=function(e,s,t){let n=0,a=e.length;for(;a>0;){const t=Math.trunc(a/2);let o=n+t;i=e[o],s.priority-i.priority<=0?(n=++o,a-=t+1):a=t}var i;return n}(this.#o,t);this.#o.splice(n,0,t)}dequeue(){const e=this.#o.shift();return e?.run}filter(e){return this.#o.filter((s=>s.priority===e.priority)).map((e=>e.run))}get size(){return this.#o.length}}class m extends n{#r;#l;#m=0;#d;#g;#c=0;#u;#f;#o;#p;#h=0;#w;#v;#y;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:l,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#r=e.carryoverConcurrencyCount,this.#l=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#d=e.intervalCap,this.#g=e.interval,this.#o=new e.queueClass,this.#p=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=!0===e.throwOnTimeout,this.#v=!1===e.autoStart}get#T(){return this.#l||this.#m<this.#d}get#C(){return this.#h<this.#w}#x(){this.#h--,this.#k(),this.emit("next")}#b(){this.#L(),this.#F(),this.#f=void 0}get#U(){const e=Date.now();if(void 0===this.#u){const s=this.#c-e;if(!(s<0))return void 0===this.#f&&(this.#f=setTimeout((()=>{this.#b()}),s)),!0;this.#m=this.#r?this.#h:0}return!1}#k(){if(0===this.#o.size)return this.#u&&clearInterval(this.#u),this.#u=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#v){const e=!this.#U;if(this.#T&&this.#C){const s=this.#o.dequeue();return!!s&&(this.emit("active"),s(),e&&this.#F(),!0)}}return!1}#F(){this.#l||void 0!==this.#u||(this.#u=setInterval((()=>{this.#L()}),this.#g),this.#c=Date.now()+this.#g)}#L(){0===this.#m&&0===this.#h&&this.#u&&(clearInterval(this.#u),this.#u=void 0),this.#m=this.#r?this.#h:0,this.#S()}#S(){for(;this.#k(););}get concurrency(){return this.#w}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#w=e,this.#S()}async#N(e){return new Promise(((s,t)=>{e.addEventListener("abort",(()=>{t(e.reason)}),{once:!0})}))}async add(e,s={}){return s={timeout:this.timeout,throwOnTimeout:this.#y,...s},new Promise(((t,n)=>{this.#o.enqueue((async()=>{this.#h++,this.#m++;try{s.signal?.throwIfAborted();let n=e({signal:s.signal});s.timeout&&(n=function(e,s){const{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=s;let l;const m=new Promise(((m,d)=>{if("number"!=typeof t||1!==Math.sign(t))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(s.signal){const{signal:e}=s;e.aborted&&d(r(e)),e.addEventListener("abort",(()=>{d(r(e))}))}if(t===Number.POSITIVE_INFINITY)return void e.then(m,d);const g=new a;l=o.setTimeout.call(void 0,(()=>{if(n)try{m(n())}catch(e){d(e)}else"function"==typeof e.cancel&&e.cancel(),!1===i?m():i instanceof Error?d(i):(g.message=i??`Promise timed out after ${t} milliseconds`,d(g))}),t),(async()=>{try{m(await e)}catch(e){d(e)}})()})).finally((()=>{m.clear()}));return m.clear=()=>{o.clearTimeout.call(void 0,l),l=void 0},m}(Promise.resolve(n),{milliseconds:s.timeout})),s.signal&&(n=Promise.race([n,this.#N(s.signal)]));const i=await n;t(i),this.emit("completed",i)}catch(e){if(e instanceof a&&!s.throwOnTimeout)return void t();n(e),this.emit("error",e)}finally{this.#x()}}),s),this.emit("add"),this.#k()}))}async addAll(e,s){return Promise.all(e.map((async e=>this.add(e,s))))}start(){return this.#v?(this.#v=!1,this.#S(),this):this}pause(){this.#v=!0}clear(){this.#o=new this.#p}async onEmpty(){0!==this.#o.size&&await this.#_("empty")}async onSizeLessThan(e){this.#o.size<e||await this.#_("next",(()=>this.#o.size<e))}async onIdle(){0===this.#h&&0===this.#o.size||await this.#_("idle")}async#_(e,s){return new Promise((t=>{const n=()=>{s&&!s()||(this.off(e,n),t())};this.on(e,n)}))}get size(){return this.#o.size}sizeBy(e){return this.#o.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#v}}},53110:(e,s,t)=>{"use strict";t.d(s,{FZ:()=>r,pe:()=>i});var n=t(33319);const{Axios:a,AxiosError:i,CanceledError:o,isCancel:r,CancelToken:l,VERSION:m,all:d,Cancel:g,isAxiosError:c,spread:u,toFormData:f,AxiosHeaders:p,HttpStatusCode:h,formToJSON:w,getAdapter:v,mergeConfig:y}=n.A}},a={};function i(e){var s=a[e];if(void 0!==s)return s.exports;var t=a[e]={id:e,loaded:!1,exports:{}};return n[e].call(t.exports,t,t.exports,i),t.loaded=!0,t.exports}i.m=n,e=[],i.O=(s,t,n,a)=>{if(!t){var o=1/0;for(d=0;d<e.length;d++){t=e[d][0],n=e[d][1],a=e[d][2];for(var r=!0,l=0;l<t.length;l++)(!1&a||o>=a)&&Object.keys(i.O).every((e=>i.O[e](t[l])))?t.splice(l--,1):(r=!1,a<o&&(o=a));if(r){e.splice(d--,1);var m=n();void 0!==m&&(s=m)}}return s}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[t,n,a]},i.n=e=>{var s=e&&e.__esModule?()=>e.default:()=>e;return i.d(s,{a:s}),s},i.d=(e,s)=>{for(var t in s)i.o(s,t)&&!i.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:s[t]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((s,t)=>(i.f[t](e,s),s)),[])),i.u=e=>e+"-"+e+".js?v="+{918:"42dc18350820a2df996f",1902:"15c69743cf3911d7117d",2400:"e05bb23ce5cd8e8e3b27",5606:"f972dba6ecca95233f02",6429:"89166d2636e7cbd574e0",6880:"367ddfc725b6ef2ee02b",8066:"f1f0a3884f0b92377e6a"}[e],i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),s={},t="nextcloud:",i.l=(e,n,a,o)=>{if(s[e])s[e].push(n);else{var r,l;if(void 0!==a)for(var m=document.getElementsByTagName("script"),d=0;d<m.length;d++){var g=m[d];if(g.getAttribute("src")==e||g.getAttribute("data-webpack")==t+a){r=g;break}}r||(l=!0,(r=document.createElement("script")).charset="utf-8",r.timeout=120,i.nc&&r.setAttribute("nonce",i.nc),r.setAttribute("data-webpack",t+a),r.src=e),s[e]=[n];var c=(t,n)=>{r.onerror=r.onload=null,clearTimeout(u);var a=s[e];if(delete s[e],r.parentNode&&r.parentNode.removeChild(r),a&&a.forEach((e=>e(n))),t)return t(n)},u=setTimeout(c.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=c.bind(null,r.onerror),r.onload=c.bind(null,r.onload),l&&document.head.appendChild(r)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=1171,(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var s=i.g.document;if(!e&&s&&(s.currentScript&&"SCRIPT"===s.currentScript.tagName.toUpperCase()&&(e=s.currentScript.src),!e)){var t=s.getElementsByTagName("script");if(t.length)for(var n=t.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=t[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{i.b=document.baseURI||self.location.href;var e={1171:0};i.f.j=(s,t)=>{var n=i.o(e,s)?e[s]:void 0;if(0!==n)if(n)t.push(n[2]);else{var a=new Promise(((t,a)=>n=e[s]=[t,a]));t.push(n[2]=a);var o=i.p+i.u(s),r=new Error;i.l(o,(t=>{if(i.o(e,s)&&(0!==(n=e[s])&&(e[s]=void 0),n)){var a=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;r.message="Loading chunk "+s+" failed.\n("+a+": "+o+")",r.name="ChunkLoadError",r.type=a,r.request=o,n[1](r)}}),"chunk-"+s,s)}},i.O.j=s=>0===e[s];var s=(s,t)=>{var n,a,o=t[0],r=t[1],l=t[2],m=0;if(o.some((s=>0!==e[s]))){for(n in r)i.o(r,n)&&(i.m[n]=r[n]);if(l)var d=l(i)}for(s&&s(t);m<o.length;m++)a=o[m],i.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return i.O(d)},t=self.webpackChunknextcloud=self.webpackChunknextcloud||[];t.forEach(s.bind(null,0)),t.push=s.bind(null,t.push.bind(t))})(),i.nc=void 0;var o=i.O(void 0,[4208],(()=>i(33001)));o=i.O(o)})();
-//# sourceMappingURL=files-init.js.map?v=4684a0e97f2238fac00d \ No newline at end of file
+(()=>{var e,s,t,n={9052:e=>{"use strict";var s=Object.prototype.hasOwnProperty,t="~";function n(){}function a(e,s,t){this.fn=e,this.context=s,this.once=t||!1}function i(e,s,n,i,o){if("function"!=typeof n)throw new TypeError("The listener must be a function");var r=new a(n,i||e,o),l=t?t+s:s;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],r]:e._events[l].push(r):(e._events[l]=r,e._eventsCount++),e}function o(e,s){0==--e._eventsCount?e._events=new n:delete e._events[s]}function r(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(t=!1)),r.prototype.eventNames=function(){var e,n,a=[];if(0===this._eventsCount)return a;for(n in e=this._events)s.call(e,n)&&a.push(t?n.slice(1):n);return Object.getOwnPropertySymbols?a.concat(Object.getOwnPropertySymbols(e)):a},r.prototype.listeners=function(e){var s=t?t+e:e,n=this._events[s];if(!n)return[];if(n.fn)return[n.fn];for(var a=0,i=n.length,o=new Array(i);a<i;a++)o[a]=n[a].fn;return o},r.prototype.listenerCount=function(e){var s=t?t+e:e,n=this._events[s];return n?n.fn?1:n.length:0},r.prototype.emit=function(e,s,n,a,i,o){var r=t?t+e:e;if(!this._events[r])return!1;var l,m,d=this._events[r],g=arguments.length;if(d.fn){switch(d.once&&this.removeListener(e,d.fn,void 0,!0),g){case 1:return d.fn.call(d.context),!0;case 2:return d.fn.call(d.context,s),!0;case 3:return d.fn.call(d.context,s,n),!0;case 4:return d.fn.call(d.context,s,n,a),!0;case 5:return d.fn.call(d.context,s,n,a,i),!0;case 6:return d.fn.call(d.context,s,n,a,i,o),!0}for(m=1,l=new Array(g-1);m<g;m++)l[m-1]=arguments[m];d.fn.apply(d.context,l)}else{var c,u=d.length;for(m=0;m<u;m++)switch(d[m].once&&this.removeListener(e,d[m].fn,void 0,!0),g){case 1:d[m].fn.call(d[m].context);break;case 2:d[m].fn.call(d[m].context,s);break;case 3:d[m].fn.call(d[m].context,s,n);break;case 4:d[m].fn.call(d[m].context,s,n,a);break;default:if(!l)for(c=1,l=new Array(g-1);c<g;c++)l[c-1]=arguments[c];d[m].fn.apply(d[m].context,l)}}return!0},r.prototype.on=function(e,s,t){return i(this,e,s,t,!1)},r.prototype.once=function(e,s,t){return i(this,e,s,t,!0)},r.prototype.removeListener=function(e,s,n,a){var i=t?t+e:e;if(!this._events[i])return this;if(!s)return o(this,i),this;var r=this._events[i];if(r.fn)r.fn!==s||a&&!r.once||n&&r.context!==n||o(this,i);else{for(var l=0,m=[],d=r.length;l<d;l++)(r[l].fn!==s||a&&!r[l].once||n&&r[l].context!==n)&&m.push(r[l]);m.length?this._events[i]=1===m.length?m[0]:m:o(this,i)}return this},r.prototype.removeAllListeners=function(e){var s;return e?(s=t?t+e:e,this._events[s]&&o(this,s)):(this._events=new n,this._eventsCount=0),this},r.prototype.off=r.prototype.removeListener,r.prototype.addListener=r.prototype.on,r.prefixed=t,r.EventEmitter=r,e.exports=r},76150:(e,s,t)=>{"use strict";t.d(s,{A:()=>n});const n=(0,t(35947).YK)().setApp("files").detectUser().build()},33001:(e,s,t)=>{"use strict";var n=t(34297),a=t(85168),i=t(53334),o=t(49264),r=t(76150),l=t(61338),m=t(87485),d=t(65043);const g=()=>{var e;return!0===(null===(e=(0,m.F)())||void 0===e||null===(e=e.files)||void 0===e?void 0:e.undelete)},c=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"shared"===e.attributes["mount-type"])),u=e=>e.every((e=>!0===e.attributes["is-mount-root"]&&"external"===e.attributes["mount-type"])),f=(e,s)=>c(e)?1===e.length?(0,i.t)("files","Leave this share"):(0,i.t)("files","Leave these shares"):u(e)?1===e.length?(0,i.t)("files","Disconnect storage"):(0,i.t)("files","Disconnect storages"):"trashbin"!==s.id&&g()?(e=>{if(1===e.length)return!1;const s=e.some((e=>c([e]))),t=e.some((e=>!c([e])));return s&&t})(e)?(0,i.t)("files","Delete and unshare"):(e=>!e.some((e=>e.type!==n.pt.File)))(e)?1===e.length?(0,i.t)("files","Delete file"):(0,i.t)("files","Delete files"):(e=>!e.some((e=>e.type!==n.pt.Folder)))(e)?1===e.length?(0,i.t)("files","Delete folder"):(0,i.t)("files","Delete folders"):(0,i.t)("files","Delete"):(0,i.t)("files","Delete permanently"),p=async(e,s)=>{const t="trashbin"!==s.id&&g()?(0,i.n)("files","You are about to delete {count} item","You are about to delete {count} items",e.length,{count:e.length}):(0,i.n)("files","You are about to permanently delete {count} item","You are about to permanently delete {count} items",e.length,{count:e.length});return new Promise((n=>{window.OC.dialogs.confirmDestructive(t,(0,i.t)("files","Confirm deletion"),{type:window.OC.dialogs.YES_NO_BUTTONS,confirm:f(e,s),confirmClasses:"error",cancel:(0,i.t)("files","Cancel")},(e=>{n(e)}))}))},h=async e=>{await d.Ay.delete(e.encodedSource),(0,l.Ic)("files:node:deleted",e)},w=new o.A({concurrency:5}),v=new n.hY({id:"delete",displayName:f,iconSvgInline:e=>c(e)?'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-close" viewBox="0 0 24 24"><path d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" /></svg>':u(e)?'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-network-off" viewBox="0 0 24 24"><path d="M1,5.27L5,9.27V15A2,2 0 0,0 7,17H11V19H10A1,1 0 0,0 9,20H2V22H9A1,1 0 0,0 10,23H14A1,1 0 0,0 15,22H17.73L19.73,24L21,22.72L2.28,4L1,5.27M15,20A1,1 0 0,0 14,19H13V17.27L15.73,20H15M17.69,16.87L5.13,4.31C5.41,3.55 6.14,3 7,3H17A2,2 0 0,1 19,5V15C19,15.86 18.45,16.59 17.69,16.87M22,20V21.18L20.82,20H22Z" /></svg>':'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-trash-can" viewBox="0 0 24 24"><path d="M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M9,8H11V17H9V8M13,8H15V17H13V8Z" /></svg>',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>Boolean(e&n.aX.DELETE))),async exec(e,s){try{let t=!0;return g()||(t=await p([e],s)),!1===t?((0,a.cf)((0,i.Tl)("files","Deletion cancelled")),null):(await h(e),!0)}catch(s){return r.A.error("Error while deleting a file",{error:s,source:e.source,node:e}),!1}},async execBatch(e,s){let t=!0;if(g()?e.length>=5&&!c(e)&&!u(e)&&(t=await p(e,s)):t=await p(e,s),!1===t)return(0,a.cf)((0,i.Tl)("files","Deletion cancelled")),Promise.all(e.map((()=>null)));const n=e.map((e=>new Promise((s=>{w.add((async()=>{try{await h(e),s(!0)}catch(t){r.A.error("Error while deleting a file",{error:t,source:e.source,node:e}),s(!1)}}))}))));return Promise.all(n)},order:100});var y=t(63814);const T=function(e){const s=document.createElement("a");s.download="",s.href=e,s.click()};function C(e,s){const t=e.split("/").filter(Boolean),n=s.split("/").filter(Boolean);let a="/";for(const[e,i]of t.entries()){if(e>=s.length)break;if(i!==n[e])break;const t="/"===a?"":"/";a="".concat(a).concat(t).concat(i)}return a}function x(e){const s=e.filter((s=>void 0===e.find((e=>e.type===n.pt.Folder&&s.path.startsWith("".concat(e.path,"/"))))));let t=s[0].dirname;for(const e of s.slice(1))t=C(t,e.dirname);t=t||"/";const a=s.map((e=>e.path.slice("/"===t?1:t.length+1))),i=Math.random().toString(36).substring(2),o=(0,y.Jv)("/apps/files/ajax/download.php?dir={base}&files={files}&downloadStartSecret={secret}",{base:t,secret:i,files:JSON.stringify(a)});T(o)}const k=function(e){if(0==(e.permissions&n.aX.READ))return!1;if("shared"===e.attributes["mount-type"]){var s,t;const n=JSON.parse(null!==(s=e.attributes["share-attributes"])&&void 0!==s?s:"null"),a=null==n||null===(t=n.find)||void 0===t?void 0:t.call(n,(e=>"permissions"===e.scope&&"download"===e.key));if(void 0!==a&&!1===a.enabled)return!1}return!0},b=new n.hY({id:"download",default:n.m9.DEFAULT,displayName:()=>(0,i.Tl)("files","Download"),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-down" viewBox="0 0 24 24"><path d="M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z" /></svg>',enabled:e=>0!==e.length&&(!e.some((e=>e.type===n.pt.Folder))||!e.some((e=>{var s;return!(null!==(s=e.root)&&void 0!==s&&s.startsWith("/files"))})))&&e.every(k),exec:async(e,s,t)=>e.type===n.pt.Folder?(x([e]),null):(T(e.encodedSource),null),async execBatch(e,s,t){return 1===e.length?(this.exec(e[0],s,t),[null]):(x(e),new Array(e.length).fill(null))},order:30});var L=t(71225),F=t(21777);const U=async function(e){const s=(0,y.KT)("apps/files/api/v1")+"/openlocaleditor?format=json";try{var t;const n=await d.Ay.post(s,{path:e}),a=null===(t=(0,F.HW)())||void 0===t?void 0:t.uid;let i="nc://open/".concat(a,"@")+window.location.host+(0,L.O0)(e);i+="?token="+n.data.ocs.data.token,window.location.href=i}catch(e){(0,a.Qg)((0,i.Tl)("files","Failed to redirect to client"))}},S=new n.hY({id:"edit-locally",displayName:()=>(0,i.Tl)("files","Edit locally"),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-laptop" viewBox="0 0 24 24"><path d="M4,6H20V16H4M20,18A2,2 0 0,0 22,16V6C22,4.89 21.1,4 20,4H4C2.89,4 2,4.89 2,6V16A2,2 0 0,0 4,18H0V20H24V18H20Z" /></svg>',enabled:e=>1===e.length&&0!=(e[0].permissions&n.aX.UPDATE),exec:async e=>((async e=>{U(e),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:()=>{},s=!1;(new a.ik).setName((0,i.Tl)("files","Edit file locally")).setText((0,i.Tl)("files","The file should now open on your device. If it doesn't, please check that you have the desktop app installed.")).setButtons([{label:(0,i.Tl)("files","Retry and close"),type:"secondary",callback:()=>{s=!0,e(!0)}},{label:(0,i.Tl)("files","Edit online"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-web" viewBox="0 0 24 24"><path d="M16.36,14C16.44,13.34 16.5,12.68 16.5,12C16.5,11.32 16.44,10.66 16.36,10H19.74C19.9,10.64 20,11.31 20,12C20,12.69 19.9,13.36 19.74,14M14.59,19.56C15.19,18.45 15.65,17.25 15.97,16H18.92C17.96,17.65 16.43,18.93 14.59,19.56M14.34,14H9.66C9.56,13.34 9.5,12.68 9.5,12C9.5,11.32 9.56,10.65 9.66,10H14.34C14.43,10.65 14.5,11.32 14.5,12C14.5,12.68 14.43,13.34 14.34,14M12,19.96C11.17,18.76 10.5,17.43 10.09,16H13.91C13.5,17.43 12.83,18.76 12,19.96M8,8H5.08C6.03,6.34 7.57,5.06 9.4,4.44C8.8,5.55 8.35,6.75 8,8M5.08,16H8C8.35,17.25 8.8,18.45 9.4,19.56C7.57,18.93 6.03,17.65 5.08,16M4.26,14C4.1,13.36 4,12.69 4,12C4,11.31 4.1,10.64 4.26,10H7.64C7.56,10.66 7.5,11.32 7.5,12C7.5,12.68 7.56,13.34 7.64,14M12,4.03C12.83,5.23 13.5,6.57 13.91,8H10.09C10.5,6.57 11.17,5.23 12,4.03M18.92,8H15.97C15.65,6.75 15.19,5.55 14.59,4.44C16.43,5.07 17.96,6.34 18.92,8M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z" /></svg>',type:"primary",callback:()=>{s=!0,e(!1)}}]).build().show().then((()=>{s||e(!1)}))}((s=>{s?U(e):window.OCA.Viewer.open({path:e})}))})(e.path),null),order:25});var N=t(85471);const _='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star" viewBox="0 0 24 24"><path d="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z" /></svg>',P=new o.A({concurrency:5}),A=e=>e.some((e=>1!==e.attributes.favorite)),z=async(e,s,t)=>{try{const n=(0,y.Jv)("/apps/files/api/v1/files")+(0,L.O0)(e.path);return await d.Ay.post(n,{tags:t?[window.OC.TAG_FAVORITE]:[]}),"favorites"!==s.id||t||"/"!==e.dirname||(0,l.Ic)("files:node:deleted",e),N.Ay.set(e.attributes,"favorite",t?1:0),t?(0,l.Ic)("files:favorites:added",e):(0,l.Ic)("files:favorites:removed",e),!0}catch(s){const n=t?"adding a file to favourites":"removing a file from favourites";return r.A.error("Error while "+n,{error:s,source:e.source,node:e}),!1}},j=new n.hY({id:"favorite",displayName:e=>A(e)?(0,i.Tl)("files","Add to favorites"):(0,i.Tl)("files","Remove from favorites"),iconSvgInline:e=>A(e)?'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star-outline" viewBox="0 0 24 24"><path d="M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z" /></svg>':_,enabled:e=>!e.some((e=>{var s,t;return!(null!==(s=e.root)&&void 0!==s&&null!==(t=s.startsWith)&&void 0!==t&&t.call(s,"/files"))}))&&e.every((e=>e.permissions!==n.aX.NONE)),async exec(e,s){const t=A([e]);return await z(e,s,t)},async execBatch(e,s){const t=A(e),n=e.map((e=>new Promise((n=>{P.add((async()=>{try{await z(e,s,t),n(!0)}catch(s){r.A.error("Error while adding file to favorite",{error:s,source:e.source,node:e}),n(!1)}}))}))));return Promise.all(n)},order:-50});t(18205);var M=t(53110),B=t(43627),E=t(94997),I=t(36882),R=t(39285);let D;var O;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(O||(O={}));const H=e=>0!=(e.reduce(((e,s)=>Math.min(e,s.permissions)),n.aX.ALL)&n.aX.UPDATE),V=e=>(e=>e.every((e=>{var s,t;return!JSON.parse(null!==(s=null===(t=e.attributes)||void 0===t?void 0:t["share-attributes"])&&void 0!==s?s:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===n.aX.NONE));var W=t(36117);const Y=e=>(0,n.Al)(e),q=(0,n.H4)(),K=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";e="".concat(n.lJ).concat(e);const s=new AbortController,t=(0,n.VL)();return new W.CancelablePromise((async(n,a,i)=>{i((()=>s.abort()));try{const a=await q.getDirectoryContents(e,{details:!0,data:t,includeSelf:!0,signal:s.signal}),i=a.data[0],o=a.data.slice(1);if(i.filename!==e&&"".concat(i.filename,"/")!==e)throw new Error("Root node does not match requested path");n({folder:Y(i),contents:o.map((e=>{try{return Y(e)}catch(s){return r.A.error("Invalid node detected '".concat(e.basename,"'"),{error:s}),null}})).filter(Boolean)})}catch(e){a(e)}}))},J=e=>H(e)?V(e)?O.MOVE_OR_COPY:O.MOVE:O.COPY,G=async function(e,s,t){let m=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!s)return;if(s.type!==n.pt.Folder)throw new Error((0,i.Tl)("files","Destination is not a folder"));if(t===O.MOVE&&e.dirname===s.path)throw new Error((0,i.Tl)("files","This file/folder is already in that directory"));if("".concat(s.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,i.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));N.Ay.set(e,"status",n.zI.LOADING);const d=function(e,s,t){const n=e===O.MOVE?(0,i.Tl)("files",'Moving "{source}" to "{destination}" …',{source:s,destination:t}):(0,i.Tl)("files",'Copying "{source}" to "{destination}" …',{source:s,destination:t});let o;return o=(0,a.cf)('<span class="icon icon-loading-small toast-loading-icon"></span> '.concat(n),{isHTML:!0,timeout:a.DH,onRemove:()=>{var e;null===(e=o)||void 0===e||e.hideToast(),o=void 0}}),()=>o&&o.hideToast()}(t,e.basename,s.path),g=(D||(D=new o.A({concurrency:5})),D);return await g.add((async()=>{const o=e=>1===e?(0,i.Tl)("files","(copy)"):(0,i.Tl)("files","(copy %n)",void 0,e);try{const r=(0,n.H4)(),d=(0,B.join)(n.lJ,e.path),u=(0,B.join)(n.lJ,s.path);if(t===O.COPY){let t=e.basename;if(!m){const s=await r.getDirectoryContents(u);t=(0,n.E6)(e.basename,s.map((e=>e.basename)),{suffix:o,ignoreFileExtension:e.type===n.pt.Folder})}if(await r.copyFile(d,(0,B.join)(u,t)),e.dirname===s.path){const{data:e}=await r.stat((0,B.join)(u,t),{details:!0,data:(0,n.VL)()});(0,l.Ic)("files:node:created",(0,n.Al)(e))}}else{if(!m){const t=await K(s.path);if((0,E.h)([e],t.contents))try{const{selected:n,renamed:a}=await(0,E.o)(s.path,[e],t.contents);if(!n.length&&!a.length)return}catch(e){return void(0,a.Qg)((0,i.Tl)("files","Move cancelled"))}}try{await r.moveFile(d,(0,B.join)(u,e.basename))}catch(e){var g,c;const s=new DOMParser,t=await(null===(g=e.response)||void 0===g?void 0:g.text()),n=null===(c=s.parseFromString(null!=t?t:"","text/xml").querySelector("message"))||void 0===c?void 0:c.textContent;throw n&&(0,a.Qg)(n),e}(0,l.Ic)("files:node:deleted",e)}}catch(e){if(e instanceof M.pe){var u,f,p;if(412===(null==e||null===(u=e.response)||void 0===u?void 0:u.status))throw new Error((0,i.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null==e||null===(f=e.response)||void 0===f?void 0:f.status))throw new Error((0,i.Tl)("files","The files are locked"));if(404===(null==e||null===(p=e.response)||void 0===p?void 0:p.status))throw new Error((0,i.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw r.A.debug(e),new Error}finally{N.Ay.set(e,"status",""),d()}}))};async function $(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",t=arguments.length>2?arguments[2]:void 0;const{resolve:n,reject:o,promise:l}=Promise.withResolvers(),m=t.map((e=>e.fileid)).filter(Boolean);return(0,a.a1)((0,i.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!m.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(s).setButtonFactory(((s,a)=>{const o=[],r=(0,B.basename)(a),l=t.map((e=>e.dirname)),m=t.map((e=>e.path));return e!==O.COPY&&e!==O.MOVE_OR_COPY||o.push({label:r?(0,i.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,i.Tl)("files","Copy"),type:"primary",icon:I,async callback(e){n({destination:e[0],action:O.COPY})}}),l.includes(a)||m.includes(a)||e!==O.MOVE&&e!==O.MOVE_OR_COPY||o.push({label:r?(0,i.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,i.Tl)("files","Move"),type:e===O.MOVE?"primary":"secondary",icon:R,async callback(e){n({destination:e[0],action:O.MOVE})}}),o})).build().pick().catch((e=>{r.A.debug(e),e instanceof a.vT?n(!1):o(new Error((0,i.Tl)("files","Move or copy operation failed")))})),l}const Z=new n.hY({id:"move-copy",displayName(e){switch(J(e)){case O.MOVE:return(0,i.Tl)("files","Move");case O.COPY:return(0,i.Tl)("files","Copy");case O.MOVE_OR_COPY:return(0,i.Tl)("files","Move or copy")}},iconSvgInline:()=>R,enabled:e=>!!e.every((e=>{var s;return null===(s=e.root)||void 0===s?void 0:s.startsWith("/files/")}))&&e.length>0&&(H(e)||V(e)),async exec(e,s,t){const n=J([e]);let o;try{o=await $(n,t,[e])}catch(e){return r.A.error(e),!1}if(!1===o)return(0,a.cf)((0,i.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e.displayname})),null;try{return await G(e,o.destination,o.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,a.Qg)(e.message),null)}},async execBatch(e,s,t){const n=J(e),o=await $(n,t,e);if(!1===o)return(0,a.cf)(1===e.length?(0,i.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e[0].displayname}):(0,i.Tl)("files","Cancelled move or copy operation")),e.map((()=>null));const l=e.map((async e=>{try{return await G(e,o.destination,o.action),!0}catch(s){return r.A.error("Failed to ".concat(o.action," node"),{node:e,error:s}),!1}}));return await Promise.all(l)},order:15}),Q='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder" viewBox="0 0 24 24"><path d="M10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6H12L10,4Z" /></svg>',X=new n.hY({id:"open-folder",displayName(e){const s=e[0].displayname;return(0,i.Tl)("files","Open folder {displayName}",{displayName:s})},iconSvgInline:()=>Q,enabled(e){if(1!==e.length)return!1;const s=e[0];return!!s.isDavRessource&&s.type===n.pt.Folder&&0!=(s.permissions&n.aX.READ)},exec:async(e,s)=>!(!e||e.type!==n.pt.Folder)&&(window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{dir:e.path}),null),default:n.m9.HIDDEN,order:-100}),ee=new n.hY({id:"open-in-files-recent",displayName:()=>(0,i.Tl)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,s)=>"recent"===s.id,async exec(e){let s=e.dirname;return e.type===n.pt.Folder&&(s=s+"/"+e.basename),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:s,openfile:"true"}),null},order:-1e3,default:n.m9.HIDDEN}),se=new n.hY({id:"rename",displayName:()=>(0,i.Tl)("files","Rename"),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-pencil" viewBox="0 0 24 24"><path d="M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z" /></svg>',enabled:e=>e.length>0&&e.map((e=>e.permissions)).every((e=>0!=(e&n.aX.UPDATE))),exec:async e=>((0,l.Ic)("files:node:rename",e),null),order:10});var te=t(49981);const ne=new n.hY({id:"details",displayName:()=>(0,i.Tl)("files","Open details"),iconSvgInline:()=>te,enabled:e=>{var s,t,a;return 1===e.length&&!!e[0]&&!(null===(s=window)||void 0===s||null===(s=s.OCA)||void 0===s||null===(s=s.Files)||void 0===s||!s.Sidebar)&&null!==(t=(null===(a=e[0].root)||void 0===a?void 0:a.startsWith("/files/"))&&e[0].permissions!==n.aX.NONE)&&void 0!==t&&t},async exec(e,s,t){try{return window.OCA.Files.Sidebar.setActiveTab("sharing"),await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:s.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:t},!0),null}catch(e){return r.A.error("Error while opening sidebar",{error:e}),!1}},order:-50}),ae=new n.hY({id:"view-in-folder",displayName:()=>(0,i.Tl)("files","View in folder"),iconSvgInline:()=>R,enabled(e,s){var t;if("files"===s.id)return!1;if(1!==e.length)return!1;const a=e[0];return!(!a.isDavRessource||null===(t=a.root)||void 0===t||!t.startsWith("/files")||a.permissions===n.aX.NONE||a.type!==n.pt.File)},exec:async e=>!(!e||e.type!==n.pt.File)&&(window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:e.fileid},{dir:e.dirname}),null),order:80});var ie=t(18740),oe=t(94219),re=t(82182);const le=(0,N.pM)({__name:"NewNodeDialog",props:{defaultName:{type:String,default:(0,i.t)("files","New folder")},otherNames:{type:Array,default:()=>[]},open:{type:Boolean,default:!0},name:{type:String,default:(0,i.t)("files","Create new folder")},label:{type:String,default:(0,i.t)("files","Folder name")}},emits:["close"],setup(e,s){let{emit:t}=s;const a=e,o=(0,N.KR)(a.defaultName),r=(0,N.KR)(),l=(0,N.KR)(),m=(0,N.KR)("");function d(){(0,N.dY)((()=>{var e;const s=null===(e=r.value)||void 0===e?void 0:e.$el.querySelector("input");if(!a.open||!s)return;const t=o.value.length-(0,B.extname)(o.value).length;s.focus(),s.setSelectionRange(0,t)}))}return(0,N.wB)((()=>a.defaultName),(()=>{o.value=(0,n.E6)(a.defaultName,a.otherNames).trim()})),(0,N.nT)((()=>{var e;a.otherNames.includes(o.value.trim())?m.value=(0,i.t)("files","This name is already in use."):m.value=function(e){let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(""===e.trim())return(0,i.t)("files","Filename must not be empty.");try{return(0,n.KT)(e),""}catch(e){if(!(e instanceof n.di))throw e;switch(e.reason){case n.nF.Character:return(0,i.t)("files",'"{char}" is not allowed inside a filename.',{char:e.segment},void 0,{escape:s});case n.nF.ReservedName:return(0,i.t)("files",'"{segment}" is a reserved name and not allowed for filenames.',{segment:e.segment},void 0,{escape:!1});case n.nF.Extension:return e.segment.match(/\.[a-z]/i)?(0,i.t)("files",'"{extension}" is not an allowed filetype.',{extension:e.segment},void 0,{escape:!1}):(0,i.t)("files",'Filenames must not end with "{extension}".',{extension:e.segment},void 0,{escape:!1});default:return(0,i.t)("files","Invalid filename.")}}}(o.value.trim());const s=null===(e=r.value)||void 0===e?void 0:e.$el.querySelector("input");s&&(s.setCustomValidity(m.value),s.reportValidity())})),(0,N.wB)((()=>a.open),(()=>{(0,N.dY)((()=>{d()}))})),(0,N.sV)((()=>{o.value=(0,n.E6)(o.value,a.otherNames).trim(),(0,N.dY)((()=>d()))})),{__sfc:!0,props:a,emit:t,localDefaultName:o,nameInput:r,formElement:l,validity:m,focusInput:d,submit:function(){var e;null===(e=l.value)||void 0===e||e.requestSubmit()},t:i.t,NcButton:ie.A,NcDialog:oe.A,NcTextField:re.A}}});var me=t(85072),de=t.n(me),ge=t(97825),ce=t.n(ge),ue=t(77659),fe=t.n(ue),pe=t(55056),he=t.n(pe),we=t(10540),ve=t.n(we),ye=t(41113),Te=t.n(ye),Ce=t(6058),xe={};xe.styleTagTransform=Te(),xe.setAttributes=he(),xe.insert=fe().bind(null,"head"),xe.domAPI=ce(),xe.insertStyleElement=ve(),de()(Ce.A,xe),Ce.A&&Ce.A.locals&&Ce.A.locals;const ke=(0,t(14486).A)(le,(function(){var e=this,s=e._self._c,t=e._self._setupProxy;return s(t.NcDialog,{attrs:{"data-cy-files-new-node-dialog":"",name:e.name,open:e.open,"close-on-click-outside":"","out-transition":""},on:{"update:open":function(e){return t.emit("close",null)}},scopedSlots:e._u([{key:"actions",fn:function(){return[s(t.NcButton,{attrs:{"data-cy-files-new-node-dialog-submit":"",type:"primary",disabled:""!==t.validity},on:{click:t.submit}},[e._v("\n\t\t\t"+e._s(t.t("files","Create"))+"\n\t\t")])]},proxy:!0}])},[e._v(" "),s("form",{ref:"formElement",staticClass:"new-node-dialog__form",on:{submit:function(e){return e.preventDefault(),t.emit("close",t.localDefaultName)}}},[s(t.NcTextField,{ref:"nameInput",attrs:{"data-cy-files-new-node-dialog-input":"",error:""!==t.validity,"helper-text":t.validity,label:e.label,value:t.localDefaultName},on:{"update:value":function(e){t.localDefaultName=e}}})],1)])}),[],!1,null,"242a2438",null).exports;function be(e,s){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=s.map((e=>e.basename));return new Promise((s=>{(0,a.Ss)(ke,{...t,defaultName:e,otherNames:n},(e=>{s(e)}))}))}const Le={id:"newFolder",displayName:(0,i.Tl)("files","New folder"),enabled:e=>0!=(e.permissions&n.aX.CREATE),iconSvgInline:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-folder-plus" viewBox="0 0 24 24"><path d="M13 19C13 19.34 13.04 19.67 13.09 20H4C2.9 20 2 19.11 2 18V6C2 4.89 2.89 4 4 4H10L12 6H20C21.1 6 22 6.89 22 8V13.81C21.12 13.3 20.1 13 19 13C15.69 13 13 15.69 13 19M20 18V15H18V18H15V20H18V23H20V20H23V18H20Z" /></svg>',order:0,async handler(e,s){const t=await be((0,i.Tl)("files","New folder"),s);if(null!==t){var o,m,g,c,u;const{fileid:s,source:f}=await(async(e,s)=>{const t=e.source+"/"+s,n=e.encodedSource+"/"+encodeURIComponent(s),a=await(0,d.Ay)({method:"MKCOL",url:n,headers:{Overwrite:"F"}});return{fileid:parseInt(a.headers["oc-fileid"]),source:t}})(e,t.trim()),p=new n.vd({source:f,id:s,mtime:new Date,owner:(null===(o=(0,F.HW)())||void 0===o?void 0:o.uid)||null,permissions:n.aX.ALL,root:(null==e?void 0:e.root)||"/files/"+(null===(m=(0,F.HW)())||void 0===m?void 0:m.uid),attributes:{"mount-type":null===(g=e.attributes)||void 0===g?void 0:g["mount-type"],"owner-id":null===(c=e.attributes)||void 0===c?void 0:c["owner-id"],"owner-display-name":null===(u=e.attributes)||void 0===u?void 0:u["owner-display-name"]}});(0,l.Ic)("files:node:created",p),(0,a.Te)((0,i.Tl)("files",'Created new folder "{name}"',{name:(0,B.basename)(f)})),r.A.debug("Created new folder",{folder:p,source:f}),window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:p.fileid},{dir:e.path})}}};var Fe=t(32981);let Ue=(0,Fe.C)("files","templates_path",!1);r.A.debug("Initial templates folder",{templatesPath:Ue});const Se={id:"template-picker",displayName:(0,i.Tl)("files","Create new templates folder"),iconSvgInline:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-plus" viewBox="0 0 24 24"><path d="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z" /></svg>',order:10,enabled(e){var s;return!Ue&&e.owner===(null===(s=(0,F.HW)())||void 0===s?void 0:s.uid)&&0!=(e.permissions&n.aX.CREATE)},async handler(e,s){const t=await be((0,i.Tl)("files","Templates"),s,{name:(0,i.Tl)("files","New template folder")});null!==t&&(async function(e,s){const t=(0,B.join)(e.path,s);try{r.A.debug("Initializing the templates directory",{templatePath:t});const{data:e}=await d.Ay.post((0,y.KT)("apps/files/api/v1/templates/path"),{templatePath:t,copySystemTemplates:!0});window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:void 0},{dir:t}),r.A.info("Created new templates folder",{...e.ocs.data}),Ue=e.ocs.data.templates_path}catch(e){r.A.error("Unable to initialize the templates directory"),(0,a.Qg)((0,i.Tl)("files","Unable to initialize the templates directory"))}}(e,t),(0,n.gj)("template-picker"))}},Ne=(0,N.$V)((()=>Promise.all([t.e(4208),t.e(5606)]).then(t.bind(t,15606))));let _e=null;const Pe=async e=>{if(null===_e){const s=document.createElement("div");s.id="template-picker",document.body.appendChild(s),_e=new N.Ay({render:s=>s(Ne,{ref:"picker",props:{parent:e}}),methods:{open(){this.$refs.picker.open(...arguments)}},el:s})}return _e};var Ae;const ze="/files/".concat(null===(Ae=(0,F.HW)())||void 0===Ae?void 0:Ae.uid),je=((0,y.dC)("dav"+ze),(0,n.H4)()),Me=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";return"/"!==e?K(e):new W.CancelablePromise(((e,s,t)=>{const a=(0,n.Q$)(je).catch(s).then((t=>{var a;t?e({contents:t,folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(a=(0,F.HW)())||void 0===a?void 0:a.uid)||null,permissions:n.aX.READ})}):s()}));t((()=>a.cancel()))}))},Be=function(e){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return new n.Ss({id:Ee(e.path),name:(0,B.basename)(e.path),icon:Q,order:s,params:{dir:e.path,fileid:e.fileid.toString(),view:"favorites"},parent:"favorites",columns:[],getContents:Me})},Ee=function(e){return"favorite-".concat(function(e){let s=0;for(let t=0;t<e.length;t++)s=(s<<5)-s+e.charCodeAt(t)|0;return s>>>0}(e))};var Ie=t(65899);const Re=(0,Fe.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),De=(0,Ie.Ey)(),Oe=(0,n.H4)(),He=Math.round(Date.now()/1e3-1209600),Ve=e=>(0,n.Al)(e,n.lJ,(0,y.$_)());var We;const Ye=null===(We=(0,F.HW)())||void 0===We?void 0:We.uid,qe=function(e){const s=e.attributes["mount-type"];return!(Ye&&e.owner!==Ye||["group","shared"].includes(s))};(0,n.Gg)(v),(0,n.Gg)(b),(0,n.Gg)(S),(0,n.Gg)(j),(0,n.Gg)(Z),(0,n.Gg)(X),(0,n.Gg)(ee),(0,n.Gg)(se),(0,n.Gg)(ne),(0,n.Gg)(ae),(0,n.zj)(Le),(0,n.zj)(Se),(0,Fe.C)("files","templates",[]).forEach(((e,s)=>{(0,n.zj)({id:"template-new-".concat(e.app,"-").concat(s),displayName:e.label,iconClass:e.iconClass||"icon-file",iconSvgInline:e.iconSvgInline,enabled:e=>0!=(e.permissions&n.aX.CREATE),order:11,async handler(s,t){const n=Pe(s),a=await be("".concat(e.label).concat(e.extension),t,{label:(0,i.Tl)("files","Filename"),name:e.label});null!==a&&(await n).open(a.trim(),e)}})})),(()=>{const e=(0,Fe.C)("files","favoriteFolders",[]),s=e.map(((e,s)=>Be(e,s)));r.A.debug("Generating favorites view",{favoriteFolders:e});const t=(0,n.bh)();t.register(new n.Ss({id:"favorites",name:(0,i.Tl)("files","Favorites"),caption:(0,i.Tl)("files","List of favorites files and folders."),emptyTitle:(0,i.Tl)("files","No favorites yet"),emptyCaption:(0,i.Tl)("files","Files and folders you mark as favorite will show up here"),icon:_,order:15,columns:[],getContents:Me})),s.forEach((e=>t.register(e))),(0,l.B1)("files:favorites:added",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?o(e):r.A.error("Favorite folder is not within user files root",{node:e}))})),(0,l.B1)("files:favorites:removed",(e=>{var s;e.type===n.pt.Folder&&(null!==e.path&&null!==(s=e.root)&&void 0!==s&&s.startsWith("/files")?m(e.path):r.A.error("Favorite folder is not within user files root",{node:e}))})),(0,l.B1)("files:node:renamed",(e=>{e.type===n.pt.Folder&&1===e.attributes.favorite&&d(e)}));const a=function(){e.sort(((e,s)=>e.path.localeCompare(s.path,(0,i.Z0)(),{ignorePunctuation:!0}))),e.forEach(((e,t)=>{const n=s.find((s=>s.id===Ee(e.path)));n&&(n.order=t)}))},o=function(n){const i={path:n.path,fileid:n.fileid},o=Be(i);e.find((e=>e.path===n.path))||(e.push(i),s.push(o),a(),t.register(o))},m=function(n){const i=Ee(n),o=e.findIndex((e=>e.path===n));-1!==o&&(e.splice(o,1),s.splice(o,1),t.remove(i),a())},d=function(s){const t=e.find((e=>e.fileid===s.fileid));void 0!==t&&(m(t.path),o(s))}})(),(0,n.bh)().register(new n.Ss({id:"files",name:(0,i.Tl)("files","All files"),caption:(0,i.Tl)("files","List of your files and folders."),icon:Q,order:0,getContents:K})),(0,n.bh)().register(new n.Ss({id:"recent",name:(0,i.Tl)("files","Recent"),caption:(0,i.Tl)("files","List of recently modified files and folders."),emptyTitle:(0,i.Tl)("files","No recently modified files"),emptyCaption:(0,i.Tl)("files","Files and folders you recently modified will show up here."),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-history" viewBox="0 0 24 24"><path d="M13.5,8H12V13L16.28,15.54L17,14.33L13.5,12.25V8M13,3A9,9 0 0,0 4,12H1L4.96,16.03L9,12H6A7,7 0 0,1 13,5A7,7 0 0,1 20,12A7,7 0 0,1 13,19C11.07,19 9.32,18.21 8.06,16.94L6.64,18.36C8.27,20 10.5,21 13,21A9,9 0 0,0 22,12A9,9 0 0,0 13,3" /></svg>',order:10,defaultSortKey:"mtime",getContents:async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";const s=function(){const e=(0,Ie.nY)("userconfig",{state:()=>({userConfig:Re}),actions:{onUpdate(e,s){N.Ay.set(this.userConfig,e,s)},async update(e,s){await d.Ay.put((0,y.Jv)("/apps/files/api/v1/config/"+e),{value:s}),(0,l.Ic)("files:config:updated",{key:e,value:s})}}})(...arguments);return e._initialized||((0,l.B1)("files:config:updated",(function(s){let{key:t,value:n}=s;e.onUpdate(t,n)})),e._initialized=!0),e}(De),t=t=>"/"!==e||s.userConfig.show_hidden||!t.dirname.split("/").some((e=>e.startsWith("."))),a=new AbortController;return new W.CancelablePromise((async(e,s,i)=>{var o;let r;i((()=>a.abort()));try{r=await Oe.search("/",{details:!0,data:(0,n.R3)(He),signal:a.signal})}catch(e){return void s(e)}a.signal.aborted?s():e({contents:r.data.results.map(Ve).filter(t),folder:new n.vd({id:0,source:"".concat(n.PY).concat(n.lJ),root:n.lJ,owner:(null===(o=(0,F.HW)())||void 0===o?void 0:o.uid)||null,permissions:n.aX.READ})})}))}})),(0,n.bh)().register(new n.Ss({id:"personal",name:(0,i.Tl)("files","Personal Files"),caption:(0,i.Tl)("files","List of your files and folders that are not shared."),emptyTitle:(0,i.Tl)("files","No personal files found"),emptyCaption:(0,i.Tl)("files","Files that are not shared will show up here."),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account" viewBox="0 0 24 24"><path d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,14C16.42,14 20,15.79 20,18V20H4V18C4,15.79 7.58,14 12,14Z" /></svg>',order:5,getContents:function(){return K(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/").then((e=>(e.contents=e.contents.filter(qe),e)))}})),"serviceWorker"in navigator?window.addEventListener("load",(async()=>{try{const e=(0,y.Jv)("/apps/files/preview-service-worker.js",{},{noRewrite:!0}),s=await navigator.serviceWorker.register(e,{scope:"/"});r.A.debug("SW registered: ",{registration:s})}catch(e){r.A.error("SW registration failed: ",{error:e})}})):r.A.debug("Service Worker is not enabled on this browser."),(0,n.Yc)("nc:hidden",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:is-mount-root",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:is-federated",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("nc:metadata-files-live-photo",{nc:"http://nextcloud.org/ns"})},96667:(e,s,t)=>{"use strict";t.d(s,{A:()=>r});var n=t(71354),a=t.n(n),i=t(76314),o=t.n(i)()(a());o.push([e.id,".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const r=o},6058:(e,s,t)=>{"use strict";t.d(s,{A:()=>r});var n=t(71354),a=t.n(n),i=t(76314),o=t.n(i)()(a());o.push([e.id,"\n.new-node-dialog__form[data-v-242a2438] {\n\t/* Ensure the dialog does not jump when there is a validity error */\n\tmin-height: calc(3 * var(--default-clickable-area));\n}\n","",{version:3,sources:["webpack://./apps/files/src/components/NewNodeDialog.vue"],names:[],mappings:";AAwJA;CACA,mEAAA;CACA,mDAAA;AACA",sourcesContent:["\x3c!--\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n - SPDX-License-Identifier: AGPL-3.0-or-later\n--\x3e\n<template>\n\t<NcDialog data-cy-files-new-node-dialog\n\t\t:name=\"name\"\n\t\t:open=\"open\"\n\t\tclose-on-click-outside\n\t\tout-transition\n\t\t@update:open=\"emit('close', null)\">\n\t\t<template #actions>\n\t\t\t<NcButton data-cy-files-new-node-dialog-submit\n\t\t\t\ttype=\"primary\"\n\t\t\t\t:disabled=\"validity !== ''\"\n\t\t\t\t@click=\"submit\">\n\t\t\t\t{{ t('files', 'Create') }}\n\t\t\t</NcButton>\n\t\t</template>\n\t\t<form ref=\"formElement\"\n\t\t\tclass=\"new-node-dialog__form\"\n\t\t\t@submit.prevent=\"emit('close', localDefaultName)\">\n\t\t\t<NcTextField ref=\"nameInput\"\n\t\t\t\tdata-cy-files-new-node-dialog-input\n\t\t\t\t:error=\"validity !== ''\"\n\t\t\t\t:helper-text=\"validity\"\n\t\t\t\t:label=\"label\"\n\t\t\t\t:value.sync=\"localDefaultName\" />\n\t\t</form>\n\t</NcDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport type { ComponentPublicInstance, PropType } from 'vue'\nimport { getUniqueName } from '@nextcloud/files'\nimport { t } from '@nextcloud/l10n'\nimport { extname } from 'path'\nimport { nextTick, onMounted, ref, watch, watchEffect } from 'vue'\nimport { getFilenameValidity } from '../utils/filenameValidity.ts'\n\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\nimport NcDialog from '@nextcloud/vue/dist/Components/NcDialog.js'\nimport NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js'\n\nconst props = defineProps({\n\t/**\n\t * The name to be used by default\n\t */\n\tdefaultName: {\n\t\ttype: String,\n\t\tdefault: t('files', 'New folder'),\n\t},\n\t/**\n\t * Other files that are in the current directory\n\t */\n\totherNames: {\n\t\ttype: Array as PropType<string[]>,\n\t\tdefault: () => [],\n\t},\n\t/**\n\t * Open state of the dialog\n\t */\n\topen: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * Dialog name\n\t */\n\tname: {\n\t\ttype: String,\n\t\tdefault: t('files', 'Create new folder'),\n\t},\n\t/**\n\t * Input label\n\t */\n\tlabel: {\n\t\ttype: String,\n\t\tdefault: t('files', 'Folder name'),\n\t},\n})\n\nconst emit = defineEmits<{\n\t(event: 'close', name: string | null): void\n}>()\n\nconst localDefaultName = ref<string>(props.defaultName)\nconst nameInput = ref<ComponentPublicInstance>()\nconst formElement = ref<HTMLFormElement>()\nconst validity = ref('')\n\n/**\n * Focus the filename input field\n */\nfunction focusInput() {\n\tnextTick(() => {\n\t\t// get the input element\n\t\tconst input = nameInput.value?.$el.querySelector('input')\n\t\tif (!props.open || !input) {\n\t\t\treturn\n\t\t}\n\n\t\t// length of the basename\n\t\tconst length = localDefaultName.value.length - extname(localDefaultName.value).length\n\t\t// focus the input\n\t\tinput.focus()\n\t\t// and set the selection to the basename (name without extension)\n\t\tinput.setSelectionRange(0, length)\n\t})\n}\n\n/**\n * Trigger submit on the form\n */\nfunction submit() {\n\tformElement.value?.requestSubmit()\n}\n\n// Reset local name on props change\nwatch(() => props.defaultName, () => {\n\tlocalDefaultName.value = getUniqueName(props.defaultName, props.otherNames).trim()\n})\n\n// Validate the local name\nwatchEffect(() => {\n\tif (props.otherNames.includes(localDefaultName.value.trim())) {\n\t\tvalidity.value = t('files', 'This name is already in use.')\n\t} else {\n\t\tvalidity.value = getFilenameValidity(localDefaultName.value.trim())\n\t}\n\tconst input = nameInput.value?.$el.querySelector('input')\n\tif (input) {\n\t\tinput.setCustomValidity(validity.value)\n\t\tinput.reportValidity()\n\t}\n})\n\n// Ensure the input is focussed even if the dialog is already mounted but not open\nwatch(() => props.open, () => {\n\tnextTick(() => {\n\t\tfocusInput()\n\t})\n})\n\nonMounted(() => {\n\t// on mounted lets use the unique name\n\tlocalDefaultName.value = getUniqueName(localDefaultName.value, props.otherNames).trim()\n\tnextTick(() => focusInput())\n})\n<\/script>\n\n<style scoped>\n.new-node-dialog__form {\n\t/* Ensure the dialog does not jump when there is a validity error */\n\tmin-height: calc(3 * var(--default-clickable-area));\n}\n</style>\n"],sourceRoot:""}]);const r=o},51111:e=>{"use strict";const s=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!s.has(e&&e.code)},75270:e=>{function s(e,s){return null==e?s:e}e.exports=function(e){var t,n=s((e=e||{}).max,1),a=s(e.min,0),i=s(e.autostart,!0),o=s(e.ignoreSameProgress,!1),r=null,l=null,m=null,d=(t=s(e.historyTimeConstant,2.5),function(e,s,n){return e+n/(n+t)*(s-e)});function g(){c(a)}function c(e,s){if("number"!=typeof s&&(s=Date.now()),l!==s&&(!o||m!==e)){if(null===l||null===m)return m=e,void(l=s);var t=.001*(s-l),n=(e-m)/t;r=null===r?n:d(r,n,t),m=e,l=s}}return{start:g,reset:function(){r=null,l=null,m=null,i&&g()},report:c,estimate:function(e){if(null===m)return 1/0;if(m>=n)return 0;if(null===r)return 1/0;var s=(n-m)/r;return"number"==typeof e&&"number"==typeof l&&(s-=.001*(e-l)),Math.max(0,s)},rate:function(){return null===r?0:r}}}},98383:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},39075:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill:%23fff;fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},94997:(e,s,t)=>{"use strict";t.d(s,{a:()=>le,b:()=>ce,h:()=>xe,i:()=>re,l:()=>se,n:()=>he,o:()=>Fe,t:()=>ue});var n=t(85072),a=t.n(n),i=t(97825),o=t.n(i),r=t(77659),l=t.n(r),m=t(55056),d=t.n(m),g=t(10540),c=t.n(g),u=t(41113),f=t.n(u),p=t(96667),h={};h.styleTagTransform=f(),h.setAttributes=d(),h.insert=l().bind(null,"head"),h.domAPI=o(),h.insertStyleElement=c(),a()(p.A,h),p.A&&p.A.locals&&p.A.locals;var w=t(82680),v=t(85471),y=t(21777),T=t(34297),C=t(71225),x=t(43627),k=t(65043);class b extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const L=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class F{static fn(e){return(...s)=>new F(((t,n,a)=>{s.push(a),e(...s).then(t,n)}))}#e=[];#s=!0;#t=L.pending;#n;#a;constructor(e){this.#n=new Promise(((s,t)=>{this.#a=t;const n=e=>{if(this.#t!==L.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#t.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#s,set:e=>{this.#s=e}}}),e((e=>{this.#t===L.canceled&&n.shouldReject||(s(e),this.#i(L.resolved))}),(e=>{this.#t===L.canceled&&n.shouldReject||(t(e),this.#i(L.rejected))}),n)}))}then(e,s){return this.#n.then(e,s)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#t===L.pending){if(this.#i(L.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#a(e)}this.#s&&this.#a(new b(e))}}get isCanceled(){return this.#t===L.canceled}#i(e){this.#t===L.pending&&(this.#t=e)}}Object.setPrototypeOf(F.prototype,Promise.prototype);var U=t(57485),S=t(63814),N=t(51111);const _="axios-retry";function P(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&N(e)}const A=["get","head","options"],z=A.concat(["put","delete"]);function j(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function M(e){return!!e.config?.method&&j(e)&&-1!==z.indexOf(e.config.method)}function B(e){return P(e)||M(e)}function E(e=void 0){const s=e?.response?.headers["retry-after"];if(!s)return 0;let t=1e3*(Number(s)||0);return 0===t&&(t=(new Date(s).valueOf()||0)-Date.now()),Math.max(0,t)}function I(e=0,s=void 0,t=100){const n=2**e*t,a=Math.max(n,E(s));return a+.2*a*Math.random()}const R={retries:3,retryCondition:B,retryDelay:function(e=0,s=void 0){return Math.max(0,E(s))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function D(e,s,t=!1){const n=function(e,s){return{...R,...s,...e[_]}}(e,s||{});return n.retryCount=n.retryCount||0,n.lastRequestTime&&!t||(n.lastRequestTime=Date.now()),e[_]=n,n}const O=(e,s)=>{const t=e.interceptors.request.use((e=>(D(e,s,!0),e[_]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async t=>{const{config:n}=t;if(!n)return Promise.reject(t);const a=D(n,s);return t.response&&a.validateResponse?.(t.response)?t.response:await async function(e,s){const{retries:t,retryCondition:n}=e,a=(e.retryCount||0)<t&&n(s);if("object"==typeof a)try{return!1!==await a}catch(e){return!1}return a}(a,t)?async function(e,s,t,n){s.retryCount+=1;const{retryDelay:a,shouldResetTimeout:i,onRetry:o}=s,r=a(s.retryCount,t);if(function(e,s){e.defaults.agent===s.agent&&delete s.agent,e.defaults.httpAgent===s.httpAgent&&delete s.httpAgent,e.defaults.httpsAgent===s.httpsAgent&&delete s.httpsAgent}(e,n),!i&&n.timeout&&s.lastRequestTime){const e=Date.now()-s.lastRequestTime,a=n.timeout-e-r;if(a<=0)return Promise.reject(t);n.timeout=a}return n.transformRequest=[e=>e],await o(s.retryCount,t,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((s=>{const t=()=>{clearTimeout(a),s(e(n))},a=setTimeout((()=>{s(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",t)}),r);n.signal?.addEventListener&&n.signal.addEventListener("abort",t,{once:!0})}))}(e,a,t,n):(await async function(e,s){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(s,e.retryCount)}(a,t),Promise.reject(t))}));return{requestInterceptorId:t,responseInterceptorId:n}};O.isNetworkError=P,O.isSafeRequestError=function(e){return!!e.config?.method&&j(e)&&-1!==A.indexOf(e.config.method)},O.isIdempotentRequestError=M,O.isNetworkOrIdempotentRequestError=B,O.exponentialDelay=I,O.linearDelay=function(e=100){return(s=0,t=void 0)=>{const n=s*e;return Math.max(n,E(t))}},O.isRetryableError=j;const H=O;var V=t(35947),W=t(11195),Y=t(87485),q=t(75270),K=t(89257),J=t(30567),G=t(80114),$=t(24764),Z=t(18740),Q=t(6695),X=t(95101),ee=t(95674);const se=(0,V.YK)().setApp("@nextcloud/upload").detectUser().build();H(k.Ay,{retries:0});const te=async function(e,s,t,n=(()=>{}),a=void 0,i={},o=5){let r;return r=s instanceof Blob?s:await s(),a&&(i.Destination=a),i["Content-Type"]||(i["Content-Type"]="application/octet-stream"),await k.Ay.request({method:"PUT",url:e,data:r,signal:t,onUploadProgress:n,headers:i,"axios-retry":{retries:o,retryDelay:(e,s)=>I(e,s,1e3)}})},ne=function(e,s,t){return 0===s&&e.size<=t?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(s,s+t)],{type:"application/octet-stream"}))},ae=function(e=void 0){const s=window.OC?.appConfig?.files?.max_chunk_size;if(s<=0)return 0;if(!Number(s))return 10485760;const t=Math.max(Number(s),5242880);return void 0===e?t:Math.max(t,Math.ceil(e/1e4))};var ie=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ie||{});class oe{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,s=!1,t,n){const a=Math.min(ae()>0?Math.ceil(t/ae()):1,1e4);this._source=e,this._isChunked=s&&ae()>0&&a>1,this._chunks=this._isChunked?a:1,this._size=t,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}const re=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,le=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;class me extends File{_originalName;_path;_children;constructor(e){super([],(0,C.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,C.P8)(e),this._path=e}get size(){return this.children.reduce(((e,s)=>e+s.size),0)}get lastModified(){return this.children.reduce(((e,s)=>Math.max(e,s.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChildren(e){for(const s of e)await this.addChild(s)}async addChild(e){const s=this._path&&`${this._path}/`;if(re(e))e=await new Promise(((s,t)=>e.file(s,t)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const t=e.createReader(),n=await new Promise(((e,s)=>t.readEntries(e,s))),a=new me(`${s}${e.name}`);return await a.addChildren(n),void this._children.set(e.name,a)}const t=e.webkitRelativePath??e.name;if(t.includes("/")){if(!t.startsWith(this._path))throw new Error(`File ${t} is not a child of ${this._path}`);const n=t.slice(s.length),a=(0,C.P8)(n);if(a===n)this._children.set(a,e);else{const t=n.slice(0,n.indexOf("/"));if(this._children.has(t))await this._children.get(t).addChild(e);else{const n=new me(`${s}${t}`);await n.addChild(e),this._children.set(t,n)}}}else this._children.set(e.name,e)}}const de=(0,W.$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"abusaud, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli <alimahwer@yahoo.com>, 2024\nabusaud, 2024\n"},msgstr:["Last-Translator: abusaud, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" هو اسم ممنوع لملف أو مجلد.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" هو نوع ممنوع أن يكون لملف.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" هو غير مسموح به في اسم ملف أو مجلد.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفان متعارضان في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفات متعارضة في {dirname}","{count} ملفات متعارضة في {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["بضع ثوانٍ متبقية"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['غير مسموح ان ينتهي اسم الملف بـ "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["اسم ملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معروف"]},New:{msgid:"New",msgstr:["جديد"]},"New filename":{msgid:"New filename",msgstr:["اسم ملف جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},Upload:{msgid:"Upload",msgstr:["رفع الملفات"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["تمّ تجاوز الرفع"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['رفع "{folder}" تمّ تجاوزه']},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp <enolp@softastur.org>, 2023\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev <microphprashad@gmail.com>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev <microphprashad@gmail.com>, 2023\n"},msgstr:["Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera <marcriera@softcatala.org>, 2022\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\nMartin Hankovec, 2024\nAppukonrad <appukonrad@gmail.com>, 2024\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ není povoleno použít jako název souboru či složky."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ není povoleného typu souboru."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ není povoleno použít v rámci názvu souboru či složky."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"Create new":{msgid:"Create new",msgstr:["Vytvořit nový"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Názvy souborů nemohou končit na „{segment}“."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný název souboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New filename":{msgid:"New filename",msgstr:["Nový název souboru"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},Rename:{msgid:"Rename",msgstr:["Přejmenovat"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},Skip:{msgid:"Skip",msgstr:["Přeskočit"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},Upload:{msgid:"Upload",msgstr:["Nahrát"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrát složky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrát ze zařízení"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávání bylo zrušeno"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrání bylo přeskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Nahrání „{folder}“ bylo přeskočeno"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRasmus Rosendahl-Kaa, 2024\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tilladt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"Create new":{msgid:"Create new",msgstr:["Opret ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavne må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldigt filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nyt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},Rename:{msgid:"Rename",msgstr:["Omdøb"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Spring over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload fra enhed"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload er blevet annulleret"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload er blevet sprunget over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload af "{folder}" er blevet sprunget over']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Andy Scherzinger <info@andy-scherzinger.de>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMartin Wilichowski, 2024\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\n"},msgstr:["Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\n"},msgstr:["Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is a forbidden file or folder name.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is a forbidden file type.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is not allowed inside a file or folder name.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"Create new":{msgid:"Create new",msgstr:["Create new"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filenames must not end with "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Invalid filename"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New filename":{msgid:"New filename",msgstr:["New filename"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},Rename:{msgid:"Rename",msgstr:["Rename"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},Skip:{msgid:"Skip",msgstr:["Skip"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload folders"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload from device"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload has been cancelled"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload has been skipped"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload of "{folder}" has been skipped']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["You can either rename the file, skip this file or cancel the whole operation."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa de imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Cargar archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Cargar carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Cargar desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Carga cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la carga"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿Cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivo en conflicto en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Cuáles archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi",json:{charset:"utf-8",headers:{"Last-Translator":"teemue, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\nteemue, 2024\n"},msgstr:["Last-Translator: teemue, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" on kielletty tiedoston tai hakemiston nimi.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" on kielletty tiedostotyyppi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ei ole sallittu tiedoston tai hakemiston nimessä.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} tiedoston ristiriita","{count} tiedoston ristiriita"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tiedoston ristiriita kansiossa {dirname}","{count} tiedoston ristiriita kansiossa {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Cancel:{msgid:"Cancel",msgstr:["Peruuta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Peruuta koko toimenpide"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},Continue:{msgid:"Continue",msgstr:["Jatka"]},"Create new":{msgid:"Create new",msgstr:["Luo uusi"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},"Existing version":{msgid:"Existing version",msgstr:["Olemassa oleva versio"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tiedoston nimi ei saa päättyä "{segment}"']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Kielletty/väärä tiedoston nimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimeisin muokkauspäivä on tuntematon"]},New:{msgid:"New",msgstr:["Uusi"]},"New filename":{msgid:"New filename",msgstr:["Uusi tiedostonimi"]},"New version":{msgid:"New version",msgstr:["Uusi versio"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Preview image":{msgid:"Preview image",msgstr:["Esikatsele kuva"]},Rename:{msgid:"Rename",msgstr:["Nimeä uudelleen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Valitse kaikki valintaruudut"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Valitse kaikki olemassa olevat tiedostot"]},"Select all new files":{msgid:"Select all new files",msgstr:["Valitse kaikki uudet tiedostot"]},Skip:{msgid:"Skip",msgstr:["Ohita"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ohita tämä tiedosto","Ohita {count} tiedostoa"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tuntematon koko"]},Upload:{msgid:"Upload",msgstr:["Lähetä"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]},"Upload folders":{msgid:"Upload folders",msgstr:["Lähetä kansioita"]},"Upload from device":{msgid:"Upload from device",msgstr:["Lähetä laitteelta"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Lähetys on peruttu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Lähetys on ohitettu"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Hakemiston "{folder}" lähetys on ohitettu']},"Upload progress":{msgid:"Upload progress",msgstr:["Lähetyksen edistyminen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mitkä tiedostot haluat säilyttää?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi."]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Arnaud Cazenave, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\nJérôme HERBINET, 2024\nArnaud Cazenave, 2024\n"},msgstr:["Last-Translator: Arnaud Cazenave, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" est un nom de fichier ou de dossier interdit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" est un type de fichier interdit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les téléversements"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"Create new":{msgid:"Create new",msgstr:["Créer un nouveau"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Le nom des fichiers ne doit pas finir par "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fichier invalide"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New filename":{msgid:"New filename",msgstr:["Nouveau nom de fichier"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},Rename:{msgid:"Rename",msgstr:["Renommer"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},Skip:{msgid:"Skip",msgstr:["Ignorer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},Upload:{msgid:"Upload",msgstr:["Téléverser"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Téléverser des dossiers"]},"Upload from device":{msgid:"Upload from device",msgstr:["Téléverser depuis l'appareil"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Le téléversement a été annulé"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Le téléversement a été ignoré"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Le téléversement de "{folder}" a été ignoré']},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléversement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Is ainm toirmiscthe comhaid nó fillteáin é "{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Is cineál comhaid toirmiscthe é "{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Ní cheadaítear "{segment}" taobh istigh d\'ainm comhaid nó fillteáin.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} soicind fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Níor cheart go gcríochnaíonn comhaid chomhad le "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New filename":{msgid:"New filename",msgstr:["Ainm comhaid nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},Upload:{msgid:"Upload",msgstr:["Uaslódáil"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó ghléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Léiríodh an uaslódáil"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Léiríodh an uaslódáil "{folder}".']},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» é un nome vedado para un ficheiro ou cartafol."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» é un tipo de ficheiro vedado."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Os nomes de ficheiros non deben rematar con «{segment}»."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O envío foi omitido"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["O envío de «{folder}» foi omitido"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Tiltott fájl- vagy mappanév: „{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Tiltott fájltípus: „{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Nem megengedett egy fájl- vagy mappanévben: „{segment}".']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fájlt érintő konfliktus","{count} fájlt érintő konfliktus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fájlt érintő konfliktus a mappában: {dirname}","{count}fájlt érintő konfliktus a mappában: {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Cancel:{msgid:"Cancel",msgstr:["Mégse"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Teljes művelet megszakítása"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},Continue:{msgid:"Continue",msgstr:["Tovább"]},"Create new":{msgid:"Create new",msgstr:["Új létrehozása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},"Existing version":{msgid:"Existing version",msgstr:["Jelenlegi változat"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Fájlnevek nem végződhetnek erre: „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Érvénytelen fájlnév"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Utolsó módosítás dátuma ismeretlen"]},New:{msgid:"New",msgstr:["Új"]},"New filename":{msgid:"New filename",msgstr:["Új fájlnév"]},"New version":{msgid:"New version",msgstr:["Új verzió"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Preview image":{msgid:"Preview image",msgstr:["Kép előnézete"]},Rename:{msgid:"Rename",msgstr:["Átnevezés"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Minden jelölőnégyzet kijelölése"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Minden jelenlegi fájl kijelölése"]},"Select all new files":{msgid:"Select all new files",msgstr:["Minden új fájl kijelölése"]},Skip:{msgid:"Skip",msgstr:["Kihagyás"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ezen fájl kihagyása","{count}fájl kihagyása"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ismeretlen méret"]},Upload:{msgid:"Upload",msgstr:["Feltöltés"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappák feltöltése"]},"Upload from device":{msgid:"Upload from device",msgstr:["Feltöltés eszközről"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Feltöltés meg lett szakítva"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Feltöltés át lett ugorva"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}” feltöltése át lett ugorva"]},"Upload progress":{msgid:"Upload progress",msgstr:["Feltöltési folyamat"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mely fájlokat kívánja megtartani?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["A folytatáshoz minden fájlból legalább egy verziót ki kell választani."]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly <linerly@proton.me>, 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nEmpty Slot Filler, 2023\nLinerly <linerly@proton.me>, 2023\n"},msgstr:["Last-Translator: Linerly <linerly@proton.me>, 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"albanobattistella <albanobattistella@gmail.com>, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFrancesco Sercia, 2024\nalbanobattistella <albanobattistella@gmail.com>, 2024\n"},msgstr:["Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" è un nome di file o cartella proibito.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"è un tipo di file proibito.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" non è consentito all\'interno di un nome di file o cartella.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},Cancel:{msgid:"Cancel",msgstr:["Annulla"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annulla l'intera operazione"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"Create new":{msgid:"Create new",msgstr:["Crea nuovo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['I nomi dei file non devono terminare con "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome file non valido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New filename":{msgid:"New filename",msgstr:["Nuovo nome file"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},Rename:{msgid:"Rename",msgstr:["Rinomina"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},Skip:{msgid:"Skip",msgstr:["Salta"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},Upload:{msgid:"Upload",msgstr:["Caricamento"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carica cartelle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carica dal dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Caricamento annullato"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Il caricamento è stato saltato"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Il caricamento di "{folder}" è stato saltato']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso del caricamento"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["È possibile rinominare il file, ignorarlo o annullare l'intera operazione."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"ja",json:{charset:"utf-8",headers:{"Last-Translator":"kshimohata, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\nkshimohata, 2024\n"},msgstr:["Last-Translator: kshimohata, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" は禁止されているファイルまたはフォルダ名です。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" は禁止されているファイルタイプです。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ファイルまたはフォルダ名に "{segment}" を含めることはできません。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ファイル数の競合"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} で {count} 個のファイルが競合しています"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Cancel:{msgid:"Cancel",msgstr:["キャンセル"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["すべての操作をキャンセルする"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},Continue:{msgid:"Continue",msgstr:["続ける"]},"Create new":{msgid:"Create new",msgstr:["新規作成"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},"Existing version":{msgid:"Existing version",msgstr:["既存バージョン"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ファイル名の末尾に "{segment}" を付けることはできません。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無効なファイル名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最終更新日不明"]},New:{msgid:"New",msgstr:["新規作成"]},"New filename":{msgid:"New filename",msgstr:["新しいファイル名"]},"New version":{msgid:"New version",msgstr:["新しいバージョン"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Preview image":{msgid:"Preview image",msgstr:["プレビュー画像"]},Rename:{msgid:"Rename",msgstr:["名前を変更"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["すべて選択"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["すべての既存ファイルを選択"]},"Select all new files":{msgid:"Select all new files",msgstr:["すべての新規ファイルを選択"]},Skip:{msgid:"Skip",msgstr:["スキップ"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} 個のファイルをスキップする"]},"Unknown size":{msgid:"Unknown size",msgstr:["サイズ不明"]},Upload:{msgid:"Upload",msgstr:["アップロード"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップロード"]},"Upload folders":{msgid:"Upload folders",msgstr:["フォルダのアップロード"]},"Upload from device":{msgid:"Upload from device",msgstr:["デバイスからのアップロード"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["アップロードはキャンセルされました"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["アップロードがスキップされました"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" のアップロードがスキップされました']},"Upload progress":{msgid:"Upload progress",msgstr:["アップロード進行状況"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["どのファイルを保持しますか?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров <sasetodorov@gmail.com>, 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров <sasetodorov@gmail.com>, 2022\n"},msgstr:["Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb",json:{charset:"utf-8",headers:{"Last-Translator":"Roger Knutsen, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRoger Knutsen, 2024\n"},msgstr:["Last-Translator: Roger Knutsen, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tillatt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hele operasjonen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"Create new":{msgid:"Create new",msgstr:["Opprett ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavn må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldig filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},Rename:{msgid:"Rename",msgstr:["Omdøp"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Hopp over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Last opp mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Last opp fra enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Opplastingen er kansellert"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Opplastingen er hoppet over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Opplasting av "{folder}" er hoppet over']},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico <rico-schwab@hotmail.com>, 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico <rico-schwab@hotmail.com>, 2023\n"},msgstr:["Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” to zabroniona nazwa pliku lub folderu."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” jest zabronionym typem pliku."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"Create new":{msgid:"Create new",msgstr:["Utwórz nowe"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Nazwy plików nie mogą kończyć się na „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nieprawidłowa nazwa pliku"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New filename":{msgid:"New filename",msgstr:["Nowa nazwa pliku"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},Rename:{msgid:"Rename",msgstr:["Zmiana nazwy"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie pola wyboru"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},Skip:{msgid:"Skip",msgstr:["Pomiń"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},Upload:{msgid:"Upload",msgstr:["Prześlij"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload folders":{msgid:"Upload folders",msgstr:["Prześlij foldery"]},"Upload from device":{msgid:"Upload from device",msgstr:["Prześlij z urządzenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Przesyłanie zostało anulowane"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Przesyłanie zostało pominięte"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Przesyłanie „{folder}” zostało pominięte"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Paulo Schopf, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\nPaulo Schopf, 2024\n"},msgstr:["Last-Translator: Paulo Schopf, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de arquivo proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido dentro de um nome de arquivo ou pasta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes dos arquivos não devem terminar com "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de arquivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de arquivo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},Skip:{msgid:"Skip",msgstr:["Pular"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carregar do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O upload foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O upload foi pulado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O upload de "{folder}" foi ignorado']},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva <mmsrs@sky.com>, 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva <mmsrs@sky.com>, 2022\n"},msgstr:["Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Александр, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nВлад, 2024\nAlex <fedotov22091982@gmail.com>, 2024\nRoman Stepanov, 2024\nMaksim Sukharev, 2024\nАлександр, 2024\n"},msgstr:["Last-Translator: Александр, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» — это запрещенное имя файла или папки."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» — это запрещенный тип файла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» не допускается в имени файла или папки."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отменить"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена файлов не должны заканчиваться на «{segment}»"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неверное имя файла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New filename":{msgid:"New filename",msgstr:["Новое имя файла"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Выбрать все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропустить"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},Upload:{msgid:"Upload",msgstr:["Загрузить"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузить файлы"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузить папки"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузить с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Загрузка была пропущена"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Загрузка «{folder}» была пропущена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Прогресс загрузки"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Вы можете переименовать файл, пропустить этот файл или отменить всю операцию."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJozef Gaal <preklady@mayday.sk>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ je zakázaný názov súboru alebo priečinka."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je zákazaný typ súboru.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}“ je zakázané v názve súboru alebo adresára.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} súbor má konflikt","{count} súbory majú konflikt","{count} súborov má konflikt","{count} súborov má konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} súborový konflikt v {dirname}","{count} súborové konflikty v {dirname}","{count} súborových konfliktov v {dirname}","{count} súborových konfliktov v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúnd zostáva"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} zostáva"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zostáva niekoľko sekúnd"]},Cancel:{msgid:"Cancel",msgstr:["Zrušiť"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušiť celú operáciu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušiť nahrávanie"]},Continue:{msgid:"Continue",msgstr:["Pokračovať"]},"Create new":{msgid:"Create new",msgstr:["Vytvoriť nové"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovanie zostávajúceho času"]},"Existing version":{msgid:"Existing version",msgstr:["Existujúca verzia"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Názvy súborov nesmú končiť znakom "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný názov súboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dátum poslednej úpravy neznámy"]},New:{msgid:"New",msgstr:["Nový"]},"New filename":{msgid:"New filename",msgstr:["Nový názov súboru"]},"New version":{msgid:"New version",msgstr:["Nová verzia"]},paused:{msgid:"paused",msgstr:["pozastavené"]},"Preview image":{msgid:"Preview image",msgstr:["Náhľad obrázka"]},Rename:{msgid:"Rename",msgstr:["Premenovať"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označiť všetky výberové políčka"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrať všetky existujúce súbory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrať všetky nové súbory"]},Skip:{msgid:"Skip",msgstr:["Preskočiť"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskočiť tento súbor","Preskočiť {count} súbory","Preskočiť {count} súborov","Preskočiť {count} súborov"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznáma veľkosť"]},Upload:{msgid:"Upload",msgstr:["Nahrať"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrať súbory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrať priečinky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrať zo zariadenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávanie bolo zrušené"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrávanie bolo preskočené"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nahrávanie "{folder}" bolo preskočené']},"Upload progress":{msgid:"Upload progress",msgstr:["Priebeh nahrávania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Ktoré súbory chcete ponechať?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru."]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJan Kraljič <jan.kraljic@patware.eu>, 2024\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" je prepovedano ime datoteka ali mape.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je prepovedan tip datoteke.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ni dovoljeno v imenu datoteke ali mape.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["1{count} datoteka je v konfliktu","1{count} datoteki sta v konfiktu","1{count} datotek je v konfliktu","{count} datotek je v konfliktu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} datoteka je v konfiktu v {dirname}","{count} datoteki sta v konfiktu v {dirname}","{count} datotek je v konfiktu v {dirname}","{count} konfliktov datotek v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Cancel:{msgid:"Cancel",msgstr:["Prekliči"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Prekliči celotni postopek"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},Continue:{msgid:"Continue",msgstr:["Nadaljuj"]},"Create new":{msgid:"Create new",msgstr:["Ustvari nov"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjujem čas do konca"]},"Existing version":{msgid:"Existing version",msgstr:["Obstoječa različica"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Imena datotek se ne smejo končati s "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nepravilno ime datoteke"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum zadnje spremembe neznan"]},New:{msgid:"New",msgstr:["Nov"]},"New filename":{msgid:"New filename",msgstr:["Novo ime datoteke"]},"New version":{msgid:"New version",msgstr:["Nova različica"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Preview image":{msgid:"Preview image",msgstr:["Predogled slike"]},Rename:{msgid:"Rename",msgstr:["Preimenuj"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Izberi vsa potrditvena polja"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Označi vse obstoječe datoteke"]},"Select all new files":{msgid:"Select all new files",msgstr:["Označi vse nove datoteke"]},Skip:{msgid:"Skip",msgstr:["Preskoči"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskoči datoteko","Preskoči {count} datoteki","Preskoči {count} datotek","Preskoči {count} datotek"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznana velikost"]},Upload:{msgid:"Upload",msgstr:["Naloži"]},"Upload files":{msgid:"Upload files",msgstr:["Naloži datoteke"]},"Upload folders":{msgid:"Upload folders",msgstr:["Naloži mape"]},"Upload from device":{msgid:"Upload from device",msgstr:["Naloži iz naprave"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nalaganje je bilo preklicano"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nalaganje je bilo preskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nalaganje "{folder}" je bilo preskočeno']},"Upload progress":{msgid:"Upload progress",msgstr:["Napredek nalaganja"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Katere datoteke želite obdržati?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Izbrati morate vsaj eno različico vsake datoteke da nadaljujete."]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” је забрањено име фајла или фолдера."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” је забрањен тип фајла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}” није дозвољено унутар имена фајла или фолдера."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},Cancel:{msgid:"Cancel",msgstr:["Откажи"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отказује комплетну операцију"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"Create new":{msgid:"Create new",msgstr:["Креирај ново"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена фајлова не смеју да се завршавају на „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име долазног фајла ће се додати број."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неисправно име фајла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New filename":{msgid:"New filename",msgstr:["Ново име фајла"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},Rename:{msgid:"Rename",msgstr:["Промени име"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},Skip:{msgid:"Skip",msgstr:["Прескочи"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},Upload:{msgid:"Upload",msgstr:["Отпреми"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload folders":{msgid:"Upload folders",msgstr:["Отпреми фолдере"]},"Upload from device":{msgid:"Upload from device",msgstr:["Отпреми са уређаја"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Отпремање је отказано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Отпремање је прескочено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Отпремање „{folder}”је прескочено"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" är ett förbjudet fil- eller mappnamn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" är en förbjuden filtyp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" är inte tillåtet i ett fil- eller mappnamn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnamn får inte sluta med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnamn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},Upload:{msgid:"Upload",msgstr:["Ladda upp"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Uppladdningen har hoppats över"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Uppladdningen av "{folder}" har hoppats över']},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat <ppnplus@protonmail.com>, 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" dosya ya da klasör adına izin verilmiyor.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" dosya türüne izin verilmiyor.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Bir dosya ya da klasör adında "{segment}" ifadesine izin verilmiyor.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dosya adları "{segment}" ile bitmemeli.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New filename":{msgid:"New filename",msgstr:["Yeni dosya adı"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},Upload:{msgid:"Upload",msgstr:["Yükle"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Yükleme atlandı"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" klasörünün yüklenmesi atlandı']},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" не є дозволеним ім\'ям файлу або каталогу.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" не є дозволеним типом файлу.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" не дозволене сполучення символів в назві файлу або каталогу.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"Create new":{msgid:"Create new",msgstr:["Створити новий"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Ім\'я файлів не можуть закінчуватися на "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Недійсне ім'я файлу"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New filename":{msgid:"New filename",msgstr:["Нове ім'я файлу"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},Rename:{msgid:"Rename",msgstr:["Перейменувати"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},Skip:{msgid:"Skip",msgstr:["Пропустити"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},Upload:{msgid:"Upload",msgstr:["Завантажити"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload folders":{msgid:"Upload folders",msgstr:["Завантажити каталоги"]},"Upload from device":{msgid:"Upload from device",msgstr:["Завантажити з пристрою"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Завантаження скасовано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Завантаження пропущено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Завантаження "{folder}" пропущено']},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Gloryandel, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGloryandel, 2024\n"},msgstr:["Last-Translator: Gloryandel, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是被禁止的文件名或文件夹名。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是被禁止的文件类型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允许包含在文件名或文件夹名中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整个操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"Create new":{msgid:"Create new",msgstr:["新建"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["服务端版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['文件名不得以 "{segment}" 结尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["如果同时选择两个版本,则上传文件的名称中将添加一个数字。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["无效文件名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},New:{msgid:"New",msgstr:["新建"]},"New filename":{msgid:"New filename",msgstr:["新文件名"]},"New version":{msgid:"New version",msgstr:["上传版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},Rename:{msgid:"Rename",msgstr:["重命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["保留所有服务端版本"]},"Select all new files":{msgid:"Select all new files",msgstr:["保留所有上传版本"]},Skip:{msgid:"Skip",msgstr:["跳过"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},Upload:{msgid:"Upload",msgstr:["上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Upload folders":{msgid:"Upload folders",msgstr:["上传文件夹"]},"Upload from device":{msgid:"Upload from device",msgstr:["从设备上传"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上传已取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上传已跳过"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['已跳过上传"{folder}"']},"Upload progress":{msgid:"Upload progress",msgstr:["上传进度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以重命名文件、跳过此文件或取消整个操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择保留一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是禁止使用的檔案或資料夾名稱。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是禁止使用的檔案類型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允許出現在檔案或資料夾名稱中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"Create new":{msgid:"Create new",msgstr:["創建新"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['檔案名不得以 "{segment}" 結尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無效的檔案名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New filename":{msgid:"New filename",msgstr:["新檔案名"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},Rename:{msgid:"Rename",msgstr:["重新命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},Skip:{msgid:"Skip",msgstr:["跳過"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},Upload:{msgid:"Upload",msgstr:["上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload folders":{msgid:"Upload folders",msgstr:["上傳資料夾"]},"Upload from device":{msgid:"Upload from device",msgstr:["從裝置上傳"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上傳已被取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上傳已被跳過"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 的上傳已被跳過']},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以選擇重新命名檔案、跳過此檔案或取消整個操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 <s8321414@gmail.com>, 2024\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>de.addTranslation(e.locale,e.json)));const ge=de.build(),ce=ge.ngettext.bind(ge),ue=ge.gettext.bind(ge);var fe=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(fe||{});class pe{_destinationFolder;_isPublic;_customHeaders;_uploadQueue=[];_jobQueue=new U.A({concurrency:(0,Y.F)().files?.chunked_upload?.max_parallel_count??5});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,s){if(this._isPublic=e,this._customHeaders={},!s){const t=`${T.PY}${T.lJ}`;let n;if(e)n="anonymous";else{const e=(0,y.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}s=new T.vd({id:0,owner:n,permissions:T.aX.ALL,root:T.lJ,source:t})}this.destination=s,se.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:ae()})}get destination(){return this._destinationFolder}set destination(e){if(!e||e.type!==T.pt.Folder||!e.source)throw new Error("Invalid destination folder");se.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get customHeaders(){return structuredClone(this._customHeaders)}setCustomHeader(e,s=""){this._customHeaders[e]=s}deleteCustomerHeader(e){delete this._customHeaders[e]}get queue(){return this._uploadQueue}reset(){0===this._uploadQueue.length&&0===this._jobQueue.size||(this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0,se.debug("Uploader state reset"))}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,s)=>e+s),0),s=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,s)=>e+s),0);this._queueSize=e,this._queueProgress=s,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const s of this._notifiers)try{s(e)}catch(s){se.warn("Error in upload notifier",{error:s,source:e.source})}}batchUpload(e,s,t){return t||(t=async e=>e),new F((async(n,a,i)=>{const o=new me("");await o.addChildren(s);const r=`${this.root.replace(/\/$/,"")}/${e.replace(/^\//,"")}`,l=new oe(r,!1,0,o);l.status=ie.UPLOADING,this._uploadQueue.push(l),se.debug("Starting new batch upload",{target:r});try{const s=(0,T.H4)(this.root,this._customHeaders),a=this.uploadDirectory(e,o,t,s);i((()=>a.cancel()));const r=await a;l.status=ie.FINISHED,n(r)}catch(e){se.error("Error in batch upload",{error:e}),l.status=ie.FAILED,a(ue("Upload has been cancelled"))}finally{this._notifyAll(l),this.updateStats()}}))}createDirectory(e,s,t){const n=(0,x.normalize)(`${e}/${s.name}`).replace(/\/$/,""),a=`${this.root.replace(/\/$/,"")}/${n.replace(/^\//,"")}`;if(!s.name)throw new Error("Can not create empty directory");const i=new oe(a,!1,0,s);return this._uploadQueue.push(i),new F((async(e,a,o)=>{const r=new AbortController;o((()=>r.abort())),i.signal.addEventListener("abort",(()=>a(ue("Upload has been cancelled")))),await this._jobQueue.add((async()=>{i.status=ie.UPLOADING;try{await t.createDirectory(n,{signal:r.signal}),e(i)}catch(e){e&&"object"==typeof e&&"status"in e&&405===e.status?(i.status=ie.FINISHED,se.debug("Directory already exists, writing into it",{directory:s.name})):(i.status=ie.FAILED,a(e))}finally{this._notifyAll(i),this.updateStats()}}))}))}uploadDirectory(e,s,t,n){const a=(0,x.normalize)(`${e}/${s.name}`).replace(/\/$/,"");return new F((async(i,o,r)=>{const l=new AbortController;r((()=>l.abort()));const m=await t(s.children,a);if(!1===m)return se.debug("Upload canceled by user",{directory:s}),void o(ue("Upload has been cancelled"));if(0===m.length&&s.children.length>0)return se.debug("Skipping directory, as all files were skipped by user",{directory:s}),void i([]);const d=[],g=[];l.signal.addEventListener("abort",(()=>{d.forEach((e=>e.cancel())),g.forEach((e=>e.cancel()))})),se.debug("Start directory upload",{directory:s});try{s.name&&(g.push(this.createDirectory(e,s,n)),await g.at(-1));for(const e of m)e instanceof me?d.push(this.uploadDirectory(a,e,t,n)):g.push(this.upload(`${a}/${e.name}`,e));i([await Promise.all(g),...await Promise.all(d)].flat())}catch(e){l.abort(e),o(e)}}))}upload(e,s,t,n=5){const a=`${(t=t||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:i}=new URL(a),o=i+(0,C.O0)(a.slice(i.length));return se.debug(`Uploading ${s.name} to ${o}`),new F((async(e,t,i)=>{re(s)&&(s=await new Promise((e=>s.file(e,t))));const r=s,l=ae("size"in r?r.size:void 0),m=this._isPublic||0===l||"size"in r&&r.size<l,d=new oe(a,!m,r.size,r);if(this._uploadQueue.push(d),this.updateStats(),i(d.cancel),m){se.debug("Initializing regular upload",{file:r,upload:d});const s=await ne(r,0,d.size),n=async()=>{try{d.response=await te(o,s,d.signal,(e=>{d.uploaded=d.uploaded+e.bytes,this.updateStats()}),void 0,{...this._customHeaders,"X-OC-Mtime":Math.floor(r.lastModified/1e3),"Content-Type":r.type}),d.uploaded=d.size,this.updateStats(),se.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){if((0,k.FZ)(e))return d.status=ie.FAILED,void t(ue("Upload has been cancelled"));e?.response&&(d.response=e.response),d.status=ie.FAILED,se.error(`Failed uploading ${r.name}`,{error:e,file:r,upload:d}),t("Failed uploading the file")}this._notifyAll(d)};this._jobQueue.add(n),this.updateStats()}else{se.debug("Initializing chunked upload",{file:r,upload:d});const s=await async function(e,s=5){const t=`${(0,S.dC)(`dav/uploads/${(0,y.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await k.Ay.request({method:"MKCOL",url:t,headers:n,"axios-retry":{retries:s,retryDelay:(e,s)=>I(e,s,1e3)}}),se.debug("Created temporary upload workspace",{url:t}),t}(o,n),a=[];for(let e=0;e<d.chunks;e++){const t=e*l,i=Math.min(t+l,d.size),m=()=>ne(r,t,l),g=()=>te(`${s}/${e+1}`,m,d.signal,(()=>this.updateStats()),o,{...this._customHeaders,"X-OC-Mtime":Math.floor(r.lastModified/1e3),"OC-Total-Length":r.size,"Content-Type":"application/octet-stream"},n).then((()=>{d.uploaded=d.uploaded+l})).catch((s=>{if(507===s?.response?.status)throw se.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:s,upload:d}),d.cancel(),d.status=ie.FAILED,s;throw(0,k.FZ)(s)||(se.error(`Chunk ${e+1} ${t} - ${i} uploading failed`,{error:s,upload:d}),d.cancel(),d.status=ie.FAILED),s}));a.push(this._jobQueue.add(g))}try{await Promise.all(a),this.updateStats(),d.response=await k.Ay.request({method:"MOVE",url:`${s}/.file`,headers:{...this._customHeaders,"X-OC-Mtime":Math.floor(r.lastModified/1e3),"OC-Total-Length":r.size,Destination:o}}),this.updateStats(),d.status=ie.FINISHED,se.debug(`Successfully uploaded ${r.name}`,{file:r,upload:d}),e(d)}catch(e){(0,k.FZ)(e)?(d.status=ie.FAILED,t(ue("Upload has been cancelled"))):(d.status=ie.FAILED,t("Failed assembling the chunks together")),k.Ay.request({method:"DELETE",url:`${s}`})}this._notifyAll(d)}return this._jobQueue.onIdle().then((()=>this.reset())),d}))}}function he(e,s,t,n,a,i,o,r){var l="function"==typeof e?e.options:e;return s&&(l.render=s,l.staticRenderFns=t,l._compiled=!0),i&&(l._scopeId="data-v-"+i),{exports:e,options:l}}const we=he({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,ve=he({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,ye=he({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,Te=he({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,s=e._self._c;return s("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(s){return e.$emit("click",s)}}},"span",e.$attrs,!1),[s("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[s("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?s("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports;function Ce(e){const s=(0,v.$V)((()=>t.e(6429).then(t.bind(t,16429)))),{promise:n,reject:a,resolve:i}=Promise.withResolvers();return(0,ee.Ss)(s,{error:e,validateFilename:T.KT},((...e)=>{const[{skip:s,rename:t}]=e;s?i(!1):t?i(t):a()})),n}function xe(e,s){return ke(e,s).length>0}function ke(e,s){const t=s.map((e=>e.basename));return e.filter((e=>{const s="basename"in e?e.basename:e.name;return-1!==t.indexOf(s)}))}const be=v.Ay.extend({name:"UploadPicker",components:{IconCancel:we,IconFolderUpload:ve,IconPlus:ye,IconUpload:Te,NcActionButton:K.A,NcActionCaption:J.A,NcActionSeparator:G.A,NcActions:$.A,NcButton:Z.A,NcIconSvgWrapper:Q.A,NcProgressBar:X.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noMenu:{type:Boolean,default:!1},destination:{type:T.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:ue,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",newFileMenuEntries:[],uploadManager:Le()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===T.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===T.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===T.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ie.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ie.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===fe.PAUSED},buttonLabel(){return this.noMenu?ue("Upload"):ue("New")},buttonName(){if(!this.isUploading)return this.buttonLabel}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&se.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=q({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),se.debug("UploadPicker initialised")},methods:{async onClick(e){e.handler(this.destination,await this.getContent().catch((()=>[])))},onTriggerPick(e=!1){const s=this.$refs.input;this.canUploadFolders&&(s.webkitdirectory=e),this.$nextTick((()=>s.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},onPick(){const e=this.$refs.input,s=e.files?Array.from(e.files):[];var t;this.uploadManager.batchUpload("",s,(t=this.getContent,async(e,s)=>{try{const n=await t(s).catch((()=>[])),a=ke(e,n);if(a.length>0){const{selected:t,renamed:i}=await Fe(s,a,n,{recursive:!0});e=[...t,...i]}const i=[];for(const s of e)try{(0,T.KT)(s.name),i.push(s)}catch(t){if(!(t instanceof T.di))throw se.error(`Unexpected error while validating ${s.name}`,{error:t}),t;let n=await Ce(t);!1!==n&&(n=(0,T.E6)(n,e.map((e=>e.name))),Object.defineProperty(s,"name",{value:n}),i.push(s))}if(0===i.length&&e.length>0){const e=(0,C.P8)(s);(0,ee.cf)(e?ue('Upload of "{folder}" has been skipped',{folder:e}):ue("Upload has been skipped"))}return i}catch(e){return se.debug("Upload has been cancelled",{error:e}),(0,ee.I9)(ue("Upload has been cancelled")),!1}})).catch((e=>se.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=ue("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=ue("a few seconds left");else if(e>60){const s=new Date(0);s.setSeconds(e);const t=s.toISOString().slice(11,19);this.timeLeft=ue("{time} left",{time:t})}else this.timeLeft=ue("{seconds} seconds left",{seconds:e});else this.timeLeft=ue("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,T.m1)(e)):se.debug("Invalid destination")},onUploadCompletion(e){e.status===ie.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}});function Le(e=(0,w.f)(),s=!1){return(s||void 0===window._nc_uploader)&&(window._nc_uploader=new pe(e)),window._nc_uploader}async function Fe(e,s,n,a){const i=(0,v.$V)((()=>Promise.all([t.e(4208),t.e(918)]).then(t.bind(t,70918))));return new Promise(((t,o)=>{const r=new v.Ay({name:"ConflictPickerRoot",render:l=>l(i,{props:{dirname:e,conflicts:s,content:n,recursiveUpload:!0===a?.recursive},on:{submit(e){t(e),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)},cancel(e){o(e??new Error("Canceled")),r.$destroy(),r.$el?.parentNode?.removeChild(r.$el)}}})});r.$mount(),document.body.appendChild(r.$el)}))}he(be,(function(){var e=this,s=e._self._c;return e._self._setupProxy,e.destination?s("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[!e.noMenu&&0!==e.newFileMenuEntries.length||e.canUploadFolders?s("NcActions",{attrs:{"aria-label":e.buttonLabel,"menu-name":e.buttonName,type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[s("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),s("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file","close-after-click":!0},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?s("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":"","data-cy-upload-picker-menu-entry":"upload-folder"},on:{click:function(s){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e.noMenu?e._e():e._l(e.menuEntriesUpload,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])})),!e.noMenu&&e.menuEntriesNew.length>0?[s("NcActionSeparator"),s("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e(),!e.noMenu&&e.menuEntriesOther.length>0?[s("NcActionSeparator"),e._l(e.menuEntriesOther,(function(t){return s("NcActionButton",{key:t.id,staticClass:"upload-picker__menu-entry",attrs:{icon:t.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":t.id},on:{click:function(s){return e.onClick(t)}},scopedSlots:e._u([t.iconSvgInline?{key:"icon",fn:function(){return[s("NcIconSvgWrapper",{attrs:{svg:t.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(t.displayName)+" ")])}))]:e._e()],2):s("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file",type:"secondary"},on:{click:function(s){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]),s("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[s("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),s("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?s("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[s("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),s("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],0,0,"c5517ef8").exports},85136:(e,s,t)=>{"use strict";t.d(s,{a:()=>u,j:()=>g,k:()=>c,l:()=>d,t:()=>o});var n=t(84093);const a=(0,t(11195).$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali <alimahwer@yahoo.com>, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAli <alimahwer@yahoo.com>, 2024\n"},msgstr:["Last-Translator: Ali <alimahwer@yahoo.com>, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" لا يصلح كاسم مجلد.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" غير مسموح به كاسم مجلد']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" غير مسموح به داخل اسم مجلد.']},"All files":{msgid:"All files",msgstr:["كل الملفات"]},Choose:{msgid:"Choose",msgstr:["إختَر"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["إختَر {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["إختَر %n ملف","إختَر %n ملف","إختَر %n ملف","إختَر %n ملفات","إختَر %n ملف","إختَر %n ملف"]},Copy:{msgid:"Copy",msgstr:["نسخ"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["نسخٌ إلى {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["تعذّر إنشاء المجلد الجديد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["يتعذّر تحميل إعدادات الملفات"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["يتعذّر تحميل مناظير views الملفات"]},"Create directory":{msgid:"Create directory",msgstr:["أنشِيءْ مجلّداً"]},"Current view selector":{msgid:"Current view selector",msgstr:["مُنتقِي المنظور الحالي"]},Favorites:{msgid:"Favorites",msgstr:["المُفضَّلة"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا."]},"Filter file list":{msgid:"Filter file list",msgstr:["فلترة قائمة الملفات"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["اسم المجلد لا يمكن أن يكون فارغاً."]},Home:{msgid:"Home",msgstr:["البداية"]},Modified:{msgid:"Modified",msgstr:["مُعدَّل"]},Move:{msgid:"Move",msgstr:["أُنقُل"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["أُنقُل إلى {target}"]},Name:{msgid:"Name",msgstr:["الاسم"]},New:{msgid:"New",msgstr:["جديد"]},"New folder":{msgid:"New folder",msgstr:["مٌجلّد جديد"]},"New folder name":{msgid:"New folder name",msgstr:["اسم المجلد الجديد"]},"No files in here":{msgid:"No files in here",msgstr:["لا توجد ملفات هنا"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["لا توجد ملفات تتطابق مع الفلتر الذي وضعته"]},"No matching files":{msgid:"No matching files",msgstr:["لا توجد ملفات مُطابِقة"]},Recent:{msgid:"Recent",msgstr:["الحالي"]},"Select all entries":{msgid:"Select all entries",msgstr:["حدِّد كل المداخل"]},"Select entry":{msgid:"Select entry",msgstr:["إختَر المدخل"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["إختر سطر الـ {nodename}"]},Size:{msgid:"Size",msgstr:["الحجم"]},Undo:{msgid:"Undo",msgstr:["تراجع"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["قُم برفع محتوىً أو قُم بمزامنة أجهزتك!"]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2024","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nenolp <enolp@softastur.org>, 2024\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2024\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» ye un nome de carpeta inválidu."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» ye un nome de carpeta inválidu"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Nun se permite'l caráuter «/» dientro'l nome de les carpetes."]},"All files":{msgid:"All files",msgstr:["Tolos ficheros"]},Choose:{msgid:"Choose",msgstr:["Escoyer"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoyer «{ficheru}»"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoyer %n ficheru","Escoyer %n ficheros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nun se pudo crear la carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nun se pudo cargar la configuración de los ficheros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nun se pudieron cargar les vistes de los ficheros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un direutoriu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de la vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Equí apaecen los ficheros y les carpetes que metas en Favoritos."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Equí apaecen los fichero y les carpetes que modificares apocayá."]},"Filter file list":{msgid:"Filter file list",msgstr:["Peñerar la llista de ficheros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nome de la carpeta nun pue tar baleru."]},Home:{msgid:"Home",msgstr:["Aniciu"]},Modified:{msgid:"Modified",msgstr:["Modificóse"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuevu"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nueva"]},"New folder name":{msgid:"New folder name",msgstr:["Nome de carpeta nuevu"]},"No files in here":{msgid:"No files in here",msgstr:["Equí nun hai nengún ficheru"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nun s'atopó nengún ficheru que concasare cola peñera."]},"No matching files":{msgid:"No matching files",msgstr:["Nun hai nengún ficheru que concase"]},Recent:{msgid:"Recent",msgstr:["De recién"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleicionar toles entraes"]},"Select entry":{msgid:"Select entry",msgstr:["Seleicionar la entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleicionar la filera de: {nodename}"]},Size:{msgid:"Size",msgstr:["Tamañu"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Xubi dalgún elementu o sincroniza colos tos preseos!"]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Disober"]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Sergi Font, 2024","Language-Team":"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nv v <e670006006@gmail.com>, 2024\nMarc Riera <marcriera@softcatala.org>, 2024\nSergi Font, 2024\n"},msgstr:["Last-Translator: Sergi Font, 2024\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" és un nom de carpeta no vàlid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no és permès en el nom de carpeta']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no és permès en el nom de carpeta.']},"All files":{msgid:"All files",msgstr:["Tots els fitxers"]},Choose:{msgid:"Choose",msgstr:["Tria"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Tria {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Tria %n fitxer","Tria %n fitxers"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No s'ha pogut crear la carpeta nova"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No es poden carregar fitxers de configuració"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No es poden carregar fitxers de vistes"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de visualització actual"]},Favorites:{msgid:"Favorites",msgstr:["Preferits"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Els fitxers i les carpetes recentment modificats es mostraran aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar llistat de fitxers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nom de la carpeta no pot estar buit."]},Home:{msgid:"Home",msgstr:["Inici"]},Modified:{msgid:"Modified",msgstr:["Data de modificació"]},Move:{msgid:"Move",msgstr:["Desplaça"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Desplaça a {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Crea"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nova"]},"New folder name":{msgid:"New folder name",msgstr:["Nom de la carpeta nova"]},"No files in here":{msgid:"No files in here",msgstr:["No hi ha cap fitxer"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No s'ha trobat cap fitxer que coincideixi amb el filtre."]},"No matching files":{msgid:"No matching files",msgstr:["No hi ha cap fitxer que coincideixi"]},Recent:{msgid:"Recent",msgstr:["Recents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecciona totes les entrades"]},"Select entry":{msgid:"Select entry",msgstr:["Selecciona l'entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecciona la fila per a {nodename}"]},Size:{msgid:"Size",msgstr:["Mida"]},Undo:{msgid:"Undo",msgstr:["Desfés"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2020","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki <pavel.borecki@gmail.com>, 2020\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:187"},msgstr:["Zpět"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}“ není platný název složky."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}“ není povolený název složky."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky."]},"All files":{msgid:"All files",msgstr:["Veškeré soubory"]},Choose:{msgid:"Choose",msgstr:["Zvolit"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Zvolit {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Zvolte %n soubor","Zvolte %n soubory","Zvolte %n souborů","Zvolte %n soubory"]},Copy:{msgid:"Copy",msgstr:["Zkopírovat"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Zkopírovat do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Novou složku se nepodařilo vytvořit"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodařilo se načíst nastavení pro soubory"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodařilo se načíst pohledy souborů"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvořit složku"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výběr stávajícího zobrazení"]},Favorites:{msgid:"Favorites",msgstr:["Oblíbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Zde se zobrazí soubory a složky, které označíte jako oblíbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Zde se zobrazí soubory a složky, které jste nedávno pozměnili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovat seznam souborů"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Složku je třeba nějak nazvat."]},Home:{msgid:"Home",msgstr:["Domů"]},Modified:{msgid:"Modified",msgstr:["Změněno"]},Move:{msgid:"Move",msgstr:["Přesounout"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Přesunout do {target}"]},Name:{msgid:"Name",msgstr:["Název"]},New:{msgid:"New",msgstr:["Nové"]},"New folder":{msgid:"New folder",msgstr:["Nová složka"]},"New folder name":{msgid:"New folder name",msgstr:["Název pro novou složku"]},"No files in here":{msgid:"No files in here",msgstr:["Nejsou zde žádné soubory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenalezeny žádné soubory odpovídající vašemu filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Žádné odpovídající soubory"]},Recent:{msgid:"Recent",msgstr:["Nedávné"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrat všechny položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrat položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vybrat řádek pro {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Zpět"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!"]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldigt mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tilladt mappenavn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tilladt i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Vælg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vælg {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vælg %n fil","Vælg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke oprette den nye mappe"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Filindstillingerne kunne ikke indlæses"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke indlæse filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opret mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuel visningsvælger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper, du markerer som foretrukne, vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper, du for nylig har ændret, vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer fil liste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavnet må ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Ændret"]},Move:{msgid:"Move",msgstr:["Flyt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flyt til {target}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Ny mappe navn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Der blev ikke fundet nogen filer, der matcher dit filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen matchende filer"]},Recent:{msgid:"Recent",msgstr:["Seneste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vælg alle poster"]},"Select entry":{msgid:"Select entry",msgstr:["Vælg post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vælg rækken for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størelse"]},Undo:{msgid:"Undo",msgstr:["Fortryd"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload noget indhold eller synkroniser med dine enheder!"]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Ettore Atalan <atalanttore@googlemail.com>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2023\nMarkus Eckstein, 2023\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\nJoachim Sokolowski, 2023\nEttore Atalan <atalanttore@googlemail.com>, 2024\n"},msgstr:["Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden."]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Startseite"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Keine Dateien vorhanden"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die deinem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Jüngste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann <mario_siegmann@web.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2024\n"},msgstr:["Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Hier sind keine Dateien"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Neueste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig machen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Αναίρεση"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2023\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is an invalid folder name.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is not an allowed folder name']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is not allowed inside a folder name.']},"All files":{msgid:"All files",msgstr:["All files"]},Choose:{msgid:"Choose",msgstr:["Choose"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choose {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choose %n file","Choose %n files"]},Copy:{msgid:"Copy",msgstr:["Copy"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copy to {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Could not create the new folder"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Could not load files settings"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Could not load files views"]},"Create directory":{msgid:"Create directory",msgstr:["Create directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Current view selector"]},Favorites:{msgid:"Favorites",msgstr:["Favourites"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Files and folders you mark as favourite will show up here."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Files and folders you recently modified will show up here."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter file list"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Folder name cannot be empty."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modified"]},Move:{msgid:"Move",msgstr:["Move"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Move to {target}"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["New"]},"New folder":{msgid:"New folder",msgstr:["New folder"]},"New folder name":{msgid:"New folder name",msgstr:["New folder name"]},"No files in here":{msgid:"No files in here",msgstr:["No files in here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No files matching your filter were found."]},"No matching files":{msgid:"No matching files",msgstr:["No matching files"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Select all entries"]},"Select entry":{msgid:"Select entry",msgstr:["Select entry"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Select the row for {nodename}"]},Size:{msgid:"Size",msgstr:["Size"]},Undo:{msgid:"Undo",msgstr:["Undo"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload some content or sync with your devices!"]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Malfari"]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta no válido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido dentro del nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elige %n archivo","Elige %n archivos","Seleccione %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudieron cargar los ajustes de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:[" Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nuevo nombre de carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidiesen con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Elegir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Elija {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elija %n archivo","Elija %n archivos","Elija %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de la carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleccionar %n archivo","Seleccionar %n archivos","Seleccionar %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear carpeta"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Suba algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Desegin"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"reza reza <forghan89@yahoo.com>, 2024","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAmir Shekoohi, 2024\nreza reza <forghan89@yahoo.com>, 2024\n"},msgstr:["Last-Translator: reza reza <forghan89@yahoo.com>, 2024\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} نام پوشه معتبر نیست"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} نام پوشه مجاز نیست"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" نمی‌تواند در نام پوشه استفاده شود.']},"All files":{msgid:"All files",msgstr:["همه فایل‌ها"]},Choose:{msgid:"Choose",msgstr:["انتخاب"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["انتخاب {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["انتخاب %n فایل","انتخاب %n فایل"]},Copy:{msgid:"Copy",msgstr:["رونوشت"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["رونوشت از {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["پوشه جدید ایجاد نشد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["تنظیمات فایل باز نشد"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["نمای فایل‌ها بارگیری نشد"]},"Create directory":{msgid:"Create directory",msgstr:["ایجاد فهرست"]},"Current view selector":{msgid:"Current view selector",msgstr:["انتخابگر نماگر فعلی"]},Favorites:{msgid:"Favorites",msgstr:["علایق"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند."]},"Filter file list":{msgid:"Filter file list",msgstr:["فیلتر لیست فایل"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["نام پوشه نمی تواند خالی باشد."]},Home:{msgid:"Home",msgstr:["خانه"]},Modified:{msgid:"Modified",msgstr:["اصلاح شده"]},Move:{msgid:"Move",msgstr:["انتقال"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["انتقال به {target}"]},Name:{msgid:"Name",msgstr:["نام"]},New:{msgid:"New",msgstr:["جدید"]},"New folder":{msgid:"New folder",msgstr:["پوشه جدید"]},"New folder name":{msgid:"New folder name",msgstr:["نام پوشه جدید"]},"No files in here":{msgid:"No files in here",msgstr:["فایلی اینجا نیست"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["هیچ فایلی مطابق با فیلتر شما یافت نشد."]},"No matching files":{msgid:"No matching files",msgstr:["فایل منطبقی وجود ندارد"]},Recent:{msgid:"Recent",msgstr:["اخیر"]},"Select all entries":{msgid:"Select all entries",msgstr:["انتخاب همه ورودی ها"]},"Select entry":{msgid:"Select entry",msgstr:["انتخاب ورودی"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["انتخاب ردیف برای {nodename}"]},Size:{msgid:"Size",msgstr:["اندازه"]},Undo:{msgid:"Undo",msgstr:["بازگردانی"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"thingumy, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\n"},msgstr:["Last-Translator: thingumy, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" on virheellinen kansion nimi.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ei ole sallittu kansion nimi']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ei ole sallittu kansion nimessä.']},"All files":{msgid:"All files",msgstr:["Kaikki tiedostot"]},Choose:{msgid:"Choose",msgstr:["Valitse"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Valitse {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Valitse %n tiedosto","Valitse %n tiedostoa"]},Copy:{msgid:"Copy",msgstr:["Kopioi"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopioi sijaintiin {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Uutta kansiota ei voitu luoda"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tiedoston asetuksia ei saa ladattua"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tiedoston näkymiä ei saa ladattua"]},"Create directory":{msgid:"Create directory",msgstr:["Luo kansio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nykyisen näkymän valinta"]},Favorites:{msgid:"Favorites",msgstr:["Suosikit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä."]},"Filter file list":{msgid:"Filter file list",msgstr:["Suodata tiedostolistaa"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Kansion nimi ei voi olla tyhjä."]},Home:{msgid:"Home",msgstr:["Koti"]},Modified:{msgid:"Modified",msgstr:["Muokattu"]},Move:{msgid:"Move",msgstr:["Siirrä"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Siirrä sijaintiin {target}"]},Name:{msgid:"Name",msgstr:["Nimi"]},New:{msgid:"New",msgstr:["Uusi"]},"New folder":{msgid:"New folder",msgstr:["Uusi kansio"]},"New folder name":{msgid:"New folder name",msgstr:["Uuden kansion nimi"]},"No files in here":{msgid:"No files in here",msgstr:["Täällä ei ole tiedostoja"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Suodatinta vastaavia tiedostoja ei löytynyt."]},"No matching files":{msgid:"No matching files",msgstr:["Ei vastaavia tiedostoja"]},Recent:{msgid:"Recent",msgstr:["Viimeisimmät"]},"Select all entries":{msgid:"Select all entries",msgstr:["Valitse kaikki tietueet"]},"Select entry":{msgid:"Select entry",msgstr:["Valitse tietue"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Valitse rivi {nodename}:lle"]},Size:{msgid:"Size",msgstr:["Koko"]},Undo:{msgid:"Undo",msgstr:["Kumoa"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"DEV314R, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nRémi LEBLOND, 2023\nMordecai, 2023\nfleopaulD, 2023\nFrançois Ch., 2024\nJérôme HERBINET, 2024\nBenoit Pruneau, 2024\nDEV314R, 2024\n"},msgstr:["Last-Translator: DEV314R, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" n\'est pas un nom de dossier valide.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" n\'est pas un nom de dossier autorisé.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Le caractère « / » n'est pas autorisé dans un nom de dossier."]},"All files":{msgid:"All files",msgstr:["Tous les fichiers"]},Choose:{msgid:"Choose",msgstr:["Choisir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choisir {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choisir %n fichier","Choisir %n fichiers","Choisir %n fichiers "]},Copy:{msgid:"Copy",msgstr:["Copier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copier vers {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossible de créer le nouveau dossier"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Les paramètres des fichiers n'ont pas pu être chargés"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Les aperçus des fichiers n'ont pas pu être chargés"]},"Create directory":{msgid:"Create directory",msgstr:["Créer un répertoire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Sélecteur de vue courante"]},Favorites:{msgid:"Favorites",msgstr:["Favoris"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Les fichiers et répertoires marqués en favoris apparaîtront ici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Les fichiers et répertoires modifiés récemment apparaîtront ici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer la liste des fichiers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Le nom du dossier ne peut pas être vide."]},Home:{msgid:"Home",msgstr:["Accueil"]},Modified:{msgid:"Modified",msgstr:["Modifié"]},Move:{msgid:"Move",msgstr:["Déplacer"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Déplacer vers {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Nouveau"]},"New folder":{msgid:"New folder",msgstr:["Nouveau répertoire"]},"New folder name":{msgid:"New folder name",msgstr:["Nom du nouveau répertoire"]},"No files in here":{msgid:"No files in here",msgstr:["Aucun fichier ici"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Aucun fichier trouvé correspondant à votre filtre."]},"No matching files":{msgid:"No matching files",msgstr:["Aucun fichier trouvé"]},Recent:{msgid:"Recent",msgstr:["Récents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tous sélectionner"]},"Select entry":{msgid:"Select entry",msgstr:["Sélectionner une entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Sélectionner l'enregistrement pour {nodename}"]},Size:{msgid:"Size",msgstr:["Taille"]},Undo:{msgid:"Undo",msgstr:["Rétablir"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Charger du contenu ou synchroniser avec vos équipements !"]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['Is ainm fillteáin neamhbhailí é "{name}".']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['Ní ainm fillteáin ceadaithe é "{name}".']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Ní cheadaítear "/" taobh istigh d\'ainm fillteáin.']},"All files":{msgid:"All files",msgstr:["Gach comhad"]},Choose:{msgid:"Choose",msgstr:["Roghnaigh"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Roghnaigh {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Roghnaigh %n comhad","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid"]},Copy:{msgid:"Copy",msgstr:["Cóip"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Cóipeáil chuig {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Níorbh fhéidir an fillteán nua a chruthú"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Níorbh fhéidir socruithe comhaid a lódáil"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Níorbh fhéidir radhairc comhad a lódáil"]},"Create directory":{msgid:"Create directory",msgstr:["Cruthaigh eolaire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Roghnóir amhairc reatha"]},Favorites:{msgid:"Favorites",msgstr:["Ceanáin"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo."]},"Filter file list":{msgid:"Filter file list",msgstr:["Scag liosta comhad"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ní féidir ainm fillteáin a bheith folamh."]},Home:{msgid:"Home",msgstr:["Baile"]},Modified:{msgid:"Modified",msgstr:["Athraithe"]},Move:{msgid:"Move",msgstr:["Bog"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Bog go{target}"]},Name:{msgid:"Name",msgstr:["Ainm"]},New:{msgid:"New",msgstr:["Nua"]},"New folder":{msgid:"New folder",msgstr:["Fillteán nua"]},"New folder name":{msgid:"New folder name",msgstr:["Ainm fillteáin nua"]},"No files in here":{msgid:"No files in here",msgstr:["Níl aon chomhaid istigh anseo"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Níor aimsíodh aon chomhad a tháinig le do scagaire."]},"No matching files":{msgid:"No matching files",msgstr:["Gan comhaid meaitseála"]},Recent:{msgid:"Recent",msgstr:["le déanaí"]},"Select all entries":{msgid:"Select all entries",msgstr:["Roghnaigh gach iontráil"]},"Select entry":{msgid:"Select entry",msgstr:["Roghnaigh iontráil"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Roghnaigh an ró do {nodename}"]},Size:{msgid:"Size",msgstr:["Méid"]},Undo:{msgid:"Undo",msgstr:["Cealaigh"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!"]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» non é un nome de cartafol válido."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» non é un nome de cartafol permitido"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["A «/» non está permitida no nome dun cartafol."]},"All files":{msgid:"All files",msgstr:["Todos os ficheiros"]},Choose:{msgid:"Choose",msgstr:["Escoller"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoller {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoller %n ficheiro","Escoller %n ficheiros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Non foi posíbel crear o novo cartafol"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Non foi posíbel cargar os axustes dos ficheiros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Non foi posíbel cargar as vistas dos ficheiros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os ficheiros e cartafoles que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Os ficheiros e cartafoles que modificou recentemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar a lista de ficheiros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome do cartafol non pode estar baleiro."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover cara a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novo cartafol"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome do cartafol"]},"No files in here":{msgid:"No files in here",msgstr:["Aquí non hai ficheiros"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Non se atopou ningún ficheiro que coincida co filtro."]},"No matching files":{msgid:"No matching files",msgstr:["Non hai ficheiros coincidentes"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccionar a fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Enviar algún contido ou sincronizalo cos seus dispositivos!"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["ביטול"]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFőnyedi Áron <sajtman@gmail.com>, 2023\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” érvénytelen mappanév."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” nem engedélyezett mappanév"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” jel nem szerepelhet mappa nevében."]},"All files":{msgid:"All files",msgstr:["Minden fájl"]},Choose:{msgid:"Choose",msgstr:["Kiválasztás"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} kiválasztása"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n fájl kiválasztása","%n fájl kiválasztása"]},Copy:{msgid:"Copy",msgstr:["Másolás"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Másolás ide: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Az új mappa létrehozása nem lehetséges"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Fájlbeállítások betöltése nem lehetséges"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Fájlnézetek betöltése nem lehetséges"]},"Create directory":{msgid:"Create directory",msgstr:["Mappa létrehozása"]},"Current view selector":{msgid:"Current view selector",msgstr:["Jelenlegi nézet választó"]},Favorites:{msgid:"Favorites",msgstr:["Kedvencek"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["A kedvencként megjelölt fájlok és mappák itt jelennek meg."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["A nemrég módosított fájlok és mappák itt jelennek meg."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fájl lista szűrése"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["A mappa neve nem lehet üres."]},Home:{msgid:"Home",msgstr:["Kezdőlap"]},Modified:{msgid:"Modified",msgstr:["Módosítva"]},Move:{msgid:"Move",msgstr:["Mozgatás"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mozgatás ide: {target}"]},Name:{msgid:"Name",msgstr:["Név"]},New:{msgid:"New",msgstr:["Új"]},"New folder":{msgid:"New folder",msgstr:["Új mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Új mappa név"]},"No files in here":{msgid:"No files in here",msgstr:["Itt nincsenek fájlok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nincs a szűrési feltételeknek megfelelő fájl."]},"No matching files":{msgid:"No matching files",msgstr:["Nincs ilyen fájl"]},Recent:{msgid:"Recent",msgstr:["Gyakori"]},"Select all entries":{msgid:"Select all entries",msgstr:["Minden bejegyzés kijelölése"]},"Select entry":{msgid:"Select entry",msgstr:["Bejegyzés kijelölése"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Válassz sort a következőnek: {nodename}"]},Size:{msgid:"Size",msgstr:["Méret"]},Undo:{msgid:"Undo",msgstr:["Visszavonás"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Lun May, 2024","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nLinerly <linerly@proton.me>, 2023\nLun May, 2024\n"},msgstr:["Last-Translator: Lun May, 2024\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" bukan nama folder yang valid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" merupakan nama folder yang tidak diperbolehkan']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" tidak diperbolehkan di dalam nama folder.']},"All files":{msgid:"All files",msgstr:["Semua berkas"]},Choose:{msgid:"Choose",msgstr:["Pilih"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Pilih {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Pilih %n file"]},Copy:{msgid:"Copy",msgstr:["Salin"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Salin ke {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Tidak dapat membuat folder baru"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tidak dapat memuat pengaturan file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tidak dapat memuat tampilan file"]},"Create directory":{msgid:"Create directory",msgstr:["Buat direktori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Pemilih tampilan saat ini"]},Favorites:{msgid:"Favorites",msgstr:["Favorit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini."]},"Filter file list":{msgid:"Filter file list",msgstr:["Saring daftar berkas"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Name berkas tidak boleh kosong."]},Home:{msgid:"Home",msgstr:["Beranda"]},Modified:{msgid:"Modified",msgstr:["Diubah"]},Move:{msgid:"Move",msgstr:["Pindahkan"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Pindahkan ke {target}"]},Name:{msgid:"Name",msgstr:["Nama"]},New:{msgid:"New",msgstr:["Baru"]},"New folder":{msgid:"New folder",msgstr:["Folder baru"]},"New folder name":{msgid:"New folder name",msgstr:["Nama folder baru"]},"No files in here":{msgid:"No files in here",msgstr:["Tidak ada berkas di sini"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Tidak ada berkas yang cocok dengan penyaringan Anda."]},"No matching files":{msgid:"No matching files",msgstr:["Tidak ada berkas yang cocok"]},Recent:{msgid:"Recent",msgstr:["Terkini"]},"Select all entries":{msgid:"Select all entries",msgstr:["Pilih semua entri"]},"Select entry":{msgid:"Select entry",msgstr:["Pilih entri"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Pilih baris untuk {nodename}"]},Size:{msgid:"Size",msgstr:["Ukuran"]},Undo:{msgid:"Undo",msgstr:["Tidak jadi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Unggah beberapa konten atau sinkronkan dengan perangkat Anda!"]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er ógilt möppuheiti.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ekki leyfilegt möppuheiti']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er er ekki leyfilegt innan í skráarheiti.']},"All files":{msgid:"All files",msgstr:["Allar skrár"]},Choose:{msgid:"Choose",msgstr:["Veldu"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Veldu {file}"]},Copy:{msgid:"Copy",msgstr:["Afrita"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Afrita í {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Get ekki búið til nýju möppuna"]},"Create directory":{msgid:"Create directory",msgstr:["Búa til möppu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Núverandi val sýnar"]},Favorites:{msgid:"Favorites",msgstr:["Eftirlæti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Skrár og möppur sem þú merkir sem eftirlæti birtast hér."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Skrár og möppur sem þú breyttir nýlega birtast hér."]},"Filter file list":{msgid:"Filter file list",msgstr:["Sía skráalista"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Möppuheiti má ekki vera tómt."]},Home:{msgid:"Home",msgstr:["Heim"]},Modified:{msgid:"Modified",msgstr:["Breytt"]},Move:{msgid:"Move",msgstr:["Færa"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Færa í {target}"]},Name:{msgid:"Name",msgstr:["Heiti"]},New:{msgid:"New",msgstr:["Nýtt"]},"New folder":{msgid:"New folder",msgstr:["Ný mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Heiti nýrrar möppu"]},"No files in here":{msgid:"No files in here",msgstr:["Engar skrár hér"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Engar skrár fundust sem passa við síuna."]},"No matching files":{msgid:"No matching files",msgstr:["Engar samsvarandi skrár"]},Recent:{msgid:"Recent",msgstr:["Nýlegt"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velja allar færslur"]},"Select entry":{msgid:"Select entry",msgstr:["Velja færslu"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Veldu röðina fyrir {nodename}"]},Size:{msgid:"Size",msgstr:["Stærð"]},Undo:{msgid:"Undo",msgstr:["Afturkalla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Sendu inn eitthvað efni eða samstilltu við tækin þín!"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Sebastiano Furlan, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nClaudio Scandella, 2023\nRaffaele Silano <raffaelone@gmail.com>, 2024\nSebastiano Furlan, 2024\n"},msgstr:["Last-Translator: Sebastiano Furlan, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" non è un nome di cartella valido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" non è un nome di cartella ammesso']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" non è ammesso all\'interno del nome di una cartella.']},"All files":{msgid:"All files",msgstr:["Tutti i file"]},Choose:{msgid:"Choose",msgstr:["Scegli"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Scegli {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleziona %n file","Seleziona %n file","Seleziona %n file"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia in {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossibile creare la nuova cartella"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Impossibile caricare le impostazioni dei file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Impossibile caricare le visualizzazioni dei file"]},"Create directory":{msgid:"Create directory",msgstr:["Crea directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selettore della vista corrente"]},Favorites:{msgid:"Favorites",msgstr:["Preferiti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["I file e le cartelle contrassegnate come preferite saranno mostrate qui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["I file e le cartelle che hai modificato di recente saranno mostrate qui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtra elenco file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Il nome della cartella non può essere vuoto."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificato"]},Move:{msgid:"Move",msgstr:["Sposta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Sposta in {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuovo"]},"New folder":{msgid:"New folder",msgstr:["Nuova cartella"]},"New folder name":{msgid:"New folder name",msgstr:["Nuovo nome cartella"]},"No files in here":{msgid:"No files in here",msgstr:["Nessun file qui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nessun file che corrisponde al tuo filtro è stato trovato."]},"No matching files":{msgid:"No matching files",msgstr:["Nessun file corrispondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Scegli tutte le voci"]},"Select entry":{msgid:"Select entry",msgstr:["Seleziona la voce"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleziona la riga per {nodename}"]},Size:{msgid:"Size",msgstr:["Taglia/dimensioni"]},Undo:{msgid:"Undo",msgstr:["Annulla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carica qualche contenuto o sincronizza con i tuoi dispositivi!"]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"devi, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\ntakehito kondo, 2023\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\n"},msgstr:["Last-Translator: devi, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" はフォルダー名に使用できません。']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}"は許可されたフォルダー名ではありません']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["フォルダー名に「/(スラッシュ)」は使用できません。"]},"All files":{msgid:"All files",msgstr:["すべてのファイル"]},Choose:{msgid:"Choose",msgstr:["選択"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} を選択"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n 個のファイルを選択"]},Copy:{msgid:"Copy",msgstr:["コピー"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} にコピー"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["新しいフォルダーを作成できませんでした"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["ファイル設定を読み込めませんでした"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["ファイルビューを読み込めませんでした"]},"Create directory":{msgid:"Create directory",msgstr:["ディレクトリを作成"]},"Current view selector":{msgid:"Current view selector",msgstr:["現在のビューセレクタ"]},Favorites:{msgid:"Favorites",msgstr:["お気に入り"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["お気に入りとしてマークしたファイルとフォルダがここに表示されます。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["最近変更したファイルとフォルダがここに表示されます。"]},"Filter file list":{msgid:"Filter file list",msgstr:["ファイルリストをフィルタ"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["フォルダ名は空にできません。"]},Home:{msgid:"Home",msgstr:["ホーム"]},Modified:{msgid:"Modified",msgstr:["変更済み"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} に移動"]},Name:{msgid:"Name",msgstr:["名前"]},New:{msgid:"New",msgstr:["新規作成"]},"New folder":{msgid:"New folder",msgstr:["新しいフォルダー"]},"New folder name":{msgid:"New folder name",msgstr:["新しいフォルダーの名前"]},"No files in here":{msgid:"No files in here",msgstr:["ファイルがありません"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["フィルタに一致するファイルは見つかりませんでした。"]},"No matching files":{msgid:"No matching files",msgstr:["一致するファイルはありません"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["すべてのエントリを選択"]},"Select entry":{msgid:"Select entry",msgstr:["エントリを選択"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} の行を選択"]},Size:{msgid:"Size",msgstr:["サイズ"]},Undo:{msgid:"Undo",msgstr:["元に戻す"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["コンテンツをアップロードするか、デバイスと同期してください!"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Sefsex"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["되돌리기"]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"VoXaN24ch, 2024","Language-Team":"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nVoXaN24ch, 2024\n"},msgstr:["Last-Translator: VoXaN24ch, 2024\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} ass en ongëlteg Dossier"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ass net en erlaabten Dossiernumm"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ass net an engem Dossier Numm erlaabt']},"All files":{msgid:"All files",msgstr:["All Dateien"]},Choose:{msgid:"Choose",msgstr:["Wielt"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wielt {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wielt %n Fichieren","Wielt %n Fichier"]},Copy:{msgid:"Copy",msgstr:["Kopie"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopie op {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Konnt den neien Dossier net erstellen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Konnt d'Dateienastellungen net lueden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Konnt d'Dateien net lueden"]},"Create directory":{msgid:"Create directory",msgstr:["Erstellt Verzeechnes"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell Vue selector"]},Favorites:{msgid:"Favorites",msgstr:["Favoritten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter Datei Lëscht"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Dossier Numm kann net eidel sinn"]},Home:{msgid:"Home",msgstr:["Wëllkomm"]},Modified:{msgid:"Modified",msgstr:["Geännert"]},Move:{msgid:"Move",msgstr:["Plënne"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Plënneren {target}"]},Name:{msgid:"Name",msgstr:["Numm"]},New:{msgid:"New",msgstr:["Nei"]},"New folder":{msgid:"New folder",msgstr:["Neien dossier"]},"New folder name":{msgid:"New folder name",msgstr:["Neien dossier numm"]},"No files in here":{msgid:"No files in here",msgstr:["Kee fichier hei"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Kee fichier deen äre filter passt gouf fonnt"]},"No matching files":{msgid:"No matching files",msgstr:["Keng passende dateien"]},Recent:{msgid:"Recent",msgstr:["Rezent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wielt all entréen"]},"Select entry":{msgid:"Select entry",msgstr:["Wielt entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wielt d'zeil fir {nodename}"]},Size:{msgid:"Size",msgstr:["Gréisst"]},Undo:{msgid:"Undo",msgstr:["Undoen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Luet en inhalt erop oder synchroniséiert mat ären apparater"]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Atšaukti"]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Врати"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Буцаах"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["पूर्ववत करा"]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["နဂိုအတိုင်းပြန်ထားရန်"]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"armandg <geirawsm@pm.me>, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nD PE, 2023\nSyvert Fossdal, 2024\narmandg <geirawsm@pm.me>, 2024\n"},msgstr:["Last-Translator: armandg <geirawsm@pm.me>, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldig mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tillatt mappenavn.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tillatt inne i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Velg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Velg {fil}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Velg %n fil","Velg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {destinasjon}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke opprette den nye mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunne ikke laste filinnstillinger"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke laste filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opprett mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nåværende visningsvelger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper du markerer som favoritter vil vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper du nylig har endret, vil vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer filliste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavn kan ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Modifisert"]},Move:{msgid:"Move",msgstr:["Flytt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytt til {destinasjon}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappenavn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer her"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ingen filer funnet med ditt filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen treffende filer"]},Recent:{msgid:"Recent",msgstr:["Nylig"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velg alle oppføringer"]},"Select entry":{msgid:"Select entry",msgstr:["Velg oppføring"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Velg raden for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størrelse"]},Undo:{msgid:"Undo",msgstr:["Angre"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Last opp innhold eller synkroniser med enhetene dine!"]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Casper <casper@vrije-mens.org>, 2024","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJoost <joho500@hotmail.com>, 2023\nJeroen Gui, 2023\nCasper <casper@vrije-mens.org>, 2024\n"},msgstr:["Last-Translator: Casper <casper@vrije-mens.org>, 2024\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is een ongeldige mapnaam.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is geen toegestane mapnaam']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is niet toegestaan binnen een bestandsnaam']},"All files":{msgid:"All files",msgstr:["Alle bestanden"]},Choose:{msgid:"Choose",msgstr:["Kies"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Kies {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Kies %n bestand","Kies %n bestanden"]},Copy:{msgid:"Copy",msgstr:["Kopieer"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopieer naar {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kon de nieuwe map niet maken"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kon de bestandsinstellingen niet laden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kon de bestandsweergaves niet laden"]},"Create directory":{msgid:"Create directory",msgstr:["Maak map"]},"Current view selector":{msgid:"Current view selector",msgstr:["Huidige weergave keuze"]},Favorites:{msgid:"Favorites",msgstr:["Favorieten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Bestanden en mappen die je favoriet maakt, worden hier getoond."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter bestandslijst"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mapnaam mag niet leeg zijn."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Gewijzigd"]},Move:{msgid:"Move",msgstr:["Verplaatsen"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Verplaats naar {target}"]},Name:{msgid:"Name",msgstr:["Naam"]},New:{msgid:"New",msgstr:["Nieuw"]},"New folder":{msgid:"New folder",msgstr:["Nieuwe map"]},"New folder name":{msgid:"New folder name",msgstr:["Nieuwe mapnaam"]},"No files in here":{msgid:"No files in here",msgstr:["Geen bestanden hier"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Geen bestanden gevonden die voldoen aan je filter."]},"No matching files":{msgid:"No matching files",msgstr:["Geen gevonden bestanden"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecteer alle invoer"]},"Select entry":{msgid:"Select entry",msgstr:["Selecteer invoer"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecteer de rij voor {nodename}"]},Size:{msgid:"Size",msgstr:["Grootte"]},Undo:{msgid:"Undo",msgstr:["Ongedaan maken"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload inhoud of synchroniseer met je apparaten!"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anullar"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJUJER wtf, 2023\nM H <haincu@o2.pl>, 2023\nValdnet, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" jest nieprawidłową nazwą folderu']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie jest dozwoloną nazwą folderu']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Znak "/" nie jest dozwolony w nazwie folderu']},"All files":{msgid:"All files",msgstr:["Wszystkie pliki"]},Choose:{msgid:"Choose",msgstr:["Wybierz"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wybierz {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wybierz %n plik","Wybierz %n pliki","Wybierz %n plików","Wybierz %n plików"]},Copy:{msgid:"Copy",msgstr:["Kopiuj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Skopiuj do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nie można utworzyć nowego folderu"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nie można wczytać ustawień plików"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nie można wczytać widoków plików"]},"Create directory":{msgid:"Create directory",msgstr:["Utwórz katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Bieżący selektor widoku"]},Favorites:{msgid:"Favorites",msgstr:["Ulubione"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtruj listę plików"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Nazwa folderu nie może być pusta"]},Home:{msgid:"Home",msgstr:["Strona główna"]},Modified:{msgid:"Modified",msgstr:["Zmodyfikowano"]},Move:{msgid:"Move",msgstr:["Przenieś"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Przejdź do {target}"]},Name:{msgid:"Name",msgstr:["Nazwa"]},New:{msgid:"New",msgstr:["Nowy"]},"New folder":{msgid:"New folder",msgstr:["Nowy folder"]},"New folder name":{msgid:"New folder name",msgstr:["Nowa nazwa folderu"]},"No files in here":{msgid:"No files in here",msgstr:["Brak plików"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nie znaleziono plików spełniających warunki filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Brak pasujących plików"]},Recent:{msgid:"Recent",msgstr:["Ostatni"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wybierz wszystkie wpisy"]},"Select entry":{msgid:"Select entry",msgstr:["Wybierz wpis"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wybierz wiersz dla {nodename}"]},Size:{msgid:"Size",msgstr:["Rozmiar"]},Undo:{msgid:"Undo",msgstr:["Cofnij"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!"]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFlávio Veras <flaviove@gmail.com>, 2023\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\n"},msgstr:["Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" é um nome de pasta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" não é um nome de pasta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" não é permitido dentro de um nome de pasta.']},"All files":{msgid:"All files",msgstr:["Todos os arquivos"]},Choose:{msgid:"Choose",msgstr:["Escolher"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escolher arquivo}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escolher %n arquivo","Escolher %n arquivos","Escolher %n arquivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar para {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Não foi possível criar a nova pasta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Não foi possível carregar configurações de arquivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Não foi possível carregar exibições de arquivos"]},"Create directory":{msgid:"Create directory",msgstr:["Criar diretório"]},"Current view selector":{msgid:"Current view selector",msgstr:["Seletor de visualização atual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os arquivos e pastas marcados como favoritos aparecerão aqui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Arquivos e pastas que você modificou recentemente aparecerão aqui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de arquivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome da pasta não pode ficar vazio."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover para {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Nova pasta"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome de pasta"]},"No files in here":{msgid:"No files in here",msgstr:["Nenhum arquivo aqui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenhum arquivo correspondente ao seu filtro foi encontrado."]},"No matching files":{msgid:"No matching files",msgstr:["Nenhum arquivo correspondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecione todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Selecione a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecione a linha para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamanho"]},Undo:{msgid:"Undo",msgstr:["Desfazer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carregue algum conteúdo ou sincronize com seus dispositivos!"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anular"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Daniel MD <dmihaidumitru@gmail.com>, 2023","Language-Team":"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nDaniel MD <dmihaidumitru@gmail.com>, 2023\n"},msgstr:["Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" este un nume de director invalid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nu este un nume de director permis']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nu este permis în numele unui director.']},"All files":{msgid:"All files",msgstr:["Toate fișierele"]},Choose:{msgid:"Choose",msgstr:["Alege"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Alege {file}"]},Copy:{msgid:"Copy",msgstr:["Copiază"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiază în {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nu s-a putut crea noul director"]},"Create directory":{msgid:"Create directory",msgstr:["Creează director"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selectorul curent al vizualizării"]},Favorites:{msgid:"Favorites",msgstr:["Favorite"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Fișiere și directoare pe care le marcați ca favorite vor apărea aici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Fișiere și directoare pe care le-ați modificat recent vor apărea aici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrează lista de fișiere"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Numele de director nu poate fi necompletat."]},Home:{msgid:"Home",msgstr:["Acasă"]},Modified:{msgid:"Modified",msgstr:["Modificat"]},Move:{msgid:"Move",msgstr:["Mută"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mută către {target}"]},Name:{msgid:"Name",msgstr:["Nume"]},New:{msgid:"New",msgstr:["Nou"]},"New folder":{msgid:"New folder",msgstr:["Director nou"]},"New folder name":{msgid:"New folder name",msgstr:["Numele noului director"]},"No files in here":{msgid:"No files in here",msgstr:["Nu există fișiere"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nu există fișiere potrivite pentru filtrul selectat"]},"No matching files":{msgid:"No matching files",msgstr:["Nu există fișiere potrivite"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selectează toate înregistrările"]},"Select entry":{msgid:"Select entry",msgstr:["Selectează înregistrarea"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selectează rândul pentru {nodename}"]},Size:{msgid:"Size",msgstr:["Mărime"]},Undo:{msgid:"Undo",msgstr:["Anulează"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Kitsune R, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMax Smith <sevinfolds@gmail.com>, 2023\nashed <craysy@gmail.com>, 2023\nAlex <kekcuha@gmail.com>, 2024\nR4SAS, 2024\nВлад, 2024\nKitsune R, 2024\n"},msgstr:["Last-Translator: Kitsune R, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» — недопустимое имя папки."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» не является разрешенным именем папки"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Символ «/» не допускается внутри имени папки."]},"All files":{msgid:"All files",msgstr:["Все файлы"]},Choose:{msgid:"Choose",msgstr:["Выбрать"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Выбрать {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Выбрать %n файл","Выбрать %n файла","Выбрать %n файлов","Выбрать %n файлов"]},Copy:{msgid:"Copy",msgstr:["Копировать"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копировать в «{target}»"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не удалось создать новую папку"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не удалось загрузить настройки файлов"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не удалось загрузить файлы просмотров"]},"Create directory":{msgid:"Create directory",msgstr:["Создать папку"]},"Current view selector":{msgid:"Current view selector",msgstr:["Переключатель текущего вида"]},Favorites:{msgid:"Favorites",msgstr:["Избранное"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Здесь появятся файлы и папки, которые вы пометили как избранные."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Здесь будут отображаться файлы и папки, которые вы недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фильтровать список файлов"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Имя папки не может быть пустым."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Изменен"]},Move:{msgid:"Move",msgstr:["Переместить"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перейти к {target}"]},Name:{msgid:"Name",msgstr:["Имя"]},New:{msgid:"New",msgstr:["Новый"]},"New folder":{msgid:"New folder",msgstr:["Новая папка"]},"New folder name":{msgid:"New folder name",msgstr:["Имя новой папки"]},"No files in here":{msgid:"No files in here",msgstr:["Здесь нет файлов"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Файлы, соответствующие вашему фильтру, не найдены."]},"No matching files":{msgid:"No matching files",msgstr:["Нет подходящих файлов"]},Recent:{msgid:"Recent",msgstr:["Недавний"]},"Select all entries":{msgid:"Select all entries",msgstr:["Выбрать все записи"]},"Select entry":{msgid:"Select entry",msgstr:["Выберите запись"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Выберите строку для {nodename}"]},Size:{msgid:"Size",msgstr:["Размер"]},Undo:{msgid:"Undo",msgstr:["Отменить"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Загрузите контент или синхронизируйте его со своими устройствами!"]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["පෙරසේ"]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nStanislav Prekop <prekop3@gmail.com>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" je neplatný názov pričinka.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie je povolený názov priečinka.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nie je povolené v názve priečinka.']},"All files":{msgid:"All files",msgstr:["Všetky súbory"]},Choose:{msgid:"Choose",msgstr:["Vybrať"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vybrať {súbor}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vybraný %n súbor","Vybrané %n súbory","Vybraných %n súborov","Vybraných %n súborov"]},Copy:{msgid:"Copy",msgstr:["Kopírovať"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopírovať do {umiestnenia}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nepodarilo sa vytvoriť nový priečinok"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodarilo sa načítať nastavenia súborov"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodarilo sa načítať pohľady súborov"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvoriť adresár"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výber aktuálneho zobrazenia"]},Favorites:{msgid:"Favorites",msgstr:["Obľúbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovať zoznam súborov"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Názov priečinka nemôže byť prázdny."]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Upravené"]},Move:{msgid:"Move",msgstr:["Prejsť"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Prejsť na {umiestnenie}"]},Name:{msgid:"Name",msgstr:["Názov"]},New:{msgid:"New",msgstr:["Pridať"]},"New folder":{msgid:"New folder",msgstr:["Pridať priečinok"]},"New folder name":{msgid:"New folder name",msgstr:["Pridať názov priečinka"]},"No files in here":{msgid:"No files in here",msgstr:["Nie sú tu žiadne súbory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenašli sa žiadne súbory zodpovedajúce vášmu filtru."]},"No matching files":{msgid:"No matching files",msgstr:["Žiadne zodpovedajúce súbory"]},Recent:{msgid:"Recent",msgstr:["Nedávne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrať všetky položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrať položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vyberte riadok pre {názov uzla}"]},Size:{msgid:"Size",msgstr:["Veľkosť"]},Undo:{msgid:"Undo",msgstr:["Späť"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!"]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} je neveljavno ime mape."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ni dovoljeno ime mape"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ni dovoljen v imenu mape.']},"All files":{msgid:"All files",msgstr:["Vse datoteke"]},Choose:{msgid:"Choose",msgstr:["Izberi"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izberi {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izberi %n datoteko","Izberi %n datoteki","Izberi %n datotek","Izberi %n datotek"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj v {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nisem mogel ustvariti nove mape"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["NIsem mogel naložiti nastavitev datotek"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nisem mogel naložiti pogledov datotek"]},"Create directory":{msgid:"Create directory",msgstr:["Ustvari mapo"]},"Current view selector":{msgid:"Current view selector",msgstr:["Izbirnik trenutnega pogleda"]},Favorites:{msgid:"Favorites",msgstr:["Priljubljene"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtriraj seznam datotek"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ime mape ne more biti prazno"]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Spremenjeno"]},Move:{msgid:"Move",msgstr:["Premakni"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premakni v {target}"]},Name:{msgid:"Name",msgstr:["Ime"]},New:{msgid:"New",msgstr:["Nov"]},"New folder":{msgid:"New folder",msgstr:["Nova mapa"]},"New folder name":{msgid:"New folder name",msgstr:["Novo ime mape"]},"No files in here":{msgid:"No files in here",msgstr:["Tukaj ni datotek"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ni bilo najdenih ujemajočih datotek glede na vaš filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ni ujemajočih datotek"]},Recent:{msgid:"Recent",msgstr:["Nedavne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izberi vse vnose"]},"Select entry":{msgid:"Select entry",msgstr:["Izberi vnos"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izberi vrstico za {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Razveljavi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!"]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” није исправно име фолдера."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” није дозвољено име за фолдер."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” није дозвољено унутар имена фолдера."]},"All files":{msgid:"All files",msgstr:["Сви фајлови"]},Choose:{msgid:"Choose",msgstr:["Изаберите"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Изаберите {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Изаберите %n фајл","Изаберите %n фајла","Изаберите %n фајлова"]},Copy:{msgid:"Copy",msgstr:["Копирај"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копирај у {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Није могао да се креира нови фолдер"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не могу да се учитају подешавања фајлова"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не могу да се учитају прикази фајлова"]},"Create directory":{msgid:"Create directory",msgstr:["Креирај директоријум"]},"Current view selector":{msgid:"Current view selector",msgstr:["Бирач тренутног приказа"]},Favorites:{msgid:"Favorites",msgstr:["Омиљено"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери које сте означили као омиљене."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери који се се недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фитрирање листе фајлова"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Име фолдера не може бити празно."]},Home:{msgid:"Home",msgstr:["Почетак"]},Modified:{msgid:"Modified",msgstr:["Измењено"]},Move:{msgid:"Move",msgstr:["Премести"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Премести у {target}"]},Name:{msgid:"Name",msgstr:["Име"]},New:{msgid:"New",msgstr:["Ново"]},"New folder":{msgid:"New folder",msgstr:["Нови фолдер"]},"New folder name":{msgid:"New folder name",msgstr:["Име новог фолдера"]},"No files in here":{msgid:"No files in here",msgstr:["Овде нема фајлова"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Није пронађен ниједан фајл који задовољава ваш филтер."]},"No matching files":{msgid:"No matching files",msgstr:["Нема таквих фајлова"]},Recent:{msgid:"Recent",msgstr:["Скорашње"]},"Select all entries":{msgid:"Select all entries",msgstr:["Изаберите све ставке"]},"Select entry":{msgid:"Select entry",msgstr:["Изаберите ставку"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Изаберите ред за {nodename}"]},Size:{msgid:"Size",msgstr:["Величина"]},Undo:{msgid:"Undo",msgstr:["Поништи"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Отпремите нешто или синхронизујте са својим уређајима!"]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Bogdan Vuković, 2024","Language-Team":"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBogdan Vuković, 2024\n"},msgstr:["Last-Translator: Bogdan Vuković, 2024\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” je neispravan naziv foldera."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” je nedozvoljen naziv foldera."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” se ne može koristiti unutar naziva foldera."]},"All files":{msgid:"All files",msgstr:["Svi fajlovi"]},Choose:{msgid:"Choose",msgstr:["Izaberite"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izaberite {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izaberite %n fajl","Izaberite %n fajla","Izaberite %n fajlova"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj u {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Neuspešno kreiranje novog foldera"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Neuspešno učitavanje podešavanja fajlova"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Neuspešno učitavanje prikaza fajlova"]},"Create directory":{msgid:"Create directory",msgstr:["Kreiraj direktorijum"]},"Current view selector":{msgid:"Current view selector",msgstr:["Birač trenutnog prikaza"]},Favorites:{msgid:"Favorites",msgstr:["Omiljeno"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Lista omiljenih fajlova i foldera."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Lista fajlova i foldera sa skorašnjim izmenama."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fitriranje liste fajlova"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Naziv foldera ne može biti prazan."]},Home:{msgid:"Home",msgstr:["Početak"]},Modified:{msgid:"Modified",msgstr:["Izmenjeno"]},Move:{msgid:"Move",msgstr:["Premesti"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premesti u {target}"]},Name:{msgid:"Name",msgstr:["Naziv"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novi folder"]},"New folder name":{msgid:"New folder name",msgstr:["Naziv novog foldera"]},"No files in here":{msgid:"No files in here",msgstr:["Bez fajlova"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nema fajlova koji zadovoljavaju uslove filtera."]},"No matching files":{msgid:"No matching files",msgstr:["Nema takvih fajlova"]},Recent:{msgid:"Recent",msgstr:["Skorašnje"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izaberite sve stavke"]},"Select entry":{msgid:"Select entry",msgstr:["Izaberite stavku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izaberite red za {nodename}"]},Size:{msgid:"Size",msgstr:["Veličina"]},Undo:{msgid:"Undo",msgstr:["Vrati"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Otpremite sadržaj ili sinhronizujte sa svojim uređajima!"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" är ett ogiltigt mappnamn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" är inte ett tillåtet mappnamn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" är inte tillåtet i ett mappnamn.']},"All files":{msgid:"All files",msgstr:["Alla filer"]},Choose:{msgid:"Choose",msgstr:["Välj"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Välj {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Välj %n fil","Välj %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopiera"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiera till {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunde inte skapa den nya mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunde inte ladda filinställningar"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunde inte ladda läsa in filvyer"]},"Create directory":{msgid:"Create directory",msgstr:["Skapa katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell vyväljare"]},Favorites:{msgid:"Favorites",msgstr:["Favoriter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer och mappar som du markerar som favorit kommer att visas här."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer och mappar som du nyligen ändrat kommer att visas här."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrera fillistan"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappnamnet får inte vara tomt."]},Home:{msgid:"Home",msgstr:["Hem"]},Modified:{msgid:"Modified",msgstr:["Ändrad"]},Move:{msgid:"Move",msgstr:["Flytta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytta till {target}"]},Name:{msgid:"Name",msgstr:["Namn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mapp"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappnamn"]},"No files in here":{msgid:"No files in here",msgstr:["Inga filer här"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Inga filer som matchar ditt filter hittades."]},"No matching files":{msgid:"No matching files",msgstr:["Inga matchande filer"]},Recent:{msgid:"Recent",msgstr:["Nyligen"]},"Select all entries":{msgid:"Select all entries",msgstr:["Välj alla poster"]},"Select entry":{msgid:"Select entry",msgstr:["Välj post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Välj raden för {nodename}"]},Size:{msgid:"Size",msgstr:["Storlek"]},Undo:{msgid:"Undo",msgstr:["Ångra"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Ladda upp lite innehåll eller synkronisera med dina enheter!"]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["செயல்தவிர்"]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["เลิกทำ"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" geçersiz bir klasör adı.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" izin verilen bir klasör adı değil']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" karakteri klasör adında kullanılamaz.']},"All files":{msgid:"All files",msgstr:["Tüm dosyalar"]},Choose:{msgid:"Choose",msgstr:["Seçin"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} seçin"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n dosya seçin","%n dosya seçin"]},Copy:{msgid:"Copy",msgstr:["Kopyala"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} üzerine kopyala"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Yeni klasör oluşturulamadı"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dosyalar uygulamasının ayarları yüklenemedi"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dosyalar uygulamasının görünümleri yüklenemedi"]},"Create directory":{msgid:"Create directory",msgstr:["Klasör oluştur"]},"Current view selector":{msgid:"Current view selector",msgstr:["Geçerli görünüm seçici"]},Favorites:{msgid:"Favorites",msgstr:["Sık kullanılanlar"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dosya listesini süz"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Klasör adı boş olamaz."]},Home:{msgid:"Home",msgstr:["Giriş"]},Modified:{msgid:"Modified",msgstr:["Değiştirilme"]},Move:{msgid:"Move",msgstr:["Taşı"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} üzerine taşı"]},Name:{msgid:"Name",msgstr:["Ad"]},New:{msgid:"New",msgstr:["Yeni"]},"New folder":{msgid:"New folder",msgstr:["Yeni klasör"]},"New folder name":{msgid:"New folder name",msgstr:["Yeni klasör adı"]},"No files in here":{msgid:"No files in here",msgstr:["Burada herhangi bir dosya yok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Süzgece uyan bir dosya bulunamadı."]},"No matching files":{msgid:"No matching files",msgstr:["Eşleşen bir dosya yok"]},Recent:{msgid:"Recent",msgstr:["Son kullanılanlar"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tüm kayıtları seç"]},"Select entry":{msgid:"Select entry",msgstr:["Kaydı seç"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} satırını seçin"]},Size:{msgid:"Size",msgstr:["Boyut"]},Undo:{msgid:"Undo",msgstr:["Geri al"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!"]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" є недійсною назвою для каталогу.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" не є дозволеною назвою для каталогу.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" не дозволено у назві каталогу.']},"All files":{msgid:"All files",msgstr:["Всі файли"]},Choose:{msgid:"Choose",msgstr:["Вибрати"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Вибрати {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Вибрати %n файл","Вибрати %n файли","Вибрати %n файлів","Вибрати %n файлів"]},Copy:{msgid:"Copy",msgstr:["Копіювати"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копіювати до {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не вдалося створити новий каталог"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не вдалося завантажити налаштування файлів"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не вдалося завантажити подання файлів"]},"Create directory":{msgid:"Create directory",msgstr:["Створити каталог"]},"Current view selector":{msgid:"Current view selector",msgstr:["Вибір подання"]},Favorites:{msgid:"Favorites",msgstr:["Із зірочкою"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які ви позначите зірочкою."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які було нещодавно змінено."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фільтрувати список файлів"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ім'я каталогу не може бути порожнім."]},Home:{msgid:"Home",msgstr:["Домівка"]},Modified:{msgid:"Modified",msgstr:["Змінено"]},Move:{msgid:"Move",msgstr:["Перемістити"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перемістити до {target}"]},Name:{msgid:"Name",msgstr:["Ім'я"]},New:{msgid:"New",msgstr:["Новий"]},"New folder":{msgid:"New folder",msgstr:["Новий каталог"]},"New folder name":{msgid:"New folder name",msgstr:["Ім'я нового каталогу"]},"No files in here":{msgid:"No files in here",msgstr:["Тут відсутні файли"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Відсутні збіги за фільтром."]},"No matching files":{msgid:"No matching files",msgstr:["Відсутні збіги файлів."]},Recent:{msgid:"Recent",msgstr:["Останні"]},"Select all entries":{msgid:"Select all entries",msgstr:["Вибрати всі записи"]},"Select entry":{msgid:"Select entry",msgstr:["Вибрати запис"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Вибрати рядок для {nodename}"]},Size:{msgid:"Size",msgstr:["Розмір"]},Undo:{msgid:"Undo",msgstr:["Повернути"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Завантажте вміст або синхронізуйте з вашим пристроєм!"]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Trần Đình Tuyển, 2024","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTran Duc, 2024\nTrần Đình Tuyển, 2024\n"},msgstr:["Last-Translator: Trần Đình Tuyển, 2024\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" là tên thư mục không hợp lệ.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"1{name}"không phải là tên thư mục được cho phép']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/"không được phép đặt trong tên thư mục.']},"All files":{msgid:"All files",msgstr:["Tất cả tệp"]},Choose:{msgid:"Choose",msgstr:["Chọn"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Chọn {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Chọn %n tệp"]},Copy:{msgid:"Copy",msgstr:["Sao chép"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Sao chép đến {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Không thể tạo thư mục mới"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Không thể tải tập tin cài đặt"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Không thể tải xuống tệp xem"]},"Create directory":{msgid:"Create directory",msgstr:["Tạo thư mục"]},"Current view selector":{msgid:"Current view selector",msgstr:["Hiện tại chế độ xem của bộ chọn"]},Favorites:{msgid:"Favorites",msgstr:["Yêu cầu thích"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter list file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Thư mục tên không được để trống."]},Home:{msgid:"Home",msgstr:["Trang chủ"]},Modified:{msgid:"Modified",msgstr:["Đã sửa đổi"]},Move:{msgid:"Move",msgstr:["Di chuyển"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Di chuyển đến{target}"]},Name:{msgid:"Name",msgstr:["Tên"]},New:{msgid:"New",msgstr:["Mới"]},"New folder":{msgid:"New folder",msgstr:["New thư mục"]},"New folder name":{msgid:"New folder name",msgstr:["New thư mục tên"]},"No files in here":{msgid:"No files in here",msgstr:["No file at here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Không tìm thấy tệp nào phù hợp với bộ lọc của bạn."]},"No matching files":{msgid:"No matching files",msgstr:["No file phù hợp"]},Recent:{msgid:"Recent",msgstr:["Gần đây"]},"Select all entries":{msgid:"Select all entries",msgstr:["Choose all items"]},"Select entry":{msgid:"Select entry",msgstr:["Chọn mục nhập"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Choose hang cho{nodename}"]},Size:{msgid:"Size",msgstr:["Kích cỡ"]},Undo:{msgid:"Undo",msgstr:["Hoàn tác"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Ruijian Deng, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nken, 2023\nEric, 2023\nPhonebook3599, 2024\nRuijian Deng, 2024\n"},msgstr:["Last-Translator: Ruijian Deng, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["“{name}”是无效的文件夹名称。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["“{name}”不是允许的文件夹名称"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["文件夹名称中不允许包含“/”。"]},"All files":{msgid:"All files",msgstr:["所有文件"]},Choose:{msgid:"Choose",msgstr:["选择"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["选择 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["选择 %n 个文件"]},Copy:{msgid:"Copy",msgstr:["复制"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["复制到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["无法创建新文件夹"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["无法加载文件设置"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["无法加载文件视图"]},"Create directory":{msgid:"Create directory",msgstr:["创建目录"]},"Current view selector":{msgid:"Current view selector",msgstr:["当前视图选择器"]},Favorites:{msgid:"Favorites",msgstr:["最爱"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您标记为最爱的文件与文件夹会显示在这里"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的文件与文件夹会显示在这里"]},"Filter file list":{msgid:"Filter file list",msgstr:["过滤文件列表"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["文件夹名称不能为空。"]},Home:{msgid:"Home",msgstr:["主目录"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移动"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移动至 {target}"]},Name:{msgid:"Name",msgstr:["名称"]},New:{msgid:"New",msgstr:["新建"]},"New folder":{msgid:"New folder",msgstr:["新文件夹"]},"New folder name":{msgid:"New folder name",msgstr:["新文件夹名称"]},"No files in here":{msgid:"No files in here",msgstr:["此处无文件"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您过滤条件的文件"]},"No matching files":{msgid:"No matching files",msgstr:["无符合的文件"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["选择所有条目"]},"Select entry":{msgid:"Select entry",msgstr:["选择条目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["选择 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:[" 撤消"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上传一些项目或与您的设备同步!"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["「{name}」是無效的資料夾名稱。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["「{name}」是無效的資料夾名稱。"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['資料夾名稱中不允許使用 "/"。']},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["選擇 %n 個檔案"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["無法載入檔案設定"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["無法載入文件視圖"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["資料夾名稱不能為空。"]},Home:{msgid:"Home",msgstr:["首頁"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["還原"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2023","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\n黃柏諺 <s8321414@gmail.com>, 2023\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid file name.':{msgid:'"{name}" is an invalid file name.',msgstr:["「{name}」是無效的檔案名稱。"]},'"{name}" is not an allowed filetype':{msgid:'"{name}" is not an allowed filetype',msgstr:["「{name}」並非允許的檔案類型"]},'"/" is not allowed inside a file name.':{msgid:'"/" is not allowed inside a file name.',msgstr:["檔案名稱中不允許使用「/」。"]},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"File name cannot be empty.":{msgid:"File name cannot be empty.",msgstr:["檔案名稱不能為空。"]},"Filepicker sections":{msgid:"Filepicker sections",msgstr:["檔案挑選器選取"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},Home:{msgid:"Home",msgstr:["家"]},"Mime type {mime}":{msgid:"Mime type {mime}",msgstr:["Mime type {mime}"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["復原"]},unknown:{msgid:"unknown",msgstr:["未知"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zu_ZA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)","Content-Type":"text/plain; charset=UTF-8",Language:"zu_ZA","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zu_ZA\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}}].map((e=>a.addTranslation(e.locale,e.json)));const i=a.build(),o=(i.ngettext.bind(i),i.gettext.bind(i));var r=(e=>(e[e.OFF="off"]="OFF",e[e.POLITE="polite"]="POLITE",e[e.ASSERTIVE="assertive"]="ASSERTIVE",e))(r||{});const l=7e3;function m(e,s){var t;if(s=Object.assign({timeout:l,isHTML:!1,type:void 0,selector:void 0,onRemove:()=>{},onClick:void 0,close:!0},s),"string"==typeof e&&!s.isHTML){const s=document.createElement("div");s.innerHTML=e,e=s.innerText}let a=null!=(t=s.type)?t:"";"function"==typeof s.onClick&&(a+=" toast-with-click ");const i=e instanceof Node;let o=r.POLITE;s.ariaLive?o=s.ariaLive:"toast-error"!==s.type&&"toast-undo"!==s.type||(o=r.ASSERTIVE);const m=n({[i?"node":"text"]:e,duration:s.timeout,callback:s.onRemove,onClick:s.onClick,close:s.close,gravity:"top",selector:s.selector,position:"right",backgroundColor:"",className:"dialogs "+a,escapeMarkup:!s.isHTML,ariaLive:o});return m.showToast(),m}function d(e,s){return m(e,{...s,type:"toast-error"})}function g(e,s){return m(e,{...s,type:"toast-warning"})}function c(e,s){return m(e,{...s,type:"toast-info"})}function u(e,s,t,n,a,i,o,r){var l="function"==typeof e?e.options:e;return s&&(l.render=s,l.staticRenderFns=t,l._compiled=!0),i&&(l._scopeId="data-v-"+i),{exports:e,options:l}}},95674:(e,s,t)=>{"use strict";t.d(s,{I9:()=>a.j,Qg:()=>a.l,Ss:()=>r,cf:()=>a.k}),t(43627);var n=t(85471),a=t(85136),i=t(94219),o=t(80910);t(96763);const r=(e,s,t=(()=>{}))=>{const a=document.createElement("div");(document.querySelector(null==s?void 0:s.container)||document.body).appendChild(a);const i=new n.Ay({el:a,name:"VueDialogHelper",render:a=>a(e,{props:s,on:{close:(...e)=>{t(...e.map((e=>(0,n.ux)(e)))),i.$destroy()}}})});return i};Object.defineProperty;const l=(0,n.pM)({__name:"GenericDialog",props:{name:null,text:null,html:null,buttons:null,severity:null},setup(e){const s=e,t=()=>"".concat(s.name,": ").concat(s.text);return(0,n.sV)((()=>window.addEventListener("unload",t))),(0,n.hi)((()=>window.removeEventListener("unload",t))),{__sfc:!0,props:s,handleUnload:t,NcDialog:i.A,NcNoteCard:o.A}}});var m=function(){var e=this,s=e._self._c,t=e._self._setupProxy;return s(t.NcDialog,{attrs:{"dialog-classes":"nc-generic-dialog",buttons:e.buttons,name:e.name,message:e.text},on:{"update:open":function(s){return e.$emit("close")}}},[e.severity?s(t.NcNoteCard,{attrs:{type:e.severity}},[s("p",{domProps:{textContent:e._s(e.text)}})]):e._e(),e.html?s("div",{domProps:{innerHTML:e._s(e.html)}}):e._e()],1)},d=[];(0,a.a)(l,m,d,!1,null,null).exports},57485:(e,s,t)=>{"use strict";t.d(s,{A:()=>m});var n=t(9052);class a extends Error{constructor(e){super(e),this.name="TimeoutError"}}class i extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const o=e=>void 0===globalThis.DOMException?new i(e):new DOMException(e),r=e=>{const s=void 0===e.reason?o("This operation was aborted."):e.reason;return s instanceof Error?s:o(s)};class l{#o=[];enqueue(e,s){const t={priority:(s={priority:0,...s}).priority,run:e};if(this.size&&this.#o[this.size-1].priority>=s.priority)return void this.#o.push(t);const n=function(e,s,t){let n=0,a=e.length;for(;a>0;){const t=Math.trunc(a/2);let o=n+t;i=e[o],s.priority-i.priority<=0?(n=++o,a-=t+1):a=t}var i;return n}(this.#o,t);this.#o.splice(n,0,t)}dequeue(){const e=this.#o.shift();return e?.run}filter(e){return this.#o.filter((s=>s.priority===e.priority)).map((e=>e.run))}get size(){return this.#o.length}}class m extends n{#r;#l;#m=0;#d;#g;#c=0;#u;#f;#o;#p;#h=0;#w;#v;#y;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:l,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#r=e.carryoverConcurrencyCount,this.#l=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#d=e.intervalCap,this.#g=e.interval,this.#o=new e.queueClass,this.#p=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=!0===e.throwOnTimeout,this.#v=!1===e.autoStart}get#T(){return this.#l||this.#m<this.#d}get#C(){return this.#h<this.#w}#x(){this.#h--,this.#k(),this.emit("next")}#b(){this.#L(),this.#F(),this.#f=void 0}get#U(){const e=Date.now();if(void 0===this.#u){const s=this.#c-e;if(!(s<0))return void 0===this.#f&&(this.#f=setTimeout((()=>{this.#b()}),s)),!0;this.#m=this.#r?this.#h:0}return!1}#k(){if(0===this.#o.size)return this.#u&&clearInterval(this.#u),this.#u=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#v){const e=!this.#U;if(this.#T&&this.#C){const s=this.#o.dequeue();return!!s&&(this.emit("active"),s(),e&&this.#F(),!0)}}return!1}#F(){this.#l||void 0!==this.#u||(this.#u=setInterval((()=>{this.#L()}),this.#g),this.#c=Date.now()+this.#g)}#L(){0===this.#m&&0===this.#h&&this.#u&&(clearInterval(this.#u),this.#u=void 0),this.#m=this.#r?this.#h:0,this.#S()}#S(){for(;this.#k(););}get concurrency(){return this.#w}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#w=e,this.#S()}async#N(e){return new Promise(((s,t)=>{e.addEventListener("abort",(()=>{t(e.reason)}),{once:!0})}))}async add(e,s={}){return s={timeout:this.timeout,throwOnTimeout:this.#y,...s},new Promise(((t,n)=>{this.#o.enqueue((async()=>{this.#h++,this.#m++;try{s.signal?.throwIfAborted();let n=e({signal:s.signal});s.timeout&&(n=function(e,s){const{milliseconds:t,fallback:n,message:i,customTimers:o={setTimeout,clearTimeout}}=s;let l;const m=new Promise(((m,d)=>{if("number"!=typeof t||1!==Math.sign(t))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${t}\``);if(s.signal){const{signal:e}=s;e.aborted&&d(r(e)),e.addEventListener("abort",(()=>{d(r(e))}))}if(t===Number.POSITIVE_INFINITY)return void e.then(m,d);const g=new a;l=o.setTimeout.call(void 0,(()=>{if(n)try{m(n())}catch(e){d(e)}else"function"==typeof e.cancel&&e.cancel(),!1===i?m():i instanceof Error?d(i):(g.message=i??`Promise timed out after ${t} milliseconds`,d(g))}),t),(async()=>{try{m(await e)}catch(e){d(e)}})()})).finally((()=>{m.clear()}));return m.clear=()=>{o.clearTimeout.call(void 0,l),l=void 0},m}(Promise.resolve(n),{milliseconds:s.timeout})),s.signal&&(n=Promise.race([n,this.#N(s.signal)]));const i=await n;t(i),this.emit("completed",i)}catch(e){if(e instanceof a&&!s.throwOnTimeout)return void t();n(e),this.emit("error",e)}finally{this.#x()}}),s),this.emit("add"),this.#k()}))}async addAll(e,s){return Promise.all(e.map((async e=>this.add(e,s))))}start(){return this.#v?(this.#v=!1,this.#S(),this):this}pause(){this.#v=!0}clear(){this.#o=new this.#p}async onEmpty(){0!==this.#o.size&&await this.#_("empty")}async onSizeLessThan(e){this.#o.size<e||await this.#_("next",(()=>this.#o.size<e))}async onIdle(){0===this.#h&&0===this.#o.size||await this.#_("idle")}async#_(e,s){return new Promise((t=>{const n=()=>{s&&!s()||(this.off(e,n),t())};this.on(e,n)}))}get size(){return this.#o.size}sizeBy(e){return this.#o.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#v}}},53110:(e,s,t)=>{"use strict";t.d(s,{FZ:()=>r,pe:()=>i});var n=t(33319);const{Axios:a,AxiosError:i,CanceledError:o,isCancel:r,CancelToken:l,VERSION:m,all:d,Cancel:g,isAxiosError:c,spread:u,toFormData:f,AxiosHeaders:p,HttpStatusCode:h,formToJSON:w,getAdapter:v,mergeConfig:y}=n.A}},a={};function i(e){var s=a[e];if(void 0!==s)return s.exports;var t=a[e]={id:e,loaded:!1,exports:{}};return n[e].call(t.exports,t,t.exports,i),t.loaded=!0,t.exports}i.m=n,e=[],i.O=(s,t,n,a)=>{if(!t){var o=1/0;for(d=0;d<e.length;d++){t=e[d][0],n=e[d][1],a=e[d][2];for(var r=!0,l=0;l<t.length;l++)(!1&a||o>=a)&&Object.keys(i.O).every((e=>i.O[e](t[l])))?t.splice(l--,1):(r=!1,a<o&&(o=a));if(r){e.splice(d--,1);var m=n();void 0!==m&&(s=m)}}return s}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[t,n,a]},i.n=e=>{var s=e&&e.__esModule?()=>e.default:()=>e;return i.d(s,{a:s}),s},i.d=(e,s)=>{for(var t in s)i.o(s,t)&&!i.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:s[t]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((s,t)=>(i.f[t](e,s),s)),[])),i.u=e=>e+"-"+e+".js?v="+{918:"42dc18350820a2df996f",1902:"15c69743cf3911d7117d",2400:"e05bb23ce5cd8e8e3b27",5606:"f972dba6ecca95233f02",6429:"89166d2636e7cbd574e0",6880:"367ddfc725b6ef2ee02b",8066:"f1f0a3884f0b92377e6a"}[e],i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),s={},t="nextcloud:",i.l=(e,n,a,o)=>{if(s[e])s[e].push(n);else{var r,l;if(void 0!==a)for(var m=document.getElementsByTagName("script"),d=0;d<m.length;d++){var g=m[d];if(g.getAttribute("src")==e||g.getAttribute("data-webpack")==t+a){r=g;break}}r||(l=!0,(r=document.createElement("script")).charset="utf-8",r.timeout=120,i.nc&&r.setAttribute("nonce",i.nc),r.setAttribute("data-webpack",t+a),r.src=e),s[e]=[n];var c=(t,n)=>{r.onerror=r.onload=null,clearTimeout(u);var a=s[e];if(delete s[e],r.parentNode&&r.parentNode.removeChild(r),a&&a.forEach((e=>e(n))),t)return t(n)},u=setTimeout(c.bind(null,void 0,{type:"timeout",target:r}),12e4);r.onerror=c.bind(null,r.onerror),r.onload=c.bind(null,r.onload),l&&document.head.appendChild(r)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=1171,(()=>{var e;i.g.importScripts&&(e=i.g.location+"");var s=i.g.document;if(!e&&s&&(s.currentScript&&"SCRIPT"===s.currentScript.tagName.toUpperCase()&&(e=s.currentScript.src),!e)){var t=s.getElementsByTagName("script");if(t.length)for(var n=t.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=t[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e})(),(()=>{i.b=document.baseURI||self.location.href;var e={1171:0};i.f.j=(s,t)=>{var n=i.o(e,s)?e[s]:void 0;if(0!==n)if(n)t.push(n[2]);else{var a=new Promise(((t,a)=>n=e[s]=[t,a]));t.push(n[2]=a);var o=i.p+i.u(s),r=new Error;i.l(o,(t=>{if(i.o(e,s)&&(0!==(n=e[s])&&(e[s]=void 0),n)){var a=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;r.message="Loading chunk "+s+" failed.\n("+a+": "+o+")",r.name="ChunkLoadError",r.type=a,r.request=o,n[1](r)}}),"chunk-"+s,s)}},i.O.j=s=>0===e[s];var s=(s,t)=>{var n,a,o=t[0],r=t[1],l=t[2],m=0;if(o.some((s=>0!==e[s]))){for(n in r)i.o(r,n)&&(i.m[n]=r[n]);if(l)var d=l(i)}for(s&&s(t);m<o.length;m++)a=o[m],i.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return i.O(d)},t=self.webpackChunknextcloud=self.webpackChunknextcloud||[];t.forEach(s.bind(null,0)),t.push=s.bind(null,t.push.bind(t))})(),i.nc=void 0;var o=i.O(void 0,[4208],(()=>i(33001)));o=i.O(o)})();
+//# sourceMappingURL=files-init.js.map?v=61bdb87bfe9479c683d5 \ No newline at end of file
diff --git a/dist/files-init.js.map b/dist/files-init.js.map
index 07c3b3c79a1..f1156c1ba72 100644
--- a/dist/files-init.js.map
+++ b/dist/files-init.js.map
@@ -1 +1 @@
-{"version":3,"file":"files-init.js?v=4684a0e97f2238fac00d","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/deleteUtils.ts","webpack:///nextcloud/apps/files/src/actions/deleteAction.ts","webpack:///nextcloud/apps/files/src/actions/downloadAction.ts","webpack:///nextcloud/apps/files/src/actions/editLocallyAction.ts","webpack:///nextcloud/apps/files/src/actions/favoriteAction.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/actions/openFolderAction.ts","webpack:///nextcloud/apps/files/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files/src/actions/renameAction.ts","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/actions/viewInFolderAction.ts","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/apps/files/src/utils/filenameValidity.ts","webpack://nextcloud/./apps/files/src/components/NewNodeDialog.vue?0f9f","webpack://nextcloud/./apps/files/src/components/NewNodeDialog.vue?1a36","webpack:///nextcloud/apps/files/src/utils/newNodeDialog.ts","webpack:///nextcloud/apps/files/src/newMenu/newFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newTemplatesFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newFromTemplate.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/services/Favorites.ts","webpack:///nextcloud/apps/files/src/views/favorites.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/apps/files/src/services/Recent.ts","webpack:///nextcloud/apps/files/src/services/PersonalFiles.ts","webpack:///nextcloud/apps/files/src/init.ts","webpack:///nextcloud/apps/files/src/views/files.ts","webpack:///nextcloud/apps/files/src/views/recent.ts","webpack:///nextcloud/apps/files/src/views/personal-files.ts","webpack:///nextcloud/apps/files/src/services/ServiceWorker.js","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css?2742","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-BaUJseCQ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/index.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios/index.js","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","import { emit } from '@nextcloud/event-bus';\nimport { FileType } from '@nextcloud/files';\nimport { getCapabilities } from '@nextcloud/capabilities';\nimport { n, t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nexport const isTrashbinEnabled = () => getCapabilities()?.files?.undelete === true;\nexport const canUnshareOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'shared');\n};\nexport const canDisconnectOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'external');\n};\nexport const isMixedUnshareAndDelete = (nodes) => {\n if (nodes.length === 1) {\n return false;\n }\n const hasSharedItems = nodes.some(node => canUnshareOnly([node]));\n const hasDeleteItems = nodes.some(node => !canUnshareOnly([node]));\n return hasSharedItems && hasDeleteItems;\n};\nexport const isAllFiles = (nodes) => {\n return !nodes.some(node => node.type !== FileType.File);\n};\nexport const isAllFolders = (nodes) => {\n return !nodes.some(node => node.type !== FileType.Folder);\n};\nexport const displayName = (nodes, view) => {\n /**\n * If those nodes are all the root node of a\n * share, we can only unshare them.\n */\n if (canUnshareOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Leave this share');\n }\n return t('files', 'Leave these shares');\n }\n /**\n * If those nodes are all the root node of an\n * external storage, we can only disconnect it.\n */\n if (canDisconnectOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Disconnect storage');\n }\n return t('files', 'Disconnect storages');\n }\n /**\n * If we're in the trashbin, we can only delete permanently\n */\n if (view.id === 'trashbin' || !isTrashbinEnabled()) {\n return t('files', 'Delete permanently');\n }\n /**\n * If we're in the sharing view, we can only unshare\n */\n if (isMixedUnshareAndDelete(nodes)) {\n return t('files', 'Delete and unshare');\n }\n /**\n * If we're only selecting files, use proper wording\n */\n if (isAllFiles(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete file');\n }\n return t('files', 'Delete files');\n }\n /**\n * If we're only selecting folders, use proper wording\n */\n if (isAllFolders(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete folder');\n }\n return t('files', 'Delete folders');\n }\n return t('files', 'Delete');\n};\nexport const askConfirmation = async (nodes, view) => {\n const message = view.id === 'trashbin' || !isTrashbinEnabled()\n ? n('files', 'You are about to permanently delete {count} item', 'You are about to permanently delete {count} items', nodes.length, { count: nodes.length })\n : n('files', 'You are about to delete {count} item', 'You are about to delete {count} items', nodes.length, { count: nodes.length });\n return new Promise(resolve => {\n // TODO: Use the new dialog API\n window.OC.dialogs.confirmDestructive(message, t('files', 'Confirm deletion'), {\n type: window.OC.dialogs.YES_NO_BUTTONS,\n confirm: displayName(nodes, view),\n confirmClasses: 'error',\n cancel: t('files', 'Cancel'),\n }, (decision) => {\n resolve(decision);\n });\n });\n};\nexport const deleteNode = async (node) => {\n await axios.delete(node.encodedSource);\n // Let's delete even if it's moved to the trashbin\n // since it has been removed from the current view\n // and changing the view will trigger a reload anyway.\n emit('files:node:deleted', node);\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, Node, View, FileAction } from '@nextcloud/files';\nimport { showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport PQueue from 'p-queue';\nimport CloseSvg from '@mdi/svg/svg/close.svg?raw';\nimport NetworkOffSvg from '@mdi/svg/svg/network-off.svg?raw';\nimport TrashCanSvg from '@mdi/svg/svg/trash-can.svg?raw';\nimport logger from '../logger.js';\nimport { askConfirmation, canDisconnectOnly, canUnshareOnly, deleteNode, displayName, isTrashbinEnabled } from './deleteUtils';\nconst queue = new PQueue({ concurrency: 5 });\nexport const action = new FileAction({\n id: 'delete',\n displayName,\n iconSvgInline: (nodes) => {\n if (canUnshareOnly(nodes)) {\n return CloseSvg;\n }\n if (canDisconnectOnly(nodes)) {\n return NetworkOffSvg;\n }\n return TrashCanSvg;\n },\n enabled(nodes) {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => Boolean(permission & Permission.DELETE));\n },\n async exec(node, view) {\n try {\n let confirm = true;\n // If trashbin is disabled, we need to ask for confirmation\n if (!isTrashbinEnabled()) {\n confirm = await askConfirmation([node], view);\n }\n // If the user cancels the deletion, we don't want to do anything\n if (confirm === false) {\n showInfo(t('files', 'Deletion cancelled'));\n return null;\n }\n await deleteNode(node);\n return true;\n }\n catch (error) {\n logger.error('Error while deleting a file', { error, source: node.source, node });\n return false;\n }\n },\n async execBatch(nodes, view) {\n let confirm = true;\n // If trashbin is disabled, we need to ask for confirmation\n if (!isTrashbinEnabled()) {\n confirm = await askConfirmation(nodes, view);\n }\n else if (nodes.length >= 5 && !canUnshareOnly(nodes) && !canDisconnectOnly(nodes)) {\n confirm = await askConfirmation(nodes, view);\n }\n // If the user cancels the deletion, we don't want to do anything\n if (confirm === false) {\n showInfo(t('files', 'Deletion cancelled'));\n return Promise.all(nodes.map(() => null));\n }\n // Map each node to a promise that resolves with the result of exec(node)\n const promises = nodes.map(node => {\n // Create a promise that resolves with the result of exec(node)\n const promise = new Promise(resolve => {\n queue.add(async () => {\n try {\n await deleteNode(node);\n resolve(true);\n }\n catch (error) {\n logger.error('Error while deleting a file', { error, source: node.source, node });\n resolve(false);\n }\n });\n });\n return promise;\n });\n return Promise.all(promises);\n },\n order: 100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateUrl } from '@nextcloud/router';\nimport { FileAction, Permission, Node, FileType, View, DefaultType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport ArrowDownSvg from '@mdi/svg/svg/arrow-down.svg?raw';\nconst triggerDownload = function (url) {\n const hiddenElement = document.createElement('a');\n hiddenElement.download = '';\n hiddenElement.href = url;\n hiddenElement.click();\n};\n/**\n * Find the longest common path prefix of both input paths\n * @param first The first path\n * @param second The second path\n */\nfunction longestCommonPath(first, second) {\n const firstSegments = first.split('/').filter(Boolean);\n const secondSegments = second.split('/').filter(Boolean);\n let base = '/';\n for (const [index, segment] of firstSegments.entries()) {\n if (index >= second.length) {\n break;\n }\n if (segment !== secondSegments[index]) {\n break;\n }\n const sep = base === '/' ? '' : '/';\n base = `${base}${sep}${segment}`;\n }\n return base;\n}\n/**\n * Handle downloading multiple nodes\n * @param nodes The nodes to download\n */\nfunction downloadNodes(nodes) {\n // Remove nodes that are already included in parent folders\n // Example: Download A/foo.txt and A will only return A as A/foo.txt is already included\n const filteredNodes = nodes.filter((node) => {\n const parent = nodes.find((other) => (other.type === FileType.Folder\n && node.path.startsWith(`${other.path}/`)));\n return parent === undefined;\n });\n let base = filteredNodes[0].dirname;\n for (const node of filteredNodes.slice(1)) {\n base = longestCommonPath(base, node.dirname);\n }\n base = base || '/';\n // Remove the common prefix\n const filenames = filteredNodes.map((node) => node.path.slice(base === '/' ? 1 : (base.length + 1)));\n const secret = Math.random().toString(36).substring(2);\n const url = generateUrl('/apps/files/ajax/download.php?dir={base}&files={files}&downloadStartSecret={secret}', {\n base,\n secret,\n files: JSON.stringify(filenames),\n });\n triggerDownload(url);\n}\nconst isDownloadable = function (node) {\n if ((node.permissions & Permission.READ) === 0) {\n return false;\n }\n // If the mount type is a share, ensure it got download permissions.\n if (node.attributes['mount-type'] === 'shared') {\n const shareAttributes = JSON.parse(node.attributes['share-attributes'] ?? 'null');\n const downloadAttribute = shareAttributes?.find?.((attribute) => attribute.scope === 'permissions' && attribute.key === 'download');\n if (downloadAttribute !== undefined && downloadAttribute.enabled === false) {\n return false;\n }\n }\n return true;\n};\nexport const action = new FileAction({\n id: 'download',\n default: DefaultType.DEFAULT,\n displayName: () => t('files', 'Download'),\n iconSvgInline: () => ArrowDownSvg,\n enabled(nodes) {\n if (nodes.length === 0) {\n return false;\n }\n // We can download direct dav files. But if we have\n // some folders, we need to use the /apps/files/ajax/download.php\n // endpoint, which only supports user root folder.\n if (nodes.some(node => node.type === FileType.Folder)\n && nodes.some(node => !node.root?.startsWith('/files'))) {\n return false;\n }\n return nodes.every(isDownloadable);\n },\n async exec(node, view, dir) {\n if (node.type === FileType.Folder) {\n downloadNodes([node]);\n return null;\n }\n triggerDownload(node.encodedSource);\n return null;\n },\n async execBatch(nodes, view, dir) {\n if (nodes.length === 1) {\n this.exec(nodes[0], view, dir);\n return [null];\n }\n downloadNodes(nodes);\n return new Array(nodes.length).fill(null);\n },\n order: 30,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { encodePath } from '@nextcloud/paths';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { FileAction, Permission } from '@nextcloud/files';\nimport { showError, DialogBuilder } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport IconWeb from '@mdi/svg/svg/web.svg?raw';\nimport LaptopSvg from '@mdi/svg/svg/laptop.svg?raw';\nconst confirmLocalEditDialog = (localEditCallback = () => { }) => {\n let callbackCalled = false;\n return (new DialogBuilder())\n .setName(t('files', 'Edit file locally'))\n .setText(t('files', 'The file should now open on your device. If it doesn\\'t, please check that you have the desktop app installed.'))\n .setButtons([\n {\n label: t('files', 'Retry and close'),\n type: 'secondary',\n callback: () => {\n callbackCalled = true;\n localEditCallback(true);\n },\n },\n {\n label: t('files', 'Edit online'),\n icon: IconWeb,\n type: 'primary',\n callback: () => {\n callbackCalled = true;\n localEditCallback(false);\n },\n },\n ])\n .build()\n .show()\n .then(() => {\n // Ensure the callback is called even if the dialog is dismissed in other ways\n if (!callbackCalled) {\n localEditCallback(false);\n }\n });\n};\nconst attemptOpenLocalClient = async (path) => {\n openLocalClient(path);\n confirmLocalEditDialog((openLocally) => {\n if (!openLocally) {\n window.OCA.Viewer.open({ path });\n return;\n }\n openLocalClient(path);\n });\n};\nconst openLocalClient = async function (path) {\n const link = generateOcsUrl('apps/files/api/v1') + '/openlocaleditor?format=json';\n try {\n const result = await axios.post(link, { path });\n const uid = getCurrentUser()?.uid;\n let url = `nc://open/${uid}@` + window.location.host + encodePath(path);\n url += '?token=' + result.data.ocs.data.token;\n window.location.href = url;\n }\n catch (error) {\n showError(t('files', 'Failed to redirect to client'));\n }\n};\nexport const action = new FileAction({\n id: 'edit-locally',\n displayName: () => t('files', 'Edit locally'),\n iconSvgInline: () => LaptopSvg,\n // Only works on single files\n enabled(nodes) {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n return (nodes[0].permissions & Permission.UPDATE) !== 0;\n },\n async exec(node) {\n attemptOpenLocalClient(node.path);\n return null;\n },\n order: 25,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport PQueue from 'p-queue';\nimport Vue from 'vue';\nimport StarOutlineSvg from '@mdi/svg/svg/star-outline.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport logger from '../logger.js';\nimport { encodePath } from '@nextcloud/paths';\nconst queue = new PQueue({ concurrency: 5 });\n// If any of the nodes is not favorited, we display the favorite action.\nconst shouldFavorite = (nodes) => {\n return nodes.some(node => node.attributes.favorite !== 1);\n};\nexport const favoriteNode = async (node, view, willFavorite) => {\n try {\n // TODO: migrate to webdav tags plugin\n const url = generateUrl('/apps/files/api/v1/files') + encodePath(node.path);\n await axios.post(url, {\n tags: willFavorite\n ? [window.OC.TAG_FAVORITE]\n : [],\n });\n // Let's delete if we are in the favourites view\n // AND if it is removed from the user favorites\n // AND it's in the root of the favorites view\n if (view.id === 'favorites' && !willFavorite && node.dirname === '/') {\n emit('files:node:deleted', node);\n }\n // Update the node webdav attribute\n Vue.set(node.attributes, 'favorite', willFavorite ? 1 : 0);\n // Dispatch event to whoever is interested\n if (willFavorite) {\n emit('files:favorites:added', node);\n }\n else {\n emit('files:favorites:removed', node);\n }\n return true;\n }\n catch (error) {\n const action = willFavorite ? 'adding a file to favourites' : 'removing a file from favourites';\n logger.error('Error while ' + action, { error, source: node.source, node });\n return false;\n }\n};\nexport const action = new FileAction({\n id: 'favorite',\n displayName(nodes) {\n return shouldFavorite(nodes)\n ? t('files', 'Add to favorites')\n : t('files', 'Remove from favorites');\n },\n iconSvgInline: (nodes) => {\n return shouldFavorite(nodes)\n ? StarOutlineSvg\n : StarSvg;\n },\n enabled(nodes) {\n // We can only favorite nodes within files and with permissions\n return !nodes.some(node => !node.root?.startsWith?.('/files'))\n && nodes.every(node => node.permissions !== Permission.NONE);\n },\n async exec(node, view) {\n const willFavorite = shouldFavorite([node]);\n return await favoriteNode(node, view, willFavorite);\n },\n async execBatch(nodes, view) {\n const willFavorite = shouldFavorite(nodes);\n // Map each node to a promise that resolves with the result of exec(node)\n const promises = nodes.map(node => {\n // Create a promise that resolves with the result of exec(node)\n const promise = new Promise(resolve => {\n queue.add(async () => {\n try {\n await favoriteNode(node, view, willFavorite);\n resolve(true);\n }\n catch (error) {\n logger.error('Error while adding file to favorite', { error, source: node.source, node });\n resolve(false);\n }\n });\n });\n return promise;\n });\n return Promise.all(promises);\n },\n order: -50,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n// Maximum number of concurrent operations\nconst MAX_CONCURRENCY = 5;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: MAX_CONCURRENCY });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport logger from '../logger';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => {\n return davResultToNode(node);\n};\nconst client = davGetClient();\nexport const getContents = (path = '/') => {\n path = `${davRootPath}${path}`;\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map(result => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\n// eslint-disable-next-line n/no-extraneous-import\nimport { AxiosError } from 'axios';\nimport { basename, join } from 'path';\nimport { FilePickerClosed, getFilePickerBuilder, showError, showInfo, TOAST_PERMANENT_TIMEOUT } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Create a loading notification toast\n * @param mode The move or copy mode\n * @param source Name of the node that is copied / moved\n * @param destination Destination path\n * @return {() => void} Function to hide the notification\n */\nfunction createLoadingNotification(mode, source, destination) {\n const text = mode === MoveCopyAction.MOVE ? t('files', 'Moving \"{source}\" to \"{destination}\" …', { source, destination }) : t('files', 'Copying \"{source}\" to \"{destination}\" …', { source, destination });\n let toast;\n toast = showInfo(`<span class=\"icon icon-loading-small toast-loading-icon\"></span> ${text}`, {\n isHTML: true,\n timeout: TOAST_PERMANENT_TIMEOUT,\n onRemove: () => { toast?.hideToast(); toast = undefined; },\n });\n return () => toast && toast.hideToast();\n}\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise<void>} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const actionFinished = createLoadingNotification(method, node.basename, destination.path);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n if (!overwrite) {\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // two empty arrays: either only old files or conflict skipped -> no action required\n if (!selected.length && !renamed.length) {\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n try {\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n }\n catch (error) {\n const parser = new DOMParser();\n const text = await error.response?.text();\n const message = parser.parseFromString(text ?? '', 'text/xml')\n .querySelector('message')?.textContent;\n if (message) {\n showError(message);\n }\n throw error;\n }\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (error instanceof AxiosError) {\n if (error?.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error?.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error?.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', '');\n actionFinished();\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param action The action to open the file picker for\n * @param dir The directory to start the file picker in\n * @param nodes The nodes to move/copy\n * @return The picked destination or false if cancelled by user\n */\nasync function openFilePickerForAction(action, dir = '/', nodes) {\n const { resolve, reject, promise } = Promise.withResolvers();\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir)\n .setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n })\n .build();\n filePicker.pick()\n .catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n resolve(false);\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n return promise;\n}\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n if (result === false) {\n showInfo(t('files', 'Cancelled move or copy of \"{filename}\".', { filename: node.displayname }));\n return null;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n // Handle cancellation silently\n if (result === false) {\n showInfo(nodes.length === 1\n ? t('files', 'Cancelled move or copy of \"{filename}\".', { filename: nodes[0].displayname })\n : t('files', 'Cancelled move or copy operation'));\n return nodes.map(() => null);\n }\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, Node, FileType, View, FileAction, DefaultType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nexport const action = new FileAction({\n id: 'open-folder',\n displayName(files) {\n // Only works on single node\n const displayName = files[0].displayname;\n return t('files', 'Open folder {displayName}', { displayName });\n },\n iconSvgInline: () => FolderSvg,\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 (!node.isDavRessource) {\n return false;\n }\n return node.type === FileType.Folder\n && (node.permissions & Permission.READ) !== 0;\n },\n async exec(node, view) {\n if (!node || node.type !== FileType.Folder) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { dir: node.path });\n return null;\n },\n // Main action if enabled, meaning folders only\n default: DefaultType.HIDDEN,\n order: -100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { FileType, FileAction, DefaultType } from '@nextcloud/files';\n/**\n * TODO: Move away from a redirect and handle\n * navigation straight out of the recent view\n */\nexport const action = new FileAction({\n id: 'open-in-files-recent',\n displayName: () => t('files', 'Open in Files'),\n iconSvgInline: () => '',\n enabled: (nodes, view) => view.id === 'recent',\n async exec(node) {\n let dir = node.dirname;\n if (node.type === FileType.Folder) {\n dir = dir + '/' + node.basename;\n }\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: node.fileid }, { dir, openfile: 'true' });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport PencilSvg from '@mdi/svg/svg/pencil.svg?raw';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: 'rename',\n displayName: () => t('files', 'Rename'),\n iconSvgInline: () => PencilSvg,\n enabled: (nodes) => {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => (permission & Permission.UPDATE) !== 0);\n },\n async exec(node) {\n // Renaming is a built-in feature of the files app\n emit('files:node:rename', node);\n return null;\n },\n order: 10,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, FileType, Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nexport const action = new FileAction({\n id: 'view-in-folder',\n displayName() {\n return t('files', 'View in folder');\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes, view) {\n // Only works outside of the main files view\n if (view.id === 'files') {\n return false;\n }\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!node.isDavRessource) {\n return false;\n }\n // Can only view files that are in the user root folder\n if (!node.root?.startsWith('/files')) {\n return false;\n }\n if (node.permissions === Permission.NONE) {\n return false;\n }\n return node.type === FileType.File;\n },\n async exec(node) {\n if (!node || node.type !== FileType.File) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: 'files', fileid: node.fileid }, { dir: node.dirname });\n return null;\n },\n order: 80,\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcDialog,{attrs:{\"data-cy-files-new-node-dialog\":\"\",\"name\":_vm.name,\"open\":_vm.open,\"close-on-click-outside\":\"\",\"out-transition\":\"\"},on:{\"update:open\":function($event){return _setup.emit('close', null)}},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c(_setup.NcButton,{attrs:{\"data-cy-files-new-node-dialog-submit\":\"\",\"type\":\"primary\",\"disabled\":_setup.validity !== ''},on:{\"click\":_setup.submit}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('files', 'Create'))+\"\\n\\t\\t\")])]},proxy:true}])},[_vm._v(\" \"),_c('form',{ref:\"formElement\",staticClass:\"new-node-dialog__form\",on:{\"submit\":function($event){$event.preventDefault();return _setup.emit('close', _setup.localDefaultName)}}},[_c(_setup.NcTextField,{ref:\"nameInput\",attrs:{\"data-cy-files-new-node-dialog-input\":\"\",\"error\":_setup.validity !== '',\"helper-text\":_setup.validity,\"label\":_vm.label,\"value\":_setup.localDefaultName},on:{\"update:value\":function($event){_setup.localDefaultName=$event}}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { InvalidFilenameError, InvalidFilenameErrorReason, validateFilename } from '@nextcloud/files';\nimport { t } from '@nextcloud/l10n';\n/**\n * Get the validity of a filename (empty if valid).\n * This can be used for `setCustomValidity` on input elements\n * @param name The filename\n * @param escape Escape the matched string in the error (only set when used in HTML)\n */\nexport function getFilenameValidity(name, escape = false) {\n if (name.trim() === '') {\n return t('files', 'Filename must not be empty.');\n }\n try {\n validateFilename(name);\n return '';\n }\n catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n throw error;\n }\n switch (error.reason) {\n case InvalidFilenameErrorReason.Character:\n return t('files', '\"{char}\" is not allowed inside a filename.', { char: error.segment }, undefined, { escape });\n case InvalidFilenameErrorReason.ReservedName:\n return t('files', '\"{segment}\" is a reserved name and not allowed for filenames.', { segment: error.segment }, undefined, { escape: false });\n case InvalidFilenameErrorReason.Extension:\n if (error.segment.match(/\\.[a-z]/i)) {\n return t('files', '\"{extension}\" is not an allowed filetype.', { extension: error.segment }, undefined, { escape: false });\n }\n return t('files', 'Filenames must not end with \"{extension}\".', { extension: error.segment }, undefined, { escape: false });\n default:\n return t('files', 'Invalid filename.');\n }\n }\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewNodeDialog.vue?vue&type=template&id=242a2438&scoped=true\"\nimport script from \"./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"242a2438\",\n null\n \n)\n\nexport default component.exports","/**\n * @copyright Copyright (c) 2024 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { spawnDialog } from '@nextcloud/dialogs';\nimport NewNodeDialog from '../components/NewNodeDialog.vue';\n/**\n * Ask user for file or folder name\n * @param defaultName Default name to use\n * @param folderContent Nodes with in the current folder to check for unique name\n * @param labels Labels to set on the dialog\n * @return string if successfull otherwise null if aborted\n */\nexport function newNodeName(defaultName, folderContent, labels = {}) {\n const contentNames = folderContent.map((node) => node.basename);\n return new Promise((resolve) => {\n spawnDialog(NewNodeDialog, {\n ...labels,\n defaultName,\n otherNames: contentNames,\n }, (folderName) => {\n resolve(folderName);\n });\n });\n}\n","import { basename } from 'path';\nimport { emit } from '@nextcloud/event-bus';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { Permission, Folder } from '@nextcloud/files';\nimport { showSuccess } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport FolderPlusSvg from '@mdi/svg/svg/folder-plus.svg?raw';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport logger from '../logger';\nconst createNewFolder = async (root, name) => {\n const source = root.source + '/' + name;\n const encodedSource = root.encodedSource + '/' + encodeURIComponent(name);\n const response = await axios({\n method: 'MKCOL',\n url: encodedSource,\n headers: {\n Overwrite: 'F',\n },\n });\n return {\n fileid: parseInt(response.headers['oc-fileid']),\n source,\n };\n};\nexport const entry = {\n id: 'newFolder',\n displayName: t('files', 'New folder'),\n enabled: (context) => (context.permissions & Permission.CREATE) !== 0,\n iconSvgInline: FolderPlusSvg,\n order: 0,\n async handler(context, content) {\n const name = await newNodeName(t('files', 'New folder'), content);\n if (name !== null) {\n const { fileid, source } = await createNewFolder(context, name.trim());\n // Create the folder in the store\n const folder = new Folder({\n source,\n id: fileid,\n mtime: new Date(),\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.ALL,\n root: context?.root || '/files/' + getCurrentUser()?.uid,\n // Include mount-type from parent folder as this is inherited\n attributes: {\n 'mount-type': context.attributes?.['mount-type'],\n 'owner-id': context.attributes?.['owner-id'],\n 'owner-display-name': context.attributes?.['owner-display-name'],\n },\n });\n // Show success\n emit('files:node:created', folder);\n showSuccess(t('files', 'Created new folder \"{name}\"', { name: basename(source) }));\n logger.debug('Created new folder', { folder, source });\n // Navigate to the new folder\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: folder.fileid }, { dir: context.path });\n }\n },\n};\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { showError } from '@nextcloud/dialogs';\nimport { Permission, removeNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { translate as t } from '@nextcloud/l10n';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { join } from 'path';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport PlusSvg from '@mdi/svg/svg/plus.svg?raw';\nimport axios from '@nextcloud/axios';\nimport logger from '../logger.js';\nlet templatesPath = loadState('files', 'templates_path', false);\nlogger.debug('Initial templates folder', { templatesPath });\n/**\n * Init template folder\n * @param directory Folder where to create the templates folder\n * @param name Name to use or the templates folder\n */\nconst initTemplatesFolder = async function (directory, name) {\n const templatePath = join(directory.path, name);\n try {\n logger.debug('Initializing the templates directory', { templatePath });\n const { data } = await axios.post(generateOcsUrl('apps/files/api/v1/templates/path'), {\n templatePath,\n copySystemTemplates: true,\n });\n // Go to template directory\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: undefined }, { dir: templatePath });\n logger.info('Created new templates folder', {\n ...data.ocs.data,\n });\n templatesPath = data.ocs.data.templates_path;\n }\n catch (error) {\n logger.error('Unable to initialize the templates directory');\n showError(t('files', 'Unable to initialize the templates directory'));\n }\n};\nexport const entry = {\n id: 'template-picker',\n displayName: t('files', 'Create new templates folder'),\n iconSvgInline: PlusSvg,\n order: 10,\n enabled(context) {\n // Templates folder already initialized\n if (templatesPath) {\n return false;\n }\n // Allow creation on your own folders only\n if (context.owner !== getCurrentUser()?.uid) {\n return false;\n }\n return (context.permissions & Permission.CREATE) !== 0;\n },\n async handler(context, content) {\n const name = await newNodeName(t('files', 'Templates'), content, { name: t('files', 'New template folder') });\n if (name !== null) {\n // Create the template folder\n initTemplatesFolder(context, name);\n // Remove the menu entry\n removeNewFileMenuEntry('template-picker');\n }\n },\n};\n","/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Folder, Node, Permission, addNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue, { defineAsyncComponent } from 'vue';\n// async to reduce bundle size\nconst TemplatePickerVue = defineAsyncComponent(() => import('../views/TemplatePicker.vue'));\nlet TemplatePicker = null;\nconst getTemplatePicker = async (context) => {\n if (TemplatePicker === null) {\n // Create document root\n const mountingPoint = document.createElement('div');\n mountingPoint.id = 'template-picker';\n document.body.appendChild(mountingPoint);\n // Init vue app\n TemplatePicker = new Vue({\n render: (h) => h(TemplatePickerVue, {\n ref: 'picker',\n props: {\n parent: context,\n },\n }),\n methods: { open(...args) { this.$refs.picker.open(...args); } },\n el: mountingPoint,\n });\n }\n return TemplatePicker;\n};\n/**\n * Register all new-file-menu entries for all template providers\n */\nexport function registerTemplateEntries() {\n const templates = loadState('files', 'templates', []);\n // Init template files menu\n templates.forEach((provider, index) => {\n addNewFileMenuEntry({\n id: `template-new-${provider.app}-${index}`,\n displayName: provider.label,\n iconClass: provider.iconClass || 'icon-file',\n iconSvgInline: provider.iconSvgInline,\n enabled(context) {\n return (context.permissions & Permission.CREATE) !== 0;\n },\n order: 11,\n async handler(context, content) {\n const templatePicker = getTemplatePicker(context);\n const name = await newNodeName(`${provider.label}${provider.extension}`, content, {\n label: t('files', 'Filename'),\n name: provider.label,\n });\n if (name !== null) {\n // Create the file\n const picker = await templatePicker;\n picker.open(name.trim(), provider);\n }\n },\n });\n });\n}\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser, getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport { davGetClient } from '@nextcloud/files';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nexport const defaultRootUrl = generateRemoteUrl('dav' + rootPath);\n/**\n * @deprecated use `davGetClient` from `@nextcloud/files`\n */\nexport const getClient = (rootUrl = defaultRootUrl) => davGetClient(rootUrl);\nexport const client = davGetClient();\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davRemoteURL, davRootPath, getFavoriteNodes } from '@nextcloud/files';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { getContents as filesContents } from './Files.ts';\nimport { client } from './WebdavClient.ts';\nexport const getContents = (path = '/') => {\n // We only filter root files for favorites, for subfolders we can simply reuse the files contents\n if (path !== '/') {\n return filesContents(path);\n }\n return new CancelablePromise((resolve, reject, cancel) => {\n const promise = getFavoriteNodes(client)\n .catch(reject)\n .then((contents) => {\n if (!contents) {\n reject();\n return;\n }\n resolve({\n contents,\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n });\n });\n cancel(() => promise.cancel());\n });\n};\n","import { subscribe } from '@nextcloud/event-bus';\nimport { FileType, View, getNavigation } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { getLanguage, translate as t } from '@nextcloud/l10n';\nimport { basename } from 'path';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport { getContents } from '../services/Favorites';\nimport { hashCode } from '../utils/hashUtils';\nimport logger from '../logger';\nexport const generateFavoriteFolderView = function (folder, index = 0) {\n return new View({\n id: generateIdFromPath(folder.path),\n name: basename(folder.path),\n icon: FolderSvg,\n order: index,\n params: {\n dir: folder.path,\n fileid: folder.fileid.toString(),\n view: 'favorites',\n },\n parent: 'favorites',\n columns: [],\n getContents,\n });\n};\nexport const generateIdFromPath = function (path) {\n return `favorite-${hashCode(path)}`;\n};\nexport default () => {\n // Load state in function for mock testing purposes\n const favoriteFolders = loadState('files', 'favoriteFolders', []);\n const favoriteFoldersViews = favoriteFolders.map((folder, index) => generateFavoriteFolderView(folder, index));\n logger.debug('Generating favorites view', { favoriteFolders });\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'favorites',\n name: t('files', 'Favorites'),\n caption: t('files', 'List of favorites files and folders.'),\n emptyTitle: t('files', 'No favorites yet'),\n emptyCaption: t('files', 'Files and folders you mark as favorite will show up here'),\n icon: StarSvg,\n order: 15,\n columns: [],\n getContents,\n }));\n favoriteFoldersViews.forEach(view => Navigation.register(view));\n /**\n * Update favourites navigation when a new folder is added\n */\n subscribe('files:favorites:added', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n addToFavorites(node);\n });\n /**\n * Remove favourites navigation when a folder is removed\n */\n subscribe('files:favorites:removed', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n removePathFromFavorites(node.path);\n });\n /**\n * Update favourites navigation when a folder is renamed\n */\n subscribe('files:node:renamed', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n if (node.attributes.favorite !== 1) {\n return;\n }\n updateNodeFromFavorites(node);\n });\n /**\n * Sort the favorites paths array and\n * update the order property of the existing views\n */\n const updateAndSortViews = function () {\n favoriteFolders.sort((a, b) => a.path.localeCompare(b.path, getLanguage(), { ignorePunctuation: true }));\n favoriteFolders.forEach((folder, index) => {\n const view = favoriteFoldersViews.find((view) => view.id === generateIdFromPath(folder.path));\n if (view) {\n view.order = index;\n }\n });\n };\n // Add a folder to the favorites paths array and update the views\n const addToFavorites = function (node) {\n const newFavoriteFolder = { path: node.path, fileid: node.fileid };\n const view = generateFavoriteFolderView(newFavoriteFolder);\n // Skip if already exists\n if (favoriteFolders.find((folder) => folder.path === node.path)) {\n return;\n }\n // Update arrays\n favoriteFolders.push(newFavoriteFolder);\n favoriteFoldersViews.push(view);\n // Update and sort views\n updateAndSortViews();\n Navigation.register(view);\n };\n // Remove a folder from the favorites paths array and update the views\n const removePathFromFavorites = function (path) {\n const id = generateIdFromPath(path);\n const index = favoriteFolders.findIndex((folder) => folder.path === path);\n // Skip if not exists\n if (index === -1) {\n return;\n }\n // Update arrays\n favoriteFolders.splice(index, 1);\n favoriteFoldersViews.splice(index, 1);\n // Update and sort views\n Navigation.remove(id);\n updateAndSortViews();\n };\n // Update a folder from the favorites paths array and update the views\n const updateNodeFromFavorites = function (node) {\n const favoriteFolder = favoriteFolders.find((folder) => folder.fileid === node.fileid);\n // Skip if it does not exists\n if (favoriteFolder === undefined) {\n return;\n }\n removePathFromFavorites(favoriteFolder.path);\n addToFavorites(node);\n };\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","/**\n * @copyright Copyright (c) 2024 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davGetRecentSearch, davGetClient, davResultToNode, davRootPath, davRemoteURL } from '@nextcloud/files';\nimport { getBaseUrl } from '@nextcloud/router';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { useUserConfigStore } from '../store/userconfig.ts';\nimport { pinia } from '../store/index.ts';\nconst client = davGetClient();\nconst lastTwoWeeksTimestamp = Math.round((Date.now() / 1000) - (60 * 60 * 24 * 14));\n/**\n * Helper to map a WebDAV result to a Nextcloud node\n * The search endpoint already includes the dav remote URL so we must not include it in the source\n *\n * @param stat the WebDAV result\n */\nconst resultToNode = (stat) => davResultToNode(stat, davRootPath, getBaseUrl());\n/**\n * Get recently changed nodes\n *\n * This takes the users preference about hidden files into account.\n * If hidden files are not shown, then also recently changed files *in* hidden directories are filtered.\n *\n * @param path Path to search for recent changes\n */\nexport const getContents = async (path = '/') => {\n const store = useUserConfigStore(pinia);\n /**\n * Filter function that returns only the visible nodes - or hidden if explicitly configured\n * @param node The node to check\n */\n const filterHidden = (node) => path !== '/' // We need to hide files from hidden directories in the root if not configured to show\n || store.userConfig.show_hidden // If configured to show hidden files we can early return\n || !node.dirname.split('/').some((dir) => dir.startsWith('.')); // otherwise only include the file if non of the parent directories is hidden\n const abort = new AbortController();\n return new CancelablePromise(async (resolve, reject, cancel) => {\n cancel(() => abort.abort());\n let contentsResponse;\n try {\n contentsResponse = await client.search('/', {\n details: true,\n data: davGetRecentSearch(lastTwoWeeksTimestamp),\n signal: abort.signal,\n });\n }\n catch (e) {\n reject(e);\n return;\n }\n if (abort.signal.aborted) {\n reject();\n return;\n }\n const contents = contentsResponse.data.results\n .map(resultToNode)\n .filter(filterHidden);\n resolve({\n contents,\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n });\n });\n};\n","/**\n * @copyright Copyright (c) 2024 Eduardo Morales <emoral435@gmail.com>\n *\n * @author Eduardo Morales <emoral435@gmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { File } from '@nextcloud/files';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getContents as getFiles } from './Files';\nconst currUserID = getCurrentUser()?.uid;\n/**\n * NOTE MOVE TO @nextcloud/files\n * @brief filters each file/folder on its shared status\n * \tA personal file is considered a file that has all of the following properties:\n * \t\ta.) the current user owns\n * \t\tb.) the file is not shared with anyone\n * \t\tc.) the file is not a group folder\n * @param {FileStat} node that contains\n * @return {Boolean}\n */\nexport const isPersonalFile = function (node) {\n // the type of mounts that determine whether the file is shared\n const sharedMountTypes = [\"group\", \"shared\"];\n const mountType = node.attributes['mount-type'];\n // the check to determine whether the current logged in user is the owner / creator of the node\n const currUserCreated = currUserID ? node.owner === currUserID : true;\n return currUserCreated && !sharedMountTypes.includes(mountType);\n};\nexport const getContents = (path = \"/\") => {\n // get all the files from the current path as a cancellable promise\n // then filter the files that the user does not own, or has shared / is a group folder\n return getFiles(path)\n .then(c => {\n c.contents = c.contents.filter(isPersonalFile);\n return c;\n });\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { addNewFileMenuEntry, registerDavProperty, registerFileAction } from '@nextcloud/files';\nimport { action as deleteAction } from './actions/deleteAction';\nimport { action as downloadAction } from './actions/downloadAction';\nimport { action as editLocallyAction } from './actions/editLocallyAction';\nimport { action as favoriteAction } from './actions/favoriteAction';\nimport { action as moveOrCopyAction } from './actions/moveOrCopyAction';\nimport { action as openFolderAction } from './actions/openFolderAction';\nimport { action as openInFilesAction } from './actions/openInFilesAction';\nimport { action as renameAction } from './actions/renameAction';\nimport { action as sidebarAction } from './actions/sidebarAction';\nimport { action as viewInFolderAction } from './actions/viewInFolderAction';\nimport { entry as newFolderEntry } from './newMenu/newFolder.ts';\nimport { entry as newTemplatesFolder } from './newMenu/newTemplatesFolder.ts';\nimport { registerTemplateEntries } from './newMenu/newFromTemplate.ts';\nimport registerFavoritesView from './views/favorites';\nimport registerRecentView from './views/recent';\nimport registerPersonalFilesView from './views/personal-files';\nimport registerFilesView from './views/files';\nimport registerPreviewServiceWorker from './services/ServiceWorker.js';\nimport { initLivePhotos } from './services/LivePhotos';\n// Register file actions\nregisterFileAction(deleteAction);\nregisterFileAction(downloadAction);\nregisterFileAction(editLocallyAction);\nregisterFileAction(favoriteAction);\nregisterFileAction(moveOrCopyAction);\nregisterFileAction(openFolderAction);\nregisterFileAction(openInFilesAction);\nregisterFileAction(renameAction);\nregisterFileAction(sidebarAction);\nregisterFileAction(viewInFolderAction);\n// Register new menu entry\naddNewFileMenuEntry(newFolderEntry);\naddNewFileMenuEntry(newTemplatesFolder);\nregisterTemplateEntries();\n// Register files views\nregisterFavoritesView();\nregisterFilesView();\nregisterRecentView();\nregisterPersonalFilesView();\n// Register preview service worker\nregisterPreviewServiceWorker();\nregisterDavProperty('nc:hidden', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('nc:is-mount-root', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('nc:is-federated', { nc: 'http://nextcloud.org/ns' });\ninitLivePhotos();\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport { getContents } from '../services/Files';\nimport { View, getNavigation } from '@nextcloud/files';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'files',\n name: t('files', 'All files'),\n caption: t('files', 'List of your files and folders.'),\n icon: FolderSvg,\n order: 0,\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { View, getNavigation } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport HistorySvg from '@mdi/svg/svg/history.svg?raw';\nimport { getContents } from '../services/Recent';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'recent',\n name: t('files', 'Recent'),\n caption: t('files', 'List of recently modified files and folders.'),\n emptyTitle: t('files', 'No recently modified files'),\n emptyCaption: t('files', 'Files and folders you recently modified will show up here.'),\n icon: HistorySvg,\n order: 10,\n defaultSortKey: 'mtime',\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2024 Eduardo Morales <emoral435@gmail.com>\n *\n * @author Eduardo Morales <emoral435@gmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation } from '@nextcloud/files';\nimport { getContents } from '../services/PersonalFiles';\nimport AccountIcon from '@mdi/svg/svg/account.svg?raw';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'personal',\n name: t('files', 'Personal Files'),\n caption: t('files', 'List of your files and folders that are not shared.'),\n emptyTitle: t('files', 'No personal files found'),\n emptyCaption: t('files', 'Files that are not shared will show up here.'),\n icon: AccountIcon,\n order: 5,\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\nexport default () => {\n\tif ('serviceWorker' in navigator) {\n\t\t// Use the window load event to keep the page load performant\n\t\twindow.addEventListener('load', async () => {\n\t\t\ttry {\n\t\t\t\tconst url = generateUrl('/apps/files/preview-service-worker.js', {}, { noRewrite: true })\n\t\t\t\tconst registration = await navigator.serviceWorker.register(url, { scope: '/' })\n\t\t\t\tlogger.debug('SW registered: ', { registration })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('SW registration failed: ', { error })\n\t\t\t}\n\t\t})\n\t} else {\n\t\tlogger.debug('Service Worker is not enabled on this browser.')\n\t}\n}\n","/**\n * @copyright Copyright (c) 2023 Louis Chmn <louis@chmn.me>\n *\n * @author Louis Chmn <louis@chmn.me>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../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, `.upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-c5517ef8] {\\n display: inline-flex;\\n align-items: center;\\n height: var(--default-clickable-area);\\n}\\n.upload-picker__progress[data-v-c5517ef8] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-c5517ef8] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\\n animation: breathing-c5517ef8 3s ease-out infinite normal;\\n}\\n@keyframes breathing-c5517ef8 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `\n.new-node-dialog__form[data-v-242a2438] {\n\t/* Ensure the dialog does not jump when there is a validity error */\n\tmin-height: calc(3 * var(--default-clickable-area));\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NewNodeDialog.vue\"],\"names\":[],\"mappings\":\";AAwJA;CACA,mEAAA;CACA,mDAAA;AACA\",\"sourcesContent\":[\"<!--\\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\\n - SPDX-License-Identifier: AGPL-3.0-or-later\\n-->\\n<template>\\n\\t<NcDialog data-cy-files-new-node-dialog\\n\\t\\t:name=\\\"name\\\"\\n\\t\\t:open=\\\"open\\\"\\n\\t\\tclose-on-click-outside\\n\\t\\tout-transition\\n\\t\\t@update:open=\\\"emit('close', null)\\\">\\n\\t\\t<template #actions>\\n\\t\\t\\t<NcButton data-cy-files-new-node-dialog-submit\\n\\t\\t\\t\\ttype=\\\"primary\\\"\\n\\t\\t\\t\\t:disabled=\\\"validity !== ''\\\"\\n\\t\\t\\t\\t@click=\\\"submit\\\">\\n\\t\\t\\t\\t{{ t('files', 'Create') }}\\n\\t\\t\\t</NcButton>\\n\\t\\t</template>\\n\\t\\t<form ref=\\\"formElement\\\"\\n\\t\\t\\tclass=\\\"new-node-dialog__form\\\"\\n\\t\\t\\t@submit.prevent=\\\"emit('close', localDefaultName)\\\">\\n\\t\\t\\t<NcTextField ref=\\\"nameInput\\\"\\n\\t\\t\\t\\tdata-cy-files-new-node-dialog-input\\n\\t\\t\\t\\t:error=\\\"validity !== ''\\\"\\n\\t\\t\\t\\t:helper-text=\\\"validity\\\"\\n\\t\\t\\t\\t:label=\\\"label\\\"\\n\\t\\t\\t\\t:value.sync=\\\"localDefaultName\\\" />\\n\\t\\t</form>\\n\\t</NcDialog>\\n</template>\\n\\n<script setup lang=\\\"ts\\\">\\nimport type { ComponentPublicInstance, PropType } from 'vue'\\nimport { getUniqueName } from '@nextcloud/files'\\nimport { t } from '@nextcloud/l10n'\\nimport { extname } from 'path'\\nimport { nextTick, onMounted, ref, watch, watchEffect } from 'vue'\\nimport { getFilenameValidity } from '../utils/filenameValidity.ts'\\n\\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\\nimport NcDialog from '@nextcloud/vue/dist/Components/NcDialog.js'\\nimport NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js'\\n\\nconst props = defineProps({\\n\\t/**\\n\\t * The name to be used by default\\n\\t */\\n\\tdefaultName: {\\n\\t\\ttype: String,\\n\\t\\tdefault: t('files', 'New folder'),\\n\\t},\\n\\t/**\\n\\t * Other files that are in the current directory\\n\\t */\\n\\totherNames: {\\n\\t\\ttype: Array as PropType<string[]>,\\n\\t\\tdefault: () => [],\\n\\t},\\n\\t/**\\n\\t * Open state of the dialog\\n\\t */\\n\\topen: {\\n\\t\\ttype: Boolean,\\n\\t\\tdefault: true,\\n\\t},\\n\\t/**\\n\\t * Dialog name\\n\\t */\\n\\tname: {\\n\\t\\ttype: String,\\n\\t\\tdefault: t('files', 'Create new folder'),\\n\\t},\\n\\t/**\\n\\t * Input label\\n\\t */\\n\\tlabel: {\\n\\t\\ttype: String,\\n\\t\\tdefault: t('files', 'Folder name'),\\n\\t},\\n})\\n\\nconst emit = defineEmits<{\\n\\t(event: 'close', name: string | null): void\\n}>()\\n\\nconst localDefaultName = ref<string>(props.defaultName)\\nconst nameInput = ref<ComponentPublicInstance>()\\nconst formElement = ref<HTMLFormElement>()\\nconst validity = ref('')\\n\\n/**\\n * Focus the filename input field\\n */\\nfunction focusInput() {\\n\\tnextTick(() => {\\n\\t\\t// get the input element\\n\\t\\tconst input = nameInput.value?.$el.querySelector('input')\\n\\t\\tif (!props.open || !input) {\\n\\t\\t\\treturn\\n\\t\\t}\\n\\n\\t\\t// length of the basename\\n\\t\\tconst length = localDefaultName.value.length - extname(localDefaultName.value).length\\n\\t\\t// focus the input\\n\\t\\tinput.focus()\\n\\t\\t// and set the selection to the basename (name without extension)\\n\\t\\tinput.setSelectionRange(0, length)\\n\\t})\\n}\\n\\n/**\\n * Trigger submit on the form\\n */\\nfunction submit() {\\n\\tformElement.value?.requestSubmit()\\n}\\n\\n// Reset local name on props change\\nwatch(() => props.defaultName, () => {\\n\\tlocalDefaultName.value = getUniqueName(props.defaultName, props.otherNames).trim()\\n})\\n\\n// Validate the local name\\nwatchEffect(() => {\\n\\tif (props.otherNames.includes(localDefaultName.value.trim())) {\\n\\t\\tvalidity.value = t('files', 'This name is already in use.')\\n\\t} else {\\n\\t\\tvalidity.value = getFilenameValidity(localDefaultName.value.trim())\\n\\t}\\n\\tconst input = nameInput.value?.$el.querySelector('input')\\n\\tif (input) {\\n\\t\\tinput.setCustomValidity(validity.value)\\n\\t\\tinput.reportValidity()\\n\\t}\\n})\\n\\n// Ensure the input is focussed even if the dialog is already mounted but not open\\nwatch(() => props.open, () => {\\n\\tnextTick(() => {\\n\\t\\tfocusInput()\\n\\t})\\n})\\n\\nonMounted(() => {\\n\\t// on mounted lets use the unique name\\n\\tlocalDefaultName.value = getUniqueName(localDefaultName.value, props.otherNames).trim()\\n\\tnextTick(() => focusInput())\\n})\\n</script>\\n\\n<style scoped>\\n.new-node-dialog__form {\\n\\t/* Ensure the dialog does not jump when there is a validity error */\\n\\tmin-height: calc(3 * var(--default-clickable-area));\\n}\\n</style>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: <T>*/(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\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 \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\n/**\n * Linear delay\n * @param {number | undefined} delayFactor - delay factor in milliseconds (default: 100)\n * @returns {function} (retryNumber: number, error: AxiosError | undefined) => number\n */\nexport function linearDelay(delayFactor = 100) {\n return (retryNumber = 0, error = undefined) => {\n const delay = retryNumber * delayFactor;\n return Math.max(delay, retryAfter(error));\n };\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions, resetLastRequestTime = false) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n if (!currentState.lastRequestTime || resetLastRequestTime) {\n currentState.lastRequestTime = Date.now();\n }\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions, true);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.linearDelay = linearDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import '../assets/index-7UBhRcxV.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { Folder, Permission, davRootPath, FileType, davGetClient, davRemoteURL, validateFilename, InvalidFilenameError, getUniqueName, NewMenuEntryCategory, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry, { exponentialDelay } from \"axios-retry\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nimport { spawnDialog, showInfo, showWarning } from \"@nextcloud/dialogs\";\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n logger.debug(\"Created temporary upload workspace\", { url });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n /**\n * Add multiple children at once\n * @param files The files to add\n */\n async addChildren(files) {\n for (const file of files) {\n await this.addChild(file);\n }\n }\n /**\n * Add a child to the directory.\n * If it is a nested child the parents will be created if not already exist.\n * @param file The child to add\n */\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n const child = new Directory(`${rootPath}${file.name}`);\n await child.addChildren(entries);\n this._children.set(file.name, child);\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n await this._children.get(base).addChild(file);\n } else {\n const child = new Directory(`${rootPath}${base}`);\n await child.addChild(file);\n this._children.set(base, child);\n }\n }\n }\n }\n}\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"abusaud, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli <alimahwer@yahoo.com>, 2024\\nabusaud, 2024\\n\" }, \"msgstr\": [\"Last-Translator: abusaud, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" هو اسم ممنوع لملف أو مجلد.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" هو نوع ممنوع أن يكون لملف.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" هو غير مسموح به في اسم ملف أو مجلد.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفان متعارضان في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفات متعارضة في {dirname}\", \"{count} ملفات متعارضة في {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"بضع ثوانٍ متبقية\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['غير مسموح ان ينتهي اسم الملف بـ \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"اسم ملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معروف\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"اسم ملف جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"رفع الملفات\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"تمّ تجاوز الرفع\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['رفع \"{folder}\" تمّ تجاوزه'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp <enolp@softastur.org>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev <microphprashad@gmail.com>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev <microphprashad@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera <marcriera@softcatala.org>, 2022\\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\\nMartin Hankovec, 2024\\nAppukonrad <appukonrad@gmail.com>, 2024\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít jako název souboru či složky.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ není povoleného typu souboru.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít v rámci názvu souboru či složky.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvořit nový\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Názvy souborů nemohou končit na „{segment}“.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný název souboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový název souboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Přejmenovat\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Přeskočit\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrát\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrát složky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrát ze zařízení\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávání bylo zrušeno\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrání bylo přeskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Nahrání „{folder}“ bylo přeskočeno\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRasmus Rosendahl-Kaa, 2024\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tilladt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opret ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavne må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldigt filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nyt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøb\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Spring over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload fra enhed\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload er blevet annulleret\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload er blevet sprunget over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload af \"{folder}\" er blevet sprunget over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andy Scherzinger <info@andy-scherzinger.de>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMartin Wilichowski, 2024\\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is a forbidden file or folder name.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is a forbidden file type.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is not allowed inside a file or folder name.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Create new\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filenames must not end with \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Invalid filename\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"New filename\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rename\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Skip\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload folders\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload from device\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload has been cancelled\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload has been skipped\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload of \"{folder}\" has been skipped'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"You can either rename the file, skip this file or cancel the whole operation.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa de imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Cargar archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Cargar carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Cargar desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Carga cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la carga\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿Cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} archivos en conflicto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} archivo en conflicto en {dirname}\", \"{count} archivos en conflicto en {dirname}\", \"{count} archivo en conflicto en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Cuáles archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"teemue, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\nteemue, 2024\\n\" }, \"msgstr\": [\"Last-Translator: teemue, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" on kielletty tiedoston tai hakemiston nimi.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" on kielletty tiedostotyyppi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ei ole sallittu tiedoston tai hakemiston nimessä.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} tiedoston ristiriita\", \"{count} tiedoston ristiriita\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tiedoston ristiriita kansiossa {dirname}\", \"{count} tiedoston ristiriita kansiossa {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Peruuta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Peruuta koko toimenpide\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jatka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Luo uusi\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemassa oleva versio\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tiedoston nimi ei saa päättyä \"{segment}\"'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Kielletty/väärä tiedoston nimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimeisin muokkauspäivä on tuntematon\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uusi tiedostonimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uusi versio\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Esikatsele kuva\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Nimeä uudelleen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Valitse kaikki valintaruudut\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Valitse kaikki olemassa olevat tiedostot\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Valitse kaikki uudet tiedostot\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ohita\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ohita tämä tiedosto\", \"Ohita {count} tiedostoa\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tuntematon koko\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Lähetä\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Lähetä kansioita\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Lähetä laitteelta\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Lähetys on peruttu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Lähetys on ohitettu\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Hakemiston \"{folder}\" lähetys on ohitettu'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Lähetyksen edistyminen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mitkä tiedostot haluat säilyttää?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi.\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Arnaud Cazenave, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\nJérôme HERBINET, 2024\\nArnaud Cazenave, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Arnaud Cazenave, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" est un nom de fichier ou de dossier interdit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" est un type de fichier interdit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les téléversements\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Créer un nouveau\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Le nom des fichiers ne doit pas finir par \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fichier invalide\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nouveau nom de fichier\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renommer\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Téléverser\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléverser des fichiers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Téléverser des dossiers\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Téléverser depuis l'appareil\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Le téléversement a été annulé\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Le téléversement a été ignoré\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Le téléversement de \"{folder}\" a été ignoré'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléversement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Is ainm toirmiscthe comhaid nó fillteáin é \"{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Is cineál comhaid toirmiscthe é \"{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`Ní cheadaítear \"{segment}\" taobh istigh d'ainm comhaid nó fillteáin.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soicind fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Níor cheart go gcríochnaíonn comhaid chomhad le \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ainm comhaid nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uaslódáil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó ghléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Léiríodh an uaslódáil\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Léiríodh an uaslódáil \"{folder}\".'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» é un nome vedado para un ficheiro ou cartafol.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» é un tipo de ficheiro vedado.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Os nomes de ficheiros non deben rematar con «{segment}».\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O envío foi omitido\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"O envío de «{folder}» foi omitido\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Tiltott fájl- vagy mappanév: „{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Tiltott fájltípus: „{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Nem megengedett egy fájl- vagy mappanévben: „{segment}\".'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fájlt érintő konfliktus\", \"{count} fájlt érintő konfliktus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fájlt érintő konfliktus a mappában: {dirname}\", \"{count}fájlt érintő konfliktus a mappában: {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Mégse\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Teljes művelet megszakítása\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tovább\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Új létrehozása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Jelenlegi változat\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Fájlnevek nem végződhetnek erre: „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Érvénytelen fájlnév\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Utolsó módosítás dátuma ismeretlen\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Új fájlnév\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Új verzió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Kép előnézete\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Átnevezés\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Minden jelölőnégyzet kijelölése\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Minden jelenlegi fájl kijelölése\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Minden új fájl kijelölése\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Kihagyás\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ezen fájl kihagyása\", \"{count}fájl kihagyása\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ismeretlen méret\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Feltöltés\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappák feltöltése\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Feltöltés eszközről\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Feltöltés meg lett szakítva\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Feltöltés át lett ugorva\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}” feltöltése át lett ugorva\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Feltöltési folyamat\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mely fájlokat kívánja megtartani?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"A folytatáshoz minden fájlból legalább egy verziót ki kell választani.\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly <linerly@proton.me>, 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nEmpty Slot Filler, 2023\\nLinerly <linerly@proton.me>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly <linerly@proton.me>, 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"albanobattistella <albanobattistella@gmail.com>, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFrancesco Sercia, 2024\\nalbanobattistella <albanobattistella@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" è un nome di file o cartella proibito.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"è un tipo di file proibito.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" non è consentito all'interno di un nome di file o cartella.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annulla\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annulla l'intera operazione\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nuovo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['I nomi dei file non devono terminare con \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome file non valido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuovo nome file\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rinomina\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Salta\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Caricamento\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carica cartelle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carica dal dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Caricamento annullato\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Il caricamento è stato saltato\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Il caricamento di \"{folder}\" è stato saltato'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso del caricamento\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"È possibile rinominare il file, ignorarlo o annullare l'intera operazione.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"ja\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"kshimohata, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\nkshimohata, 2024\\n\" }, \"msgstr\": [\"Last-Translator: kshimohata, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" は禁止されているファイルまたはフォルダ名です。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" は禁止されているファイルタイプです。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ファイルまたはフォルダ名に \"{segment}\" を含めることはできません。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ファイル数の競合\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} で {count} 個のファイルが競合しています\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"キャンセル\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"すべての操作をキャンセルする\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"続ける\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新規作成\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既存バージョン\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ファイル名の末尾に \"{segment}\" を付けることはできません。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無効なファイル名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最終更新日不明\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新しいファイル名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新しいバージョン\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"プレビュー画像\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"名前を変更\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"すべて選択\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"すべての既存ファイルを選択\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"すべての新規ファイルを選択\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"スキップ\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} 個のファイルをスキップする\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"サイズ不明\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"アップロード\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップロード\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"フォルダのアップロード\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"デバイスからのアップロード\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"アップロードはキャンセルされました\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"アップロードがスキップされました\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" のアップロードがスキップされました'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"アップロード進行状況\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"どのファイルを保持しますか?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров <sasetodorov@gmail.com>, 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров <sasetodorov@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Roger Knutsen, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRoger Knutsen, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Roger Knutsen, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tillatt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hele operasjonen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opprett ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavn må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldig filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøp\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hopp over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Last opp mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Last opp fra enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Opplastingen er kansellert\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Opplastingen er hoppet over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Opplasting av \"{folder}\" er hoppet over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico <rico-schwab@hotmail.com>, 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico <rico-schwab@hotmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” to zabroniona nazwa pliku lub folderu.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” jest zabronionym typem pliku.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Utwórz nowe\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Nazwy plików nie mogą kończyć się na „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nieprawidłowa nazwa pliku\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nowa nazwa pliku\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Zmiana nazwy\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie pola wyboru\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pomiń\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Prześlij\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Prześlij foldery\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Prześlij z urządzenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Przesyłanie zostało anulowane\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Przesyłanie zostało pominięte\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Przesyłanie „{folder}” zostało pominięte\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Paulo Schopf, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\\nPaulo Schopf, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Paulo Schopf, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de arquivo proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido dentro de um nome de arquivo ou pasta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes dos arquivos não devem terminar com \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de arquivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de arquivo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pular\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carregar do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O upload foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O upload foi pulado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O upload de \"{folder}\" foi ignorado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva <mmsrs@sky.com>, 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva <mmsrs@sky.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Александр, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nВлад, 2024\\nAlex <fedotov22091982@gmail.com>, 2024\\nRoman Stepanov, 2024\\nMaksim Sukharev, 2024\\nАлександр, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Александр, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» — это запрещенное имя файла или папки.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» — это запрещенный тип файла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» не допускается в имени файла или папки.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отменить\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена файлов не должны заканчиваться на «{segment}»\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неверное имя файла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Новое имя файла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Выбрать все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустить\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Загрузить\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузить файлы\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузить папки\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузить с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Загрузка была пропущена\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Загрузка «{folder}» была пропущена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Прогресс загрузки\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Вы можете переименовать файл, пропустить этот файл или отменить всю операцию.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJozef Gaal <preklady@mayday.sk>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ je zakázaný názov súboru alebo priečinka.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je zákazaný typ súboru.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}“ je zakázané v názve súboru alebo adresára.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} súbor má konflikt\", \"{count} súbory majú konflikt\", \"{count} súborov má konflikt\", \"{count} súborov má konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} súborový konflikt v {dirname}\", \"{count} súborové konflikty v {dirname}\", \"{count} súborových konfliktov v {dirname}\", \"{count} súborových konfliktov v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúnd zostáva\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} zostáva\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zostáva niekoľko sekúnd\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušiť\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušiť celú operáciu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušiť nahrávanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovať\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvoriť nové\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovanie zostávajúceho času\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existujúca verzia\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Názvy súborov nesmú končiť znakom \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný názov súboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dátum poslednej úpravy neznámy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nový\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový názov súboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verzia\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastavené\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhľad obrázka\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Premenovať\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označiť všetky výberové políčka\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrať všetky existujúce súbory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrať všetky nové súbory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskočiť\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskočiť tento súbor\", \"Preskočiť {count} súbory\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súborov\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznáma veľkosť\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrať\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrať súbory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrať priečinky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrať zo zariadenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávanie bolo zrušené\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrávanie bolo preskočené\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nahrávanie \"{folder}\" bolo preskočené'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Priebeh nahrávania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Ktoré súbory chcete ponechať?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru.\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJan Kraljič <jan.kraljic@patware.eu>, 2024\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" je prepovedano ime datoteka ali mape.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je prepovedan tip datoteke.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ni dovoljeno v imenu datoteke ali mape.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"1{count} datoteka je v konfliktu\", \"1{count} datoteki sta v konfiktu\", \"1{count} datotek je v konfliktu\", \"{count} datotek je v konfliktu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} datoteka je v konfiktu v {dirname}\", \"{count} datoteki sta v konfiktu v {dirname}\", \"{count} datotek je v konfiktu v {dirname}\", \"{count} konfliktov datotek v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Prekliči\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Prekliči celotni postopek\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Nadaljuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Ustvari nov\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjujem čas do konca\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Obstoječa različica\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Imena datotek se ne smejo končati s \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nepravilno ime datoteke\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum zadnje spremembe neznan\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo ime datoteke\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova različica\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Predogled slike\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Preimenuj\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Izberi vsa potrditvena polja\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Označi vse obstoječe datoteke\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Označi vse nove datoteke\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskoči\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskoči datoteko\", \"Preskoči {count} datoteki\", \"Preskoči {count} datotek\", \"Preskoči {count} datotek\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznana velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Naloži\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Naloži datoteke\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Naloži mape\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Naloži iz naprave\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nalaganje je bilo preklicano\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nalaganje je bilo preskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nalaganje \"{folder}\" je bilo preskočeno'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Napredek nalaganja\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Katere datoteke želite obdržati?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Izbrati morate vsaj eno različico vsake datoteke da nadaljujete.\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” је забрањено име фајла или фолдера.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” је забрањен тип фајла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}” није дозвољено унутар имена фајла или фолдера.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Откажи\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отказује комплетну операцију\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Креирај ново\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена фајлова не смеју да се завршавају на „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име долазног фајла ће се додати број.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неисправно име фајла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ново име фајла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Промени име\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Прескочи\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Отпреми\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Отпреми фолдере\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Отпреми са уређаја\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Отпремање је прескочено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Отпремање „{folder}”је прескочено\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" är ett förbjudet fil- eller mappnamn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" är en förbjuden filtyp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" är inte tillåtet i ett fil- eller mappnamn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnamn får inte sluta med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnamn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Ladda upp\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Uppladdningen har hoppats över\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Uppladdningen av \"{folder}\" har hoppats över'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat <ppnplus@protonmail.com>, 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" dosya ya da klasör adına izin verilmiyor.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" dosya türüne izin verilmiyor.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Bir dosya ya da klasör adında \"{segment}\" ifadesine izin verilmiyor.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dosya adları \"{segment}\" ile bitmemeli.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yeni dosya adı\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yükle\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yükleme atlandı\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" klasörünün yüklenmesi atlandı'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [`\"{segment}\" не є дозволеним ім'ям файлу або каталогу.`] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" не є дозволеним типом файлу.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" не дозволене сполучення символів в назві файлу або каталогу.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Створити новий\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Ім'я файлів не можуть закінчуватися на \"{segment}\".`] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Недійсне ім'я файлу\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Нове ім'я файлу\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Перейменувати\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустити\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Завантажити\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Завантажити каталоги\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Завантажити з пристрою\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Завантаження пропущено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Завантаження \"{folder}\" пропущено'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gloryandel, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGloryandel, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gloryandel, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是被禁止的文件名或文件夹名。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是被禁止的文件类型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允许包含在文件名或文件夹名中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整个操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新建\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"服务端版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['文件名不得以 \"{segment}\" 结尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"如果同时选择两个版本,则上传文件的名称中将添加一个数字。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"无效文件名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新文件名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"上传版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"保留所有服务端版本\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"保留所有上传版本\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳过\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上传文件夹\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"从设备上传\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上传已取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上传已跳过\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['已跳过上传\"{folder}\"'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上传进度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以重命名文件、跳过此文件或取消整个操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择保留一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案或資料夾名稱。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案類型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允許出現在檔案或資料夾名稱中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"創建新\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['檔案名不得以 \"{segment}\" 結尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無效的檔案名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新檔案名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重新命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳過\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上傳資料夾\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"從裝置上傳\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上傳已被取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上傳已被跳過\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 的上傳已被跳過'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以選擇重新命名檔案、跳過此檔案或取消整個操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 <s8321414@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n _customHeaders;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({\n // Maximum number of concurrent uploads\n // @ts-expect-error TS2339 Object has no defined properties\n concurrency: getCapabilities().files?.chunked_upload?.max_parallel_count ?? 5\n });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n this._customHeaders = {};\n if (!destinationFolder) {\n const source = `${davRemoteURL}${davRootPath}`;\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder || folder.type !== FileType.Folder || !folder.source) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get registered custom headers for uploads\n */\n get customHeaders() {\n return structuredClone(this._customHeaders);\n }\n /**\n * Set a custom header\n * @param name The header to set\n * @param value The string value\n */\n setCustomHeader(name, value = \"\") {\n this._customHeaders[name] = value;\n }\n /**\n * Unset a custom header\n * @param name The header to unset\n */\n deleteCustomerHeader(name) {\n delete this._customHeaders[name];\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n if (this._uploadQueue.length === 0 && this._jobQueue.size === 0) {\n return;\n }\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n logger.debug(\"Uploader state reset\");\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array<File|FileSystemEntry>} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conflicts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n if (!callback) {\n callback = async (files2) => files2;\n }\n return new PCancelable(async (resolve, reject, onCancel) => {\n const rootFolder = new Directory(\"\");\n await rootFolder.addChildren(files);\n const target = `${this.root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const upload2 = new Upload(target, false, 0, rootFolder);\n upload2.status = Status$1.UPLOADING;\n this._uploadQueue.push(upload2);\n logger.debug(\"Starting new batch upload\", { target });\n try {\n const client = davGetClient(this.root, this._customHeaders);\n const promise = this.uploadDirectory(destination, rootFolder, callback, client);\n onCancel(() => promise.cancel());\n const uploads = await promise;\n upload2.status = Status$1.FINISHED;\n resolve(uploads);\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n } finally {\n this._notifyAll(upload2);\n this.updateStats();\n }\n });\n }\n /**\n * Helper to create a directory wrapped inside an Upload class\n * @param destination Destination where to create the directory\n * @param directory The directory to create\n * @param client The cached WebDAV client\n */\n createDirectory(destination, directory, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n if (!directory.name) {\n throw new Error(\"Can not create empty directory\");\n }\n const currentUpload = new Upload(rootPath, false, 0, directory);\n this._uploadQueue.push(currentUpload);\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n await this._jobQueue.add(async () => {\n currentUpload.status = Status$1.UPLOADING;\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n resolve(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n currentUpload.status = Status$1.FINISHED;\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n currentUpload.status = Status$1.FAILED;\n reject(error);\n }\n } finally {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n });\n });\n }\n // Helper for uploading directories (recursively)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n logger.debug(\"Upload canceled by user\", { directory });\n reject(t(\"Upload has been cancelled\"));\n return;\n } else if (selectedForUpload.length === 0 && directory.children.length > 0) {\n logger.debug(\"Skipping directory, as all files were skipped by user\", { directory });\n resolve([]);\n return;\n }\n const directories = [];\n const uploads = [];\n abort.signal.addEventListener(\"abort\", () => {\n directories.forEach((upload2) => upload2.cancel());\n uploads.forEach((upload2) => upload2.cancel());\n });\n logger.debug(\"Start directory upload\", { directory });\n try {\n if (directory.name) {\n uploads.push(this.createDirectory(destination, directory, client));\n await uploads.at(-1);\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n reject(e);\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n this._jobQueue.onIdle().then(() => this.reset());\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nfunction showInvalidFilenameDialog(error) {\n const InvalidFilenameDialog = defineAsyncComponent(() => import(\"./InvalidFilenameDialog-B2HT8YV2.mjs\"));\n const { promise, reject, resolve } = Promise.withResolvers();\n spawnDialog(\n InvalidFilenameDialog,\n {\n error,\n validateFilename\n },\n (...rest) => {\n const [{ skip, rename }] = rest;\n if (skip) {\n resolve(false);\n } else if (rename) {\n resolve(rename);\n } else {\n reject();\n }\n }\n );\n return promise;\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nfunction uploadConflictHandler(contentsCallback) {\n return async (nodes, path) => {\n try {\n const content = await contentsCallback(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n try {\n validateFilename(file.name);\n filesToUpload.push(file);\n } catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n logger.error(`Unexpected error while validating ${file.name}`, { error });\n throw error;\n }\n let newName = await showInvalidFilenameDialog(error);\n if (newName !== false) {\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n }\n if (filesToUpload.length === 0 && nodes.length > 0) {\n const folder = basename(path);\n showInfo(\n folder ? t('Upload of \"{folder}\" has been skipped', { folder }) : t(\"Upload has been skipped\")\n );\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n };\n}\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n /**\n * Allow to disable the \"new\"-menu for this UploadPicker instance\n * @default false\n */\n noMenu: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n /**\n * Overwrite forbidden characters (by default the capabilities of the server are used)\n * @deprecated Deprecated and will be removed in the next major version\n */\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n buttonLabel() {\n return this.noMenu ? t(\"Upload\") : t(\"New\");\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return this.buttonLabel;\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Handle clicking a new-menu entry\n * @param entry The entry that was clicked\n */\n async onClick(entry) {\n entry.handler(\n this.destination,\n await this.getContent().catch(() => [])\n );\n },\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, uploadConflictHandler(this.getContent)).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [(_vm.noMenu || _vm.newFileMenuEntries.length === 0) && !_vm.canUploadFolders ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"aria-label\": _vm.buttonLabel, \"menu-name\": _vm.buttonName, \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-folder\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), !_vm.noMenu ? _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }) : _vm._e(), !_vm.noMenu && _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), !_vm.noMenu && _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesOther, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"c5517ef8\"\n);\nconst UploadPicker = __component__.exports;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (forceRecreate || window._nc_uploader === void 0) {\n window._nc_uploader = new Uploader(isPublic);\n }\n return window._nc_uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-qDivo0Si.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nexport {\n Status$1 as S,\n UploadPicker as U,\n isFileSystemEntry as a,\n n as b,\n getConflicts as c,\n uploadConflictHandler as d,\n Upload as e,\n Uploader as f,\n getUploader as g,\n hasConflict as h,\n isFileSystemFileEntry as i,\n Status as j,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","import Toastify from \"toastify-js\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali <alimahwer@yahoo.com>, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAli <alimahwer@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali <alimahwer@yahoo.com>, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" لا يصلح كاسم مجلد.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" غير مسموح به كاسم مجلد'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" غير مسموح به داخل اسم مجلد.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"كل الملفات\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"إختَر\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"إختَر {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملفات\", \"إختَر %n ملف\", \"إختَر %n ملف\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"نسخ\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"نسخٌ إلى {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"تعذّر إنشاء المجلد الجديد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"يتعذّر تحميل إعدادات الملفات\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"يتعذّر تحميل مناظير views الملفات\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"أنشِيءْ مجلّداً\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"مُنتقِي المنظور الحالي\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"المُفضَّلة\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فلترة قائمة الملفات\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"اسم المجلد لا يمكن أن يكون فارغاً.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"البداية\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"مُعدَّل\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"أُنقُل\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"أُنقُل إلى {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"الاسم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"مٌجلّد جديد\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"اسم المجلد الجديد\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"لا توجد ملفات هنا\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"لا توجد ملفات تتطابق مع الفلتر الذي وضعته\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"لا توجد ملفات مُطابِقة\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"الحالي\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"حدِّد كل المداخل\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"إختَر المدخل\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"إختر سطر الـ {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"الحجم\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"تراجع\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"قُم برفع محتوىً أو قُم بمزامنة أجهزتك!\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2024\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nenolp <enolp@softastur.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2024\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Nun se permite'l caráuter «/» dientro'l nome de les carpetes.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tolos ficheros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoyer\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoyer «{ficheru}»\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoyer %n ficheru\", \"Escoyer %n ficheros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nun se pudo crear la carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nun se pudo cargar la configuración de los ficheros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nun se pudieron cargar les vistes de los ficheros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un direutoriu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de la vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Equí apaecen los ficheros y les carpetes que metas en Favoritos.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Equí apaecen los fichero y les carpetes que modificares apocayá.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Peñerar la llista de ficheros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nome de la carpeta nun pue tar baleru.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Aniciu\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificóse\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nueva\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nome de carpeta nuevu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Equí nun hai nengún ficheru\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nun s'atopó nengún ficheru que concasare cola peñera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nun hai nengún ficheru que concase\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"De recién\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleicionar toles entraes\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleicionar la entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleicionar la filera de: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamañu\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Xubi dalgún elementu o sincroniza colos tos preseos!\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Disober\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sergi Font, 2024\", \"Language-Team\": \"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nv v <e670006006@gmail.com>, 2024\\nMarc Riera <marcriera@softcatala.org>, 2024\\nSergi Font, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sergi Font, 2024\\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" és un nom de carpeta no vàlid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no és permès en el nom de carpeta'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no és permès en el nom de carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tots els fitxers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Tria\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Tria {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Tria %n fitxer\", \"Tria %n fitxers\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No s'ha pogut crear la carpeta nova\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No es poden carregar fitxers de configuració\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No es poden carregar fitxers de vistes\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de visualització actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferits\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes recentment modificats es mostraran aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar llistat de fitxers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nom de la carpeta no pot estar buit.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inici\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Data de modificació\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Desplaça\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Desplaça a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Crea\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nova\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom de la carpeta nova\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hi ha cap fitxer\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No s'ha trobat cap fitxer que coincideixi amb el filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hi ha cap fitxer que coincideixi\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecciona totes les entrades\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecciona l'entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecciona la fila per a {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mida\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfés\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2020\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:187\" }, \"msgstr\": [\"Zpět\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}“ není platný název složky.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}“ není povolený název složky.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Veškeré soubory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Zvolit\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Zvolit {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Zvolte %n soubor\", \"Zvolte %n soubory\", \"Zvolte %n souborů\", \"Zvolte %n soubory\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Zkopírovat\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Zkopírovat do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Novou složku se nepodařilo vytvořit\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodařilo se načíst nastavení pro soubory\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodařilo se načíst pohledy souborů\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvořit složku\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výběr stávajícího zobrazení\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Oblíbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které označíte jako oblíbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které jste nedávno pozměnili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovat seznam souborů\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Složku je třeba nějak nazvat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domů\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Změněno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Přesounout\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Přesunout do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Název\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nová složka\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Název pro novou složku\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nejsou zde žádné soubory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenalezeny žádné soubory odpovídající vašemu filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žádné odpovídající soubory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávné\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrat všechny položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrat položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vybrat řádek pro {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Zpět\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldigt mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tilladt mappenavn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tilladt i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vælg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vælg {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vælg %n fil\", \"Vælg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke oprette den nye mappe\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Filindstillingerne kunne ikke indlæses\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke indlæse filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opret mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuel visningsvælger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper, du markerer som foretrukne, vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper, du for nylig har ændret, vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer fil liste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavnet må ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ændret\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flyt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flyt til {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ny mappe navn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Der blev ikke fundet nogen filer, der matcher dit filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen matchende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Seneste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vælg alle poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vælg post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vælg rækken for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Fortryd\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload noget indhold eller synkroniser med dine enheder!\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ettore Atalan <atalanttore@googlemail.com>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2023\\nMarkus Eckstein, 2023\\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\\nJoachim Sokolowski, 2023\\nEttore Atalan <atalanttore@googlemail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden.\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Startseite\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Keine Dateien vorhanden\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die deinem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Jüngste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann <mario_siegmann@web.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Hier sind keine Dateien\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Neueste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig machen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Αναίρεση\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2023\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is an invalid folder name.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is not an allowed folder name'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is not allowed inside a folder name.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All files\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choose\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choose {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choose %n file\", \"Choose %n files\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copy\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copy to {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Could not create the new folder\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Could not load files settings\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Could not load files views\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Create directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Current view selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favourites\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Files and folders you mark as favourite will show up here.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Files and folders you recently modified will show up here.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter file list\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Folder name cannot be empty.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modified\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Move\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Move to {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New folder name\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No files in here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No files matching your filter were found.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No matching files\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Select all entries\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Select entry\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Select the row for {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Size\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undo\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload some content or sync with your devices!\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Malfari\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta no válido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido dentro del nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elige %n archivo\", \"Elige %n archivos\", \"Seleccione %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudieron cargar los ajustes de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\" Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuevo nombre de carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidiesen con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Elegir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Elija {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elija %n archivo\", \"Elija %n archivos\", \"Elija %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de la carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleccionar %n archivo\", \"Seleccionar %n archivos\", \"Seleccionar %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear carpeta\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Suba algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Desegin\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"reza reza <forghan89@yahoo.com>, 2024\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAmir Shekoohi, 2024\\nreza reza <forghan89@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: reza reza <forghan89@yahoo.com>, 2024\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} نام پوشه معتبر نیست\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} نام پوشه مجاز نیست\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" نمی‌تواند در نام پوشه استفاده شود.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"همه فایل‌ها\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"انتخاب\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"انتخاب {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"انتخاب %n فایل\", \"انتخاب %n فایل\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"رونوشت\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"رونوشت از {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"پوشه جدید ایجاد نشد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"تنظیمات فایل باز نشد\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"نمای فایل‌ها بارگیری نشد\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ایجاد فهرست\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"انتخابگر نماگر فعلی\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"علایق\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فیلتر لیست فایل\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"نام پوشه نمی تواند خالی باشد.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"خانه\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"اصلاح شده\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"انتقال\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"انتقال به {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"نام\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جدید\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"پوشه جدید\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"نام پوشه جدید\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"فایلی اینجا نیست\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"هیچ فایلی مطابق با فیلتر شما یافت نشد.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"فایل منطبقی وجود ندارد\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"اخیر\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"انتخاب همه ورودی ها\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"انتخاب ورودی\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"انتخاب ردیف برای {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"اندازه\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"بازگردانی\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"thingumy, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\n\" }, \"msgstr\": [\"Last-Translator: thingumy, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" on virheellinen kansion nimi.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ei ole sallittu kansion nimi'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ei ole sallittu kansion nimessä.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Kaikki tiedostot\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Valitse\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Valitse {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Valitse %n tiedosto\", \"Valitse %n tiedostoa\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopioi\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopioi sijaintiin {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Uutta kansiota ei voitu luoda\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tiedoston asetuksia ei saa ladattua\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tiedoston näkymiä ei saa ladattua\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Luo kansio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nykyisen näkymän valinta\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Suosikit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Suodata tiedostolistaa\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Kansion nimi ei voi olla tyhjä.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Koti\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Muokattu\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Siirrä\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Siirrä sijaintiin {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nimi\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Uusi kansio\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Uuden kansion nimi\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Täällä ei ole tiedostoja\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Suodatinta vastaavia tiedostoja ei löytynyt.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ei vastaavia tiedostoja\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Viimeisimmät\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Valitse kaikki tietueet\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Valitse tietue\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Valitse rivi {nodename}:lle\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Koko\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Kumoa\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"DEV314R, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nRémi LEBLOND, 2023\\nMordecai, 2023\\nfleopaulD, 2023\\nFrançois Ch., 2024\\nJérôme HERBINET, 2024\\nBenoit Pruneau, 2024\\nDEV314R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: DEV314R, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier valide.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier autorisé.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Le caractère « / » n'est pas autorisé dans un nom de dossier.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tous les fichiers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choisir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choisir {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choisir %n fichier\", \"Choisir %n fichiers\", \"Choisir %n fichiers \"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copier vers {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossible de créer le nouveau dossier\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Les paramètres des fichiers n'ont pas pu être chargés\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Les aperçus des fichiers n'ont pas pu être chargés\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Créer un répertoire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Sélecteur de vue courante\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoris\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Les fichiers et répertoires marqués en favoris apparaîtront ici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Les fichiers et répertoires modifiés récemment apparaîtront ici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer la liste des fichiers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Le nom du dossier ne peut pas être vide.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Accueil\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifié\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Déplacer\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Déplacer vers {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nouveau répertoire\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom du nouveau répertoire\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aucun fichier ici\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Aucun fichier trouvé correspondant à votre filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Aucun fichier trouvé\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Récents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tous sélectionner\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Sélectionner une entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Sélectionner l'enregistrement pour {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taille\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rétablir\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Charger du contenu ou synchroniser avec vos équipements !\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['Is ainm fillteáin neamhbhailí é \"{name}\".'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['Ní ainm fillteáin ceadaithe é \"{name}\".'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Ní cheadaítear \"/\" taobh istigh d\\'ainm fillteáin.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Gach comhad\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Roghnaigh\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Roghnaigh {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Roghnaigh %n comhad\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Cóip\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Cóipeáil chuig {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Níorbh fhéidir an fillteán nua a chruthú\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Níorbh fhéidir socruithe comhaid a lódáil\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Níorbh fhéidir radhairc comhad a lódáil\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Cruthaigh eolaire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Roghnóir amhairc reatha\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ceanáin\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Scag liosta comhad\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ní féidir ainm fillteáin a bheith folamh.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Baile\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Athraithe\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Bog\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Bog go{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ainm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Fillteán nua\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ainm fillteáin nua\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Níl aon chomhaid istigh anseo\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Níor aimsíodh aon chomhad a tháinig le do scagaire.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Gan comhaid meaitseála\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"le déanaí\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Roghnaigh gach iontráil\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Roghnaigh iontráil\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Roghnaigh an ró do {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méid\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cealaigh\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» non é un nome de cartafol válido.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» non é un nome de cartafol permitido\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"A «/» non está permitida no nome dun cartafol.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os ficheiros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoller\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoller {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoller %n ficheiro\", \"Escoller %n ficheiros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Non foi posíbel crear o novo cartafol\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Non foi posíbel cargar os axustes dos ficheiros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Non foi posíbel cargar as vistas dos ficheiros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que modificou recentemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar a lista de ficheiros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome do cartafol non pode estar baleiro.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover cara a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novo cartafol\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome do cartafol\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aquí non hai ficheiros\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Non se atopou ningún ficheiro que coincida co filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Non hai ficheiros coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccionar a fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Enviar algún contido ou sincronizalo cos seus dispositivos!\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"ביטול\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFőnyedi Áron <sajtman@gmail.com>, 2023\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” érvénytelen mappanév.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” nem engedélyezett mappanév\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” jel nem szerepelhet mappa nevében.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Minden fájl\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kiválasztás\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} kiválasztása\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n fájl kiválasztása\", \"%n fájl kiválasztása\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Másolás\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Másolás ide: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Az új mappa létrehozása nem lehetséges\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Fájlbeállítások betöltése nem lehetséges\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Fájlnézetek betöltése nem lehetséges\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Mappa létrehozása\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Jelenlegi nézet választó\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Kedvencek\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"A kedvencként megjelölt fájlok és mappák itt jelennek meg.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"A nemrég módosított fájlok és mappák itt jelennek meg.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fájl lista szűrése\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"A mappa neve nem lehet üres.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Kezdőlap\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Módosítva\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mozgatás\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mozgatás ide: {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Név\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Új mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Új mappa név\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Itt nincsenek fájlok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nincs a szűrési feltételeknek megfelelő fájl.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nincs ilyen fájl\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gyakori\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Minden bejegyzés kijelölése\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Bejegyzés kijelölése\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Válassz sort a következőnek: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méret\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Visszavonás\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Lun May, 2024\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nLinerly <linerly@proton.me>, 2023\\nLun May, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Lun May, 2024\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" bukan nama folder yang valid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" merupakan nama folder yang tidak diperbolehkan'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" tidak diperbolehkan di dalam nama folder.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Semua berkas\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Pilih\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Pilih {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Pilih %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Salin\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Salin ke {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Tidak dapat membuat folder baru\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tidak dapat memuat pengaturan file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tidak dapat memuat tampilan file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Buat direktori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Pemilih tampilan saat ini\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Saring daftar berkas\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Name berkas tidak boleh kosong.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Beranda\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Diubah\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Pindahkan\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Pindahkan ke {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nama\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Folder baru\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nama folder baru\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tidak ada berkas di sini\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Tidak ada berkas yang cocok dengan penyaringan Anda.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Tidak ada berkas yang cocok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Terkini\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Pilih semua entri\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Pilih entri\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Pilih baris untuk {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Ukuran\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Tidak jadi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Unggah beberapa konten atau sinkronkan dengan perangkat Anda!\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er ógilt möppuheiti.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ekki leyfilegt möppuheiti'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er er ekki leyfilegt innan í skráarheiti.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Allar skrár\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Veldu\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Veldu {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Afrita\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Afrita í {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Get ekki búið til nýju möppuna\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Búa til möppu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Núverandi val sýnar\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Eftirlæti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú merkir sem eftirlæti birtast hér.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú breyttir nýlega birtast hér.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Sía skráalista\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Möppuheiti má ekki vera tómt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Heim\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Breytt\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Færa\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Færa í {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Heiti\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ný mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Heiti nýrrar möppu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Engar skrár hér\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Engar skrár fundust sem passa við síuna.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Engar samsvarandi skrár\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nýlegt\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velja allar færslur\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velja færslu\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Veldu röðina fyrir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Stærð\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Afturkalla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Sendu inn eitthvað efni eða samstilltu við tækin þín!\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sebastiano Furlan, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nClaudio Scandella, 2023\\nRaffaele Silano <raffaelone@gmail.com>, 2024\\nSebastiano Furlan, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sebastiano Furlan, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" non è un nome di cartella valido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" non è un nome di cartella ammesso'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" non è ammesso all\\'interno del nome di una cartella.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tutti i file\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Scegli\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Scegli {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleziona %n file\", \"Seleziona %n file\", \"Seleziona %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia in {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossibile creare la nuova cartella\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Impossibile caricare le impostazioni dei file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Impossibile caricare le visualizzazioni dei file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crea directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selettore della vista corrente\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferiti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"I file e le cartelle contrassegnate come preferite saranno mostrate qui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"I file e le cartelle che hai modificato di recente saranno mostrate qui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtra elenco file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Il nome della cartella non può essere vuoto.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificato\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Sposta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Sposta in {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nuova cartella\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuovo nome cartella\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nessun file qui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nessun file che corrisponde al tuo filtro è stato trovato.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nessun file corrispondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Scegli tutte le voci\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleziona la voce\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleziona la riga per {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taglia/dimensioni\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Annulla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carica qualche contenuto o sincronizza con i tuoi dispositivi!\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"devi, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\\ntakehito kondo, 2023\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\n\" }, \"msgstr\": [\"Last-Translator: devi, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" はフォルダー名に使用できません。'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\"は許可されたフォルダー名ではありません'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"フォルダー名に「/(スラッシュ)」は使用できません。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"すべてのファイル\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選択\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} を選択\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n 個のファイルを選択\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"コピー\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} にコピー\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"新しいフォルダーを作成できませんでした\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"ファイル設定を読み込めませんでした\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"ファイルビューを読み込めませんでした\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ディレクトリを作成\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"現在のビューセレクタ\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"お気に入り\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"お気に入りとしてマークしたファイルとフォルダがここに表示されます。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"最近変更したファイルとフォルダがここに表示されます。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"ファイルリストをフィルタ\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"フォルダ名は空にできません。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"ホーム\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"変更済み\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} に移動\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名前\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新しいフォルダー\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新しいフォルダーの名前\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"ファイルがありません\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"フィルタに一致するファイルは見つかりませんでした。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"一致するファイルはありません\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"すべてのエントリを選択\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"エントリを選択\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} の行を選択\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"サイズ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"元に戻す\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"コンテンツをアップロードするか、デバイスと同期してください!\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Sefsex\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"되돌리기\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"VoXaN24ch, 2024\", \"Language-Team\": \"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nVoXaN24ch, 2024\\n\" }, \"msgstr\": [\"Last-Translator: VoXaN24ch, 2024\\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} ass en ongëlteg Dossier\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ass net en erlaabten Dossiernumm\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ass net an engem Dossier Numm erlaabt'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wielt\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wielt {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wielt %n Fichieren\", \"Wielt %n Fichier\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopie\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopie op {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Konnt den neien Dossier net erstellen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Konnt d'Dateienastellungen net lueden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Konnt d'Dateien net lueden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Erstellt Verzeechnes\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell Vue selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter Datei Lëscht\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Dossier Numm kann net eidel sinn\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Wëllkomm\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geännert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Plënne\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Plënneren {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Numm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nei\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neien dossier\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neien dossier numm\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Kee fichier hei\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Kee fichier deen äre filter passt gouf fonnt\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keng passende dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Rezent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wielt all entréen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wielt entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wielt d'zeil fir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Gréisst\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undoen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Luet en inhalt erop oder synchroniséiert mat ären apparater\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Atšaukti\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Врати\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Буцаах\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"पूर्ववत करा\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"နဂိုအတိုင်းပြန်ထားရန်\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"armandg <geirawsm@pm.me>, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nD PE, 2023\\nSyvert Fossdal, 2024\\narmandg <geirawsm@pm.me>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: armandg <geirawsm@pm.me>, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldig mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tillatt mappenavn.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tillatt inne i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Velg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Velg {fil}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Velg %n fil\", \"Velg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {destinasjon}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke opprette den nye mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunne ikke laste filinnstillinger\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke laste filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opprett mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nåværende visningsvelger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper du markerer som favoritter vil vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper du nylig har endret, vil vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer filliste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavn kan ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifisert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytt til {destinasjon}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappenavn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer her\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ingen filer funnet med ditt filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen treffende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nylig\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velg alle oppføringer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velg oppføring\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Velg raden for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størrelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Angre\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Last opp innhold eller synkroniser med enhetene dine!\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Casper <casper@vrije-mens.org>, 2024\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJoost <joho500@hotmail.com>, 2023\\nJeroen Gui, 2023\\nCasper <casper@vrije-mens.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Casper <casper@vrije-mens.org>, 2024\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is een ongeldige mapnaam.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is geen toegestane mapnaam'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is niet toegestaan binnen een bestandsnaam'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle bestanden\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kies\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Kies {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Kies %n bestand\", \"Kies %n bestanden\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieer\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopieer naar {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kon de nieuwe map niet maken\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kon de bestandsinstellingen niet laden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kon de bestandsweergaves niet laden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Maak map\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Huidige weergave keuze\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorieten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Bestanden en mappen die je favoriet maakt, worden hier getoond.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter bestandslijst\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mapnaam mag niet leeg zijn.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Gewijzigd\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verplaatsen\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Verplaats naar {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naam\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nieuw\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nieuwe map\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nieuwe mapnaam\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Geen bestanden hier\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Geen bestanden gevonden die voldoen aan je filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Geen gevonden bestanden\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecteer alle invoer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecteer invoer\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecteer de rij voor {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Grootte\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ongedaan maken\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload inhoud of synchroniseer met je apparaten!\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anullar\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJUJER wtf, 2023\\nM H <haincu@o2.pl>, 2023\\nValdnet, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" jest nieprawidłową nazwą folderu'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie jest dozwoloną nazwą folderu'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Znak \"/\" nie jest dozwolony w nazwie folderu'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Wszystkie pliki\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wybierz\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wybierz {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wybierz %n plik\", \"Wybierz %n pliki\", \"Wybierz %n plików\", \"Wybierz %n plików\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiuj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Skopiuj do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nie można utworzyć nowego folderu\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nie można wczytać ustawień plików\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nie można wczytać widoków plików\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Utwórz katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Bieżący selektor widoku\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ulubione\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtruj listę plików\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Nazwa folderu nie może być pusta\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Strona główna\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Zmodyfikowano\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Przenieś\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Przejdź do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nazwa\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nowy folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nowa nazwa folderu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Brak plików\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nie znaleziono plików spełniających warunki filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Brak pasujących plików\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Ostatni\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wybierz wszystkie wpisy\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wybierz wpis\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wybierz wiersz dla {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Rozmiar\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cofnij\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFlávio Veras <flaviove@gmail.com>, 2023\\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" é um nome de pasta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" não é um nome de pasta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" não é permitido dentro de um nome de pasta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os arquivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escolher\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escolher arquivo}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escolher %n arquivo\", \"Escolher %n arquivos\", \"Escolher %n arquivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar para {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Não foi possível criar a nova pasta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Não foi possível carregar configurações de arquivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Não foi possível carregar exibições de arquivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Criar diretório\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Seletor de visualização atual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os arquivos e pastas marcados como favoritos aparecerão aqui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Arquivos e pastas que você modificou recentemente aparecerão aqui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de arquivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome da pasta não pode ficar vazio.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover para {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova pasta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome de pasta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nenhum arquivo aqui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenhum arquivo correspondente ao seu filtro foi encontrado.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nenhum arquivo correspondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecione todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecione a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecione a linha para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamanho\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfazer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carregue algum conteúdo ou sincronize com seus dispositivos!\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anular\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Daniel MD <dmihaidumitru@gmail.com>, 2023\", \"Language-Team\": \"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nDaniel MD <dmihaidumitru@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" este un nume de director invalid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nu este un nume de director permis'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nu este permis în numele unui director.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Toate fișierele\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Alege\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Alege {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiază\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiază în {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nu s-a putut crea noul director\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Creează director\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selectorul curent al vizualizării\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorite\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le marcați ca favorite vor apărea aici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le-ați modificat recent vor apărea aici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrează lista de fișiere\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Numele de director nu poate fi necompletat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Acasă\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificat\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mută\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mută către {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nume\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nou\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Director nou\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Numele noului director\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nu există fișiere\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nu există fișiere potrivite pentru filtrul selectat\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nu există fișiere potrivite\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selectează toate înregistrările\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selectează înregistrarea\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selectează rândul pentru {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mărime\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Anulează\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kitsune R, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMax Smith <sevinfolds@gmail.com>, 2023\\nashed <craysy@gmail.com>, 2023\\nAlex <kekcuha@gmail.com>, 2024\\nR4SAS, 2024\\nВлад, 2024\\nKitsune R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kitsune R, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» — недопустимое имя папки.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» не является разрешенным именем папки\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Символ «/» не допускается внутри имени папки.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Все файлы\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Выбрать\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Выбрать {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Выбрать %n файл\", \"Выбрать %n файла\", \"Выбрать %n файлов\", \"Выбрать %n файлов\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копировать\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копировать в «{target}»\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не удалось создать новую папку\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не удалось загрузить настройки файлов\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не удалось загрузить файлы просмотров\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Создать папку\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Переключатель текущего вида\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Избранное\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Здесь появятся файлы и папки, которые вы пометили как избранные.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Здесь будут отображаться файлы и папки, которые вы недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фильтровать список файлов\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Имя папки не может быть пустым.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Изменен\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Переместить\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перейти к {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Имя\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новая папка\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Имя новой папки\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Здесь нет файлов\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Файлы, соответствующие вашему фильтру, не найдены.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нет подходящих файлов\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Недавний\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Выбрать все записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Выберите запись\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Выберите строку для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Размер\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Отменить\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Загрузите контент или синхронизируйте его со своими устройствами!\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"පෙරසේ\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nStanislav Prekop <prekop3@gmail.com>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" je neplatný názov pričinka.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie je povolený názov priečinka.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nie je povolené v názve priečinka.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Všetky súbory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vybrať\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vybrať {súbor}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vybraný %n súbor\", \"Vybrané %n súbory\", \"Vybraných %n súborov\", \"Vybraných %n súborov\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopírovať\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopírovať do {umiestnenia}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nepodarilo sa vytvoriť nový priečinok\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodarilo sa načítať nastavenia súborov\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodarilo sa načítať pohľady súborov\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvoriť adresár\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výber aktuálneho zobrazenia\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Obľúbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovať zoznam súborov\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Názov priečinka nemôže byť prázdny.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Upravené\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Prejsť\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Prejsť na {umiestnenie}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Názov\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Pridať\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Pridať priečinok\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Pridať názov priečinka\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nie sú tu žiadne súbory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenašli sa žiadne súbory zodpovedajúce vášmu filtru.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žiadne zodpovedajúce súbory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrať všetky položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrať položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vyberte riadok pre {názov uzla}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veľkosť\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Späť\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} je neveljavno ime mape.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ni dovoljeno ime mape\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ni dovoljen v imenu mape.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Vse datoteke\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izberi\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izberi {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izberi %n datoteko\", \"Izberi %n datoteki\", \"Izberi %n datotek\", \"Izberi %n datotek\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj v {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nisem mogel ustvariti nove mape\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"NIsem mogel naložiti nastavitev datotek\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nisem mogel naložiti pogledov datotek\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Ustvari mapo\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Izbirnik trenutnega pogleda\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Priljubljene\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtriraj seznam datotek\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ime mape ne more biti prazno\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Spremenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premakni\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premakni v {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ime\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova mapa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo ime mape\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tukaj ni datotek\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ni bilo najdenih ujemajočih datotek glede na vaš filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ni ujemajočih datotek\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedavne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izberi vse vnose\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izberi vnos\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izberi vrstico za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Razveljavi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” није исправно име фолдера.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” није дозвољено име за фолдер.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” није дозвољено унутар имена фолдера.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Сви фајлови\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Изаберите\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Изаберите {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Изаберите %n фајл\", \"Изаберите %n фајла\", \"Изаберите %n фајлова\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копирај\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копирај у {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Није могао да се креира нови фолдер\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не могу да се учитају подешавања фајлова\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не могу да се учитају прикази фајлова\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Креирај директоријум\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Бирач тренутног приказа\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Омиљено\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери које сте означили као омиљене.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери који се се недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фитрирање листе фајлова\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Име фолдера не може бити празно.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Почетак\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Измењено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Премести\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Премести у {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Име\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Нови фолдер\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Име новог фолдера\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Овде нема фајлова\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Није пронађен ниједан фајл који задовољава ваш филтер.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нема таквих фајлова\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Скорашње\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Изаберите све ставке\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Изаберите ставку\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Изаберите ред за {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Величина\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Поништи\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Отпремите нешто или синхронизујте са својим уређајима!\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Bogdan Vuković, 2024\", \"Language-Team\": \"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBogdan Vuković, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Bogdan Vuković, 2024\\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” je neispravan naziv foldera.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” je nedozvoljen naziv foldera.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” se ne može koristiti unutar naziva foldera.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Svi fajlovi\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izaberite\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izaberite {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izaberite %n fajl\", \"Izaberite %n fajla\", \"Izaberite %n fajlova\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj u {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Neuspešno kreiranje novog foldera\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Neuspešno učitavanje podešavanja fajlova\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Neuspešno učitavanje prikaza fajlova\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Kreiraj direktorijum\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Birač trenutnog prikaza\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Omiljeno\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Lista omiljenih fajlova i foldera.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Lista fajlova i foldera sa skorašnjim izmenama.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fitriranje liste fajlova\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Naziv foldera ne može biti prazan.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Početak\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Izmenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premesti\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premesti u {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naziv\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novi folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Naziv novog foldera\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Bez fajlova\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nema fajlova koji zadovoljavaju uslove filtera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nema takvih fajlova\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Skorašnje\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izaberite sve stavke\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izaberite stavku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izaberite red za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veličina\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Vrati\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Otpremite sadržaj ili sinhronizujte sa svojim uređajima!\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" är ett ogiltigt mappnamn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" är inte ett tillåtet mappnamn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" är inte tillåtet i ett mappnamn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alla filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Välj\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Välj {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Välj %n fil\", \"Välj %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiera\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiera till {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunde inte skapa den nya mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunde inte ladda filinställningar\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunde inte ladda läsa in filvyer\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Skapa katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell vyväljare\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer och mappar som du markerar som favorit kommer att visas här.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer och mappar som du nyligen ändrat kommer att visas här.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrera fillistan\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappnamnet får inte vara tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ändrad\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytta till {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Namn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mapp\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappnamn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Inga filer här\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Inga filer som matchar ditt filter hittades.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Inga matchande filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nyligen\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Välj alla poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Välj post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Välj raden för {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Storlek\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ångra\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Ladda upp lite innehåll eller synkronisera med dina enheter!\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"செயல்தவிர்\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"เลิกทำ\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" geçersiz bir klasör adı.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" izin verilen bir klasör adı değil'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" karakteri klasör adında kullanılamaz.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tüm dosyalar\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seçin\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} seçin\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n dosya seçin\", \"%n dosya seçin\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopyala\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} üzerine kopyala\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Yeni klasör oluşturulamadı\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dosyalar uygulamasının ayarları yüklenemedi\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dosyalar uygulamasının görünümleri yüklenemedi\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Klasör oluştur\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Geçerli görünüm seçici\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Sık kullanılanlar\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dosya listesini süz\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Klasör adı boş olamaz.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Giriş\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Değiştirilme\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Taşı\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} üzerine taşı\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ad\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Yeni klasör\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Yeni klasör adı\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Burada herhangi bir dosya yok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Süzgece uyan bir dosya bulunamadı.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Eşleşen bir dosya yok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Son kullanılanlar\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tüm kayıtları seç\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Kaydı seç\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} satırını seçin\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Boyut\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Geri al\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" є недійсною назвою для каталогу.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" не є дозволеною назвою для каталогу.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" не дозволено у назві каталогу.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Всі файли\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Вибрати\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Вибрати {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Вибрати %n файл\", \"Вибрати %n файли\", \"Вибрати %n файлів\", \"Вибрати %n файлів\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копіювати\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копіювати до {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не вдалося створити новий каталог\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не вдалося завантажити налаштування файлів\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не вдалося завантажити подання файлів\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Створити каталог\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Вибір подання\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Із зірочкою\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які ви позначите зірочкою.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які було нещодавно змінено.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фільтрувати список файлів\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ім'я каталогу не може бути порожнім.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Домівка\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Змінено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Перемістити\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перемістити до {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ім'я\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новий\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новий каталог\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ім'я нового каталогу\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Тут відсутні файли\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Відсутні збіги за фільтром.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Відсутні збіги файлів.\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Останні\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Вибрати всі записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Вибрати запис\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Вибрати рядок для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Розмір\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Повернути\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Завантажте вміст або синхронізуйте з вашим пристроєм!\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Trần Đình Tuyển, 2024\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTran Duc, 2024\\nTrần Đình Tuyển, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Trần Đình Tuyển, 2024\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" là tên thư mục không hợp lệ.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"1{name}\"không phải là tên thư mục được cho phép'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\"không được phép đặt trong tên thư mục.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tất cả tệp\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Chọn\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Chọn {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Chọn %n tệp\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Sao chép\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Sao chép đến {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Không thể tạo thư mục mới\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Không thể tải tập tin cài đặt\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Không thể tải xuống tệp xem\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Tạo thư mục\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Hiện tại chế độ xem của bộ chọn\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Yêu cầu thích\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter list file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Thư mục tên không được để trống.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Trang chủ\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Đã sửa đổi\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Di chuyển\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Di chuyển đến{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Tên\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Mới\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New thư mục\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New thư mục tên\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No file at here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Không tìm thấy tệp nào phù hợp với bộ lọc của bạn.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No file phù hợp\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gần đây\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Choose all items\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Chọn mục nhập\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Choose hang cho{nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Kích cỡ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Hoàn tác\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ruijian Deng, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nken, 2023\\nEric, 2023\\nPhonebook3599, 2024\\nRuijian Deng, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ruijian Deng, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"“{name}”是无效的文件夹名称。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"“{name}”不是允许的文件夹名称\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"文件夹名称中不允许包含“/”。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有文件\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"选择\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"选择 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"选择 %n 个文件\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"复制\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"复制到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"无法创建新文件夹\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"无法加载文件设置\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"无法加载文件视图\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"创建目录\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"当前视图选择器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最爱\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您标记为最爱的文件与文件夹会显示在这里\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的文件与文件夹会显示在这里\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"过滤文件列表\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"文件夹名称不能为空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"主目录\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移动\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移动至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名称\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新文件夹\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新文件夹名称\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此处无文件\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您过滤条件的文件\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"无符合的文件\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"选择所有条目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"选择条目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"选择 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\" 撤消\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上传一些项目或与您的设备同步!\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['資料夾名稱中不允許使用 \"/\"。'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"選擇 %n 個檔案\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"無法載入檔案設定\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"無法載入文件視圖\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"資料夾名稱不能為空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"首頁\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"還原\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2023\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\n黃柏諺 <s8321414@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid file name.': { \"msgid\": '\"{name}\" is an invalid file name.', \"msgstr\": [\"「{name}」是無效的檔案名稱。\"] }, '\"{name}\" is not an allowed filetype': { \"msgid\": '\"{name}\" is not an allowed filetype', \"msgstr\": [\"「{name}」並非允許的檔案類型\"] }, '\"/\" is not allowed inside a file name.': { \"msgid\": '\"/\" is not allowed inside a file name.', \"msgstr\": [\"檔案名稱中不允許使用「/」。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"File name cannot be empty.\": { \"msgid\": \"File name cannot be empty.\", \"msgstr\": [\"檔案名稱不能為空。\"] }, \"Filepicker sections\": { \"msgid\": \"Filepicker sections\", \"msgstr\": [\"檔案挑選器選取\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"家\"] }, \"Mime type {mime}\": { \"msgid\": \"Mime type {mime}\", \"msgstr\": [\"Mime type {mime}\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"復原\"] }, \"unknown\": { \"msgid\": \"unknown\", \"msgstr\": [\"未知\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zu_ZA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zu_ZA\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zu_ZA\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar ToastType = /* @__PURE__ */ ((ToastType2) => {\n ToastType2[\"ERROR\"] = \"toast-error\";\n ToastType2[\"WARNING\"] = \"toast-warning\";\n ToastType2[\"INFO\"] = \"toast-info\";\n ToastType2[\"SUCCESS\"] = \"toast-success\";\n ToastType2[\"PERMANENT\"] = \"toast-error\";\n ToastType2[\"UNDO\"] = \"toast-undo\";\n return ToastType2;\n})(ToastType || {});\nconst TOAST_ARIA_LIVE_OFF = \"off\";\nconst TOAST_ARIA_LIVE_POLITE = \"polite\";\nconst TOAST_ARIA_LIVE_ASSERTIVE = \"assertive\";\nvar ToastAriaLive = /* @__PURE__ */ ((ToastAriaLive2) => {\n ToastAriaLive2[ToastAriaLive2[\"OFF\"] = TOAST_ARIA_LIVE_OFF] = \"OFF\";\n ToastAriaLive2[ToastAriaLive2[\"POLITE\"] = TOAST_ARIA_LIVE_POLITE] = \"POLITE\";\n ToastAriaLive2[ToastAriaLive2[\"ASSERTIVE\"] = TOAST_ARIA_LIVE_ASSERTIVE] = \"ASSERTIVE\";\n return ToastAriaLive2;\n})(ToastAriaLive || {});\nconst TOAST_UNDO_TIMEOUT = 1e4;\nconst TOAST_DEFAULT_TIMEOUT = 7e3;\nconst TOAST_PERMANENT_TIMEOUT = -1;\nfunction showMessage(data, options) {\n var _a;\n options = Object.assign({\n timeout: TOAST_DEFAULT_TIMEOUT,\n isHTML: false,\n type: void 0,\n // An undefined selector defaults to the body element\n selector: void 0,\n onRemove: () => {\n },\n onClick: void 0,\n close: true\n }, options);\n if (typeof data === \"string\" && !options.isHTML) {\n const element = document.createElement(\"div\");\n element.innerHTML = data;\n data = element.innerText;\n }\n let classes = (_a = options.type) != null ? _a : \"\";\n if (typeof options.onClick === \"function\") {\n classes += \" toast-with-click \";\n }\n const isNode = data instanceof Node;\n let ariaLive = ToastAriaLive.POLITE;\n if (options.ariaLive) {\n ariaLive = options.ariaLive;\n } else if (options.type === \"toast-error\" || options.type === \"toast-undo\") {\n ariaLive = ToastAriaLive.ASSERTIVE;\n }\n const toast = Toastify({\n [!isNode ? \"text\" : \"node\"]: data,\n duration: options.timeout,\n callback: options.onRemove,\n onClick: options.onClick,\n close: options.close,\n gravity: \"top\",\n selector: options.selector,\n position: \"right\",\n backgroundColor: \"\",\n className: \"dialogs \" + classes,\n escapeMarkup: !options.isHTML,\n ariaLive\n });\n toast.showToast();\n return toast;\n}\nfunction showError(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-error\"\n /* ERROR */\n });\n}\nfunction showWarning(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-warning\"\n /* WARNING */\n });\n}\nfunction showInfo(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-info\"\n /* INFO */\n });\n}\nfunction showSuccess(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-success\"\n /* SUCCESS */\n });\n}\nfunction showUndo(text, onUndo, options) {\n if (!(onUndo instanceof Function)) {\n throw new Error(\"Please provide a valid onUndo method\");\n }\n let toast;\n options = Object.assign(options || {}, {\n // force 10 seconds of timeout\n timeout: TOAST_UNDO_TIMEOUT,\n // remove close button\n close: false\n });\n const undoContent = document.createElement(\"span\");\n const undoButton = document.createElement(\"button\");\n undoContent.classList.add(\"toast-undo-container\");\n undoButton.classList.add(\"toast-undo-button\");\n undoButton.innerText = t(\"Undo\");\n undoContent.innerText = text;\n undoContent.appendChild(undoButton);\n undoButton.addEventListener(\"click\", function(event) {\n event.stopPropagation();\n onUndo(event);\n if ((toast == null ? void 0 : toast.hideToast) instanceof Function) {\n toast.hideToast();\n }\n });\n toast = showMessage(undoContent, {\n ...options,\n type: \"toast-undo\"\n /* UNDO */\n });\n return toast;\n}\nfunction normalizeComponent(scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render) {\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nexport {\n ToastAriaLive as T,\n normalizeComponent as a,\n ToastType as b,\n TOAST_UNDO_TIMEOUT as c,\n TOAST_DEFAULT_TIMEOUT as d,\n TOAST_PERMANENT_TIMEOUT as e,\n TOAST_ARIA_LIVE_OFF as f,\n TOAST_ARIA_LIVE_POLITE as g,\n TOAST_ARIA_LIVE_ASSERTIVE as h,\n showSuccess as i,\n showWarning as j,\n showInfo as k,\n showError as l,\n showUndo as m,\n n,\n showMessage as s,\n t\n};\n","import { basename } from \"path\";\nimport Vue, { toRaw, defineComponent, onMounted, onUnmounted } from \"vue\";\nimport { t, n, a as normalizeComponent } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport { h, f, g, d, e, c, T, b, l, k, s, i, m, j } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport NcDialog from \"@nextcloud/vue/dist/Components/NcDialog.js\";\nimport NcNoteCard from \"@nextcloud/vue/dist/Components/NcNoteCard.js\";\nconst spawnDialog = (dialog, props, onClose = () => {\n}) => {\n const el = document.createElement(\"div\");\n const container = document.querySelector(props == null ? void 0 : props.container) || document.body;\n container.appendChild(el);\n const vue = new Vue({\n el,\n name: \"VueDialogHelper\",\n render: (h2) => h2(dialog, {\n props,\n on: {\n close: (...rest) => {\n onClose(...rest.map((v) => toRaw(v)));\n vue.$destroy();\n }\n }\n })\n });\n return vue;\n};\nconst IconMove = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-move\" viewBox=\"0 0 24 24\"><path d=\"M14,18V15H10V11H14V8L19,13M20,6H12L10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6Z\" /></svg>';\nconst IconCopy = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-multiple\" viewBox=\"0 0 24 24\"><path d=\"M22,4H14L12,2H6A2,2 0 0,0 4,4V16A2,2 0 0,0 6,18H22A2,2 0 0,0 24,16V6A2,2 0 0,0 22,4M2,6H0V11H0V20A2,2 0 0,0 2,22H20V20H2V6Z\" /></svg>';\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nvar FilePickerType = /* @__PURE__ */ ((FilePickerType2) => {\n FilePickerType2[FilePickerType2[\"Choose\"] = 1] = \"Choose\";\n FilePickerType2[FilePickerType2[\"Move\"] = 2] = \"Move\";\n FilePickerType2[FilePickerType2[\"Copy\"] = 3] = \"Copy\";\n FilePickerType2[FilePickerType2[\"CopyMove\"] = 4] = \"CopyMove\";\n FilePickerType2[FilePickerType2[\"Custom\"] = 5] = \"Custom\";\n return FilePickerType2;\n})(FilePickerType || {});\nclass FilePickerClosed extends Error {\n}\nclass FilePicker {\n constructor(title, multiSelect, mimeTypeFilter, directoriesAllowed, buttons, path, filter, container, disabledNavigation = false) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\");\n __publicField(this, \"mimeTypeFilter\");\n __publicField(this, \"directoriesAllowed\");\n __publicField(this, \"buttons\");\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\");\n this.title = title;\n this.multiSelect = multiSelect;\n this.mimeTypeFilter = mimeTypeFilter;\n this.directoriesAllowed = directoriesAllowed;\n this.path = path;\n this.filter = filter;\n this.buttons = buttons;\n this.container = container;\n this.disabledNavigation = disabledNavigation;\n }\n /**\n * Pick files using the FilePicker\n *\n * @return Promise with array of picked files or rejected promise on close without picking\n */\n async pick() {\n const { FilePickerVue } = await import(\"./chunks/index-D5FJasts.mjs\");\n return new Promise((resolve, reject) => {\n spawnDialog(FilePickerVue, {\n allowPickDirectory: this.directoriesAllowed,\n buttons: this.buttons,\n container: this.container,\n name: this.title,\n path: this.path,\n mimetypeFilter: this.mimeTypeFilter,\n multiselect: this.multiSelect,\n filterFn: this.filter,\n disabledNavigation: this.disabledNavigation\n }, (...rest) => {\n var _a;\n const [nodes] = rest;\n if (!Array.isArray(nodes) || nodes.length === 0) {\n reject(new FilePickerClosed(\"FilePicker: No nodes selected\"));\n } else {\n if (this.multiSelect) {\n resolve(nodes.map((node) => node.path));\n } else {\n resolve(((_a = nodes[0]) == null ? void 0 : _a.path) || \"/\");\n }\n }\n });\n });\n }\n}\nclass FilePickerBuilder {\n /**\n * Construct a new FilePicker\n *\n * @param title Title of the FilePicker\n */\n constructor(title) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\", false);\n __publicField(this, \"mimeTypeFilter\", []);\n __publicField(this, \"directoriesAllowed\", false);\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"buttons\", []);\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\", false);\n this.title = title;\n }\n /**\n * Set the container where the FilePicker will be mounted\n * By default 'body' is used\n *\n * @param container The dialog container\n */\n setContainer(container) {\n this.container = container;\n return this;\n }\n /**\n * Enable or disable picking multiple files\n *\n * @param ms True to enable picking multiple files, false otherwise\n */\n setMultiSelect(ms) {\n this.multiSelect = ms;\n return this;\n }\n /**\n * Add allowed MIME type\n *\n * @param filter MIME type to allow\n */\n addMimeTypeFilter(filter) {\n this.mimeTypeFilter.push(filter);\n return this;\n }\n /**\n * Set allowed MIME types\n *\n * @param filter Array of allowed MIME types\n */\n setMimeTypeFilter(filter) {\n this.mimeTypeFilter = filter;\n return this;\n }\n /**\n * Add a button to the FilePicker\n * Note: This overrides any previous `setButtonFactory` call\n *\n * @param button The button\n */\n addButton(button) {\n if (typeof this.buttons === \"function\") {\n console.warn(\"FilePicker buttons were set to factory, now overwritten with button object.\");\n this.buttons = [];\n }\n this.buttons.push(button);\n return this;\n }\n /**\n * Set the button factory which is used to generate buttons from current view, path and selected nodes\n * Note: This overrides any previous `addButton` call\n *\n * @param factory The button factory\n */\n setButtonFactory(factory) {\n this.buttons = factory;\n return this;\n }\n /**\n * Set FilePicker type based on legacy file picker types\n * @param type The legacy filepicker type to emulate\n * @deprecated Use `addButton` or `setButtonFactory` instead as with setType you do not know which button was pressed\n */\n setType(type) {\n this.buttons = (nodes, path) => {\n var _a, _b, _c;\n const buttons = [];\n const node = ((_b = (_a = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _a.attributes) == null ? void 0 : _b.displayName) || ((_c = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _c.basename);\n const target = node || basename(path);\n if (type === 1) {\n let label = t(\"Choose\");\n if (nodes.length === 1) {\n label = t(\"Choose {file}\", { file: node });\n } else if (this.multiSelect) {\n label = n(\"Choose %n file\", \"Choose %n files\", nodes.length);\n }\n buttons.push({\n callback: () => {\n },\n type: \"primary\",\n label\n });\n }\n if (type === 4 || type === 3) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Copy to {target}\", { target }) : t(\"Copy\"),\n type: \"primary\",\n icon: IconCopy\n });\n }\n if (type === 2 || type === 4) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Move to {target}\", { target }) : t(\"Move\"),\n type: type === 2 ? \"primary\" : \"secondary\",\n icon: IconMove\n });\n }\n return buttons;\n };\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n allowDirectories(allow = true) {\n this.directoriesAllowed = allow;\n return this;\n }\n /**\n * Set starting path of the FilePicker\n *\n * @param path Path to start from picking\n */\n startAt(path) {\n this.path = path;\n return this;\n }\n /**\n * Add filter function to filter file list of FilePicker\n *\n * @param filter Filter function to apply\n */\n setFilter(filter) {\n this.filter = filter;\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n disableNavigation() {\n this.disabledNavigation = true;\n return this;\n }\n /**\n * Construct the configured FilePicker\n */\n build() {\n return new FilePicker(\n this.title,\n this.multiSelect,\n this.mimeTypeFilter,\n this.directoriesAllowed,\n this.buttons,\n this.path,\n this.filter,\n this.container,\n this.disabledNavigation\n );\n }\n}\nfunction getFilePickerBuilder(title) {\n return new FilePickerBuilder(title);\n}\nvar DialogSeverity = /* @__PURE__ */ ((DialogSeverity2) => {\n DialogSeverity2[\"Info\"] = \"info\";\n DialogSeverity2[\"Warning\"] = \"warning\";\n DialogSeverity2[\"Error\"] = \"error\";\n return DialogSeverity2;\n})(DialogSeverity || {});\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"GenericDialog\",\n props: {\n name: null,\n text: null,\n html: null,\n buttons: null,\n severity: null\n },\n setup(__props) {\n const props = __props;\n const handleUnload = () => \"\".concat(props.name, \": \").concat(props.text);\n onMounted(() => window.addEventListener(\"unload\", handleUnload));\n onUnmounted(() => window.removeEventListener(\"unload\", handleUnload));\n return { __sfc: true, props, handleUnload, NcDialog, NcNoteCard };\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(_setup.NcDialog, { attrs: { \"dialog-classes\": \"nc-generic-dialog\", \"buttons\": _vm.buttons, \"name\": _vm.name, \"message\": _vm.text }, on: { \"update:open\": function($event) {\n return _vm.$emit(\"close\");\n } } }, [_vm.severity ? _c(_setup.NcNoteCard, { attrs: { \"type\": _vm.severity } }, [_c(\"p\", { domProps: { \"textContent\": _vm._s(_vm.text) } })]) : _vm._e(), _vm.html ? _c(\"div\", { domProps: { \"innerHTML\": _vm._s(_vm.html) } }) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst GenericDialog = __component__.exports;\nvar __typeError = (msg) => {\n throw TypeError(msg);\n};\nvar __accessCheck = (obj, member, msg) => member.has(obj) || __typeError(\"Cannot \" + msg);\nvar __privateGet = (obj, member, getter) => (__accessCheck(obj, member, \"read from private field\"), member.get(obj));\nvar __privateAdd = (obj, member, value) => member.has(obj) ? __typeError(\"Cannot add the same private member more than once\") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);\nvar __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, \"write to private field\"), member.set(obj, value), value);\nvar _name, _text, _buttons, _severity, _dialog, _html, _severity2, _text2, _name2, _buttons2;\nclass Dialog {\n constructor(name, text, buttons = [], severity) {\n __privateAdd(this, _name);\n __privateAdd(this, _text);\n __privateAdd(this, _buttons);\n __privateAdd(this, _severity);\n __privateAdd(this, _dialog);\n __privateAdd(this, _html);\n __privateSet(this, _name, name);\n __privateSet(this, _text, text);\n __privateSet(this, _buttons, buttons);\n __privateSet(this, _severity, severity);\n __privateSet(this, _dialog, void 0);\n __privateSet(this, _html, void 0);\n }\n /**\n * @deprecated DO NOT USE! It will be removed in the near future!\n * @param html HTML content\n */\n setHTML(html) {\n __privateSet(this, _html, html);\n return this;\n }\n /**\n * Spawn and show the dialog - if already open the previous instance will be destroyed\n * @return Promise that resolves when the dialog is answered successfully and rejects on close\n */\n show() {\n if (__privateGet(this, _dialog)) {\n __privateGet(this, _dialog).$destroy();\n }\n return new Promise((resolve) => {\n __privateSet(this, _dialog, spawnDialog(\n GenericDialog,\n {\n buttons: __privateGet(this, _buttons),\n name: __privateGet(this, _name),\n text: __privateGet(this, _text),\n severity: __privateGet(this, _severity),\n html: __privateGet(this, _html)\n },\n resolve\n ));\n });\n }\n /**\n * Hide and destroy the current dialog instance\n */\n hide() {\n var _a;\n (_a = __privateGet(this, _dialog)) == null ? void 0 : _a.$destroy();\n }\n}\n_name = /* @__PURE__ */ new WeakMap();\n_text = /* @__PURE__ */ new WeakMap();\n_buttons = /* @__PURE__ */ new WeakMap();\n_severity = /* @__PURE__ */ new WeakMap();\n_dialog = /* @__PURE__ */ new WeakMap();\n_html = /* @__PURE__ */ new WeakMap();\nclass DialogBuilder {\n constructor(name) {\n __privateAdd(this, _severity2);\n __privateAdd(this, _text2);\n __privateAdd(this, _name2);\n __privateAdd(this, _buttons2);\n __privateSet(this, _severity2, void 0);\n __privateSet(this, _text2, \"\");\n __privateSet(this, _name2, name != null ? name : \"\");\n __privateSet(this, _buttons2, []);\n }\n /**\n * Set dialog name\n * @param name The name or headline of the dialog\n */\n setName(name) {\n __privateSet(this, _name2, name);\n return this;\n }\n /**\n * Set the dialog text\n * @param text Main text of the dialog\n */\n setText(text) {\n __privateSet(this, _text2, text);\n return this;\n }\n /**\n * Set the severity of the dialog\n * @param severity Severity of the dialog\n */\n setSeverity(severity) {\n __privateSet(this, _severity2, severity);\n return this;\n }\n /**\n * Set buttons from array\n * @param buttons Either an array of dialog buttons\n */\n setButtons(buttons) {\n if (__privateGet(this, _buttons2).length > 0) {\n console.warn(\"[@nextcloud/dialogs] Dialog buttons are already set - this overrides previous buttons.\");\n }\n __privateSet(this, _buttons2, buttons);\n return this;\n }\n /**\n * Add a single button\n * @param button Button to add\n */\n addButton(button) {\n __privateGet(this, _buttons2).push(button);\n return this;\n }\n build() {\n return new Dialog(__privateGet(this, _name2), __privateGet(this, _text2), __privateGet(this, _buttons2), __privateGet(this, _severity2));\n }\n}\n_severity2 = /* @__PURE__ */ new WeakMap();\n_text2 = /* @__PURE__ */ new WeakMap();\n_name2 = /* @__PURE__ */ new WeakMap();\n_buttons2 = /* @__PURE__ */ new WeakMap();\nfunction getDialogBuilder(name) {\n return new DialogBuilder(name);\n}\nexport {\n Dialog,\n DialogBuilder,\n DialogSeverity,\n FilePicker,\n FilePickerBuilder,\n FilePickerClosed,\n FilePickerType,\n h as TOAST_ARIA_LIVE_ASSERTIVE,\n f as TOAST_ARIA_LIVE_OFF,\n g as TOAST_ARIA_LIVE_POLITE,\n d as TOAST_DEFAULT_TIMEOUT,\n e as TOAST_PERMANENT_TIMEOUT,\n c as TOAST_UNDO_TIMEOUT,\n T as ToastAriaLive,\n b as ToastType,\n getDialogBuilder,\n getFilePickerBuilder,\n l as showError,\n k as showInfo,\n s as showMessage,\n i as showSuccess,\n m as showUndo,\n j as showWarning,\n spawnDialog\n};\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"918\":\"42dc18350820a2df996f\",\"1902\":\"15c69743cf3911d7117d\",\"2400\":\"e05bb23ce5cd8e8e3b27\",\"5606\":\"f972dba6ecca95233f02\",\"6429\":\"89166d2636e7cbd574e0\",\"6880\":\"367ddfc725b6ef2ee02b\",\"8066\":\"f1f0a3884f0b92377e6a\"}[chunkId] + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1171;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t1171: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(33001)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","getLoggerBuilder","setApp","detectUser","build","isTrashbinEnabled","_getCapabilities","getCapabilities","files","undelete","canUnshareOnly","nodes","every","node","attributes","canDisconnectOnly","displayName","view","t","id","hasSharedItems","some","hasDeleteItems","isMixedUnshareAndDelete","type","FileType","File","isAllFiles","Folder","isAllFolders","askConfirmation","async","message","n","count","Promise","resolve","window","OC","dialogs","confirmDestructive","YES_NO_BUTTONS","confirm","confirmClasses","cancel","decision","deleteNode","axios","delete","encodedSource","queue","PQueue","concurrency","action","FileAction","iconSvgInline","enabled","map","permissions","permission","Boolean","Permission","DELETE","exec","showInfo","error","logger","source","execBatch","all","promises","add","order","triggerDownload","url","hiddenElement","document","createElement","download","href","click","longestCommonPath","first","second","firstSegments","split","filter","secondSegments","base","index","segment","entries","sep","downloadNodes","filteredNodes","find","other","path","startsWith","dirname","filenames","secret","Math","random","toString","substring","generateUrl","JSON","stringify","isDownloadable","READ","_node$attributes$shar","_shareAttributes$find","shareAttributes","parse","downloadAttribute","attribute","scope","key","default","DefaultType","DEFAULT","_node$root","root","dir","fill","openLocalClient","link","generateOcsUrl","_getCurrentUser","result","post","uid","getCurrentUser","location","host","encodePath","data","ocs","token","showError","UPDATE","localEditCallback","callbackCalled","DialogBuilder","setName","setText","setButtons","label","callback","icon","show","then","confirmLocalEditDialog","openLocally","OCA","Viewer","open","attemptOpenLocalClient","shouldFavorite","favorite","favoriteNode","willFavorite","tags","TAG_FAVORITE","Vue","StarSvg","_node$root$startsWith","NONE","MoveCopyAction","canMove","reduce","min","ALL","canCopy","_node$attributes","canDownload","resultToNode","davResultToNode","client","davGetClient","getContents","davRootPath","controller","AbortController","propfindPayload","davGetDefaultPropfind","CancelablePromise","reject","onCancel","abort","contentsResponse","getDirectoryContents","details","includeSelf","signal","contents","filename","Error","folder","basename","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","destination","method","overwrite","NodeStatus","LOADING","actionFinished","mode","text","toast","isHTML","timeout","TOAST_PERMANENT_TIMEOUT","onRemove","_toast","hideToast","createLoadingNotification","copySuffix","currentPath","join","destinationPath","target","otherNodes","getUniqueName","suffix","ignoreFileExtension","copyFile","stat","hasConflict","selected","renamed","openConflictPicker","moveFile","_error$response","_parser$parseFromStri","parser","DOMParser","response","parseFromString","querySelector","textContent","AxiosError","_error$response2","_error$response3","_error$response4","status","debug","openFilePickerForAction","promise","withResolvers","fileIDs","fileid","getFilePickerBuilder","allowDirectories","setFilter","includes","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","selection","buttons","dirnames","paths","escape","sanitize","CopyIconSvg","FolderMoveSvg","pick","catch","FilePickerClosed","e","displayname","FolderSvg","isDavRessource","OCP","Files","Router","goToRoute","HIDDEN","openfile","InformationSvg","_window","_ref","_nodes$0$root","Sidebar","query","_defineComponent","__name","props","defaultName","String","otherNames","emits","setup","__props","localDefaultName","ref","nameInput","formElement","validity","focusInput","nextTick","_nameInput$value","input","value","$el","extname","focus","setSelectionRange","watch","trim","watchEffect","_nameInput$value2","validateFilename","InvalidFilenameError","reason","InvalidFilenameErrorReason","Character","char","ReservedName","Extension","match","extension","getFilenameValidity","setCustomValidity","reportValidity","onMounted","__sfc","submit","_formElement$value","requestSubmit","NcButton","NcDialog","NcTextField","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_vm","_c","_self","_setup","_setupProxy","attrs","$event","scopedSlots","_u","_v","_s","proxy","staticClass","preventDefault","newNodeName","folderContent","labels","contentNames","spawnDialog","NewNodeDialog","folderName","entry","CREATE","handler","content","_getCurrentUser2","_context$attributes","_context$attributes2","_context$attributes3","encodeURIComponent","headers","Overwrite","parseInt","createNewFolder","mtime","Date","owner","showSuccess","templatesPath","loadState","directory","templatePath","copySystemTemplates","info","templates_path","initTemplatesFolder","removeNewFileMenuEntry","TemplatePickerVue","defineAsyncComponent","TemplatePicker","getTemplatePicker","mountingPoint","body","appendChild","render","h","parent","methods","$refs","picker","el","rootPath","generateRemoteUrl","filesContents","getFavoriteNodes","davRemoteURL","generateFavoriteFolderView","View","generateIdFromPath","params","columns","str","hash","charCodeAt","hashCode","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","pinia","createPinia","lastTwoWeeksTimestamp","round","now","getBaseUrl","currUserID","isPersonalFile","mountType","registerFileAction","deleteAction","downloadAction","editLocallyAction","favoriteAction","moveOrCopyAction","openFolderAction","openInFilesAction","renameAction","sidebarAction","viewInFolderAction","addNewFileMenuEntry","newFolderEntry","newTemplatesFolder","forEach","provider","app","iconClass","templatePicker","favoriteFolders","favoriteFoldersViews","Navigation","getNavigation","register","caption","emptyTitle","emptyCaption","subscribe","addToFavorites","_node$root2","removePathFromFavorites","updateNodeFromFavorites","updateAndSortViews","sort","a","b","localeCompare","getLanguage","ignorePunctuation","newFavoriteFolder","findIndex","splice","remove","favoriteFolder","registerFavoritesView","defaultSortKey","store","userConfigStore","defineStore","state","actions","onUpdate","update","put","_initialized","useUserConfigStore","filterHidden","search","davGetRecentSearch","aborted","results","getFiles","c","navigator","addEventListener","noRewrite","registration","serviceWorker","registerDavProperty","nc","___CSS_LOADER_EXPORT___","denyList","Set","code","def","x","d","RC","max","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","start","report","progress","timestamp","deltaTimestamp","currentRate","reset","estimate","Infinity","estimatedTime","CancelError","constructor","super","isCanceled","promiseState","freeze","pending","Symbol","canceled","resolved","rejected","PCancelable","userFunction","arguments_","executor","description","defineProperties","shouldReject","get","set","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","config","indexOf","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","Number","valueOf","exponentialDelay","retryNumber","delayFactor","calculatedDelay","delay","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","resetLastRequestTime","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","use","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","defaults","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","abortListener","clearTimeout","setTimeout","removeEventListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","linearDelay","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","Destination","getChunk","file","size","getMaxChunksSize","fileSize","maxChunkSize","appConfig","max_chunk_size","minimumChunkSize","ceil","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","getTime","isFileSystemFileEntry","o","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","Directory","_originalName","_path","_children","lastModified","Map","children","sum","latest","originalName","from","values","webkitRelativePath","getChild","addChildren","addChild","FileSystemDirectoryEntry","reader","createReader","readEntries","child","filePath","relPath","gtBuilder","detectLocale","addTranslation","locale","json","gt","ngettext","bind","gettext","Status","Uploader","_destinationFolder","_isPublic","_customHeaders","_uploadQueue","_jobQueue","chunked_upload","max_parallel_count","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","user","maxChunksSize","customHeaders","structuredClone","setCustomHeader","deleteCustomerHeader","clear","pause","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","warn","batchUpload","files2","rootFolder","replace","UPLOADING","uploadDirectory","uploads","FINISHED","FAILED","createDirectory","folderPath","normalize","currentUpload","selectedForUpload","directories","at","upload","flat","fileHandle","origin","URL","encodedDestinationFile","resolve2","disabledChunkUpload","blob","bytes","floor","tempUrl","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","onIdle","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","_compiled","_scopeId","IconCancel","title","fillColor","_b","$emit","$attrs","_e","IconFolderUpload","IconPlus","IconUpload","showInvalidFilenameDialog","InvalidFilenameDialog","rest","skip","rename","getConflicts","_sfc_main","extend","components","NcActionButton","NcActionCaption","NcActionSeparator","NcActions","NcIconSvgWrapper","NcProgressBar","accept","disabled","multiple","noMenu","allowFolders","Function","forbiddenCharacters","progressTimeId","eta","timeLeft","newFileMenuEntries","uploadManager","getUploader","computed","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","isPaused","PAUSED","buttonLabel","buttonName","immediate","setDestination","updateStatus","beforeMount","onUploadCompletion","onClick","getContent","onTriggerPick","uploadFolders","webkitdirectory","$nextTick","isArray","onPick","contentsCallback","conflicts","recursive","filesToUpload","newName","defineProperty","resetForm","form","date","setSeconds","time","toISOString","seconds","forceRecreate","_nc_uploader","ConflictPicker","recursiveUpload","$destroy","parentNode","removeChild","$mount","class","staticStyle","_l","directives","rawName","expression","ToastAriaLive","ToastAriaLive2","TOAST_DEFAULT_TIMEOUT","showMessage","_a","assign","selector","close","element","innerHTML","innerText","classes","isNode","Node","ariaLive","POLITE","ASSERTIVE","duration","gravity","position","backgroundColor","className","escapeMarkup","showToast","showWarning","dialog","onClose","container","vue","h2","v","html","severity","handleUnload","_sfc_render","NcNoteCard","domProps","_sfc_staticRenderFns","TimeoutError","AbortError","getDOMException","errorMessage","globalThis","DOMException","getAbortedReason","PriorityQueue","enqueue","run","priority","array","comparator","step","trunc","it","lowerBound","dequeue","item","shift","carryoverConcurrencyCount","intervalCap","POSITIVE_INFINITY","interval","autoStart","queueClass","isFinite","throwOnTimeout","clearInterval","canInitializeInterval","job","setInterval","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","fallback","customTimers","timer","cancelablePromise","sign","timeoutError","pTimeout","race","addAll","functions","onEmpty","onSizeLessThan","limit","sizeBy","Axios","CanceledError","isCancel","CancelToken","VERSION","Cancel","isAxiosError","spread","toFormData","AxiosHeaders","HttpStatusCode","formToJSON","getAdapter","mergeConfig","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","O","chunkIds","notFulfilled","fulfilled","keys","r","getter","__esModule","definition","enumerable","f","chunkId","u","g","obj","prop","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","charset","setAttribute","src","onScriptComplete","prev","onerror","onload","doneFns","head","toStringTag","nmd","scriptUrl","importScripts","currentScript","tagName","toUpperCase","test","p","baseURI","self","installedChunks","installedChunkData","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"files-init.js?v=61bdb87bfe9479c683d5","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/deleteUtils.ts","webpack:///nextcloud/apps/files/src/actions/deleteAction.ts","webpack:///nextcloud/apps/files/src/actions/downloadAction.ts","webpack:///nextcloud/apps/files/src/actions/editLocallyAction.ts","webpack:///nextcloud/apps/files/src/actions/favoriteAction.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/actions/openFolderAction.ts","webpack:///nextcloud/apps/files/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files/src/actions/renameAction.ts","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/actions/viewInFolderAction.ts","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/apps/files/src/utils/filenameValidity.ts","webpack://nextcloud/./apps/files/src/components/NewNodeDialog.vue?0f9f","webpack://nextcloud/./apps/files/src/components/NewNodeDialog.vue?1a36","webpack:///nextcloud/apps/files/src/utils/newNodeDialog.ts","webpack:///nextcloud/apps/files/src/newMenu/newFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newTemplatesFolder.ts","webpack:///nextcloud/apps/files/src/newMenu/newFromTemplate.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/services/Favorites.ts","webpack:///nextcloud/apps/files/src/views/favorites.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/apps/files/src/services/Recent.ts","webpack:///nextcloud/apps/files/src/services/PersonalFiles.ts","webpack:///nextcloud/apps/files/src/init.ts","webpack:///nextcloud/apps/files/src/views/files.ts","webpack:///nextcloud/apps/files/src/views/recent.ts","webpack:///nextcloud/apps/files/src/views/personal-files.ts","webpack:///nextcloud/apps/files/src/services/ServiceWorker.js","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css","webpack:///nextcloud/apps/files/src/components/NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css?2742","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-BaUJseCQ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/index.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios/index.js","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","import { emit } from '@nextcloud/event-bus';\nimport { FileType } from '@nextcloud/files';\nimport { getCapabilities } from '@nextcloud/capabilities';\nimport { n, t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nexport const isTrashbinEnabled = () => getCapabilities()?.files?.undelete === true;\nexport const canUnshareOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'shared');\n};\nexport const canDisconnectOnly = (nodes) => {\n return nodes.every(node => node.attributes['is-mount-root'] === true\n && node.attributes['mount-type'] === 'external');\n};\nexport const isMixedUnshareAndDelete = (nodes) => {\n if (nodes.length === 1) {\n return false;\n }\n const hasSharedItems = nodes.some(node => canUnshareOnly([node]));\n const hasDeleteItems = nodes.some(node => !canUnshareOnly([node]));\n return hasSharedItems && hasDeleteItems;\n};\nexport const isAllFiles = (nodes) => {\n return !nodes.some(node => node.type !== FileType.File);\n};\nexport const isAllFolders = (nodes) => {\n return !nodes.some(node => node.type !== FileType.Folder);\n};\nexport const displayName = (nodes, view) => {\n /**\n * If those nodes are all the root node of a\n * share, we can only unshare them.\n */\n if (canUnshareOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Leave this share');\n }\n return t('files', 'Leave these shares');\n }\n /**\n * If those nodes are all the root node of an\n * external storage, we can only disconnect it.\n */\n if (canDisconnectOnly(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Disconnect storage');\n }\n return t('files', 'Disconnect storages');\n }\n /**\n * If we're in the trashbin, we can only delete permanently\n */\n if (view.id === 'trashbin' || !isTrashbinEnabled()) {\n return t('files', 'Delete permanently');\n }\n /**\n * If we're in the sharing view, we can only unshare\n */\n if (isMixedUnshareAndDelete(nodes)) {\n return t('files', 'Delete and unshare');\n }\n /**\n * If we're only selecting files, use proper wording\n */\n if (isAllFiles(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete file');\n }\n return t('files', 'Delete files');\n }\n /**\n * If we're only selecting folders, use proper wording\n */\n if (isAllFolders(nodes)) {\n if (nodes.length === 1) {\n return t('files', 'Delete folder');\n }\n return t('files', 'Delete folders');\n }\n return t('files', 'Delete');\n};\nexport const askConfirmation = async (nodes, view) => {\n const message = view.id === 'trashbin' || !isTrashbinEnabled()\n ? n('files', 'You are about to permanently delete {count} item', 'You are about to permanently delete {count} items', nodes.length, { count: nodes.length })\n : n('files', 'You are about to delete {count} item', 'You are about to delete {count} items', nodes.length, { count: nodes.length });\n return new Promise(resolve => {\n // TODO: Use the new dialog API\n window.OC.dialogs.confirmDestructive(message, t('files', 'Confirm deletion'), {\n type: window.OC.dialogs.YES_NO_BUTTONS,\n confirm: displayName(nodes, view),\n confirmClasses: 'error',\n cancel: t('files', 'Cancel'),\n }, (decision) => {\n resolve(decision);\n });\n });\n};\nexport const deleteNode = async (node) => {\n await axios.delete(node.encodedSource);\n // Let's delete even if it's moved to the trashbin\n // since it has been removed from the current view\n // and changing the view will trigger a reload anyway.\n emit('files:node:deleted', node);\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, Node, View, FileAction } from '@nextcloud/files';\nimport { showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport PQueue from 'p-queue';\nimport CloseSvg from '@mdi/svg/svg/close.svg?raw';\nimport NetworkOffSvg from '@mdi/svg/svg/network-off.svg?raw';\nimport TrashCanSvg from '@mdi/svg/svg/trash-can.svg?raw';\nimport logger from '../logger.js';\nimport { askConfirmation, canDisconnectOnly, canUnshareOnly, deleteNode, displayName, isTrashbinEnabled } from './deleteUtils';\nconst queue = new PQueue({ concurrency: 5 });\nexport const action = new FileAction({\n id: 'delete',\n displayName,\n iconSvgInline: (nodes) => {\n if (canUnshareOnly(nodes)) {\n return CloseSvg;\n }\n if (canDisconnectOnly(nodes)) {\n return NetworkOffSvg;\n }\n return TrashCanSvg;\n },\n enabled(nodes) {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => Boolean(permission & Permission.DELETE));\n },\n async exec(node, view) {\n try {\n let confirm = true;\n // If trashbin is disabled, we need to ask for confirmation\n if (!isTrashbinEnabled()) {\n confirm = await askConfirmation([node], view);\n }\n // If the user cancels the deletion, we don't want to do anything\n if (confirm === false) {\n showInfo(t('files', 'Deletion cancelled'));\n return null;\n }\n await deleteNode(node);\n return true;\n }\n catch (error) {\n logger.error('Error while deleting a file', { error, source: node.source, node });\n return false;\n }\n },\n async execBatch(nodes, view) {\n let confirm = true;\n // If trashbin is disabled, we need to ask for confirmation\n if (!isTrashbinEnabled()) {\n confirm = await askConfirmation(nodes, view);\n }\n else if (nodes.length >= 5 && !canUnshareOnly(nodes) && !canDisconnectOnly(nodes)) {\n confirm = await askConfirmation(nodes, view);\n }\n // If the user cancels the deletion, we don't want to do anything\n if (confirm === false) {\n showInfo(t('files', 'Deletion cancelled'));\n return Promise.all(nodes.map(() => null));\n }\n // Map each node to a promise that resolves with the result of exec(node)\n const promises = nodes.map(node => {\n // Create a promise that resolves with the result of exec(node)\n const promise = new Promise(resolve => {\n queue.add(async () => {\n try {\n await deleteNode(node);\n resolve(true);\n }\n catch (error) {\n logger.error('Error while deleting a file', { error, source: node.source, node });\n resolve(false);\n }\n });\n });\n return promise;\n });\n return Promise.all(promises);\n },\n order: 100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateUrl } from '@nextcloud/router';\nimport { FileAction, Permission, Node, FileType, View, DefaultType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport ArrowDownSvg from '@mdi/svg/svg/arrow-down.svg?raw';\nconst triggerDownload = function (url) {\n const hiddenElement = document.createElement('a');\n hiddenElement.download = '';\n hiddenElement.href = url;\n hiddenElement.click();\n};\n/**\n * Find the longest common path prefix of both input paths\n * @param first The first path\n * @param second The second path\n */\nfunction longestCommonPath(first, second) {\n const firstSegments = first.split('/').filter(Boolean);\n const secondSegments = second.split('/').filter(Boolean);\n let base = '/';\n for (const [index, segment] of firstSegments.entries()) {\n if (index >= second.length) {\n break;\n }\n if (segment !== secondSegments[index]) {\n break;\n }\n const sep = base === '/' ? '' : '/';\n base = `${base}${sep}${segment}`;\n }\n return base;\n}\n/**\n * Handle downloading multiple nodes\n * @param nodes The nodes to download\n */\nfunction downloadNodes(nodes) {\n // Remove nodes that are already included in parent folders\n // Example: Download A/foo.txt and A will only return A as A/foo.txt is already included\n const filteredNodes = nodes.filter((node) => {\n const parent = nodes.find((other) => (other.type === FileType.Folder\n && node.path.startsWith(`${other.path}/`)));\n return parent === undefined;\n });\n let base = filteredNodes[0].dirname;\n for (const node of filteredNodes.slice(1)) {\n base = longestCommonPath(base, node.dirname);\n }\n base = base || '/';\n // Remove the common prefix\n const filenames = filteredNodes.map((node) => node.path.slice(base === '/' ? 1 : (base.length + 1)));\n const secret = Math.random().toString(36).substring(2);\n const url = generateUrl('/apps/files/ajax/download.php?dir={base}&files={files}&downloadStartSecret={secret}', {\n base,\n secret,\n files: JSON.stringify(filenames),\n });\n triggerDownload(url);\n}\nconst isDownloadable = function (node) {\n if ((node.permissions & Permission.READ) === 0) {\n return false;\n }\n // If the mount type is a share, ensure it got download permissions.\n if (node.attributes['mount-type'] === 'shared') {\n const shareAttributes = JSON.parse(node.attributes['share-attributes'] ?? 'null');\n const downloadAttribute = shareAttributes?.find?.((attribute) => attribute.scope === 'permissions' && attribute.key === 'download');\n if (downloadAttribute !== undefined && downloadAttribute.enabled === false) {\n return false;\n }\n }\n return true;\n};\nexport const action = new FileAction({\n id: 'download',\n default: DefaultType.DEFAULT,\n displayName: () => t('files', 'Download'),\n iconSvgInline: () => ArrowDownSvg,\n enabled(nodes) {\n if (nodes.length === 0) {\n return false;\n }\n // We can download direct dav files. But if we have\n // some folders, we need to use the /apps/files/ajax/download.php\n // endpoint, which only supports user root folder.\n if (nodes.some(node => node.type === FileType.Folder)\n && nodes.some(node => !node.root?.startsWith('/files'))) {\n return false;\n }\n return nodes.every(isDownloadable);\n },\n async exec(node, view, dir) {\n if (node.type === FileType.Folder) {\n downloadNodes([node]);\n return null;\n }\n triggerDownload(node.encodedSource);\n return null;\n },\n async execBatch(nodes, view, dir) {\n if (nodes.length === 1) {\n this.exec(nodes[0], view, dir);\n return [null];\n }\n downloadNodes(nodes);\n return new Array(nodes.length).fill(null);\n },\n order: 30,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { encodePath } from '@nextcloud/paths';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { FileAction, Permission } from '@nextcloud/files';\nimport { showError, DialogBuilder } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport IconWeb from '@mdi/svg/svg/web.svg?raw';\nimport LaptopSvg from '@mdi/svg/svg/laptop.svg?raw';\nconst confirmLocalEditDialog = (localEditCallback = () => { }) => {\n let callbackCalled = false;\n return (new DialogBuilder())\n .setName(t('files', 'Edit file locally'))\n .setText(t('files', 'The file should now open on your device. If it doesn\\'t, please check that you have the desktop app installed.'))\n .setButtons([\n {\n label: t('files', 'Retry and close'),\n type: 'secondary',\n callback: () => {\n callbackCalled = true;\n localEditCallback(true);\n },\n },\n {\n label: t('files', 'Edit online'),\n icon: IconWeb,\n type: 'primary',\n callback: () => {\n callbackCalled = true;\n localEditCallback(false);\n },\n },\n ])\n .build()\n .show()\n .then(() => {\n // Ensure the callback is called even if the dialog is dismissed in other ways\n if (!callbackCalled) {\n localEditCallback(false);\n }\n });\n};\nconst attemptOpenLocalClient = async (path) => {\n openLocalClient(path);\n confirmLocalEditDialog((openLocally) => {\n if (!openLocally) {\n window.OCA.Viewer.open({ path });\n return;\n }\n openLocalClient(path);\n });\n};\nconst openLocalClient = async function (path) {\n const link = generateOcsUrl('apps/files/api/v1') + '/openlocaleditor?format=json';\n try {\n const result = await axios.post(link, { path });\n const uid = getCurrentUser()?.uid;\n let url = `nc://open/${uid}@` + window.location.host + encodePath(path);\n url += '?token=' + result.data.ocs.data.token;\n window.location.href = url;\n }\n catch (error) {\n showError(t('files', 'Failed to redirect to client'));\n }\n};\nexport const action = new FileAction({\n id: 'edit-locally',\n displayName: () => t('files', 'Edit locally'),\n iconSvgInline: () => LaptopSvg,\n // Only works on single files\n enabled(nodes) {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n return (nodes[0].permissions & Permission.UPDATE) !== 0;\n },\n async exec(node) {\n attemptOpenLocalClient(node.path);\n return null;\n },\n order: 25,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport PQueue from 'p-queue';\nimport Vue from 'vue';\nimport StarOutlineSvg from '@mdi/svg/svg/star-outline.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport logger from '../logger.js';\nimport { encodePath } from '@nextcloud/paths';\nconst queue = new PQueue({ concurrency: 5 });\n// If any of the nodes is not favorited, we display the favorite action.\nconst shouldFavorite = (nodes) => {\n return nodes.some(node => node.attributes.favorite !== 1);\n};\nexport const favoriteNode = async (node, view, willFavorite) => {\n try {\n // TODO: migrate to webdav tags plugin\n const url = generateUrl('/apps/files/api/v1/files') + encodePath(node.path);\n await axios.post(url, {\n tags: willFavorite\n ? [window.OC.TAG_FAVORITE]\n : [],\n });\n // Let's delete if we are in the favourites view\n // AND if it is removed from the user favorites\n // AND it's in the root of the favorites view\n if (view.id === 'favorites' && !willFavorite && node.dirname === '/') {\n emit('files:node:deleted', node);\n }\n // Update the node webdav attribute\n Vue.set(node.attributes, 'favorite', willFavorite ? 1 : 0);\n // Dispatch event to whoever is interested\n if (willFavorite) {\n emit('files:favorites:added', node);\n }\n else {\n emit('files:favorites:removed', node);\n }\n return true;\n }\n catch (error) {\n const action = willFavorite ? 'adding a file to favourites' : 'removing a file from favourites';\n logger.error('Error while ' + action, { error, source: node.source, node });\n return false;\n }\n};\nexport const action = new FileAction({\n id: 'favorite',\n displayName(nodes) {\n return shouldFavorite(nodes)\n ? t('files', 'Add to favorites')\n : t('files', 'Remove from favorites');\n },\n iconSvgInline: (nodes) => {\n return shouldFavorite(nodes)\n ? StarOutlineSvg\n : StarSvg;\n },\n enabled(nodes) {\n // We can only favorite nodes within files and with permissions\n return !nodes.some(node => !node.root?.startsWith?.('/files'))\n && nodes.every(node => node.permissions !== Permission.NONE);\n },\n async exec(node, view) {\n const willFavorite = shouldFavorite([node]);\n return await favoriteNode(node, view, willFavorite);\n },\n async execBatch(nodes, view) {\n const willFavorite = shouldFavorite(nodes);\n // Map each node to a promise that resolves with the result of exec(node)\n const promises = nodes.map(node => {\n // Create a promise that resolves with the result of exec(node)\n const promise = new Promise(resolve => {\n queue.add(async () => {\n try {\n await favoriteNode(node, view, willFavorite);\n resolve(true);\n }\n catch (error) {\n logger.error('Error while adding file to favorite', { error, source: node.source, node });\n resolve(false);\n }\n });\n });\n return promise;\n });\n return Promise.all(promises);\n },\n order: -50,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n// Maximum number of concurrent operations\nconst MAX_CONCURRENCY = 5;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: MAX_CONCURRENCY });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport logger from '../logger';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => {\n return davResultToNode(node);\n};\nconst client = davGetClient();\nexport const getContents = (path = '/') => {\n path = `${davRootPath}${path}`;\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map(result => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\n// eslint-disable-next-line n/no-extraneous-import\nimport { AxiosError } from 'axios';\nimport { basename, join } from 'path';\nimport { FilePickerClosed, getFilePickerBuilder, showError, showInfo, TOAST_PERMANENT_TIMEOUT } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Create a loading notification toast\n * @param mode The move or copy mode\n * @param source Name of the node that is copied / moved\n * @param destination Destination path\n * @return {() => void} Function to hide the notification\n */\nfunction createLoadingNotification(mode, source, destination) {\n const text = mode === MoveCopyAction.MOVE ? t('files', 'Moving \"{source}\" to \"{destination}\" …', { source, destination }) : t('files', 'Copying \"{source}\" to \"{destination}\" …', { source, destination });\n let toast;\n toast = showInfo(`<span class=\"icon icon-loading-small toast-loading-icon\"></span> ${text}`, {\n isHTML: true,\n timeout: TOAST_PERMANENT_TIMEOUT,\n onRemove: () => { toast?.hideToast(); toast = undefined; },\n });\n return () => toast && toast.hideToast();\n}\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise<void>} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const actionFinished = createLoadingNotification(method, node.basename, destination.path);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n if (!overwrite) {\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // two empty arrays: either only old files or conflict skipped -> no action required\n if (!selected.length && !renamed.length) {\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n try {\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n }\n catch (error) {\n const parser = new DOMParser();\n const text = await error.response?.text();\n const message = parser.parseFromString(text ?? '', 'text/xml')\n .querySelector('message')?.textContent;\n if (message) {\n showError(message);\n }\n throw error;\n }\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (error instanceof AxiosError) {\n if (error?.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error?.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error?.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', '');\n actionFinished();\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param action The action to open the file picker for\n * @param dir The directory to start the file picker in\n * @param nodes The nodes to move/copy\n * @return The picked destination or false if cancelled by user\n */\nasync function openFilePickerForAction(action, dir = '/', nodes) {\n const { resolve, reject, promise } = Promise.withResolvers();\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir)\n .setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n })\n .build();\n filePicker.pick()\n .catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n resolve(false);\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n return promise;\n}\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n if (result === false) {\n showInfo(t('files', 'Cancelled move or copy of \"{filename}\".', { filename: node.displayname }));\n return null;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n // Handle cancellation silently\n if (result === false) {\n showInfo(nodes.length === 1\n ? t('files', 'Cancelled move or copy of \"{filename}\".', { filename: nodes[0].displayname })\n : t('files', 'Cancelled move or copy operation'));\n return nodes.map(() => null);\n }\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, Node, FileType, View, FileAction, DefaultType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nexport const action = new FileAction({\n id: 'open-folder',\n displayName(files) {\n // Only works on single node\n const displayName = files[0].displayname;\n return t('files', 'Open folder {displayName}', { displayName });\n },\n iconSvgInline: () => FolderSvg,\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 (!node.isDavRessource) {\n return false;\n }\n return node.type === FileType.Folder\n && (node.permissions & Permission.READ) !== 0;\n },\n async exec(node, view) {\n if (!node || node.type !== FileType.Folder) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { dir: node.path });\n return null;\n },\n // Main action if enabled, meaning folders only\n default: DefaultType.HIDDEN,\n order: -100,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { FileType, FileAction, DefaultType } from '@nextcloud/files';\n/**\n * TODO: Move away from a redirect and handle\n * navigation straight out of the recent view\n */\nexport const action = new FileAction({\n id: 'open-in-files-recent',\n displayName: () => t('files', 'Open in Files'),\n iconSvgInline: () => '',\n enabled: (nodes, view) => view.id === 'recent',\n async exec(node) {\n let dir = node.dirname;\n if (node.type === FileType.Folder) {\n dir = dir + '/' + node.basename;\n }\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: node.fileid }, { dir, openfile: 'true' });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { emit } from '@nextcloud/event-bus';\nimport { Permission, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport PencilSvg from '@mdi/svg/svg/pencil.svg?raw';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: 'rename',\n displayName: () => t('files', 'Rename'),\n iconSvgInline: () => PencilSvg,\n enabled: (nodes) => {\n return nodes.length > 0 && nodes\n .map(node => node.permissions)\n .every(permission => (permission & Permission.UPDATE) !== 0);\n },\n async exec(node) {\n // Renaming is a built-in feature of the files app\n emit('files:node:rename', node);\n return null;\n },\n order: 10,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // Open sidebar and set active tab to sharing by default\n window.OCA.Files.Sidebar.setActiveTab('sharing');\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, FileType, Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nexport const action = new FileAction({\n id: 'view-in-folder',\n displayName() {\n return t('files', 'View in folder');\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes, view) {\n // Only works outside of the main files view\n if (view.id === 'files') {\n return false;\n }\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!node.isDavRessource) {\n return false;\n }\n // Can only view files that are in the user root folder\n if (!node.root?.startsWith('/files')) {\n return false;\n }\n if (node.permissions === Permission.NONE) {\n return false;\n }\n return node.type === FileType.File;\n },\n async exec(node) {\n if (!node || node.type !== FileType.File) {\n return false;\n }\n window.OCP.Files.Router.goToRoute(null, { view: 'files', fileid: node.fileid }, { dir: node.dirname });\n return null;\n },\n order: 80,\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcDialog,{attrs:{\"data-cy-files-new-node-dialog\":\"\",\"name\":_vm.name,\"open\":_vm.open,\"close-on-click-outside\":\"\",\"out-transition\":\"\"},on:{\"update:open\":function($event){return _setup.emit('close', null)}},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c(_setup.NcButton,{attrs:{\"data-cy-files-new-node-dialog-submit\":\"\",\"type\":\"primary\",\"disabled\":_setup.validity !== ''},on:{\"click\":_setup.submit}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('files', 'Create'))+\"\\n\\t\\t\")])]},proxy:true}])},[_vm._v(\" \"),_c('form',{ref:\"formElement\",staticClass:\"new-node-dialog__form\",on:{\"submit\":function($event){$event.preventDefault();return _setup.emit('close', _setup.localDefaultName)}}},[_c(_setup.NcTextField,{ref:\"nameInput\",attrs:{\"data-cy-files-new-node-dialog-input\":\"\",\"error\":_setup.validity !== '',\"helper-text\":_setup.validity,\"label\":_vm.label,\"value\":_setup.localDefaultName},on:{\"update:value\":function($event){_setup.localDefaultName=$event}}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { InvalidFilenameError, InvalidFilenameErrorReason, validateFilename } from '@nextcloud/files';\nimport { t } from '@nextcloud/l10n';\n/**\n * Get the validity of a filename (empty if valid).\n * This can be used for `setCustomValidity` on input elements\n * @param name The filename\n * @param escape Escape the matched string in the error (only set when used in HTML)\n */\nexport function getFilenameValidity(name, escape = false) {\n if (name.trim() === '') {\n return t('files', 'Filename must not be empty.');\n }\n try {\n validateFilename(name);\n return '';\n }\n catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n throw error;\n }\n switch (error.reason) {\n case InvalidFilenameErrorReason.Character:\n return t('files', '\"{char}\" is not allowed inside a filename.', { char: error.segment }, undefined, { escape });\n case InvalidFilenameErrorReason.ReservedName:\n return t('files', '\"{segment}\" is a reserved name and not allowed for filenames.', { segment: error.segment }, undefined, { escape: false });\n case InvalidFilenameErrorReason.Extension:\n if (error.segment.match(/\\.[a-z]/i)) {\n return t('files', '\"{extension}\" is not an allowed filetype.', { extension: error.segment }, undefined, { escape: false });\n }\n return t('files', 'Filenames must not end with \"{extension}\".', { extension: error.segment }, undefined, { escape: false });\n default:\n return t('files', 'Invalid filename.');\n }\n }\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NewNodeDialog.vue?vue&type=template&id=242a2438&scoped=true\"\nimport script from \"./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./NewNodeDialog.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./NewNodeDialog.vue?vue&type=style&index=0&id=242a2438&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"242a2438\",\n null\n \n)\n\nexport default component.exports","/**\n * @copyright Copyright (c) 2024 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { spawnDialog } from '@nextcloud/dialogs';\nimport NewNodeDialog from '../components/NewNodeDialog.vue';\n/**\n * Ask user for file or folder name\n * @param defaultName Default name to use\n * @param folderContent Nodes with in the current folder to check for unique name\n * @param labels Labels to set on the dialog\n * @return string if successfull otherwise null if aborted\n */\nexport function newNodeName(defaultName, folderContent, labels = {}) {\n const contentNames = folderContent.map((node) => node.basename);\n return new Promise((resolve) => {\n spawnDialog(NewNodeDialog, {\n ...labels,\n defaultName,\n otherNames: contentNames,\n }, (folderName) => {\n resolve(folderName);\n });\n });\n}\n","import { basename } from 'path';\nimport { emit } from '@nextcloud/event-bus';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { Permission, Folder } from '@nextcloud/files';\nimport { showSuccess } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport FolderPlusSvg from '@mdi/svg/svg/folder-plus.svg?raw';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport logger from '../logger';\nconst createNewFolder = async (root, name) => {\n const source = root.source + '/' + name;\n const encodedSource = root.encodedSource + '/' + encodeURIComponent(name);\n const response = await axios({\n method: 'MKCOL',\n url: encodedSource,\n headers: {\n Overwrite: 'F',\n },\n });\n return {\n fileid: parseInt(response.headers['oc-fileid']),\n source,\n };\n};\nexport const entry = {\n id: 'newFolder',\n displayName: t('files', 'New folder'),\n enabled: (context) => (context.permissions & Permission.CREATE) !== 0,\n iconSvgInline: FolderPlusSvg,\n order: 0,\n async handler(context, content) {\n const name = await newNodeName(t('files', 'New folder'), content);\n if (name !== null) {\n const { fileid, source } = await createNewFolder(context, name.trim());\n // Create the folder in the store\n const folder = new Folder({\n source,\n id: fileid,\n mtime: new Date(),\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.ALL,\n root: context?.root || '/files/' + getCurrentUser()?.uid,\n // Include mount-type from parent folder as this is inherited\n attributes: {\n 'mount-type': context.attributes?.['mount-type'],\n 'owner-id': context.attributes?.['owner-id'],\n 'owner-display-name': context.attributes?.['owner-display-name'],\n },\n });\n // Show success\n emit('files:node:created', folder);\n showSuccess(t('files', 'Created new folder \"{name}\"', { name: basename(source) }));\n logger.debug('Created new folder', { folder, source });\n // Navigate to the new folder\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: folder.fileid }, { dir: context.path });\n }\n },\n};\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { showError } from '@nextcloud/dialogs';\nimport { Permission, removeNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { translate as t } from '@nextcloud/l10n';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { join } from 'path';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport PlusSvg from '@mdi/svg/svg/plus.svg?raw';\nimport axios from '@nextcloud/axios';\nimport logger from '../logger.js';\nlet templatesPath = loadState('files', 'templates_path', false);\nlogger.debug('Initial templates folder', { templatesPath });\n/**\n * Init template folder\n * @param directory Folder where to create the templates folder\n * @param name Name to use or the templates folder\n */\nconst initTemplatesFolder = async function (directory, name) {\n const templatePath = join(directory.path, name);\n try {\n logger.debug('Initializing the templates directory', { templatePath });\n const { data } = await axios.post(generateOcsUrl('apps/files/api/v1/templates/path'), {\n templatePath,\n copySystemTemplates: true,\n });\n // Go to template directory\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files', fileid: undefined }, { dir: templatePath });\n logger.info('Created new templates folder', {\n ...data.ocs.data,\n });\n templatesPath = data.ocs.data.templates_path;\n }\n catch (error) {\n logger.error('Unable to initialize the templates directory');\n showError(t('files', 'Unable to initialize the templates directory'));\n }\n};\nexport const entry = {\n id: 'template-picker',\n displayName: t('files', 'Create new templates folder'),\n iconSvgInline: PlusSvg,\n order: 10,\n enabled(context) {\n // Templates folder already initialized\n if (templatesPath) {\n return false;\n }\n // Allow creation on your own folders only\n if (context.owner !== getCurrentUser()?.uid) {\n return false;\n }\n return (context.permissions & Permission.CREATE) !== 0;\n },\n async handler(context, content) {\n const name = await newNodeName(t('files', 'Templates'), content, { name: t('files', 'New template folder') });\n if (name !== null) {\n // Create the template folder\n initTemplatesFolder(context, name);\n // Remove the menu entry\n removeNewFileMenuEntry('template-picker');\n }\n },\n};\n","/**\n * @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Folder, Node, Permission, addNewFileMenuEntry } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { newNodeName } from '../utils/newNodeDialog';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue, { defineAsyncComponent } from 'vue';\n// async to reduce bundle size\nconst TemplatePickerVue = defineAsyncComponent(() => import('../views/TemplatePicker.vue'));\nlet TemplatePicker = null;\nconst getTemplatePicker = async (context) => {\n if (TemplatePicker === null) {\n // Create document root\n const mountingPoint = document.createElement('div');\n mountingPoint.id = 'template-picker';\n document.body.appendChild(mountingPoint);\n // Init vue app\n TemplatePicker = new Vue({\n render: (h) => h(TemplatePickerVue, {\n ref: 'picker',\n props: {\n parent: context,\n },\n }),\n methods: { open(...args) { this.$refs.picker.open(...args); } },\n el: mountingPoint,\n });\n }\n return TemplatePicker;\n};\n/**\n * Register all new-file-menu entries for all template providers\n */\nexport function registerTemplateEntries() {\n const templates = loadState('files', 'templates', []);\n // Init template files menu\n templates.forEach((provider, index) => {\n addNewFileMenuEntry({\n id: `template-new-${provider.app}-${index}`,\n displayName: provider.label,\n iconClass: provider.iconClass || 'icon-file',\n iconSvgInline: provider.iconSvgInline,\n enabled(context) {\n return (context.permissions & Permission.CREATE) !== 0;\n },\n order: 11,\n async handler(context, content) {\n const templatePicker = getTemplatePicker(context);\n const name = await newNodeName(`${provider.label}${provider.extension}`, content, {\n label: t('files', 'Filename'),\n name: provider.label,\n });\n if (name !== null) {\n // Create the file\n const picker = await templatePicker;\n picker.open(name.trim(), provider);\n }\n },\n });\n });\n}\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser, getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport { davGetClient } from '@nextcloud/files';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nexport const defaultRootUrl = generateRemoteUrl('dav' + rootPath);\n/**\n * @deprecated use `davGetClient` from `@nextcloud/files`\n */\nexport const getClient = (rootUrl = defaultRootUrl) => davGetClient(rootUrl);\nexport const client = davGetClient();\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davRemoteURL, davRootPath, getFavoriteNodes } from '@nextcloud/files';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { getContents as filesContents } from './Files.ts';\nimport { client } from './WebdavClient.ts';\nexport const getContents = (path = '/') => {\n // We only filter root files for favorites, for subfolders we can simply reuse the files contents\n if (path !== '/') {\n return filesContents(path);\n }\n return new CancelablePromise((resolve, reject, cancel) => {\n const promise = getFavoriteNodes(client)\n .catch(reject)\n .then((contents) => {\n if (!contents) {\n reject();\n return;\n }\n resolve({\n contents,\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n });\n });\n cancel(() => promise.cancel());\n });\n};\n","import { subscribe } from '@nextcloud/event-bus';\nimport { FileType, View, getNavigation } from '@nextcloud/files';\nimport { loadState } from '@nextcloud/initial-state';\nimport { getLanguage, translate as t } from '@nextcloud/l10n';\nimport { basename } from 'path';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport StarSvg from '@mdi/svg/svg/star.svg?raw';\nimport { getContents } from '../services/Favorites';\nimport { hashCode } from '../utils/hashUtils';\nimport logger from '../logger';\nexport const generateFavoriteFolderView = function (folder, index = 0) {\n return new View({\n id: generateIdFromPath(folder.path),\n name: basename(folder.path),\n icon: FolderSvg,\n order: index,\n params: {\n dir: folder.path,\n fileid: folder.fileid.toString(),\n view: 'favorites',\n },\n parent: 'favorites',\n columns: [],\n getContents,\n });\n};\nexport const generateIdFromPath = function (path) {\n return `favorite-${hashCode(path)}`;\n};\nexport default () => {\n // Load state in function for mock testing purposes\n const favoriteFolders = loadState('files', 'favoriteFolders', []);\n const favoriteFoldersViews = favoriteFolders.map((folder, index) => generateFavoriteFolderView(folder, index));\n logger.debug('Generating favorites view', { favoriteFolders });\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'favorites',\n name: t('files', 'Favorites'),\n caption: t('files', 'List of favorites files and folders.'),\n emptyTitle: t('files', 'No favorites yet'),\n emptyCaption: t('files', 'Files and folders you mark as favorite will show up here'),\n icon: StarSvg,\n order: 15,\n columns: [],\n getContents,\n }));\n favoriteFoldersViews.forEach(view => Navigation.register(view));\n /**\n * Update favourites navigation when a new folder is added\n */\n subscribe('files:favorites:added', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n addToFavorites(node);\n });\n /**\n * Remove favourites navigation when a folder is removed\n */\n subscribe('files:favorites:removed', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n // Sanity check\n if (node.path === null || !node.root?.startsWith('/files')) {\n logger.error('Favorite folder is not within user files root', { node });\n return;\n }\n removePathFromFavorites(node.path);\n });\n /**\n * Update favourites navigation when a folder is renamed\n */\n subscribe('files:node:renamed', (node) => {\n if (node.type !== FileType.Folder) {\n return;\n }\n if (node.attributes.favorite !== 1) {\n return;\n }\n updateNodeFromFavorites(node);\n });\n /**\n * Sort the favorites paths array and\n * update the order property of the existing views\n */\n const updateAndSortViews = function () {\n favoriteFolders.sort((a, b) => a.path.localeCompare(b.path, getLanguage(), { ignorePunctuation: true }));\n favoriteFolders.forEach((folder, index) => {\n const view = favoriteFoldersViews.find((view) => view.id === generateIdFromPath(folder.path));\n if (view) {\n view.order = index;\n }\n });\n };\n // Add a folder to the favorites paths array and update the views\n const addToFavorites = function (node) {\n const newFavoriteFolder = { path: node.path, fileid: node.fileid };\n const view = generateFavoriteFolderView(newFavoriteFolder);\n // Skip if already exists\n if (favoriteFolders.find((folder) => folder.path === node.path)) {\n return;\n }\n // Update arrays\n favoriteFolders.push(newFavoriteFolder);\n favoriteFoldersViews.push(view);\n // Update and sort views\n updateAndSortViews();\n Navigation.register(view);\n };\n // Remove a folder from the favorites paths array and update the views\n const removePathFromFavorites = function (path) {\n const id = generateIdFromPath(path);\n const index = favoriteFolders.findIndex((folder) => folder.path === path);\n // Skip if not exists\n if (index === -1) {\n return;\n }\n // Update arrays\n favoriteFolders.splice(index, 1);\n favoriteFoldersViews.splice(index, 1);\n // Update and sort views\n Navigation.remove(id);\n updateAndSortViews();\n };\n // Update a folder from the favorites paths array and update the views\n const updateNodeFromFavorites = function (node) {\n const favoriteFolder = favoriteFolders.find((folder) => folder.fileid === node.fileid);\n // Skip if it does not exists\n if (favoriteFolder === undefined) {\n return;\n }\n removePathFromFavorites(favoriteFolder.path);\n addToFavorites(node);\n };\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","/**\n * @copyright Copyright (c) 2024 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","import { getCurrentUser } from '@nextcloud/auth';\nimport { Folder, Permission, davGetRecentSearch, davGetClient, davResultToNode, davRootPath, davRemoteURL } from '@nextcloud/files';\nimport { getBaseUrl } from '@nextcloud/router';\nimport { CancelablePromise } from 'cancelable-promise';\nimport { useUserConfigStore } from '../store/userconfig.ts';\nimport { pinia } from '../store/index.ts';\nconst client = davGetClient();\nconst lastTwoWeeksTimestamp = Math.round((Date.now() / 1000) - (60 * 60 * 24 * 14));\n/**\n * Helper to map a WebDAV result to a Nextcloud node\n * The search endpoint already includes the dav remote URL so we must not include it in the source\n *\n * @param stat the WebDAV result\n */\nconst resultToNode = (stat) => davResultToNode(stat, davRootPath, getBaseUrl());\n/**\n * Get recently changed nodes\n *\n * This takes the users preference about hidden files into account.\n * If hidden files are not shown, then also recently changed files *in* hidden directories are filtered.\n *\n * @param path Path to search for recent changes\n */\nexport const getContents = async (path = '/') => {\n const store = useUserConfigStore(pinia);\n /**\n * Filter function that returns only the visible nodes - or hidden if explicitly configured\n * @param node The node to check\n */\n const filterHidden = (node) => path !== '/' // We need to hide files from hidden directories in the root if not configured to show\n || store.userConfig.show_hidden // If configured to show hidden files we can early return\n || !node.dirname.split('/').some((dir) => dir.startsWith('.')); // otherwise only include the file if non of the parent directories is hidden\n const abort = new AbortController();\n return new CancelablePromise(async (resolve, reject, cancel) => {\n cancel(() => abort.abort());\n let contentsResponse;\n try {\n contentsResponse = await client.search('/', {\n details: true,\n data: davGetRecentSearch(lastTwoWeeksTimestamp),\n signal: abort.signal,\n });\n }\n catch (e) {\n reject(e);\n return;\n }\n if (abort.signal.aborted) {\n reject();\n return;\n }\n const contents = contentsResponse.data.results\n .map(resultToNode)\n .filter(filterHidden);\n resolve({\n contents,\n folder: new Folder({\n id: 0,\n source: `${davRemoteURL}${davRootPath}`,\n root: davRootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n });\n });\n};\n","/**\n * @copyright Copyright (c) 2024 Eduardo Morales <emoral435@gmail.com>\n *\n * @author Eduardo Morales <emoral435@gmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { File } from '@nextcloud/files';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { getContents as getFiles } from './Files';\nconst currUserID = getCurrentUser()?.uid;\n/**\n * NOTE MOVE TO @nextcloud/files\n * @brief filters each file/folder on its shared status\n * \tA personal file is considered a file that has all of the following properties:\n * \t\ta.) the current user owns\n * \t\tb.) the file is not shared with anyone\n * \t\tc.) the file is not a group folder\n * @param {FileStat} node that contains\n * @return {Boolean}\n */\nexport const isPersonalFile = function (node) {\n // the type of mounts that determine whether the file is shared\n const sharedMountTypes = [\"group\", \"shared\"];\n const mountType = node.attributes['mount-type'];\n // the check to determine whether the current logged in user is the owner / creator of the node\n const currUserCreated = currUserID ? node.owner === currUserID : true;\n return currUserCreated && !sharedMountTypes.includes(mountType);\n};\nexport const getContents = (path = \"/\") => {\n // get all the files from the current path as a cancellable promise\n // then filter the files that the user does not own, or has shared / is a group folder\n return getFiles(path)\n .then(c => {\n c.contents = c.contents.filter(isPersonalFile);\n return c;\n });\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { addNewFileMenuEntry, registerDavProperty, registerFileAction } from '@nextcloud/files';\nimport { action as deleteAction } from './actions/deleteAction';\nimport { action as downloadAction } from './actions/downloadAction';\nimport { action as editLocallyAction } from './actions/editLocallyAction';\nimport { action as favoriteAction } from './actions/favoriteAction';\nimport { action as moveOrCopyAction } from './actions/moveOrCopyAction';\nimport { action as openFolderAction } from './actions/openFolderAction';\nimport { action as openInFilesAction } from './actions/openInFilesAction';\nimport { action as renameAction } from './actions/renameAction';\nimport { action as sidebarAction } from './actions/sidebarAction';\nimport { action as viewInFolderAction } from './actions/viewInFolderAction';\nimport { entry as newFolderEntry } from './newMenu/newFolder.ts';\nimport { entry as newTemplatesFolder } from './newMenu/newTemplatesFolder.ts';\nimport { registerTemplateEntries } from './newMenu/newFromTemplate.ts';\nimport registerFavoritesView from './views/favorites';\nimport registerRecentView from './views/recent';\nimport registerPersonalFilesView from './views/personal-files';\nimport registerFilesView from './views/files';\nimport registerPreviewServiceWorker from './services/ServiceWorker.js';\nimport { initLivePhotos } from './services/LivePhotos';\n// Register file actions\nregisterFileAction(deleteAction);\nregisterFileAction(downloadAction);\nregisterFileAction(editLocallyAction);\nregisterFileAction(favoriteAction);\nregisterFileAction(moveOrCopyAction);\nregisterFileAction(openFolderAction);\nregisterFileAction(openInFilesAction);\nregisterFileAction(renameAction);\nregisterFileAction(sidebarAction);\nregisterFileAction(viewInFolderAction);\n// Register new menu entry\naddNewFileMenuEntry(newFolderEntry);\naddNewFileMenuEntry(newTemplatesFolder);\nregisterTemplateEntries();\n// Register files views\nregisterFavoritesView();\nregisterFilesView();\nregisterRecentView();\nregisterPersonalFilesView();\n// Register preview service worker\nregisterPreviewServiceWorker();\nregisterDavProperty('nc:hidden', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('nc:is-mount-root', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('nc:is-federated', { nc: 'http://nextcloud.org/ns' });\ninitLivePhotos();\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport FolderSvg from '@mdi/svg/svg/folder.svg?raw';\nimport { getContents } from '../services/Files';\nimport { View, getNavigation } from '@nextcloud/files';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'files',\n name: t('files', 'All files'),\n caption: t('files', 'List of your files and folders.'),\n icon: FolderSvg,\n order: 0,\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { View, getNavigation } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport HistorySvg from '@mdi/svg/svg/history.svg?raw';\nimport { getContents } from '../services/Recent';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'recent',\n name: t('files', 'Recent'),\n caption: t('files', 'List of recently modified files and folders.'),\n emptyTitle: t('files', 'No recently modified files'),\n emptyCaption: t('files', 'Files and folders you recently modified will show up here.'),\n icon: HistorySvg,\n order: 10,\n defaultSortKey: 'mtime',\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2024 Eduardo Morales <emoral435@gmail.com>\n *\n * @author Eduardo Morales <emoral435@gmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation } from '@nextcloud/files';\nimport { getContents } from '../services/PersonalFiles';\nimport AccountIcon from '@mdi/svg/svg/account.svg?raw';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: 'personal',\n name: t('files', 'Personal Files'),\n caption: t('files', 'List of your files and folders that are not shared.'),\n emptyTitle: t('files', 'No personal files found'),\n emptyCaption: t('files', 'Files that are not shared will show up here.'),\n icon: AccountIcon,\n order: 5,\n getContents,\n }));\n};\n","/**\n * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateUrl } from '@nextcloud/router'\nimport logger from '../logger.js'\n\nexport default () => {\n\tif ('serviceWorker' in navigator) {\n\t\t// Use the window load event to keep the page load performant\n\t\twindow.addEventListener('load', async () => {\n\t\t\ttry {\n\t\t\t\tconst url = generateUrl('/apps/files/preview-service-worker.js', {}, { noRewrite: true })\n\t\t\t\tconst registration = await navigator.serviceWorker.register(url, { scope: '/' })\n\t\t\t\tlogger.debug('SW registered: ', { registration })\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('SW registration failed: ', { error })\n\t\t\t}\n\t\t})\n\t} else {\n\t\tlogger.debug('Service Worker is not enabled on this browser.')\n\t}\n}\n","/**\n * @copyright Copyright (c) 2023 Louis Chmn <louis@chmn.me>\n *\n * @author Louis Chmn <louis@chmn.me>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../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, `.upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-c5517ef8] {\\n display: inline-flex;\\n align-items: center;\\n height: var(--default-clickable-area);\\n}\\n.upload-picker__progress[data-v-c5517ef8] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-c5517ef8] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\\n animation: breathing-c5517ef8 3s ease-out infinite normal;\\n}\\n@keyframes breathing-c5517ef8 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `\n.new-node-dialog__form[data-v-242a2438] {\n\t/* Ensure the dialog does not jump when there is a validity error */\n\tmin-height: calc(3 * var(--default-clickable-area));\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NewNodeDialog.vue\"],\"names\":[],\"mappings\":\";AAwJA;CACA,mEAAA;CACA,mDAAA;AACA\",\"sourcesContent\":[\"<!--\\n - SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\\n - SPDX-License-Identifier: AGPL-3.0-or-later\\n-->\\n<template>\\n\\t<NcDialog data-cy-files-new-node-dialog\\n\\t\\t:name=\\\"name\\\"\\n\\t\\t:open=\\\"open\\\"\\n\\t\\tclose-on-click-outside\\n\\t\\tout-transition\\n\\t\\t@update:open=\\\"emit('close', null)\\\">\\n\\t\\t<template #actions>\\n\\t\\t\\t<NcButton data-cy-files-new-node-dialog-submit\\n\\t\\t\\t\\ttype=\\\"primary\\\"\\n\\t\\t\\t\\t:disabled=\\\"validity !== ''\\\"\\n\\t\\t\\t\\t@click=\\\"submit\\\">\\n\\t\\t\\t\\t{{ t('files', 'Create') }}\\n\\t\\t\\t</NcButton>\\n\\t\\t</template>\\n\\t\\t<form ref=\\\"formElement\\\"\\n\\t\\t\\tclass=\\\"new-node-dialog__form\\\"\\n\\t\\t\\t@submit.prevent=\\\"emit('close', localDefaultName)\\\">\\n\\t\\t\\t<NcTextField ref=\\\"nameInput\\\"\\n\\t\\t\\t\\tdata-cy-files-new-node-dialog-input\\n\\t\\t\\t\\t:error=\\\"validity !== ''\\\"\\n\\t\\t\\t\\t:helper-text=\\\"validity\\\"\\n\\t\\t\\t\\t:label=\\\"label\\\"\\n\\t\\t\\t\\t:value.sync=\\\"localDefaultName\\\" />\\n\\t\\t</form>\\n\\t</NcDialog>\\n</template>\\n\\n<script setup lang=\\\"ts\\\">\\nimport type { ComponentPublicInstance, PropType } from 'vue'\\nimport { getUniqueName } from '@nextcloud/files'\\nimport { t } from '@nextcloud/l10n'\\nimport { extname } from 'path'\\nimport { nextTick, onMounted, ref, watch, watchEffect } from 'vue'\\nimport { getFilenameValidity } from '../utils/filenameValidity.ts'\\n\\nimport NcButton from '@nextcloud/vue/dist/Components/NcButton.js'\\nimport NcDialog from '@nextcloud/vue/dist/Components/NcDialog.js'\\nimport NcTextField from '@nextcloud/vue/dist/Components/NcTextField.js'\\n\\nconst props = defineProps({\\n\\t/**\\n\\t * The name to be used by default\\n\\t */\\n\\tdefaultName: {\\n\\t\\ttype: String,\\n\\t\\tdefault: t('files', 'New folder'),\\n\\t},\\n\\t/**\\n\\t * Other files that are in the current directory\\n\\t */\\n\\totherNames: {\\n\\t\\ttype: Array as PropType<string[]>,\\n\\t\\tdefault: () => [],\\n\\t},\\n\\t/**\\n\\t * Open state of the dialog\\n\\t */\\n\\topen: {\\n\\t\\ttype: Boolean,\\n\\t\\tdefault: true,\\n\\t},\\n\\t/**\\n\\t * Dialog name\\n\\t */\\n\\tname: {\\n\\t\\ttype: String,\\n\\t\\tdefault: t('files', 'Create new folder'),\\n\\t},\\n\\t/**\\n\\t * Input label\\n\\t */\\n\\tlabel: {\\n\\t\\ttype: String,\\n\\t\\tdefault: t('files', 'Folder name'),\\n\\t},\\n})\\n\\nconst emit = defineEmits<{\\n\\t(event: 'close', name: string | null): void\\n}>()\\n\\nconst localDefaultName = ref<string>(props.defaultName)\\nconst nameInput = ref<ComponentPublicInstance>()\\nconst formElement = ref<HTMLFormElement>()\\nconst validity = ref('')\\n\\n/**\\n * Focus the filename input field\\n */\\nfunction focusInput() {\\n\\tnextTick(() => {\\n\\t\\t// get the input element\\n\\t\\tconst input = nameInput.value?.$el.querySelector('input')\\n\\t\\tif (!props.open || !input) {\\n\\t\\t\\treturn\\n\\t\\t}\\n\\n\\t\\t// length of the basename\\n\\t\\tconst length = localDefaultName.value.length - extname(localDefaultName.value).length\\n\\t\\t// focus the input\\n\\t\\tinput.focus()\\n\\t\\t// and set the selection to the basename (name without extension)\\n\\t\\tinput.setSelectionRange(0, length)\\n\\t})\\n}\\n\\n/**\\n * Trigger submit on the form\\n */\\nfunction submit() {\\n\\tformElement.value?.requestSubmit()\\n}\\n\\n// Reset local name on props change\\nwatch(() => props.defaultName, () => {\\n\\tlocalDefaultName.value = getUniqueName(props.defaultName, props.otherNames).trim()\\n})\\n\\n// Validate the local name\\nwatchEffect(() => {\\n\\tif (props.otherNames.includes(localDefaultName.value.trim())) {\\n\\t\\tvalidity.value = t('files', 'This name is already in use.')\\n\\t} else {\\n\\t\\tvalidity.value = getFilenameValidity(localDefaultName.value.trim())\\n\\t}\\n\\tconst input = nameInput.value?.$el.querySelector('input')\\n\\tif (input) {\\n\\t\\tinput.setCustomValidity(validity.value)\\n\\t\\tinput.reportValidity()\\n\\t}\\n})\\n\\n// Ensure the input is focussed even if the dialog is already mounted but not open\\nwatch(() => props.open, () => {\\n\\tnextTick(() => {\\n\\t\\tfocusInput()\\n\\t})\\n})\\n\\nonMounted(() => {\\n\\t// on mounted lets use the unique name\\n\\tlocalDefaultName.value = getUniqueName(localDefaultName.value, props.otherNames).trim()\\n\\tnextTick(() => focusInput())\\n})\\n</script>\\n\\n<style scoped>\\n.new-node-dialog__form {\\n\\t/* Ensure the dialog does not jump when there is a validity error */\\n\\tmin-height: calc(3 * var(--default-clickable-area));\\n}\\n</style>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: <T>*/(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\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 \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\n/**\n * Linear delay\n * @param {number | undefined} delayFactor - delay factor in milliseconds (default: 100)\n * @returns {function} (retryNumber: number, error: AxiosError | undefined) => number\n */\nexport function linearDelay(delayFactor = 100) {\n return (retryNumber = 0, error = undefined) => {\n const delay = retryNumber * delayFactor;\n return Math.max(delay, retryAfter(error));\n };\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions, resetLastRequestTime = false) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n if (!currentState.lastRequestTime || resetLastRequestTime) {\n currentState.lastRequestTime = Date.now();\n }\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions, true);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.linearDelay = linearDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import '../assets/index-7UBhRcxV.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { Folder, Permission, davRootPath, FileType, davGetClient, davRemoteURL, validateFilename, InvalidFilenameError, getUniqueName, NewMenuEntryCategory, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry, { exponentialDelay } from \"axios-retry\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nimport { spawnDialog, showInfo, showWarning } from \"@nextcloud/dialogs\";\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n logger.debug(\"Created temporary upload workspace\", { url });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n /**\n * Add multiple children at once\n * @param files The files to add\n */\n async addChildren(files) {\n for (const file of files) {\n await this.addChild(file);\n }\n }\n /**\n * Add a child to the directory.\n * If it is a nested child the parents will be created if not already exist.\n * @param file The child to add\n */\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n const child = new Directory(`${rootPath}${file.name}`);\n await child.addChildren(entries);\n this._children.set(file.name, child);\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n await this._children.get(base).addChild(file);\n } else {\n const child = new Directory(`${rootPath}${base}`);\n await child.addChild(file);\n this._children.set(base, child);\n }\n }\n }\n }\n}\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"abusaud, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli <alimahwer@yahoo.com>, 2024\\nabusaud, 2024\\n\" }, \"msgstr\": [\"Last-Translator: abusaud, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" هو اسم ممنوع لملف أو مجلد.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" هو نوع ممنوع أن يكون لملف.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" هو غير مسموح به في اسم ملف أو مجلد.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفان متعارضان في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفات متعارضة في {dirname}\", \"{count} ملفات متعارضة في {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"بضع ثوانٍ متبقية\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['غير مسموح ان ينتهي اسم الملف بـ \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"اسم ملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معروف\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"اسم ملف جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"رفع الملفات\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"تمّ تجاوز الرفع\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['رفع \"{folder}\" تمّ تجاوزه'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp <enolp@softastur.org>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev <microphprashad@gmail.com>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev <microphprashad@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera <marcriera@softcatala.org>, 2022\\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\\nMartin Hankovec, 2024\\nAppukonrad <appukonrad@gmail.com>, 2024\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít jako název souboru či složky.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ není povoleného typu souboru.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít v rámci názvu souboru či složky.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvořit nový\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Názvy souborů nemohou končit na „{segment}“.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný název souboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový název souboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Přejmenovat\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Přeskočit\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrát\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrát složky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrát ze zařízení\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávání bylo zrušeno\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrání bylo přeskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Nahrání „{folder}“ bylo přeskočeno\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRasmus Rosendahl-Kaa, 2024\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tilladt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opret ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavne må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldigt filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nyt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøb\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Spring over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload fra enhed\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload er blevet annulleret\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload er blevet sprunget over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload af \"{folder}\" er blevet sprunget over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andy Scherzinger <info@andy-scherzinger.de>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMartin Wilichowski, 2024\\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is a forbidden file or folder name.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is a forbidden file type.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is not allowed inside a file or folder name.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Create new\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filenames must not end with \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Invalid filename\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"New filename\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rename\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Skip\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload folders\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload from device\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload has been cancelled\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload has been skipped\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload of \"{folder}\" has been skipped'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"You can either rename the file, skip this file or cancel the whole operation.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa de imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Cargar archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Cargar carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Cargar desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Carga cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la carga\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿Cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} archivos en conflicto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} archivo en conflicto en {dirname}\", \"{count} archivos en conflicto en {dirname}\", \"{count} archivo en conflicto en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Cuáles archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"teemue, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\nteemue, 2024\\n\" }, \"msgstr\": [\"Last-Translator: teemue, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" on kielletty tiedoston tai hakemiston nimi.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" on kielletty tiedostotyyppi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ei ole sallittu tiedoston tai hakemiston nimessä.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} tiedoston ristiriita\", \"{count} tiedoston ristiriita\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tiedoston ristiriita kansiossa {dirname}\", \"{count} tiedoston ristiriita kansiossa {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Peruuta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Peruuta koko toimenpide\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jatka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Luo uusi\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemassa oleva versio\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tiedoston nimi ei saa päättyä \"{segment}\"'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Kielletty/väärä tiedoston nimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimeisin muokkauspäivä on tuntematon\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uusi tiedostonimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uusi versio\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Esikatsele kuva\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Nimeä uudelleen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Valitse kaikki valintaruudut\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Valitse kaikki olemassa olevat tiedostot\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Valitse kaikki uudet tiedostot\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ohita\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ohita tämä tiedosto\", \"Ohita {count} tiedostoa\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tuntematon koko\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Lähetä\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Lähetä kansioita\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Lähetä laitteelta\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Lähetys on peruttu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Lähetys on ohitettu\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Hakemiston \"{folder}\" lähetys on ohitettu'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Lähetyksen edistyminen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mitkä tiedostot haluat säilyttää?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi.\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Arnaud Cazenave, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\nJérôme HERBINET, 2024\\nArnaud Cazenave, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Arnaud Cazenave, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" est un nom de fichier ou de dossier interdit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" est un type de fichier interdit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les téléversements\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Créer un nouveau\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Le nom des fichiers ne doit pas finir par \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fichier invalide\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nouveau nom de fichier\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renommer\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Téléverser\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléverser des fichiers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Téléverser des dossiers\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Téléverser depuis l'appareil\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Le téléversement a été annulé\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Le téléversement a été ignoré\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Le téléversement de \"{folder}\" a été ignoré'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléversement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Is ainm toirmiscthe comhaid nó fillteáin é \"{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Is cineál comhaid toirmiscthe é \"{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`Ní cheadaítear \"{segment}\" taobh istigh d'ainm comhaid nó fillteáin.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soicind fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Níor cheart go gcríochnaíonn comhaid chomhad le \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ainm comhaid nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uaslódáil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó ghléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Léiríodh an uaslódáil\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Léiríodh an uaslódáil \"{folder}\".'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» é un nome vedado para un ficheiro ou cartafol.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» é un tipo de ficheiro vedado.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Os nomes de ficheiros non deben rematar con «{segment}».\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O envío foi omitido\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"O envío de «{folder}» foi omitido\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Tiltott fájl- vagy mappanév: „{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Tiltott fájltípus: „{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Nem megengedett egy fájl- vagy mappanévben: „{segment}\".'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fájlt érintő konfliktus\", \"{count} fájlt érintő konfliktus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fájlt érintő konfliktus a mappában: {dirname}\", \"{count}fájlt érintő konfliktus a mappában: {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Mégse\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Teljes művelet megszakítása\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tovább\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Új létrehozása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Jelenlegi változat\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Fájlnevek nem végződhetnek erre: „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Érvénytelen fájlnév\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Utolsó módosítás dátuma ismeretlen\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Új fájlnév\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Új verzió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Kép előnézete\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Átnevezés\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Minden jelölőnégyzet kijelölése\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Minden jelenlegi fájl kijelölése\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Minden új fájl kijelölése\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Kihagyás\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ezen fájl kihagyása\", \"{count}fájl kihagyása\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ismeretlen méret\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Feltöltés\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappák feltöltése\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Feltöltés eszközről\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Feltöltés meg lett szakítva\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Feltöltés át lett ugorva\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}” feltöltése át lett ugorva\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Feltöltési folyamat\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mely fájlokat kívánja megtartani?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"A folytatáshoz minden fájlból legalább egy verziót ki kell választani.\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly <linerly@proton.me>, 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nEmpty Slot Filler, 2023\\nLinerly <linerly@proton.me>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly <linerly@proton.me>, 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"albanobattistella <albanobattistella@gmail.com>, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFrancesco Sercia, 2024\\nalbanobattistella <albanobattistella@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" è un nome di file o cartella proibito.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"è un tipo di file proibito.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" non è consentito all'interno di un nome di file o cartella.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annulla\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annulla l'intera operazione\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nuovo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['I nomi dei file non devono terminare con \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome file non valido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuovo nome file\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rinomina\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Salta\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Caricamento\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carica cartelle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carica dal dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Caricamento annullato\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Il caricamento è stato saltato\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Il caricamento di \"{folder}\" è stato saltato'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso del caricamento\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"È possibile rinominare il file, ignorarlo o annullare l'intera operazione.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"ja\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"kshimohata, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\nkshimohata, 2024\\n\" }, \"msgstr\": [\"Last-Translator: kshimohata, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" は禁止されているファイルまたはフォルダ名です。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" は禁止されているファイルタイプです。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ファイルまたはフォルダ名に \"{segment}\" を含めることはできません。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ファイル数の競合\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} で {count} 個のファイルが競合しています\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"キャンセル\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"すべての操作をキャンセルする\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"続ける\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新規作成\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既存バージョン\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ファイル名の末尾に \"{segment}\" を付けることはできません。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無効なファイル名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最終更新日不明\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新しいファイル名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新しいバージョン\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"プレビュー画像\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"名前を変更\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"すべて選択\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"すべての既存ファイルを選択\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"すべての新規ファイルを選択\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"スキップ\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} 個のファイルをスキップする\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"サイズ不明\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"アップロード\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップロード\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"フォルダのアップロード\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"デバイスからのアップロード\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"アップロードはキャンセルされました\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"アップロードがスキップされました\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" のアップロードがスキップされました'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"アップロード進行状況\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"どのファイルを保持しますか?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров <sasetodorov@gmail.com>, 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров <sasetodorov@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Roger Knutsen, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRoger Knutsen, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Roger Knutsen, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tillatt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hele operasjonen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opprett ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavn må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldig filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøp\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hopp over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Last opp mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Last opp fra enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Opplastingen er kansellert\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Opplastingen er hoppet over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Opplasting av \"{folder}\" er hoppet over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico <rico-schwab@hotmail.com>, 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico <rico-schwab@hotmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” to zabroniona nazwa pliku lub folderu.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” jest zabronionym typem pliku.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Utwórz nowe\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Nazwy plików nie mogą kończyć się na „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nieprawidłowa nazwa pliku\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nowa nazwa pliku\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Zmiana nazwy\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie pola wyboru\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pomiń\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Prześlij\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Prześlij foldery\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Prześlij z urządzenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Przesyłanie zostało anulowane\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Przesyłanie zostało pominięte\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Przesyłanie „{folder}” zostało pominięte\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Paulo Schopf, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\\nPaulo Schopf, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Paulo Schopf, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de arquivo proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido dentro de um nome de arquivo ou pasta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes dos arquivos não devem terminar com \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de arquivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de arquivo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pular\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carregar do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O upload foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O upload foi pulado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O upload de \"{folder}\" foi ignorado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva <mmsrs@sky.com>, 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva <mmsrs@sky.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Александр, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nВлад, 2024\\nAlex <fedotov22091982@gmail.com>, 2024\\nRoman Stepanov, 2024\\nMaksim Sukharev, 2024\\nАлександр, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Александр, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» — это запрещенное имя файла или папки.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» — это запрещенный тип файла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» не допускается в имени файла или папки.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отменить\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена файлов не должны заканчиваться на «{segment}»\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неверное имя файла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Новое имя файла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Выбрать все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустить\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Загрузить\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузить файлы\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузить папки\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузить с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Загрузка была пропущена\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Загрузка «{folder}» была пропущена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Прогресс загрузки\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Вы можете переименовать файл, пропустить этот файл или отменить всю операцию.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJozef Gaal <preklady@mayday.sk>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ je zakázaný názov súboru alebo priečinka.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je zákazaný typ súboru.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}“ je zakázané v názve súboru alebo adresára.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} súbor má konflikt\", \"{count} súbory majú konflikt\", \"{count} súborov má konflikt\", \"{count} súborov má konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} súborový konflikt v {dirname}\", \"{count} súborové konflikty v {dirname}\", \"{count} súborových konfliktov v {dirname}\", \"{count} súborových konfliktov v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúnd zostáva\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} zostáva\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zostáva niekoľko sekúnd\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušiť\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušiť celú operáciu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušiť nahrávanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovať\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvoriť nové\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovanie zostávajúceho času\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existujúca verzia\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Názvy súborov nesmú končiť znakom \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný názov súboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dátum poslednej úpravy neznámy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nový\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový názov súboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verzia\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastavené\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhľad obrázka\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Premenovať\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označiť všetky výberové políčka\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrať všetky existujúce súbory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrať všetky nové súbory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskočiť\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskočiť tento súbor\", \"Preskočiť {count} súbory\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súborov\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznáma veľkosť\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrať\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrať súbory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrať priečinky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrať zo zariadenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávanie bolo zrušené\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrávanie bolo preskočené\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nahrávanie \"{folder}\" bolo preskočené'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Priebeh nahrávania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Ktoré súbory chcete ponechať?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru.\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJan Kraljič <jan.kraljic@patware.eu>, 2024\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" je prepovedano ime datoteka ali mape.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je prepovedan tip datoteke.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ni dovoljeno v imenu datoteke ali mape.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"1{count} datoteka je v konfliktu\", \"1{count} datoteki sta v konfiktu\", \"1{count} datotek je v konfliktu\", \"{count} datotek je v konfliktu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} datoteka je v konfiktu v {dirname}\", \"{count} datoteki sta v konfiktu v {dirname}\", \"{count} datotek je v konfiktu v {dirname}\", \"{count} konfliktov datotek v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Prekliči\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Prekliči celotni postopek\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Nadaljuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Ustvari nov\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjujem čas do konca\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Obstoječa različica\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Imena datotek se ne smejo končati s \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nepravilno ime datoteke\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum zadnje spremembe neznan\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo ime datoteke\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova različica\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Predogled slike\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Preimenuj\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Izberi vsa potrditvena polja\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Označi vse obstoječe datoteke\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Označi vse nove datoteke\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskoči\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskoči datoteko\", \"Preskoči {count} datoteki\", \"Preskoči {count} datotek\", \"Preskoči {count} datotek\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznana velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Naloži\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Naloži datoteke\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Naloži mape\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Naloži iz naprave\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nalaganje je bilo preklicano\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nalaganje je bilo preskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nalaganje \"{folder}\" je bilo preskočeno'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Napredek nalaganja\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Katere datoteke želite obdržati?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Izbrati morate vsaj eno različico vsake datoteke da nadaljujete.\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” је забрањено име фајла или фолдера.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” је забрањен тип фајла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}” није дозвољено унутар имена фајла или фолдера.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Откажи\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отказује комплетну операцију\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Креирај ново\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена фајлова не смеју да се завршавају на „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име долазног фајла ће се додати број.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неисправно име фајла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ново име фајла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Промени име\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Прескочи\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Отпреми\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Отпреми фолдере\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Отпреми са уређаја\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Отпремање је прескочено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Отпремање „{folder}”је прескочено\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" är ett förbjudet fil- eller mappnamn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" är en förbjuden filtyp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" är inte tillåtet i ett fil- eller mappnamn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnamn får inte sluta med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnamn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Ladda upp\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Uppladdningen har hoppats över\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Uppladdningen av \"{folder}\" har hoppats över'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat <ppnplus@protonmail.com>, 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" dosya ya da klasör adına izin verilmiyor.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" dosya türüne izin verilmiyor.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Bir dosya ya da klasör adında \"{segment}\" ifadesine izin verilmiyor.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dosya adları \"{segment}\" ile bitmemeli.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yeni dosya adı\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yükle\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yükleme atlandı\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" klasörünün yüklenmesi atlandı'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [`\"{segment}\" не є дозволеним ім'ям файлу або каталогу.`] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" не є дозволеним типом файлу.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" не дозволене сполучення символів в назві файлу або каталогу.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Створити новий\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Ім'я файлів не можуть закінчуватися на \"{segment}\".`] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Недійсне ім'я файлу\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Нове ім'я файлу\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Перейменувати\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустити\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Завантажити\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Завантажити каталоги\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Завантажити з пристрою\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Завантаження пропущено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Завантаження \"{folder}\" пропущено'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gloryandel, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGloryandel, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gloryandel, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是被禁止的文件名或文件夹名。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是被禁止的文件类型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允许包含在文件名或文件夹名中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整个操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新建\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"服务端版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['文件名不得以 \"{segment}\" 结尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"如果同时选择两个版本,则上传文件的名称中将添加一个数字。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"无效文件名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新文件名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"上传版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"保留所有服务端版本\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"保留所有上传版本\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳过\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上传文件夹\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"从设备上传\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上传已取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上传已跳过\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['已跳过上传\"{folder}\"'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上传进度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以重命名文件、跳过此文件或取消整个操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择保留一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案或資料夾名稱。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案類型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允許出現在檔案或資料夾名稱中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"創建新\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['檔案名不得以 \"{segment}\" 結尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無效的檔案名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新檔案名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重新命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳過\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上傳資料夾\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"從裝置上傳\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上傳已被取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上傳已被跳過\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 的上傳已被跳過'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以選擇重新命名檔案、跳過此檔案或取消整個操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 <s8321414@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n _customHeaders;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({\n // Maximum number of concurrent uploads\n // @ts-expect-error TS2339 Object has no defined properties\n concurrency: getCapabilities().files?.chunked_upload?.max_parallel_count ?? 5\n });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n this._customHeaders = {};\n if (!destinationFolder) {\n const source = `${davRemoteURL}${davRootPath}`;\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder || folder.type !== FileType.Folder || !folder.source) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get registered custom headers for uploads\n */\n get customHeaders() {\n return structuredClone(this._customHeaders);\n }\n /**\n * Set a custom header\n * @param name The header to set\n * @param value The string value\n */\n setCustomHeader(name, value = \"\") {\n this._customHeaders[name] = value;\n }\n /**\n * Unset a custom header\n * @param name The header to unset\n */\n deleteCustomerHeader(name) {\n delete this._customHeaders[name];\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n if (this._uploadQueue.length === 0 && this._jobQueue.size === 0) {\n return;\n }\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n logger.debug(\"Uploader state reset\");\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array<File|FileSystemEntry>} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conflicts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n if (!callback) {\n callback = async (files2) => files2;\n }\n return new PCancelable(async (resolve, reject, onCancel) => {\n const rootFolder = new Directory(\"\");\n await rootFolder.addChildren(files);\n const target = `${this.root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const upload2 = new Upload(target, false, 0, rootFolder);\n upload2.status = Status$1.UPLOADING;\n this._uploadQueue.push(upload2);\n logger.debug(\"Starting new batch upload\", { target });\n try {\n const client = davGetClient(this.root, this._customHeaders);\n const promise = this.uploadDirectory(destination, rootFolder, callback, client);\n onCancel(() => promise.cancel());\n const uploads = await promise;\n upload2.status = Status$1.FINISHED;\n resolve(uploads);\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n } finally {\n this._notifyAll(upload2);\n this.updateStats();\n }\n });\n }\n /**\n * Helper to create a directory wrapped inside an Upload class\n * @param destination Destination where to create the directory\n * @param directory The directory to create\n * @param client The cached WebDAV client\n */\n createDirectory(destination, directory, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n if (!directory.name) {\n throw new Error(\"Can not create empty directory\");\n }\n const currentUpload = new Upload(rootPath, false, 0, directory);\n this._uploadQueue.push(currentUpload);\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n await this._jobQueue.add(async () => {\n currentUpload.status = Status$1.UPLOADING;\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n resolve(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n currentUpload.status = Status$1.FINISHED;\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n currentUpload.status = Status$1.FAILED;\n reject(error);\n }\n } finally {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n });\n });\n }\n // Helper for uploading directories (recursively)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n logger.debug(\"Upload canceled by user\", { directory });\n reject(t(\"Upload has been cancelled\"));\n return;\n } else if (selectedForUpload.length === 0 && directory.children.length > 0) {\n logger.debug(\"Skipping directory, as all files were skipped by user\", { directory });\n resolve([]);\n return;\n }\n const directories = [];\n const uploads = [];\n abort.signal.addEventListener(\"abort\", () => {\n directories.forEach((upload2) => upload2.cancel());\n uploads.forEach((upload2) => upload2.cancel());\n });\n logger.debug(\"Start directory upload\", { directory });\n try {\n if (directory.name) {\n uploads.push(this.createDirectory(destination, directory, client));\n await uploads.at(-1);\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n reject(e);\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n this._jobQueue.onIdle().then(() => this.reset());\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nfunction showInvalidFilenameDialog(error) {\n const InvalidFilenameDialog = defineAsyncComponent(() => import(\"./InvalidFilenameDialog-B2HT8YV2.mjs\"));\n const { promise, reject, resolve } = Promise.withResolvers();\n spawnDialog(\n InvalidFilenameDialog,\n {\n error,\n validateFilename\n },\n (...rest) => {\n const [{ skip, rename }] = rest;\n if (skip) {\n resolve(false);\n } else if (rename) {\n resolve(rename);\n } else {\n reject();\n }\n }\n );\n return promise;\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nfunction uploadConflictHandler(contentsCallback) {\n return async (nodes, path) => {\n try {\n const content = await contentsCallback(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n try {\n validateFilename(file.name);\n filesToUpload.push(file);\n } catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n logger.error(`Unexpected error while validating ${file.name}`, { error });\n throw error;\n }\n let newName = await showInvalidFilenameDialog(error);\n if (newName !== false) {\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n }\n if (filesToUpload.length === 0 && nodes.length > 0) {\n const folder = basename(path);\n showInfo(\n folder ? t('Upload of \"{folder}\" has been skipped', { folder }) : t(\"Upload has been skipped\")\n );\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n };\n}\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n /**\n * Allow to disable the \"new\"-menu for this UploadPicker instance\n * @default false\n */\n noMenu: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n /**\n * Overwrite forbidden characters (by default the capabilities of the server are used)\n * @deprecated Deprecated and will be removed in the next major version\n */\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n buttonLabel() {\n return this.noMenu ? t(\"Upload\") : t(\"New\");\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return this.buttonLabel;\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Handle clicking a new-menu entry\n * @param entry The entry that was clicked\n */\n async onClick(entry) {\n entry.handler(\n this.destination,\n await this.getContent().catch(() => [])\n );\n },\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, uploadConflictHandler(this.getContent)).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [(_vm.noMenu || _vm.newFileMenuEntries.length === 0) && !_vm.canUploadFolders ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"aria-label\": _vm.buttonLabel, \"menu-name\": _vm.buttonName, \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-folder\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), !_vm.noMenu ? _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }) : _vm._e(), !_vm.noMenu && _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), !_vm.noMenu && _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesOther, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"c5517ef8\"\n);\nconst UploadPicker = __component__.exports;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (forceRecreate || window._nc_uploader === void 0) {\n window._nc_uploader = new Uploader(isPublic);\n }\n return window._nc_uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-qDivo0Si.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nexport {\n Status$1 as S,\n UploadPicker as U,\n isFileSystemEntry as a,\n n as b,\n getConflicts as c,\n uploadConflictHandler as d,\n Upload as e,\n Uploader as f,\n getUploader as g,\n hasConflict as h,\n isFileSystemFileEntry as i,\n Status as j,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","import Toastify from \"toastify-js\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali <alimahwer@yahoo.com>, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAli <alimahwer@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali <alimahwer@yahoo.com>, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" لا يصلح كاسم مجلد.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" غير مسموح به كاسم مجلد'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" غير مسموح به داخل اسم مجلد.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"كل الملفات\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"إختَر\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"إختَر {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملفات\", \"إختَر %n ملف\", \"إختَر %n ملف\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"نسخ\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"نسخٌ إلى {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"تعذّر إنشاء المجلد الجديد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"يتعذّر تحميل إعدادات الملفات\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"يتعذّر تحميل مناظير views الملفات\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"أنشِيءْ مجلّداً\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"مُنتقِي المنظور الحالي\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"المُفضَّلة\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فلترة قائمة الملفات\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"اسم المجلد لا يمكن أن يكون فارغاً.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"البداية\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"مُعدَّل\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"أُنقُل\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"أُنقُل إلى {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"الاسم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"مٌجلّد جديد\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"اسم المجلد الجديد\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"لا توجد ملفات هنا\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"لا توجد ملفات تتطابق مع الفلتر الذي وضعته\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"لا توجد ملفات مُطابِقة\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"الحالي\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"حدِّد كل المداخل\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"إختَر المدخل\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"إختر سطر الـ {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"الحجم\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"تراجع\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"قُم برفع محتوىً أو قُم بمزامنة أجهزتك!\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2024\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nenolp <enolp@softastur.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2024\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Nun se permite'l caráuter «/» dientro'l nome de les carpetes.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tolos ficheros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoyer\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoyer «{ficheru}»\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoyer %n ficheru\", \"Escoyer %n ficheros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nun se pudo crear la carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nun se pudo cargar la configuración de los ficheros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nun se pudieron cargar les vistes de los ficheros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un direutoriu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de la vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Equí apaecen los ficheros y les carpetes que metas en Favoritos.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Equí apaecen los fichero y les carpetes que modificares apocayá.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Peñerar la llista de ficheros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nome de la carpeta nun pue tar baleru.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Aniciu\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificóse\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nueva\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nome de carpeta nuevu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Equí nun hai nengún ficheru\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nun s'atopó nengún ficheru que concasare cola peñera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nun hai nengún ficheru que concase\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"De recién\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleicionar toles entraes\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleicionar la entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleicionar la filera de: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamañu\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Xubi dalgún elementu o sincroniza colos tos preseos!\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Disober\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sergi Font, 2024\", \"Language-Team\": \"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nv v <e670006006@gmail.com>, 2024\\nMarc Riera <marcriera@softcatala.org>, 2024\\nSergi Font, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sergi Font, 2024\\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" és un nom de carpeta no vàlid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no és permès en el nom de carpeta'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no és permès en el nom de carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tots els fitxers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Tria\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Tria {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Tria %n fitxer\", \"Tria %n fitxers\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No s'ha pogut crear la carpeta nova\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No es poden carregar fitxers de configuració\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No es poden carregar fitxers de vistes\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de visualització actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferits\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes recentment modificats es mostraran aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar llistat de fitxers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nom de la carpeta no pot estar buit.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inici\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Data de modificació\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Desplaça\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Desplaça a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Crea\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nova\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom de la carpeta nova\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hi ha cap fitxer\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No s'ha trobat cap fitxer que coincideixi amb el filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hi ha cap fitxer que coincideixi\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecciona totes les entrades\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecciona l'entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecciona la fila per a {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mida\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfés\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2020\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:187\" }, \"msgstr\": [\"Zpět\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}“ není platný název složky.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}“ není povolený název složky.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Veškeré soubory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Zvolit\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Zvolit {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Zvolte %n soubor\", \"Zvolte %n soubory\", \"Zvolte %n souborů\", \"Zvolte %n soubory\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Zkopírovat\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Zkopírovat do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Novou složku se nepodařilo vytvořit\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodařilo se načíst nastavení pro soubory\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodařilo se načíst pohledy souborů\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvořit složku\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výběr stávajícího zobrazení\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Oblíbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které označíte jako oblíbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které jste nedávno pozměnili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovat seznam souborů\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Složku je třeba nějak nazvat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domů\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Změněno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Přesounout\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Přesunout do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Název\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nová složka\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Název pro novou složku\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nejsou zde žádné soubory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenalezeny žádné soubory odpovídající vašemu filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žádné odpovídající soubory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávné\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrat všechny položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrat položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vybrat řádek pro {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Zpět\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldigt mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tilladt mappenavn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tilladt i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vælg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vælg {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vælg %n fil\", \"Vælg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke oprette den nye mappe\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Filindstillingerne kunne ikke indlæses\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke indlæse filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opret mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuel visningsvælger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper, du markerer som foretrukne, vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper, du for nylig har ændret, vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer fil liste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavnet må ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ændret\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flyt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flyt til {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ny mappe navn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Der blev ikke fundet nogen filer, der matcher dit filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen matchende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Seneste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vælg alle poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vælg post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vælg rækken for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Fortryd\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload noget indhold eller synkroniser med dine enheder!\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ettore Atalan <atalanttore@googlemail.com>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2023\\nMarkus Eckstein, 2023\\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\\nJoachim Sokolowski, 2023\\nEttore Atalan <atalanttore@googlemail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden.\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Startseite\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Keine Dateien vorhanden\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die deinem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Jüngste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann <mario_siegmann@web.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Hier sind keine Dateien\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Neueste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig machen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Αναίρεση\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2023\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is an invalid folder name.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is not an allowed folder name'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is not allowed inside a folder name.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All files\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choose\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choose {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choose %n file\", \"Choose %n files\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copy\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copy to {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Could not create the new folder\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Could not load files settings\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Could not load files views\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Create directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Current view selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favourites\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Files and folders you mark as favourite will show up here.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Files and folders you recently modified will show up here.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter file list\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Folder name cannot be empty.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modified\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Move\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Move to {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New folder name\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No files in here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No files matching your filter were found.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No matching files\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Select all entries\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Select entry\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Select the row for {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Size\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undo\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload some content or sync with your devices!\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Malfari\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta no válido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido dentro del nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elige %n archivo\", \"Elige %n archivos\", \"Seleccione %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudieron cargar los ajustes de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\" Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuevo nombre de carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidiesen con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Elegir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Elija {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elija %n archivo\", \"Elija %n archivos\", \"Elija %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de la carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleccionar %n archivo\", \"Seleccionar %n archivos\", \"Seleccionar %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear carpeta\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Suba algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Desegin\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"reza reza <forghan89@yahoo.com>, 2024\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAmir Shekoohi, 2024\\nreza reza <forghan89@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: reza reza <forghan89@yahoo.com>, 2024\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} نام پوشه معتبر نیست\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} نام پوشه مجاز نیست\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" نمی‌تواند در نام پوشه استفاده شود.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"همه فایل‌ها\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"انتخاب\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"انتخاب {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"انتخاب %n فایل\", \"انتخاب %n فایل\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"رونوشت\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"رونوشت از {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"پوشه جدید ایجاد نشد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"تنظیمات فایل باز نشد\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"نمای فایل‌ها بارگیری نشد\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ایجاد فهرست\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"انتخابگر نماگر فعلی\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"علایق\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فیلتر لیست فایل\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"نام پوشه نمی تواند خالی باشد.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"خانه\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"اصلاح شده\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"انتقال\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"انتقال به {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"نام\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جدید\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"پوشه جدید\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"نام پوشه جدید\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"فایلی اینجا نیست\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"هیچ فایلی مطابق با فیلتر شما یافت نشد.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"فایل منطبقی وجود ندارد\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"اخیر\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"انتخاب همه ورودی ها\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"انتخاب ورودی\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"انتخاب ردیف برای {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"اندازه\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"بازگردانی\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"thingumy, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\n\" }, \"msgstr\": [\"Last-Translator: thingumy, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" on virheellinen kansion nimi.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ei ole sallittu kansion nimi'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ei ole sallittu kansion nimessä.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Kaikki tiedostot\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Valitse\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Valitse {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Valitse %n tiedosto\", \"Valitse %n tiedostoa\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopioi\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopioi sijaintiin {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Uutta kansiota ei voitu luoda\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tiedoston asetuksia ei saa ladattua\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tiedoston näkymiä ei saa ladattua\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Luo kansio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nykyisen näkymän valinta\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Suosikit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Suodata tiedostolistaa\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Kansion nimi ei voi olla tyhjä.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Koti\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Muokattu\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Siirrä\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Siirrä sijaintiin {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nimi\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Uusi kansio\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Uuden kansion nimi\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Täällä ei ole tiedostoja\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Suodatinta vastaavia tiedostoja ei löytynyt.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ei vastaavia tiedostoja\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Viimeisimmät\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Valitse kaikki tietueet\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Valitse tietue\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Valitse rivi {nodename}:lle\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Koko\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Kumoa\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"DEV314R, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nRémi LEBLOND, 2023\\nMordecai, 2023\\nfleopaulD, 2023\\nFrançois Ch., 2024\\nJérôme HERBINET, 2024\\nBenoit Pruneau, 2024\\nDEV314R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: DEV314R, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier valide.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier autorisé.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Le caractère « / » n'est pas autorisé dans un nom de dossier.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tous les fichiers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choisir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choisir {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choisir %n fichier\", \"Choisir %n fichiers\", \"Choisir %n fichiers \"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copier vers {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossible de créer le nouveau dossier\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Les paramètres des fichiers n'ont pas pu être chargés\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Les aperçus des fichiers n'ont pas pu être chargés\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Créer un répertoire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Sélecteur de vue courante\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoris\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Les fichiers et répertoires marqués en favoris apparaîtront ici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Les fichiers et répertoires modifiés récemment apparaîtront ici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer la liste des fichiers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Le nom du dossier ne peut pas être vide.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Accueil\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifié\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Déplacer\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Déplacer vers {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nouveau répertoire\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom du nouveau répertoire\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aucun fichier ici\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Aucun fichier trouvé correspondant à votre filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Aucun fichier trouvé\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Récents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tous sélectionner\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Sélectionner une entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Sélectionner l'enregistrement pour {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taille\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rétablir\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Charger du contenu ou synchroniser avec vos équipements !\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['Is ainm fillteáin neamhbhailí é \"{name}\".'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['Ní ainm fillteáin ceadaithe é \"{name}\".'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Ní cheadaítear \"/\" taobh istigh d\\'ainm fillteáin.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Gach comhad\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Roghnaigh\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Roghnaigh {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Roghnaigh %n comhad\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Cóip\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Cóipeáil chuig {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Níorbh fhéidir an fillteán nua a chruthú\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Níorbh fhéidir socruithe comhaid a lódáil\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Níorbh fhéidir radhairc comhad a lódáil\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Cruthaigh eolaire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Roghnóir amhairc reatha\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ceanáin\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Scag liosta comhad\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ní féidir ainm fillteáin a bheith folamh.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Baile\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Athraithe\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Bog\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Bog go{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ainm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Fillteán nua\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ainm fillteáin nua\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Níl aon chomhaid istigh anseo\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Níor aimsíodh aon chomhad a tháinig le do scagaire.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Gan comhaid meaitseála\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"le déanaí\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Roghnaigh gach iontráil\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Roghnaigh iontráil\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Roghnaigh an ró do {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méid\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cealaigh\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» non é un nome de cartafol válido.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» non é un nome de cartafol permitido\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"A «/» non está permitida no nome dun cartafol.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os ficheiros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoller\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoller {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoller %n ficheiro\", \"Escoller %n ficheiros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Non foi posíbel crear o novo cartafol\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Non foi posíbel cargar os axustes dos ficheiros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Non foi posíbel cargar as vistas dos ficheiros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que modificou recentemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar a lista de ficheiros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome do cartafol non pode estar baleiro.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover cara a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novo cartafol\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome do cartafol\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aquí non hai ficheiros\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Non se atopou ningún ficheiro que coincida co filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Non hai ficheiros coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccionar a fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Enviar algún contido ou sincronizalo cos seus dispositivos!\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"ביטול\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFőnyedi Áron <sajtman@gmail.com>, 2023\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” érvénytelen mappanév.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” nem engedélyezett mappanév\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” jel nem szerepelhet mappa nevében.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Minden fájl\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kiválasztás\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} kiválasztása\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n fájl kiválasztása\", \"%n fájl kiválasztása\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Másolás\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Másolás ide: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Az új mappa létrehozása nem lehetséges\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Fájlbeállítások betöltése nem lehetséges\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Fájlnézetek betöltése nem lehetséges\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Mappa létrehozása\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Jelenlegi nézet választó\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Kedvencek\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"A kedvencként megjelölt fájlok és mappák itt jelennek meg.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"A nemrég módosított fájlok és mappák itt jelennek meg.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fájl lista szűrése\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"A mappa neve nem lehet üres.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Kezdőlap\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Módosítva\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mozgatás\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mozgatás ide: {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Név\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Új mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Új mappa név\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Itt nincsenek fájlok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nincs a szűrési feltételeknek megfelelő fájl.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nincs ilyen fájl\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gyakori\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Minden bejegyzés kijelölése\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Bejegyzés kijelölése\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Válassz sort a következőnek: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méret\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Visszavonás\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Lun May, 2024\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nLinerly <linerly@proton.me>, 2023\\nLun May, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Lun May, 2024\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" bukan nama folder yang valid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" merupakan nama folder yang tidak diperbolehkan'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" tidak diperbolehkan di dalam nama folder.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Semua berkas\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Pilih\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Pilih {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Pilih %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Salin\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Salin ke {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Tidak dapat membuat folder baru\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tidak dapat memuat pengaturan file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tidak dapat memuat tampilan file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Buat direktori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Pemilih tampilan saat ini\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Saring daftar berkas\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Name berkas tidak boleh kosong.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Beranda\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Diubah\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Pindahkan\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Pindahkan ke {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nama\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Folder baru\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nama folder baru\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tidak ada berkas di sini\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Tidak ada berkas yang cocok dengan penyaringan Anda.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Tidak ada berkas yang cocok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Terkini\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Pilih semua entri\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Pilih entri\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Pilih baris untuk {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Ukuran\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Tidak jadi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Unggah beberapa konten atau sinkronkan dengan perangkat Anda!\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er ógilt möppuheiti.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ekki leyfilegt möppuheiti'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er er ekki leyfilegt innan í skráarheiti.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Allar skrár\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Veldu\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Veldu {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Afrita\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Afrita í {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Get ekki búið til nýju möppuna\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Búa til möppu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Núverandi val sýnar\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Eftirlæti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú merkir sem eftirlæti birtast hér.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú breyttir nýlega birtast hér.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Sía skráalista\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Möppuheiti má ekki vera tómt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Heim\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Breytt\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Færa\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Færa í {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Heiti\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ný mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Heiti nýrrar möppu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Engar skrár hér\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Engar skrár fundust sem passa við síuna.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Engar samsvarandi skrár\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nýlegt\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velja allar færslur\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velja færslu\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Veldu röðina fyrir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Stærð\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Afturkalla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Sendu inn eitthvað efni eða samstilltu við tækin þín!\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sebastiano Furlan, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nClaudio Scandella, 2023\\nRaffaele Silano <raffaelone@gmail.com>, 2024\\nSebastiano Furlan, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sebastiano Furlan, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" non è un nome di cartella valido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" non è un nome di cartella ammesso'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" non è ammesso all\\'interno del nome di una cartella.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tutti i file\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Scegli\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Scegli {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleziona %n file\", \"Seleziona %n file\", \"Seleziona %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia in {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossibile creare la nuova cartella\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Impossibile caricare le impostazioni dei file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Impossibile caricare le visualizzazioni dei file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crea directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selettore della vista corrente\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferiti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"I file e le cartelle contrassegnate come preferite saranno mostrate qui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"I file e le cartelle che hai modificato di recente saranno mostrate qui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtra elenco file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Il nome della cartella non può essere vuoto.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificato\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Sposta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Sposta in {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nuova cartella\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuovo nome cartella\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nessun file qui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nessun file che corrisponde al tuo filtro è stato trovato.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nessun file corrispondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Scegli tutte le voci\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleziona la voce\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleziona la riga per {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taglia/dimensioni\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Annulla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carica qualche contenuto o sincronizza con i tuoi dispositivi!\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"devi, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\\ntakehito kondo, 2023\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\n\" }, \"msgstr\": [\"Last-Translator: devi, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" はフォルダー名に使用できません。'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\"は許可されたフォルダー名ではありません'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"フォルダー名に「/(スラッシュ)」は使用できません。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"すべてのファイル\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選択\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} を選択\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n 個のファイルを選択\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"コピー\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} にコピー\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"新しいフォルダーを作成できませんでした\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"ファイル設定を読み込めませんでした\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"ファイルビューを読み込めませんでした\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ディレクトリを作成\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"現在のビューセレクタ\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"お気に入り\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"お気に入りとしてマークしたファイルとフォルダがここに表示されます。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"最近変更したファイルとフォルダがここに表示されます。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"ファイルリストをフィルタ\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"フォルダ名は空にできません。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"ホーム\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"変更済み\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} に移動\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名前\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新しいフォルダー\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新しいフォルダーの名前\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"ファイルがありません\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"フィルタに一致するファイルは見つかりませんでした。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"一致するファイルはありません\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"すべてのエントリを選択\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"エントリを選択\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} の行を選択\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"サイズ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"元に戻す\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"コンテンツをアップロードするか、デバイスと同期してください!\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Sefsex\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"되돌리기\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"VoXaN24ch, 2024\", \"Language-Team\": \"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nVoXaN24ch, 2024\\n\" }, \"msgstr\": [\"Last-Translator: VoXaN24ch, 2024\\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} ass en ongëlteg Dossier\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ass net en erlaabten Dossiernumm\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ass net an engem Dossier Numm erlaabt'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wielt\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wielt {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wielt %n Fichieren\", \"Wielt %n Fichier\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopie\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopie op {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Konnt den neien Dossier net erstellen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Konnt d'Dateienastellungen net lueden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Konnt d'Dateien net lueden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Erstellt Verzeechnes\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell Vue selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter Datei Lëscht\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Dossier Numm kann net eidel sinn\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Wëllkomm\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geännert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Plënne\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Plënneren {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Numm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nei\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neien dossier\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neien dossier numm\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Kee fichier hei\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Kee fichier deen äre filter passt gouf fonnt\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keng passende dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Rezent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wielt all entréen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wielt entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wielt d'zeil fir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Gréisst\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undoen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Luet en inhalt erop oder synchroniséiert mat ären apparater\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Atšaukti\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Врати\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Буцаах\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"पूर्ववत करा\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"နဂိုအတိုင်းပြန်ထားရန်\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"armandg <geirawsm@pm.me>, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nD PE, 2023\\nSyvert Fossdal, 2024\\narmandg <geirawsm@pm.me>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: armandg <geirawsm@pm.me>, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldig mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tillatt mappenavn.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tillatt inne i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Velg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Velg {fil}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Velg %n fil\", \"Velg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {destinasjon}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke opprette den nye mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunne ikke laste filinnstillinger\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke laste filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opprett mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nåværende visningsvelger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper du markerer som favoritter vil vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper du nylig har endret, vil vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer filliste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavn kan ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifisert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytt til {destinasjon}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappenavn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer her\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ingen filer funnet med ditt filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen treffende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nylig\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velg alle oppføringer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velg oppføring\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Velg raden for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størrelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Angre\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Last opp innhold eller synkroniser med enhetene dine!\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Casper <casper@vrije-mens.org>, 2024\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJoost <joho500@hotmail.com>, 2023\\nJeroen Gui, 2023\\nCasper <casper@vrije-mens.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Casper <casper@vrije-mens.org>, 2024\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is een ongeldige mapnaam.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is geen toegestane mapnaam'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is niet toegestaan binnen een bestandsnaam'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle bestanden\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kies\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Kies {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Kies %n bestand\", \"Kies %n bestanden\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieer\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopieer naar {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kon de nieuwe map niet maken\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kon de bestandsinstellingen niet laden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kon de bestandsweergaves niet laden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Maak map\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Huidige weergave keuze\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorieten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Bestanden en mappen die je favoriet maakt, worden hier getoond.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter bestandslijst\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mapnaam mag niet leeg zijn.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Gewijzigd\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verplaatsen\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Verplaats naar {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naam\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nieuw\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nieuwe map\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nieuwe mapnaam\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Geen bestanden hier\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Geen bestanden gevonden die voldoen aan je filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Geen gevonden bestanden\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecteer alle invoer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecteer invoer\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecteer de rij voor {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Grootte\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ongedaan maken\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload inhoud of synchroniseer met je apparaten!\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anullar\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJUJER wtf, 2023\\nM H <haincu@o2.pl>, 2023\\nValdnet, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" jest nieprawidłową nazwą folderu'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie jest dozwoloną nazwą folderu'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Znak \"/\" nie jest dozwolony w nazwie folderu'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Wszystkie pliki\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wybierz\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wybierz {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wybierz %n plik\", \"Wybierz %n pliki\", \"Wybierz %n plików\", \"Wybierz %n plików\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiuj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Skopiuj do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nie można utworzyć nowego folderu\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nie można wczytać ustawień plików\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nie można wczytać widoków plików\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Utwórz katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Bieżący selektor widoku\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ulubione\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtruj listę plików\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Nazwa folderu nie może być pusta\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Strona główna\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Zmodyfikowano\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Przenieś\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Przejdź do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nazwa\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nowy folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nowa nazwa folderu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Brak plików\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nie znaleziono plików spełniających warunki filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Brak pasujących plików\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Ostatni\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wybierz wszystkie wpisy\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wybierz wpis\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wybierz wiersz dla {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Rozmiar\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cofnij\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFlávio Veras <flaviove@gmail.com>, 2023\\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" é um nome de pasta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" não é um nome de pasta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" não é permitido dentro de um nome de pasta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os arquivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escolher\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escolher arquivo}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escolher %n arquivo\", \"Escolher %n arquivos\", \"Escolher %n arquivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar para {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Não foi possível criar a nova pasta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Não foi possível carregar configurações de arquivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Não foi possível carregar exibições de arquivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Criar diretório\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Seletor de visualização atual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os arquivos e pastas marcados como favoritos aparecerão aqui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Arquivos e pastas que você modificou recentemente aparecerão aqui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de arquivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome da pasta não pode ficar vazio.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover para {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova pasta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome de pasta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nenhum arquivo aqui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenhum arquivo correspondente ao seu filtro foi encontrado.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nenhum arquivo correspondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecione todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecione a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecione a linha para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamanho\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfazer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carregue algum conteúdo ou sincronize com seus dispositivos!\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anular\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Daniel MD <dmihaidumitru@gmail.com>, 2023\", \"Language-Team\": \"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nDaniel MD <dmihaidumitru@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" este un nume de director invalid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nu este un nume de director permis'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nu este permis în numele unui director.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Toate fișierele\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Alege\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Alege {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiază\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiază în {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nu s-a putut crea noul director\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Creează director\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selectorul curent al vizualizării\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorite\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le marcați ca favorite vor apărea aici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le-ați modificat recent vor apărea aici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrează lista de fișiere\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Numele de director nu poate fi necompletat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Acasă\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificat\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mută\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mută către {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nume\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nou\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Director nou\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Numele noului director\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nu există fișiere\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nu există fișiere potrivite pentru filtrul selectat\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nu există fișiere potrivite\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selectează toate înregistrările\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selectează înregistrarea\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selectează rândul pentru {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mărime\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Anulează\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kitsune R, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMax Smith <sevinfolds@gmail.com>, 2023\\nashed <craysy@gmail.com>, 2023\\nAlex <kekcuha@gmail.com>, 2024\\nR4SAS, 2024\\nВлад, 2024\\nKitsune R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kitsune R, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» — недопустимое имя папки.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» не является разрешенным именем папки\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Символ «/» не допускается внутри имени папки.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Все файлы\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Выбрать\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Выбрать {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Выбрать %n файл\", \"Выбрать %n файла\", \"Выбрать %n файлов\", \"Выбрать %n файлов\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копировать\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копировать в «{target}»\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не удалось создать новую папку\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не удалось загрузить настройки файлов\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не удалось загрузить файлы просмотров\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Создать папку\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Переключатель текущего вида\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Избранное\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Здесь появятся файлы и папки, которые вы пометили как избранные.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Здесь будут отображаться файлы и папки, которые вы недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фильтровать список файлов\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Имя папки не может быть пустым.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Изменен\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Переместить\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перейти к {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Имя\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новая папка\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Имя новой папки\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Здесь нет файлов\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Файлы, соответствующие вашему фильтру, не найдены.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нет подходящих файлов\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Недавний\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Выбрать все записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Выберите запись\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Выберите строку для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Размер\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Отменить\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Загрузите контент или синхронизируйте его со своими устройствами!\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"පෙරසේ\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nStanislav Prekop <prekop3@gmail.com>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" je neplatný názov pričinka.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie je povolený názov priečinka.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nie je povolené v názve priečinka.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Všetky súbory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vybrať\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vybrať {súbor}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vybraný %n súbor\", \"Vybrané %n súbory\", \"Vybraných %n súborov\", \"Vybraných %n súborov\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopírovať\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopírovať do {umiestnenia}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nepodarilo sa vytvoriť nový priečinok\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodarilo sa načítať nastavenia súborov\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodarilo sa načítať pohľady súborov\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvoriť adresár\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výber aktuálneho zobrazenia\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Obľúbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovať zoznam súborov\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Názov priečinka nemôže byť prázdny.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Upravené\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Prejsť\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Prejsť na {umiestnenie}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Názov\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Pridať\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Pridať priečinok\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Pridať názov priečinka\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nie sú tu žiadne súbory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenašli sa žiadne súbory zodpovedajúce vášmu filtru.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žiadne zodpovedajúce súbory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrať všetky položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrať položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vyberte riadok pre {názov uzla}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veľkosť\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Späť\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} je neveljavno ime mape.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ni dovoljeno ime mape\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ni dovoljen v imenu mape.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Vse datoteke\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izberi\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izberi {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izberi %n datoteko\", \"Izberi %n datoteki\", \"Izberi %n datotek\", \"Izberi %n datotek\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj v {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nisem mogel ustvariti nove mape\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"NIsem mogel naložiti nastavitev datotek\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nisem mogel naložiti pogledov datotek\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Ustvari mapo\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Izbirnik trenutnega pogleda\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Priljubljene\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtriraj seznam datotek\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ime mape ne more biti prazno\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Spremenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premakni\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premakni v {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ime\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova mapa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo ime mape\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tukaj ni datotek\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ni bilo najdenih ujemajočih datotek glede na vaš filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ni ujemajočih datotek\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedavne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izberi vse vnose\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izberi vnos\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izberi vrstico za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Razveljavi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” није исправно име фолдера.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” није дозвољено име за фолдер.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” није дозвољено унутар имена фолдера.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Сви фајлови\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Изаберите\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Изаберите {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Изаберите %n фајл\", \"Изаберите %n фајла\", \"Изаберите %n фајлова\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копирај\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копирај у {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Није могао да се креира нови фолдер\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не могу да се учитају подешавања фајлова\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не могу да се учитају прикази фајлова\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Креирај директоријум\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Бирач тренутног приказа\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Омиљено\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери које сте означили као омиљене.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери који се се недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фитрирање листе фајлова\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Име фолдера не може бити празно.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Почетак\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Измењено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Премести\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Премести у {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Име\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Нови фолдер\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Име новог фолдера\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Овде нема фајлова\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Није пронађен ниједан фајл који задовољава ваш филтер.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нема таквих фајлова\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Скорашње\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Изаберите све ставке\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Изаберите ставку\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Изаберите ред за {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Величина\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Поништи\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Отпремите нешто или синхронизујте са својим уређајима!\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Bogdan Vuković, 2024\", \"Language-Team\": \"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBogdan Vuković, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Bogdan Vuković, 2024\\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” je neispravan naziv foldera.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” je nedozvoljen naziv foldera.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” se ne može koristiti unutar naziva foldera.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Svi fajlovi\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izaberite\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izaberite {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izaberite %n fajl\", \"Izaberite %n fajla\", \"Izaberite %n fajlova\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj u {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Neuspešno kreiranje novog foldera\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Neuspešno učitavanje podešavanja fajlova\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Neuspešno učitavanje prikaza fajlova\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Kreiraj direktorijum\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Birač trenutnog prikaza\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Omiljeno\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Lista omiljenih fajlova i foldera.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Lista fajlova i foldera sa skorašnjim izmenama.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fitriranje liste fajlova\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Naziv foldera ne može biti prazan.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Početak\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Izmenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premesti\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premesti u {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naziv\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novi folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Naziv novog foldera\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Bez fajlova\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nema fajlova koji zadovoljavaju uslove filtera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nema takvih fajlova\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Skorašnje\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izaberite sve stavke\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izaberite stavku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izaberite red za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veličina\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Vrati\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Otpremite sadržaj ili sinhronizujte sa svojim uređajima!\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" är ett ogiltigt mappnamn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" är inte ett tillåtet mappnamn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" är inte tillåtet i ett mappnamn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alla filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Välj\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Välj {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Välj %n fil\", \"Välj %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiera\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiera till {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunde inte skapa den nya mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunde inte ladda filinställningar\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunde inte ladda läsa in filvyer\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Skapa katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell vyväljare\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer och mappar som du markerar som favorit kommer att visas här.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer och mappar som du nyligen ändrat kommer att visas här.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrera fillistan\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappnamnet får inte vara tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ändrad\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytta till {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Namn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mapp\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappnamn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Inga filer här\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Inga filer som matchar ditt filter hittades.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Inga matchande filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nyligen\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Välj alla poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Välj post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Välj raden för {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Storlek\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ångra\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Ladda upp lite innehåll eller synkronisera med dina enheter!\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"செயல்தவிர்\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"เลิกทำ\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" geçersiz bir klasör adı.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" izin verilen bir klasör adı değil'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" karakteri klasör adında kullanılamaz.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tüm dosyalar\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seçin\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} seçin\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n dosya seçin\", \"%n dosya seçin\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopyala\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} üzerine kopyala\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Yeni klasör oluşturulamadı\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dosyalar uygulamasının ayarları yüklenemedi\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dosyalar uygulamasının görünümleri yüklenemedi\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Klasör oluştur\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Geçerli görünüm seçici\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Sık kullanılanlar\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dosya listesini süz\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Klasör adı boş olamaz.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Giriş\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Değiştirilme\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Taşı\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} üzerine taşı\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ad\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Yeni klasör\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Yeni klasör adı\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Burada herhangi bir dosya yok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Süzgece uyan bir dosya bulunamadı.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Eşleşen bir dosya yok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Son kullanılanlar\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tüm kayıtları seç\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Kaydı seç\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} satırını seçin\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Boyut\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Geri al\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" є недійсною назвою для каталогу.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" не є дозволеною назвою для каталогу.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" не дозволено у назві каталогу.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Всі файли\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Вибрати\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Вибрати {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Вибрати %n файл\", \"Вибрати %n файли\", \"Вибрати %n файлів\", \"Вибрати %n файлів\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копіювати\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копіювати до {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не вдалося створити новий каталог\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не вдалося завантажити налаштування файлів\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не вдалося завантажити подання файлів\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Створити каталог\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Вибір подання\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Із зірочкою\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які ви позначите зірочкою.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які було нещодавно змінено.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фільтрувати список файлів\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ім'я каталогу не може бути порожнім.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Домівка\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Змінено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Перемістити\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перемістити до {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ім'я\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новий\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новий каталог\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ім'я нового каталогу\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Тут відсутні файли\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Відсутні збіги за фільтром.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Відсутні збіги файлів.\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Останні\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Вибрати всі записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Вибрати запис\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Вибрати рядок для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Розмір\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Повернути\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Завантажте вміст або синхронізуйте з вашим пристроєм!\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Trần Đình Tuyển, 2024\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTran Duc, 2024\\nTrần Đình Tuyển, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Trần Đình Tuyển, 2024\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" là tên thư mục không hợp lệ.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"1{name}\"không phải là tên thư mục được cho phép'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\"không được phép đặt trong tên thư mục.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tất cả tệp\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Chọn\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Chọn {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Chọn %n tệp\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Sao chép\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Sao chép đến {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Không thể tạo thư mục mới\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Không thể tải tập tin cài đặt\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Không thể tải xuống tệp xem\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Tạo thư mục\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Hiện tại chế độ xem của bộ chọn\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Yêu cầu thích\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter list file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Thư mục tên không được để trống.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Trang chủ\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Đã sửa đổi\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Di chuyển\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Di chuyển đến{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Tên\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Mới\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New thư mục\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New thư mục tên\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No file at here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Không tìm thấy tệp nào phù hợp với bộ lọc của bạn.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No file phù hợp\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gần đây\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Choose all items\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Chọn mục nhập\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Choose hang cho{nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Kích cỡ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Hoàn tác\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ruijian Deng, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nken, 2023\\nEric, 2023\\nPhonebook3599, 2024\\nRuijian Deng, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ruijian Deng, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"“{name}”是无效的文件夹名称。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"“{name}”不是允许的文件夹名称\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"文件夹名称中不允许包含“/”。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有文件\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"选择\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"选择 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"选择 %n 个文件\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"复制\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"复制到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"无法创建新文件夹\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"无法加载文件设置\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"无法加载文件视图\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"创建目录\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"当前视图选择器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最爱\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您标记为最爱的文件与文件夹会显示在这里\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的文件与文件夹会显示在这里\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"过滤文件列表\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"文件夹名称不能为空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"主目录\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移动\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移动至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名称\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新文件夹\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新文件夹名称\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此处无文件\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您过滤条件的文件\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"无符合的文件\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"选择所有条目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"选择条目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"选择 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\" 撤消\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上传一些项目或与您的设备同步!\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['資料夾名稱中不允許使用 \"/\"。'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"選擇 %n 個檔案\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"無法載入檔案設定\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"無法載入文件視圖\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"資料夾名稱不能為空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"首頁\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"還原\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2023\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\n黃柏諺 <s8321414@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid file name.': { \"msgid\": '\"{name}\" is an invalid file name.', \"msgstr\": [\"「{name}」是無效的檔案名稱。\"] }, '\"{name}\" is not an allowed filetype': { \"msgid\": '\"{name}\" is not an allowed filetype', \"msgstr\": [\"「{name}」並非允許的檔案類型\"] }, '\"/\" is not allowed inside a file name.': { \"msgid\": '\"/\" is not allowed inside a file name.', \"msgstr\": [\"檔案名稱中不允許使用「/」。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"File name cannot be empty.\": { \"msgid\": \"File name cannot be empty.\", \"msgstr\": [\"檔案名稱不能為空。\"] }, \"Filepicker sections\": { \"msgid\": \"Filepicker sections\", \"msgstr\": [\"檔案挑選器選取\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"家\"] }, \"Mime type {mime}\": { \"msgid\": \"Mime type {mime}\", \"msgstr\": [\"Mime type {mime}\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"復原\"] }, \"unknown\": { \"msgid\": \"unknown\", \"msgstr\": [\"未知\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zu_ZA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zu_ZA\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zu_ZA\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar ToastType = /* @__PURE__ */ ((ToastType2) => {\n ToastType2[\"ERROR\"] = \"toast-error\";\n ToastType2[\"WARNING\"] = \"toast-warning\";\n ToastType2[\"INFO\"] = \"toast-info\";\n ToastType2[\"SUCCESS\"] = \"toast-success\";\n ToastType2[\"PERMANENT\"] = \"toast-error\";\n ToastType2[\"UNDO\"] = \"toast-undo\";\n return ToastType2;\n})(ToastType || {});\nconst TOAST_ARIA_LIVE_OFF = \"off\";\nconst TOAST_ARIA_LIVE_POLITE = \"polite\";\nconst TOAST_ARIA_LIVE_ASSERTIVE = \"assertive\";\nvar ToastAriaLive = /* @__PURE__ */ ((ToastAriaLive2) => {\n ToastAriaLive2[ToastAriaLive2[\"OFF\"] = TOAST_ARIA_LIVE_OFF] = \"OFF\";\n ToastAriaLive2[ToastAriaLive2[\"POLITE\"] = TOAST_ARIA_LIVE_POLITE] = \"POLITE\";\n ToastAriaLive2[ToastAriaLive2[\"ASSERTIVE\"] = TOAST_ARIA_LIVE_ASSERTIVE] = \"ASSERTIVE\";\n return ToastAriaLive2;\n})(ToastAriaLive || {});\nconst TOAST_UNDO_TIMEOUT = 1e4;\nconst TOAST_DEFAULT_TIMEOUT = 7e3;\nconst TOAST_PERMANENT_TIMEOUT = -1;\nfunction showMessage(data, options) {\n var _a;\n options = Object.assign({\n timeout: TOAST_DEFAULT_TIMEOUT,\n isHTML: false,\n type: void 0,\n // An undefined selector defaults to the body element\n selector: void 0,\n onRemove: () => {\n },\n onClick: void 0,\n close: true\n }, options);\n if (typeof data === \"string\" && !options.isHTML) {\n const element = document.createElement(\"div\");\n element.innerHTML = data;\n data = element.innerText;\n }\n let classes = (_a = options.type) != null ? _a : \"\";\n if (typeof options.onClick === \"function\") {\n classes += \" toast-with-click \";\n }\n const isNode = data instanceof Node;\n let ariaLive = ToastAriaLive.POLITE;\n if (options.ariaLive) {\n ariaLive = options.ariaLive;\n } else if (options.type === \"toast-error\" || options.type === \"toast-undo\") {\n ariaLive = ToastAriaLive.ASSERTIVE;\n }\n const toast = Toastify({\n [!isNode ? \"text\" : \"node\"]: data,\n duration: options.timeout,\n callback: options.onRemove,\n onClick: options.onClick,\n close: options.close,\n gravity: \"top\",\n selector: options.selector,\n position: \"right\",\n backgroundColor: \"\",\n className: \"dialogs \" + classes,\n escapeMarkup: !options.isHTML,\n ariaLive\n });\n toast.showToast();\n return toast;\n}\nfunction showError(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-error\"\n /* ERROR */\n });\n}\nfunction showWarning(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-warning\"\n /* WARNING */\n });\n}\nfunction showInfo(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-info\"\n /* INFO */\n });\n}\nfunction showSuccess(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-success\"\n /* SUCCESS */\n });\n}\nfunction showUndo(text, onUndo, options) {\n if (!(onUndo instanceof Function)) {\n throw new Error(\"Please provide a valid onUndo method\");\n }\n let toast;\n options = Object.assign(options || {}, {\n // force 10 seconds of timeout\n timeout: TOAST_UNDO_TIMEOUT,\n // remove close button\n close: false\n });\n const undoContent = document.createElement(\"span\");\n const undoButton = document.createElement(\"button\");\n undoContent.classList.add(\"toast-undo-container\");\n undoButton.classList.add(\"toast-undo-button\");\n undoButton.innerText = t(\"Undo\");\n undoContent.innerText = text;\n undoContent.appendChild(undoButton);\n undoButton.addEventListener(\"click\", function(event) {\n event.stopPropagation();\n onUndo(event);\n if ((toast == null ? void 0 : toast.hideToast) instanceof Function) {\n toast.hideToast();\n }\n });\n toast = showMessage(undoContent, {\n ...options,\n type: \"toast-undo\"\n /* UNDO */\n });\n return toast;\n}\nfunction normalizeComponent(scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render) {\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nexport {\n ToastAriaLive as T,\n normalizeComponent as a,\n ToastType as b,\n TOAST_UNDO_TIMEOUT as c,\n TOAST_DEFAULT_TIMEOUT as d,\n TOAST_PERMANENT_TIMEOUT as e,\n TOAST_ARIA_LIVE_OFF as f,\n TOAST_ARIA_LIVE_POLITE as g,\n TOAST_ARIA_LIVE_ASSERTIVE as h,\n showSuccess as i,\n showWarning as j,\n showInfo as k,\n showError as l,\n showUndo as m,\n n,\n showMessage as s,\n t\n};\n","import { basename } from \"path\";\nimport Vue, { toRaw, defineComponent, onMounted, onUnmounted } from \"vue\";\nimport { t, n, a as normalizeComponent } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport { h, f, g, d, e, c, T, b, l, k, s, i, m, j } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport NcDialog from \"@nextcloud/vue/dist/Components/NcDialog.js\";\nimport NcNoteCard from \"@nextcloud/vue/dist/Components/NcNoteCard.js\";\nconst spawnDialog = (dialog, props, onClose = () => {\n}) => {\n const el = document.createElement(\"div\");\n const container = document.querySelector(props == null ? void 0 : props.container) || document.body;\n container.appendChild(el);\n const vue = new Vue({\n el,\n name: \"VueDialogHelper\",\n render: (h2) => h2(dialog, {\n props,\n on: {\n close: (...rest) => {\n onClose(...rest.map((v) => toRaw(v)));\n vue.$destroy();\n }\n }\n })\n });\n return vue;\n};\nconst IconMove = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-move\" viewBox=\"0 0 24 24\"><path d=\"M14,18V15H10V11H14V8L19,13M20,6H12L10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6Z\" /></svg>';\nconst IconCopy = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-multiple\" viewBox=\"0 0 24 24\"><path d=\"M22,4H14L12,2H6A2,2 0 0,0 4,4V16A2,2 0 0,0 6,18H22A2,2 0 0,0 24,16V6A2,2 0 0,0 22,4M2,6H0V11H0V20A2,2 0 0,0 2,22H20V20H2V6Z\" /></svg>';\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nvar FilePickerType = /* @__PURE__ */ ((FilePickerType2) => {\n FilePickerType2[FilePickerType2[\"Choose\"] = 1] = \"Choose\";\n FilePickerType2[FilePickerType2[\"Move\"] = 2] = \"Move\";\n FilePickerType2[FilePickerType2[\"Copy\"] = 3] = \"Copy\";\n FilePickerType2[FilePickerType2[\"CopyMove\"] = 4] = \"CopyMove\";\n FilePickerType2[FilePickerType2[\"Custom\"] = 5] = \"Custom\";\n return FilePickerType2;\n})(FilePickerType || {});\nclass FilePickerClosed extends Error {\n}\nclass FilePicker {\n constructor(title, multiSelect, mimeTypeFilter, directoriesAllowed, buttons, path, filter, container, disabledNavigation = false) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\");\n __publicField(this, \"mimeTypeFilter\");\n __publicField(this, \"directoriesAllowed\");\n __publicField(this, \"buttons\");\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\");\n this.title = title;\n this.multiSelect = multiSelect;\n this.mimeTypeFilter = mimeTypeFilter;\n this.directoriesAllowed = directoriesAllowed;\n this.path = path;\n this.filter = filter;\n this.buttons = buttons;\n this.container = container;\n this.disabledNavigation = disabledNavigation;\n }\n /**\n * Pick files using the FilePicker\n *\n * @return Promise with array of picked files or rejected promise on close without picking\n */\n async pick() {\n const { FilePickerVue } = await import(\"./chunks/index-D5FJasts.mjs\");\n return new Promise((resolve, reject) => {\n spawnDialog(FilePickerVue, {\n allowPickDirectory: this.directoriesAllowed,\n buttons: this.buttons,\n container: this.container,\n name: this.title,\n path: this.path,\n mimetypeFilter: this.mimeTypeFilter,\n multiselect: this.multiSelect,\n filterFn: this.filter,\n disabledNavigation: this.disabledNavigation\n }, (...rest) => {\n var _a;\n const [nodes] = rest;\n if (!Array.isArray(nodes) || nodes.length === 0) {\n reject(new FilePickerClosed(\"FilePicker: No nodes selected\"));\n } else {\n if (this.multiSelect) {\n resolve(nodes.map((node) => node.path));\n } else {\n resolve(((_a = nodes[0]) == null ? void 0 : _a.path) || \"/\");\n }\n }\n });\n });\n }\n}\nclass FilePickerBuilder {\n /**\n * Construct a new FilePicker\n *\n * @param title Title of the FilePicker\n */\n constructor(title) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\", false);\n __publicField(this, \"mimeTypeFilter\", []);\n __publicField(this, \"directoriesAllowed\", false);\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"buttons\", []);\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\", false);\n this.title = title;\n }\n /**\n * Set the container where the FilePicker will be mounted\n * By default 'body' is used\n *\n * @param container The dialog container\n */\n setContainer(container) {\n this.container = container;\n return this;\n }\n /**\n * Enable or disable picking multiple files\n *\n * @param ms True to enable picking multiple files, false otherwise\n */\n setMultiSelect(ms) {\n this.multiSelect = ms;\n return this;\n }\n /**\n * Add allowed MIME type\n *\n * @param filter MIME type to allow\n */\n addMimeTypeFilter(filter) {\n this.mimeTypeFilter.push(filter);\n return this;\n }\n /**\n * Set allowed MIME types\n *\n * @param filter Array of allowed MIME types\n */\n setMimeTypeFilter(filter) {\n this.mimeTypeFilter = filter;\n return this;\n }\n /**\n * Add a button to the FilePicker\n * Note: This overrides any previous `setButtonFactory` call\n *\n * @param button The button\n */\n addButton(button) {\n if (typeof this.buttons === \"function\") {\n console.warn(\"FilePicker buttons were set to factory, now overwritten with button object.\");\n this.buttons = [];\n }\n this.buttons.push(button);\n return this;\n }\n /**\n * Set the button factory which is used to generate buttons from current view, path and selected nodes\n * Note: This overrides any previous `addButton` call\n *\n * @param factory The button factory\n */\n setButtonFactory(factory) {\n this.buttons = factory;\n return this;\n }\n /**\n * Set FilePicker type based on legacy file picker types\n * @param type The legacy filepicker type to emulate\n * @deprecated Use `addButton` or `setButtonFactory` instead as with setType you do not know which button was pressed\n */\n setType(type) {\n this.buttons = (nodes, path) => {\n var _a, _b, _c;\n const buttons = [];\n const node = ((_b = (_a = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _a.attributes) == null ? void 0 : _b.displayName) || ((_c = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _c.basename);\n const target = node || basename(path);\n if (type === 1) {\n let label = t(\"Choose\");\n if (nodes.length === 1) {\n label = t(\"Choose {file}\", { file: node });\n } else if (this.multiSelect) {\n label = n(\"Choose %n file\", \"Choose %n files\", nodes.length);\n }\n buttons.push({\n callback: () => {\n },\n type: \"primary\",\n label\n });\n }\n if (type === 4 || type === 3) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Copy to {target}\", { target }) : t(\"Copy\"),\n type: \"primary\",\n icon: IconCopy\n });\n }\n if (type === 2 || type === 4) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Move to {target}\", { target }) : t(\"Move\"),\n type: type === 2 ? \"primary\" : \"secondary\",\n icon: IconMove\n });\n }\n return buttons;\n };\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n allowDirectories(allow = true) {\n this.directoriesAllowed = allow;\n return this;\n }\n /**\n * Set starting path of the FilePicker\n *\n * @param path Path to start from picking\n */\n startAt(path) {\n this.path = path;\n return this;\n }\n /**\n * Add filter function to filter file list of FilePicker\n *\n * @param filter Filter function to apply\n */\n setFilter(filter) {\n this.filter = filter;\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n disableNavigation() {\n this.disabledNavigation = true;\n return this;\n }\n /**\n * Construct the configured FilePicker\n */\n build() {\n return new FilePicker(\n this.title,\n this.multiSelect,\n this.mimeTypeFilter,\n this.directoriesAllowed,\n this.buttons,\n this.path,\n this.filter,\n this.container,\n this.disabledNavigation\n );\n }\n}\nfunction getFilePickerBuilder(title) {\n return new FilePickerBuilder(title);\n}\nvar DialogSeverity = /* @__PURE__ */ ((DialogSeverity2) => {\n DialogSeverity2[\"Info\"] = \"info\";\n DialogSeverity2[\"Warning\"] = \"warning\";\n DialogSeverity2[\"Error\"] = \"error\";\n return DialogSeverity2;\n})(DialogSeverity || {});\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"GenericDialog\",\n props: {\n name: null,\n text: null,\n html: null,\n buttons: null,\n severity: null\n },\n setup(__props) {\n const props = __props;\n const handleUnload = () => \"\".concat(props.name, \": \").concat(props.text);\n onMounted(() => window.addEventListener(\"unload\", handleUnload));\n onUnmounted(() => window.removeEventListener(\"unload\", handleUnload));\n return { __sfc: true, props, handleUnload, NcDialog, NcNoteCard };\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(_setup.NcDialog, { attrs: { \"dialog-classes\": \"nc-generic-dialog\", \"buttons\": _vm.buttons, \"name\": _vm.name, \"message\": _vm.text }, on: { \"update:open\": function($event) {\n return _vm.$emit(\"close\");\n } } }, [_vm.severity ? _c(_setup.NcNoteCard, { attrs: { \"type\": _vm.severity } }, [_c(\"p\", { domProps: { \"textContent\": _vm._s(_vm.text) } })]) : _vm._e(), _vm.html ? _c(\"div\", { domProps: { \"innerHTML\": _vm._s(_vm.html) } }) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst GenericDialog = __component__.exports;\nvar __typeError = (msg) => {\n throw TypeError(msg);\n};\nvar __accessCheck = (obj, member, msg) => member.has(obj) || __typeError(\"Cannot \" + msg);\nvar __privateGet = (obj, member, getter) => (__accessCheck(obj, member, \"read from private field\"), member.get(obj));\nvar __privateAdd = (obj, member, value) => member.has(obj) ? __typeError(\"Cannot add the same private member more than once\") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);\nvar __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, \"write to private field\"), member.set(obj, value), value);\nvar _name, _text, _buttons, _severity, _dialog, _html, _severity2, _text2, _name2, _buttons2;\nclass Dialog {\n constructor(name, text, buttons = [], severity) {\n __privateAdd(this, _name);\n __privateAdd(this, _text);\n __privateAdd(this, _buttons);\n __privateAdd(this, _severity);\n __privateAdd(this, _dialog);\n __privateAdd(this, _html);\n __privateSet(this, _name, name);\n __privateSet(this, _text, text);\n __privateSet(this, _buttons, buttons);\n __privateSet(this, _severity, severity);\n __privateSet(this, _dialog, void 0);\n __privateSet(this, _html, void 0);\n }\n /**\n * @deprecated DO NOT USE! It will be removed in the near future!\n * @param html HTML content\n */\n setHTML(html) {\n __privateSet(this, _html, html);\n return this;\n }\n /**\n * Spawn and show the dialog - if already open the previous instance will be destroyed\n * @return Promise that resolves when the dialog is answered successfully and rejects on close\n */\n show() {\n if (__privateGet(this, _dialog)) {\n __privateGet(this, _dialog).$destroy();\n }\n return new Promise((resolve) => {\n __privateSet(this, _dialog, spawnDialog(\n GenericDialog,\n {\n buttons: __privateGet(this, _buttons),\n name: __privateGet(this, _name),\n text: __privateGet(this, _text),\n severity: __privateGet(this, _severity),\n html: __privateGet(this, _html)\n },\n resolve\n ));\n });\n }\n /**\n * Hide and destroy the current dialog instance\n */\n hide() {\n var _a;\n (_a = __privateGet(this, _dialog)) == null ? void 0 : _a.$destroy();\n }\n}\n_name = /* @__PURE__ */ new WeakMap();\n_text = /* @__PURE__ */ new WeakMap();\n_buttons = /* @__PURE__ */ new WeakMap();\n_severity = /* @__PURE__ */ new WeakMap();\n_dialog = /* @__PURE__ */ new WeakMap();\n_html = /* @__PURE__ */ new WeakMap();\nclass DialogBuilder {\n constructor(name) {\n __privateAdd(this, _severity2);\n __privateAdd(this, _text2);\n __privateAdd(this, _name2);\n __privateAdd(this, _buttons2);\n __privateSet(this, _severity2, void 0);\n __privateSet(this, _text2, \"\");\n __privateSet(this, _name2, name != null ? name : \"\");\n __privateSet(this, _buttons2, []);\n }\n /**\n * Set dialog name\n * @param name The name or headline of the dialog\n */\n setName(name) {\n __privateSet(this, _name2, name);\n return this;\n }\n /**\n * Set the dialog text\n * @param text Main text of the dialog\n */\n setText(text) {\n __privateSet(this, _text2, text);\n return this;\n }\n /**\n * Set the severity of the dialog\n * @param severity Severity of the dialog\n */\n setSeverity(severity) {\n __privateSet(this, _severity2, severity);\n return this;\n }\n /**\n * Set buttons from array\n * @param buttons Either an array of dialog buttons\n */\n setButtons(buttons) {\n if (__privateGet(this, _buttons2).length > 0) {\n console.warn(\"[@nextcloud/dialogs] Dialog buttons are already set - this overrides previous buttons.\");\n }\n __privateSet(this, _buttons2, buttons);\n return this;\n }\n /**\n * Add a single button\n * @param button Button to add\n */\n addButton(button) {\n __privateGet(this, _buttons2).push(button);\n return this;\n }\n build() {\n return new Dialog(__privateGet(this, _name2), __privateGet(this, _text2), __privateGet(this, _buttons2), __privateGet(this, _severity2));\n }\n}\n_severity2 = /* @__PURE__ */ new WeakMap();\n_text2 = /* @__PURE__ */ new WeakMap();\n_name2 = /* @__PURE__ */ new WeakMap();\n_buttons2 = /* @__PURE__ */ new WeakMap();\nfunction getDialogBuilder(name) {\n return new DialogBuilder(name);\n}\nexport {\n Dialog,\n DialogBuilder,\n DialogSeverity,\n FilePicker,\n FilePickerBuilder,\n FilePickerClosed,\n FilePickerType,\n h as TOAST_ARIA_LIVE_ASSERTIVE,\n f as TOAST_ARIA_LIVE_OFF,\n g as TOAST_ARIA_LIVE_POLITE,\n d as TOAST_DEFAULT_TIMEOUT,\n e as TOAST_PERMANENT_TIMEOUT,\n c as TOAST_UNDO_TIMEOUT,\n T as ToastAriaLive,\n b as ToastType,\n getDialogBuilder,\n getFilePickerBuilder,\n l as showError,\n k as showInfo,\n s as showMessage,\n i as showSuccess,\n m as showUndo,\n j as showWarning,\n spawnDialog\n};\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"918\":\"42dc18350820a2df996f\",\"1902\":\"15c69743cf3911d7117d\",\"2400\":\"e05bb23ce5cd8e8e3b27\",\"5606\":\"f972dba6ecca95233f02\",\"6429\":\"89166d2636e7cbd574e0\",\"6880\":\"367ddfc725b6ef2ee02b\",\"8066\":\"f1f0a3884f0b92377e6a\"}[chunkId] + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1171;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t1171: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(33001)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","getLoggerBuilder","setApp","detectUser","build","isTrashbinEnabled","_getCapabilities","getCapabilities","files","undelete","canUnshareOnly","nodes","every","node","attributes","canDisconnectOnly","displayName","view","t","id","hasSharedItems","some","hasDeleteItems","isMixedUnshareAndDelete","type","FileType","File","isAllFiles","Folder","isAllFolders","askConfirmation","async","message","n","count","Promise","resolve","window","OC","dialogs","confirmDestructive","YES_NO_BUTTONS","confirm","confirmClasses","cancel","decision","deleteNode","axios","delete","encodedSource","queue","PQueue","concurrency","action","FileAction","iconSvgInline","enabled","map","permissions","permission","Boolean","Permission","DELETE","exec","showInfo","error","logger","source","execBatch","all","promises","add","order","triggerDownload","url","hiddenElement","document","createElement","download","href","click","longestCommonPath","first","second","firstSegments","split","filter","secondSegments","base","index","segment","entries","sep","downloadNodes","filteredNodes","find","other","path","startsWith","dirname","filenames","secret","Math","random","toString","substring","generateUrl","JSON","stringify","isDownloadable","READ","_node$attributes$shar","_shareAttributes$find","shareAttributes","parse","downloadAttribute","attribute","scope","key","default","DefaultType","DEFAULT","_node$root","root","dir","fill","openLocalClient","link","generateOcsUrl","_getCurrentUser","result","post","uid","getCurrentUser","location","host","encodePath","data","ocs","token","showError","UPDATE","localEditCallback","callbackCalled","DialogBuilder","setName","setText","setButtons","label","callback","icon","show","then","confirmLocalEditDialog","openLocally","OCA","Viewer","open","attemptOpenLocalClient","shouldFavorite","favorite","favoriteNode","willFavorite","tags","TAG_FAVORITE","Vue","StarSvg","_node$root$startsWith","NONE","MoveCopyAction","canMove","reduce","min","ALL","canCopy","_node$attributes","canDownload","resultToNode","davResultToNode","client","davGetClient","getContents","davRootPath","controller","AbortController","propfindPayload","davGetDefaultPropfind","CancelablePromise","reject","onCancel","abort","contentsResponse","getDirectoryContents","details","includeSelf","signal","contents","filename","Error","folder","basename","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","destination","method","overwrite","NodeStatus","LOADING","actionFinished","mode","text","toast","isHTML","timeout","TOAST_PERMANENT_TIMEOUT","onRemove","_toast","hideToast","createLoadingNotification","copySuffix","currentPath","join","destinationPath","target","otherNodes","getUniqueName","suffix","ignoreFileExtension","copyFile","stat","hasConflict","selected","renamed","openConflictPicker","moveFile","_error$response","_parser$parseFromStri","parser","DOMParser","response","parseFromString","querySelector","textContent","AxiosError","_error$response2","_error$response3","_error$response4","status","debug","openFilePickerForAction","promise","withResolvers","fileIDs","fileid","getFilePickerBuilder","allowDirectories","setFilter","includes","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","selection","buttons","dirnames","paths","escape","sanitize","CopyIconSvg","FolderMoveSvg","pick","catch","FilePickerClosed","e","displayname","FolderSvg","isDavRessource","OCP","Files","Router","goToRoute","HIDDEN","openfile","InformationSvg","_window","_ref","_nodes$0$root","Sidebar","setActiveTab","query","_defineComponent","__name","props","defaultName","String","otherNames","emits","setup","__props","localDefaultName","ref","nameInput","formElement","validity","focusInput","nextTick","_nameInput$value","input","value","$el","extname","focus","setSelectionRange","watch","trim","watchEffect","_nameInput$value2","validateFilename","InvalidFilenameError","reason","InvalidFilenameErrorReason","Character","char","ReservedName","Extension","match","extension","getFilenameValidity","setCustomValidity","reportValidity","onMounted","__sfc","submit","_formElement$value","requestSubmit","NcButton","NcDialog","NcTextField","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","_vm","_c","_self","_setup","_setupProxy","attrs","$event","scopedSlots","_u","_v","_s","proxy","staticClass","preventDefault","newNodeName","folderContent","labels","contentNames","spawnDialog","NewNodeDialog","folderName","entry","CREATE","handler","content","_getCurrentUser2","_context$attributes","_context$attributes2","_context$attributes3","encodeURIComponent","headers","Overwrite","parseInt","createNewFolder","mtime","Date","owner","showSuccess","templatesPath","loadState","directory","templatePath","copySystemTemplates","info","templates_path","initTemplatesFolder","removeNewFileMenuEntry","TemplatePickerVue","defineAsyncComponent","TemplatePicker","getTemplatePicker","mountingPoint","body","appendChild","render","h","parent","methods","$refs","picker","el","rootPath","generateRemoteUrl","filesContents","getFavoriteNodes","davRemoteURL","generateFavoriteFolderView","View","generateIdFromPath","params","columns","str","hash","charCodeAt","hashCode","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","pinia","createPinia","lastTwoWeeksTimestamp","round","now","getBaseUrl","currUserID","isPersonalFile","mountType","registerFileAction","deleteAction","downloadAction","editLocallyAction","favoriteAction","moveOrCopyAction","openFolderAction","openInFilesAction","renameAction","sidebarAction","viewInFolderAction","addNewFileMenuEntry","newFolderEntry","newTemplatesFolder","forEach","provider","app","iconClass","templatePicker","favoriteFolders","favoriteFoldersViews","Navigation","getNavigation","register","caption","emptyTitle","emptyCaption","subscribe","addToFavorites","_node$root2","removePathFromFavorites","updateNodeFromFavorites","updateAndSortViews","sort","a","b","localeCompare","getLanguage","ignorePunctuation","newFavoriteFolder","findIndex","splice","remove","favoriteFolder","registerFavoritesView","defaultSortKey","store","userConfigStore","defineStore","state","actions","onUpdate","update","put","_initialized","useUserConfigStore","filterHidden","search","davGetRecentSearch","aborted","results","getFiles","c","navigator","addEventListener","noRewrite","registration","serviceWorker","registerDavProperty","nc","___CSS_LOADER_EXPORT___","denyList","Set","code","def","x","d","RC","max","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","start","report","progress","timestamp","deltaTimestamp","currentRate","reset","estimate","Infinity","estimatedTime","CancelError","constructor","super","isCanceled","promiseState","freeze","pending","Symbol","canceled","resolved","rejected","PCancelable","userFunction","arguments_","executor","description","defineProperties","shouldReject","get","set","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","config","indexOf","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","Number","valueOf","exponentialDelay","retryNumber","delayFactor","calculatedDelay","delay","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","resetLastRequestTime","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","use","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","defaults","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","abortListener","clearTimeout","setTimeout","removeEventListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","linearDelay","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","Destination","getChunk","file","size","getMaxChunksSize","fileSize","maxChunkSize","appConfig","max_chunk_size","minimumChunkSize","ceil","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","getTime","isFileSystemFileEntry","o","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","Directory","_originalName","_path","_children","lastModified","Map","children","sum","latest","originalName","from","values","webkitRelativePath","getChild","addChildren","addChild","FileSystemDirectoryEntry","reader","createReader","readEntries","child","filePath","relPath","gtBuilder","detectLocale","addTranslation","locale","json","gt","ngettext","bind","gettext","Status","Uploader","_destinationFolder","_isPublic","_customHeaders","_uploadQueue","_jobQueue","chunked_upload","max_parallel_count","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","user","maxChunksSize","customHeaders","structuredClone","setCustomHeader","deleteCustomerHeader","clear","pause","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","warn","batchUpload","files2","rootFolder","replace","UPLOADING","uploadDirectory","uploads","FINISHED","FAILED","createDirectory","folderPath","normalize","currentUpload","selectedForUpload","directories","at","upload","flat","fileHandle","origin","URL","encodedDestinationFile","resolve2","disabledChunkUpload","blob","bytes","floor","tempUrl","initChunkWorkspace","chunksQueue","chunk","bufferStart","bufferEnd","onIdle","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","_compiled","_scopeId","IconCancel","title","fillColor","_b","$emit","$attrs","_e","IconFolderUpload","IconPlus","IconUpload","showInvalidFilenameDialog","InvalidFilenameDialog","rest","skip","rename","getConflicts","_sfc_main","extend","components","NcActionButton","NcActionCaption","NcActionSeparator","NcActions","NcIconSvgWrapper","NcProgressBar","accept","disabled","multiple","noMenu","allowFolders","Function","forbiddenCharacters","progressTimeId","eta","timeLeft","newFileMenuEntries","uploadManager","getUploader","computed","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","isPaused","PAUSED","buttonLabel","buttonName","immediate","setDestination","updateStatus","beforeMount","onUploadCompletion","onClick","getContent","onTriggerPick","uploadFolders","webkitdirectory","$nextTick","isArray","onPick","contentsCallback","conflicts","recursive","filesToUpload","newName","defineProperty","resetForm","form","date","setSeconds","time","toISOString","seconds","forceRecreate","_nc_uploader","ConflictPicker","recursiveUpload","$destroy","parentNode","removeChild","$mount","class","staticStyle","_l","directives","rawName","expression","ToastAriaLive","ToastAriaLive2","TOAST_DEFAULT_TIMEOUT","showMessage","_a","assign","selector","close","element","innerHTML","innerText","classes","isNode","Node","ariaLive","POLITE","ASSERTIVE","duration","gravity","position","backgroundColor","className","escapeMarkup","showToast","showWarning","dialog","onClose","container","vue","h2","v","html","severity","handleUnload","_sfc_render","NcNoteCard","domProps","_sfc_staticRenderFns","TimeoutError","AbortError","getDOMException","errorMessage","globalThis","DOMException","getAbortedReason","PriorityQueue","enqueue","run","priority","array","comparator","step","trunc","it","lowerBound","dequeue","item","shift","carryoverConcurrencyCount","intervalCap","POSITIVE_INFINITY","interval","autoStart","queueClass","isFinite","throwOnTimeout","clearInterval","canInitializeInterval","job","setInterval","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","fallback","customTimers","timer","cancelablePromise","sign","timeoutError","pTimeout","race","addAll","functions","onEmpty","onSizeLessThan","limit","sizeBy","Axios","CanceledError","isCancel","CancelToken","VERSION","Cancel","isAxiosError","spread","toFormData","AxiosHeaders","HttpStatusCode","formToJSON","getAdapter","mergeConfig","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","m","O","chunkIds","notFulfilled","fulfilled","keys","r","getter","__esModule","definition","enumerable","f","chunkId","u","g","obj","prop","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","charset","setAttribute","src","onScriptComplete","prev","onerror","onload","doneFns","head","toStringTag","nmd","scriptUrl","importScripts","currentScript","tagName","toUpperCase","test","p","baseURI","self","installedChunks","installedChunkData","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
diff --git a/dist/files-main.js b/dist/files-main.js
index 21f26d7d1eb..501e1c6346b 100644
--- a/dist/files-main.js
+++ b/dist/files-main.js
@@ -1,3 +1,3 @@
/*! For license information please see files-main.js.LICENSE.txt */
-(()=>{var e,s,n,i={9052:e=>{"use strict";var t=Object.prototype.hasOwnProperty,s="~";function n(){}function i(e,t,s){this.fn=e,this.context=t,this.once=s||!1}function a(e,t,n,a,r){if("function"!=typeof n)throw new TypeError("The listener must be a function");var o=new i(n,a||e,r),l=s?s+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function r(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function o(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(s=!1)),o.prototype.eventNames=function(){var e,n,i=[];if(0===this._eventsCount)return i;for(n in e=this._events)t.call(e,n)&&i.push(s?n.slice(1):n);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(e)):i},o.prototype.listeners=function(e){var t=s?s+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,r=new Array(a);i<a;i++)r[i]=n[i].fn;return r},o.prototype.listenerCount=function(e){var t=s?s+e:e,n=this._events[t];return n?n.fn?1:n.length:0},o.prototype.emit=function(e,t,n,i,a,r){var o=s?s+e:e;if(!this._events[o])return!1;var l,d,m=this._events[o],c=arguments.length;if(m.fn){switch(m.once&&this.removeListener(e,m.fn,void 0,!0),c){case 1:return m.fn.call(m.context),!0;case 2:return m.fn.call(m.context,t),!0;case 3:return m.fn.call(m.context,t,n),!0;case 4:return m.fn.call(m.context,t,n,i),!0;case 5:return m.fn.call(m.context,t,n,i,a),!0;case 6:return m.fn.call(m.context,t,n,i,a,r),!0}for(d=1,l=new Array(c-1);d<c;d++)l[d-1]=arguments[d];m.fn.apply(m.context,l)}else{var g,u=m.length;for(d=0;d<u;d++)switch(m[d].once&&this.removeListener(e,m[d].fn,void 0,!0),c){case 1:m[d].fn.call(m[d].context);break;case 2:m[d].fn.call(m[d].context,t);break;case 3:m[d].fn.call(m[d].context,t,n);break;case 4:m[d].fn.call(m[d].context,t,n,i);break;default:if(!l)for(g=1,l=new Array(c-1);g<c;g++)l[g-1]=arguments[g];m[d].fn.apply(m[d].context,l)}}return!0},o.prototype.on=function(e,t,s){return a(this,e,t,s,!1)},o.prototype.once=function(e,t,s){return a(this,e,t,s,!0)},o.prototype.removeListener=function(e,t,n,i){var a=s?s+e:e;if(!this._events[a])return this;if(!t)return r(this,a),this;var o=this._events[a];if(o.fn)o.fn!==t||i&&!o.once||n&&o.context!==n||r(this,a);else{for(var l=0,d=[],m=o.length;l<m;l++)(o[l].fn!==t||i&&!o[l].once||n&&o[l].context!==n)&&d.push(o[l]);d.length?this._events[a]=1===d.length?d[0]:d:r(this,a)}return this},o.prototype.removeAllListeners=function(e){var t;return e?(t=s?s+e:e,this._events[t]&&r(this,t)):(this._events=new n,this._eventsCount=0),this},o.prototype.off=o.prototype.removeListener,o.prototype.addListener=o.prototype.on,o.prefixed=s,o.EventEmitter=o,e.exports=o},38536:(e,s,n)=>{"use strict";var i={};n.r(i),n.d(i,{exclude:()=>P,extract:()=>_,parse:()=>S,parseUrl:()=>N,pick:()=>U,stringify:()=>F,stringifyUrl:()=>L});var a=n(65899),r=n(21777),o=n(85471);const l=(0,a.Ey)();var d=n(63814);const m="%[a-f0-9]{2}",c=new RegExp("("+m+")|([^%]+?)","gi"),g=new RegExp("("+m+")+","gi");function u(e,t){try{return[decodeURIComponent(e.join(""))]}catch{}if(1===e.length)return e;t=t||1;const s=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],u(s),u(n))}function p(e){try{return decodeURIComponent(e)}catch{let t=e.match(c)||[];for(let s=1;s<t.length;s++)t=(e=u(t,s).join("")).match(c)||[];return e}}function f(e,t){if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===e||""===t)return[];const s=e.indexOf(t);return-1===s?[]:[e.slice(0,s),e.slice(s+t.length)]}function h(e,t){const s={};if(Array.isArray(t))for(const n of t){const t=Object.getOwnPropertyDescriptor(e,n);t?.enumerable&&Object.defineProperty(s,n,t)}else for(const n of Reflect.ownKeys(e)){const i=Object.getOwnPropertyDescriptor(e,n);i.enumerable&&t(n,e[n],e)&&Object.defineProperty(s,n,i)}return s}const v=e=>null==e,w=e=>encodeURIComponent(e).replaceAll(/[!'()*]/g,(e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)),y=Symbol("encodeFragmentIdentifier");function C(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function T(e,t){return t.encode?t.strict?w(e):encodeURIComponent(e):e}function A(e,t){return t.decode?function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return decodeURIComponent(e)}catch{return function(e){const t={"%FE%FF":"��","%FF%FE":"��"};let s=g.exec(e);for(;s;){try{t[s[0]]=decodeURIComponent(s[0])}catch{const e=p(s[0]);e!==s[0]&&(t[s[0]]=e)}s=g.exec(e)}t["%C2"]="�";const n=Object.keys(t);for(const s of n)e=e.replace(new RegExp(s,"g"),t[s]);return e}(e)}}(e):e}function b(e){return Array.isArray(e)?e.sort():"object"==typeof e?b(Object.keys(e)).sort(((e,t)=>Number(e)-Number(t))).map((t=>e[t])):e}function x(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function k(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function _(e){const t=(e=x(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function S(e,t){C((t={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...t}).arrayFormatSeparator);const s=function(e){let t;switch(e.arrayFormat){case"index":return(e,s,n)=>{t=/\[(\d*)]$/.exec(e),e=e.replace(/\[\d*]$/,""),t?(void 0===n[e]&&(n[e]={}),n[e][t[1]]=s):n[e]=s};case"bracket":return(e,s,n)=>{t=/(\[])$/.exec(e),e=e.replace(/\[]$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"colon-list-separator":return(e,s,n)=>{t=/(:list)$/.exec(e),e=e.replace(/:list$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"comma":case"separator":return(t,s,n)=>{const i="string"==typeof s&&s.includes(e.arrayFormatSeparator),a="string"==typeof s&&!i&&A(s,e).includes(e.arrayFormatSeparator);s=a?A(s,e):s;const r=i||a?s.split(e.arrayFormatSeparator).map((t=>A(t,e))):null===s?s:A(s,e);n[t]=r};case"bracket-separator":return(t,s,n)=>{const i=/(\[])$/.test(t);if(t=t.replace(/\[]$/,""),!i)return void(n[t]=s?A(s,e):s);const a=null===s?[]:s.split(e.arrayFormatSeparator).map((t=>A(t,e)));void 0!==n[t]?n[t]=[...n[t],...a]:n[t]=a};default:return(e,t,s)=>{void 0!==s[e]?s[e]=[...[s[e]].flat(),t]:s[e]=t}}}(t),n=Object.create(null);if("string"!=typeof e)return n;if(!(e=e.trim().replace(/^[?#&]/,"")))return n;for(const i of e.split("&")){if(""===i)continue;const e=t.decode?i.replaceAll("+"," "):i;let[a,r]=f(e,"=");void 0===a&&(a=e),r=void 0===r?null:["comma","separator","bracket-separator"].includes(t.arrayFormat)?r:A(r,t),s(A(a,t),r,n)}for(const[e,s]of Object.entries(n))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=k(n,t);else n[e]=k(s,t);return!1===t.sort?n:(!0===t.sort?Object.keys(n).sort():Object.keys(n).sort(t.sort)).reduce(((e,t)=>{const s=n[t];return e[t]=Boolean(s)&&"object"==typeof s&&!Array.isArray(s)?b(s):s,e}),Object.create(null))}function F(e,t){if(!e)return"";C((t={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...t}).arrayFormatSeparator);const s=s=>t.skipNull&&v(e[s])||t.skipEmptyString&&""===e[s],n=function(e){switch(e.arrayFormat){case"index":return t=>(s,n)=>{const i=s.length;return void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[T(t,e),"[",i,"]"].join("")]:[...s,[T(t,e),"[",T(i,e),"]=",T(n,e)].join("")]};case"bracket":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[T(t,e),"[]"].join("")]:[...s,[T(t,e),"[]=",T(n,e)].join("")];case"colon-list-separator":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[T(t,e),":list="].join("")]:[...s,[T(t,e),":list=",T(n,e)].join("")];case"comma":case"separator":case"bracket-separator":{const t="bracket-separator"===e.arrayFormat?"[]=":"=";return s=>(n,i)=>void 0===i||e.skipNull&&null===i||e.skipEmptyString&&""===i?n:(i=null===i?"":i,0===n.length?[[T(s,e),t,T(i,e)].join("")]:[[n,T(i,e)].join(e.arrayFormatSeparator)])}default:return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,T(t,e)]:[...s,[T(t,e),"=",T(n,e)].join("")]}}(t),i={};for(const[t,n]of Object.entries(e))s(t)||(i[t]=n);const a=Object.keys(i);return!1!==t.sort&&a.sort(t.sort),a.map((s=>{const i=e[s];return void 0===i?"":null===i?T(s,t):Array.isArray(i)?0===i.length&&"bracket-separator"===t.arrayFormat?T(s,t)+"[]":i.reduce(n(s),[]).join("&"):T(s,t)+"="+T(i,t)})).filter((e=>e.length>0)).join("&")}function N(e,t){t={decode:!0,...t};let[s,n]=f(e,"#");return void 0===s&&(s=e),{url:s?.split("?")?.[0]??"",query:S(_(e),t),...t&&t.parseFragmentIdentifier&&n?{fragmentIdentifier:A(n,t)}:{}}}function L(e,t){t={encode:!0,strict:!0,[y]:!0,...t};const s=x(e.url).split("?")[0]||"";let n=F({...S(_(e.url),{sort:!1}),...e.query},t);n&&=`?${n}`;let i=function(e){let t="";const s=e.indexOf("#");return-1!==s&&(t=e.slice(s)),t}(e.url);if("string"==typeof e.fragmentIdentifier){const n=new URL(s);n.hash=e.fragmentIdentifier,i=t[y]?n.hash:`#${e.fragmentIdentifier}`}return`${s}${n}${i}`}function U(e,t,s){s={parseFragmentIdentifier:!0,[y]:!1,...s};const{url:n,query:i,fragmentIdentifier:a}=N(e,s);return L({url:n,query:h(i,t),fragmentIdentifier:a},s)}function P(e,t,s){return U(e,Array.isArray(t)?e=>!t.includes(e):(e,s)=>!t(e,s),s)}const E=i;var I=n(40173);o.Ay.use(I.Ay);const D=I.Ay.prototype.push;I.Ay.prototype.push=function(e,t,s){return t||s?D.call(this,e,t,s):D.call(this,e).catch((e=>e))};const z=new I.Ay({mode:"history",base:(0,d.Jv)("/apps/files"),linkActiveClass:"active",routes:[{path:"/",redirect:{name:"filelist",params:{view:"files"}}},{path:"/:view/:fileid(\\d+)?",name:"filelist",props:!0}],stringifyQuery(e){const t=E.stringify(e).replace(/%2F/gim,"/");return t?"?"+t:""}});function B(e,t,s){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}var j=n(96763);var M=n(22378),O=n(34297),R=n(61338),V=n(53334);const H={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var q=n(14486);const W=(0,q.A)(H,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var G=n(42530),Y=n(52439),$=n(6695);function K(e,t,s){var n,i=s||{},a=i.noTrailing,r=void 0!==a&&a,o=i.noLeading,l=void 0!==o&&o,d=i.debounceMode,m=void 0===d?void 0:d,c=!1,g=0;function u(){n&&clearTimeout(n)}function p(){for(var s=arguments.length,i=new Array(s),a=0;a<s;a++)i[a]=arguments[a];var o=this,d=Date.now()-g;function p(){g=Date.now(),t.apply(o,i)}function f(){n=void 0}c||(l||!m||n||p(),u(),void 0===m&&d>e?l?(g=Date.now(),r||(n=setTimeout(m?f:p,e))):p():!0!==r&&(n=setTimeout(m?f:p,void 0===m?e-d:e)))}return p.cancel=function(e){var t=(e||{}).upcomingOnly,s=void 0!==t&&t;u(),c=!s},p}var J=n(32981),Q=n(85168),Z=n(65043);const X={name:"ChartPieIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ee=(0,q.A)(X,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon chart-pie-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var te=n(95101);const se=(0,n(35947).YK)().setApp("files").detectUser().build(),ne={name:"NavigationQuota",components:{ChartPie:ee,NcAppNavigationItem:Y.A,NcProgressBar:te.A},data:()=>({loadingStorageStats:!1,storageStats:(0,J.C)("files","storageStats",null)}),computed:{storageStatsTitle(){var e,t,s;const n=(0,O.v7)(null===(e=this.storageStats)||void 0===e?void 0:e.used,!1,!1),i=(0,O.v7)(null===(t=this.storageStats)||void 0===t?void 0:t.quota,!1,!1);return(null===(s=this.storageStats)||void 0===s?void 0:s.quota)<0?this.t("files","{usedQuotaByte} used",{usedQuotaByte:n}):this.t("files","{used} of {quota} used",{used:n,quota:i})},storageStatsTooltip(){return this.storageStats.relative?this.t("files","{relative}% used",this.storageStats):""}},beforeMount(){setInterval(this.throttleUpdateStorageStats,6e4),(0,R.B1)("files:node:created",this.throttleUpdateStorageStats),(0,R.B1)("files:node:deleted",this.throttleUpdateStorageStats),(0,R.B1)("files:node:moved",this.throttleUpdateStorageStats),(0,R.B1)("files:node:updated",this.throttleUpdateStorageStats)},mounted(){var e,t;(null===(e=this.storageStats)||void 0===e?void 0:e.quota)>0&&0===(null===(t=this.storageStats)||void 0===t?void 0:t.free)&&this.showStorageFullWarning()},methods:{debounceUpdateStorageStats:(ie={}.atBegin,K(200,(function(e){this.updateStorageStats(e)}),{debounceMode:!1!==(void 0!==ie&&ie)})),throttleUpdateStorageStats:K(1e3,(function(e){this.updateStorageStats(e)})),async updateStorageStats(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!this.loadingStorageStats){this.loadingStorageStats=!0;try{var s,n,i,a;const e=await Z.Ay.get((0,d.Jv)("/apps/files/api/v1/stats"));if(null==e||null===(s=e.data)||void 0===s||!s.data)throw new Error("Invalid storage stats");(null===(n=this.storageStats)||void 0===n?void 0:n.free)>0&&0===(null===(i=e.data.data)||void 0===i?void 0:i.free)&&(null===(a=e.data.data)||void 0===a?void 0:a.quota)>0&&this.showStorageFullWarning(),this.storageStats=e.data.data}catch(s){se.error("Could not refresh storage stats",{error:s}),e&&(0,Q.Qg)(t("files","Could not refresh storage stats"))}finally{this.loadingStorageStats=!1}}},showStorageFullWarning(){(0,Q.Qg)(this.t("files","Your storage is full, files can not be updated or synced anymore!"))},t:V.Tl}};var ie,ae=n(85072),re=n.n(ae),oe=n(97825),le=n.n(oe),de=n(77659),me=n.n(de),ce=n(55056),ge=n.n(ce),ue=n(10540),pe=n.n(ue),fe=n(41113),he=n.n(fe),ve=n(47747),we={};we.styleTagTransform=he(),we.setAttributes=ge(),we.insert=me().bind(null,"head"),we.domAPI=le(),we.insertStyleElement=pe(),re()(ve.A,we),ve.A&&ve.A.locals&&ve.A.locals;const ye=(0,q.A)(ne,(function(){var e=this,t=e._self._c;return e.storageStats?t("NcAppNavigationItem",{staticClass:"app-navigation-entry__settings-quota",class:{"app-navigation-entry__settings-quota--not-unlimited":e.storageStats.quota>=0},attrs:{"aria-label":e.t("files","Storage informations"),loading:e.loadingStorageStats,name:e.storageStatsTitle,title:e.storageStatsTooltip,"data-cy-files-navigation-settings-quota":""},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.debounceUpdateStorageStats.apply(null,arguments)}}},[t("ChartPie",{attrs:{slot:"icon",size:20},slot:"icon"}),e._v(" "),e.storageStats.quota>=0?t("NcProgressBar",{attrs:{slot:"extra",error:e.storageStats.relative>80,value:Math.min(e.storageStats.relative,100)},slot:"extra"}):e._e()],1):e._e()}),[],!1,null,"400127b6",null).exports;var Ce=n(69996),Te=n(85948),Ae=n(32073);const be={name:"ClipboardIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},xe=(0,q.A)(be,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon clipboard-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var ke=n(63407);const _e={name:"Setting",props:{el:{type:Function,required:!0}},mounted(){this.$el.appendChild(this.el())}},Se=(0,q.A)(_e,(function(){return(0,this._self._c)("div")}),[],!1,null,null,null).exports,Fe=(0,J.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),Ne=function(){const e=(0,a.nY)("userconfig",{state:()=>({userConfig:Fe}),actions:{onUpdate(e,t){o.Ay.set(this.userConfig,e,t)},async update(e,t){await Z.Ay.put((0,d.Jv)("/apps/files/api/v1/config/"+e),{value:t}),(0,R.Ic)("files:config:updated",{key:e,value:t})}}})(...arguments);return e._initialized||((0,R.B1)("files:config:updated",(function(t){let{key:s,value:n}=t;e.onUpdate(s,n)})),e._initialized=!0),e},Le={name:"Settings",components:{Clipboard:xe,NcAppSettingsDialog:Ce.N,NcAppSettingsSection:Te.A,NcCheckboxRadioSwitch:Ae.A,NcInputField:ke.A,Setting:Se},props:{open:{type:Boolean,default:!1}},setup:()=>({userConfigStore:Ne()}),data(){var e,t,s;return{settings:(null===(e=window.OCA)||void 0===e||null===(e=e.Files)||void 0===e||null===(e=e.Settings)||void 0===e?void 0:e.settings)||[],webdavUrl:(0,d.dC)("dav/files/"+encodeURIComponent(null===(t=(0,r.HW)())||void 0===t?void 0:t.uid)),webdavDocs:"https://docs.nextcloud.com/server/stable/go.php?to=user-webdav",appPasswordUrl:(0,d.Jv)("/settings/user/security#generate-app-token-section"),webdavUrlCopied:!1,enableGridView:null===(s=(0,J.C)("core","config",[])["enable_non-accessible_features"])||void 0===s||s}},computed:{userConfig(){return this.userConfigStore.userConfig}},beforeMount(){this.settings.forEach((e=>e.open()))},beforeDestroy(){this.settings.forEach((e=>e.close()))},methods:{onClose(){this.$emit("close")},setConfig(e,t){this.userConfigStore.update(e,t)},async copyCloudId(){document.querySelector("input#webdav-url-input").select(),navigator.clipboard?(await navigator.clipboard.writeText(this.webdavUrl),this.webdavUrlCopied=!0,(0,Q.Te)(t("files","WebDAV URL copied to clipboard")),setTimeout((()=>{this.webdavUrlCopied=!1}),5e3)):(0,Q.Qg)(t("files","Clipboard is not available"))},t:V.Tl}},Ue=Le;var Pe=n(60335),Ee={};Ee.styleTagTransform=he(),Ee.setAttributes=ge(),Ee.insert=me().bind(null,"head"),Ee.domAPI=le(),Ee.insertStyleElement=pe(),re()(Pe.A,Ee),Pe.A&&Pe.A.locals&&Pe.A.locals;const Ie=(0,q.A)(Ue,(function(){var e=this,t=e._self._c;return t("NcAppSettingsDialog",{attrs:{open:e.open,"show-navigation":!0,name:e.t("files","Files settings")},on:{"update:open":e.onClose}},[t("NcAppSettingsSection",{attrs:{id:"settings",name:e.t("files","Files settings")}},[t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_favorites_first",checked:e.userConfig.sort_favorites_first},on:{"update:checked":function(t){return e.setConfig("sort_favorites_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort favorites first"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_folders_first",checked:e.userConfig.sort_folders_first},on:{"update:checked":function(t){return e.setConfig("sort_folders_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort folders before files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"show_hidden",checked:e.userConfig.show_hidden},on:{"update:checked":function(t){return e.setConfig("show_hidden",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Show hidden files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"crop_image_previews",checked:e.userConfig.crop_image_previews},on:{"update:checked":function(t){return e.setConfig("crop_image_previews",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Crop image previews"))+"\n\t\t")]),e._v(" "),e.enableGridView?t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"grid_view",checked:e.userConfig.grid_view},on:{"update:checked":function(t){return e.setConfig("grid_view",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Enable the grid view"))+"\n\t\t")]):e._e()],1),e._v(" "),0!==e.settings.length?t("NcAppSettingsSection",{attrs:{id:"more-settings",name:e.t("files","Additional settings")}},[e._l(e.settings,(function(e){return[t("Setting",{key:e.name,attrs:{el:e.el}})]}))],2):e._e(),e._v(" "),t("NcAppSettingsSection",{attrs:{id:"webdav",name:e.t("files","WebDAV")}},[t("NcInputField",{attrs:{id:"webdav-url-input",label:e.t("files","WebDAV URL"),"show-trailing-button":!0,success:e.webdavUrlCopied,"trailing-button-label":e.t("files","Copy to clipboard"),value:e.webdavUrl,readonly:"readonly",type:"url"},on:{focus:function(e){return e.target.select()},"trailing-button-click":e.copyCloudId},scopedSlots:e._u([{key:"trailing-button-icon",fn:function(){return[t("Clipboard",{attrs:{size:20}})]},proxy:!0}])}),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.webdavDocs,target:"_blank",rel:"noreferrer noopener"}},[e._v("\n\t\t\t\t"+e._s(e.t("files","Use this address to access your Files via WebDAV"))+" ↗\n\t\t\t")])]),e._v(" "),t("br"),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.appPasswordUrl}},[e._v("\n\t\t\t\t"+e._s(e.t("files","If you have enabled 2FA, you must create and use a new app password by clicking here."))+" ↗\n\t\t\t")])])],1)],1)}),[],!1,null,"00f09e69",null).exports;function De(){const e=(0,O.bh)(),t=(0,o.IJ)(e.views),s=(0,o.IJ)(e.active);function n(e){s.value=e.detail}function i(){t.value=e.views}return(0,o.sV)((()=>{e.addEventListener("update",i),e.addEventListener("updateActive",n)})),(0,o.hi)((()=>{e.removeEventListener("update",i),e.removeEventListener("updateActive",n)})),{currentView:s,views:t}}const ze=(0,J.C)("files","viewConfigs",{}),Be=function(){const e=(0,a.nY)("viewconfig",{state:()=>({viewConfig:ze}),getters:{getConfig:e=>t=>e.viewConfig[t]||{}},actions:{onUpdate(e,t,s){this.viewConfig[e]||o.Ay.set(this.viewConfig,e,{}),o.Ay.set(this.viewConfig[e],t,s)},async update(e,t,s){Z.Ay.put((0,d.Jv)("/apps/files/api/v1/views/".concat(e,"/").concat(t)),{value:s}),(0,R.Ic)("files:viewconfig:updated",{view:e,key:t,value:s})},setSortingBy(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"basename",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"files";this.update(t,"sorting_mode",e),this.update(t,"sorting_direction","asc")},toggleSortingDirection(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"files";const t="asc"===(this.getConfig(e)||{sorting_direction:"asc"}).sorting_direction?"desc":"asc";this.update(e,"sorting_direction",t)}}}),t=e(...arguments);return t._initialized||((0,R.B1)("files:viewconfig:updated",(function(e){let{view:s,key:n,value:i}=e;t.onUpdate(s,n,i)})),t._initialized=!0),t},je=(0,o.pM)({name:"Navigation",components:{IconCog:W,NavigationQuota:ye,NcAppNavigation:G.A,NcAppNavigationItem:Y.A,NcIconSvgWrapper:$.A,SettingsModal:Ie},setup(){const e=Be(),{currentView:t,views:s}=De();return{currentView:t,views:s,viewConfigStore:e}},data:()=>({settingsOpened:!1}),computed:{currentViewId(){var e;return(null===(e=this.$route)||void 0===e||null===(e=e.params)||void 0===e?void 0:e.view)||"files"},parentViews(){return this.views.filter((e=>!e.parent)).sort(((e,t)=>e.order-t.order))},childViews(){return this.views.filter((e=>!!e.parent)).reduce(((e,t)=>(e[t.parent]=[...e[t.parent]||[],t],e[t.parent].sort(((e,t)=>e.order-t.order)),e)),{})}},watch:{currentViewId(e,t){var s;if(this.currentViewId!==(null===(s=this.currentView)||void 0===s?void 0:s.id)){const s=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(s),se.debug("Navigation changed from ".concat(t," to ").concat(e),{to:s})}}},beforeMount(){const e=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(e),se.debug("Navigation mounted. Showing requested view",{view:e})},methods:{t:V.Tl,useExactRouteMatching(e){var t;return(null===(t=this.childViews[e.id])||void 0===t?void 0:t.length)>0},showView(e){var t,s;null===(t=window.OCA)||void 0===t||null===(t=t.Files)||void 0===t||null===(t=t.Sidebar)||void 0===t||null===(s=t.close)||void 0===s||s.call(t),(0,O.bh)().setActive(e),(0,R.Ic)("files:navigation:changed",e)},onToggleExpand(e){const t=this.isExpanded(e);e.expanded=!t,this.viewConfigStore.update(e.id,"expanded",!t)},isExpanded(e){var t;return"boolean"==typeof(null===(t=this.viewConfigStore.getConfig(e.id))||void 0===t?void 0:t.expanded)?!0===this.viewConfigStore.getConfig(e.id).expanded:!0===e.expanded},generateToNavigation(e){if(e.params){const{dir:t}=e.params;return{name:"filelist",params:e.params,query:{dir:t}}}return{name:"filelist",params:{view:e.id}}},openSettings(){this.settingsOpened=!0},onSettingsClose(){this.settingsOpened=!1}}});var Me=n(46845),Oe={};Oe.styleTagTransform=he(),Oe.setAttributes=ge(),Oe.insert=me().bind(null,"head"),Oe.domAPI=le(),Oe.insertStyleElement=pe(),re()(Me.A,Oe),Me.A&&Me.A.locals&&Me.A.locals;const Re=(0,q.A)(je,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcAppNavigation",{attrs:{"data-cy-files-navigation":"","aria-label":e.t("files","Files")},scopedSlots:e._u([{key:"list",fn:function(){return e._l(e.parentViews,(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"allow-collapse":!0,"data-cy-files-navigation-item":s.id,exact:e.useExactRouteMatching(s),icon:s.iconClass,name:s.name,open:e.isExpanded(s),pinned:s.sticky,to:e.generateToNavigation(s)},on:{"update:open":function(t){return e.onToggleExpand(s)}}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e(),e._v(" "),e._l(e.childViews[s.id],(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"data-cy-files-navigation-item":s.id,"exact-path":!0,icon:s.iconClass,name:s.name,to:e.generateToNavigation(s)}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e()],1)}))],2)}))},proxy:!0},{key:"footer",fn:function(){return[t("ul",{staticClass:"app-navigation-entry__settings"},[t("NavigationQuota"),e._v(" "),t("NcAppNavigationItem",{attrs:{"aria-label":e.t("files","Open the files app settings"),name:e.t("files","Files settings"),"data-cy-files-navigation-settings-button":""},on:{click:function(t){return t.preventDefault(),t.stopPropagation(),e.openSettings.apply(null,arguments)}}},[t("IconCog",{attrs:{slot:"icon",size:20},slot:"icon"})],1)],1)]},proxy:!0}])},[e._v(" "),e._v(" "),t("SettingsModal",{attrs:{open:e.settingsOpened,"data-cy-files-navigation-settings":""},on:{close:e.onSettingsClose}})],1)}),[],!1,null,"d0738916",null).exports;var Ve=n(87485),He=n(77905),qe=n(94997),We=n(43627),Ge=n(38805),Ye=n(57578);const $e={name:"ReloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ke=(0,q.A)($e,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon reload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M2 12C2 16.97 6.03 21 11 21C13.39 21 15.68 20.06 17.4 18.4L15.9 16.9C14.63 18.25 12.86 19 11 19C4.76 19 1.64 11.46 6.05 7.05C10.46 2.64 18 5.77 18 12H15L19 16H19.1L23 12H20C20 7.03 15.97 3 11 3C6.03 3 2 7.03 2 12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Je=n(36600);const Qe={name:"FormatListBulletedSquareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ze=(0,q.A)(Qe,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon format-list-bulleted-square-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Xe=n(18195),et=n(18740),tt=n(34196),st=n(84237),nt=n(96078);const it={name:"AccountPlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},at=(0,q.A)(it,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon account-plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,rt={name:"ViewGridIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ot=(0,q.A)(rt,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon view-grid-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var lt=n(49981);const dt=new O.hY({id:"details",displayName:()=>(0,V.Tl)("files","Open details"),iconSvgInline:()=>lt,enabled:e=>{var t,s,n;return 1===e.length&&!!e[0]&&!(null===(t=window)||void 0===t||null===(t=t.OCA)||void 0===t||null===(t=t.Files)||void 0===t||!t.Sidebar)&&null!==(s=(null===(n=e[0].root)||void 0===n?void 0:n.startsWith("/files/"))&&e[0].permissions!==O.aX.NONE)&&void 0!==s&&s},async exec(e,t,s){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:s},!0),null}catch(e){return se.error("Error while opening sidebar",{error:e}),!1}},order:-50});var mt;const ct="/files/".concat(null===(mt=(0,r.HW)())||void 0===mt?void 0:mt.uid),gt=(0,d.dC)("dav"+ct),ut=((0,O.H4)(),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:gt;return(0,O.H4)(e)}()),pt=async e=>{const t=(0,O.VL)(),s=await ut.stat("".concat(O.lJ).concat(e.path),{details:!0,data:t});return(0,O.Al)(s.data)},ft=function(){const e=(0,a.nY)("files",{state:()=>({files:{},roots:{},_initialized:!1}),getters:{getNode:e=>t=>e.files[t],getNodes:e=>t=>t.map((t=>e.files[t])).filter(Boolean),getNodesById:e=>t=>Object.values(e.files).filter((e=>e.fileid===t)),getRoot:e=>t=>e.roots[t]},actions:{updateNodes(e){const t=e.reduce(((e,t)=>t.fileid?(e[t.source]=t,e):(se.error("Trying to update/set a node without fileid",{node:t}),e)),{});o.Ay.set(this,"files",{...this.files,...t})},deleteNodes(e){e.forEach((e=>{e.source&&o.Ay.delete(this.files,e.source)}))},setRoot(e){let{service:t,root:s}=e;o.Ay.set(this.roots,t,s)},onDeletedNode(e){this.deleteNodes([e])},onCreatedNode(e){this.updateNodes([e])},onMovedNode(e){let{node:t,oldSource:s}=e;t.fileid?(o.Ay.delete(this.files,s),this.updateNodes([t])):se.error("Trying to update/set a node without fileid",{node:t})},async onUpdatedNode(e){if(!e.fileid)return void se.error("Trying to update/set a node without fileid",{node:e});const t=this.getNodesById(e.fileid);if(t.length>1)return await Promise.all(t.map(pt)).then(this.updateNodes),void se.debug(t.length+" nodes updated in store",{fileid:e.fileid});e.source!==t[0].source?pt(e).then((e=>this.updateNodes([e]))):this.updateNodes([e])}}})(...arguments);return e._initialized||((0,R.B1)("files:node:created",e.onCreatedNode),(0,R.B1)("files:node:deleted",e.onDeletedNode),(0,R.B1)("files:node:updated",e.onUpdatedNode),(0,R.B1)("files:node:moved",e.onMovedNode),e._initialized=!0),e};var ht=n(71225);const vt=function(){const e=ft(...arguments),t=(0,a.nY)("paths",{state:()=>({paths:{},_initialized:!1}),getters:{getPath:e=>(t,s)=>{if(e.paths[t])return e.paths[t][s]}},actions:{addPath(e){this.paths[e.service]||o.Ay.set(this.paths,e.service,{}),o.Ay.set(this.paths[e.service],e.path,e.source)},deletePath(e,t){this.paths[e]&&o.Ay.delete(this.paths[e],t)},onCreatedNode(e){var t;const s=(null===(t=(0,O.bh)())||void 0===t||null===(t=t.active)||void 0===t?void 0:t.id)||"files";e.fileid?(e.type===O.pt.Folder&&this.addPath({service:s,path:e.path,source:e.source}),this.addNodeToParentChildren(e)):se.error("Node has no fileid",{node:e})},onDeletedNode(e){var t;const s=(null===(t=(0,O.bh)())||void 0===t||null===(t=t.active)||void 0===t?void 0:t.id)||"files";e.type===O.pt.Folder&&this.deletePath(s,e.path),this.deleteNodeFromParentChildren(e)},onMovedNode(e){var t;let{node:s,oldSource:n}=e;const i=(null===(t=(0,O.bh)())||void 0===t||null===(t=t.active)||void 0===t?void 0:t.id)||"files";if(s.type===O.pt.Folder){const e=Object.entries(this.paths[i]).find((e=>{let[,t]=e;return t===n}));null!=e&&e[0]&&this.deletePath(i,e[0]),this.addPath({service:i,path:s.path,source:s.source})}const a=new O.ZH({source:n,owner:s.owner,mime:s.mime});this.deleteNodeFromParentChildren(a),this.addNodeToParentChildren(s)},deleteNodeFromParentChildren(t){var s;const n=(null===(s=(0,O.bh)())||void 0===s||null===(s=s.active)||void 0===s?void 0:s.id)||"files",i=(0,ht.pD)(t.source),a="/"===t.dirname?e.getRoot(n):e.getNode(i);if(a){var r;const e=new Set(null!==(r=a._children)&&void 0!==r?r:[]);return e.delete(t.source),o.Ay.set(a,"_children",[...e.values()]),void se.debug("Children updated",{parent:a,node:t,children:a._children})}se.debug("Parent path does not exists, skipping children update",{node:t})},addNodeToParentChildren(t){var s;const n=(null===(s=(0,O.bh)())||void 0===s||null===(s=s.active)||void 0===s?void 0:s.id)||"files",i=(0,ht.pD)(t.source),a="/"===t.dirname?e.getRoot(n):e.getNode(i);if(a){var r;const e=new Set(null!==(r=a._children)&&void 0!==r?r:[]);return e.add(t.source),o.Ay.set(a,"_children",[...e.values()]),void se.debug("Children updated",{parent:a,node:t,children:a._children})}se.debug("Parent path does not exists, skipping children update",{node:t})}}})(...arguments);return t._initialized||((0,R.B1)("files:node:created",t.onCreatedNode),(0,R.B1)("files:node:deleted",t.onDeletedNode),(0,R.B1)("files:node:moved",t.onMovedNode),t._initialized=!0),t},wt=(0,a.nY)("selection",{state:()=>({selected:[],lastSelection:[],lastSelectedIndex:null}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];o.Ay.set(this,"selected",[...new Set(e)])},setLastIndex(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;o.Ay.set(this,"lastSelection",e?this.selected:[]),o.Ay.set(this,"lastSelectedIndex",e)},reset(){o.Ay.set(this,"selected",[]),o.Ay.set(this,"lastSelection",[]),o.Ay.set(this,"lastSelectedIndex",null)}}});let yt;const Ct=function(){return yt=(0,qe.g)(),(0,a.nY)("uploader",{state:()=>({queue:yt.queue})})(...arguments)};var Tt=n(62081),At=n(75556),bt=n(96763);class xt extends File{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];var s,n,i;super([],e,{type:"httpd/unix-directory"}),s=this,i=void 0,(n=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(n="_contents"))in s?Object.defineProperty(s,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):s[n]=i,this._contents=t}set contents(e){this._contents=e}get contents(){return this._contents}get size(){return this._computeDirectorySize(this)}get lastModified(){return 0===this._contents.length?Date.now():this._computeDirectoryMtime(this)}_computeDirectoryMtime(e){return e.contents.reduce(((e,t)=>t.lastModified>e?t.lastModified:e),0)}_computeDirectorySize(e){return e.contents.reduce(((e,t)=>e+t.size),0)}}const kt=async e=>{if(e.isFile)return new Promise(((t,s)=>{e.file(t,s)}));se.debug("Handling recursive file tree",{entry:e.name});const t=e,s=await _t(t),n=(await Promise.all(s.map(kt))).flat();return new xt(t.name,n)},_t=e=>{const t=e.createReader();return new Promise(((e,s)=>{const n=[],i=()=>{t.readEntries((t=>{t.length?(n.push(...t),i()):e(n)}),(e=>{s(e)}))};i()}))},St=async e=>{const t=(0,O.H4)();if(!await t.exists(e)){se.debug("Directory does not exist, creating it",{absolutePath:e}),await t.createDirectory(e,{recursive:!0});const s=await t.stat(e,{details:!0,data:(0,O.VL)()});(0,R.Ic)("files:node:created",(0,O.Al)(s.data))}},Ft=async(e,t,s)=>{try{const n=e.filter((e=>s.find((t=>t.basename===(e instanceof File?e.name:e.basename))))).filter(Boolean),i=e.filter((e=>!n.includes(e))),{selected:a,renamed:r}=await(0,qe.o)(t.path,n,s);return se.debug("Conflict resolution",{uploads:i,selected:a,renamed:r}),0===a.length&&0===r.length?((0,Q.cf)((0,V.Tl)("files","Conflicts resolution skipped")),se.info("User skipped the conflict resolution"),[]):[...i,...a,...r]}catch(e){bt.error(e),(0,Q.Qg)((0,V.Tl)("files","Upload cancelled")),se.error("User cancelled the upload")}return[]};n(18205);var Nt=n(53110),Lt=n(36882),Ut=n(39285),Pt=n(49264);let Et;const It=()=>(Et||(Et=new Pt.A({concurrency:5})),Et);var Dt;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(Dt||(Dt={}));const zt=e=>0!=(e.reduce(((e,t)=>Math.min(e,t.permissions)),O.aX.ALL)&O.aX.UPDATE),Bt=e=>(e=>e.every((e=>{var t,s;return!JSON.parse(null!==(t=null===(s=e.attributes)||void 0===s?void 0:s["share-attributes"])&&void 0!==t?t:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===O.aX.NONE));var jt=n(36117);const Mt=e=>(0,O.Al)(e),Ot=(0,O.H4)(),Rt=e=>zt(e)?Bt(e)?Dt.MOVE_OR_COPY:Dt.MOVE:Dt.COPY,Vt=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!t)return;if(t.type!==O.pt.Folder)throw new Error((0,V.Tl)("files","Destination is not a folder"));if(s===Dt.MOVE&&e.dirname===t.path)throw new Error((0,V.Tl)("files","This file/folder is already in that directory"));if("".concat(t.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,V.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));o.Ay.set(e,"status",O.zI.LOADING);const i=function(e,t,s){const n=e===Dt.MOVE?(0,V.Tl)("files",'Moving "{source}" to "{destination}" …',{source:t,destination:s}):(0,V.Tl)("files",'Copying "{source}" to "{destination}" …',{source:t,destination:s});let i;return i=(0,Q.cf)('<span class="icon icon-loading-small toast-loading-icon"></span> '.concat(n),{isHTML:!0,timeout:Q.DH,onRemove:()=>{var e;null===(e=i)||void 0===e||e.hideToast(),i=void 0}}),()=>i&&i.hideToast()}(s,e.basename,t.path),a=It();return await a.add((async()=>{const a=e=>1===e?(0,V.Tl)("files","(copy)"):(0,V.Tl)("files","(copy %n)",void 0,e);try{const i=(0,O.H4)(),o=(0,We.join)(O.lJ,e.path),d=(0,We.join)(O.lJ,t.path);if(s===Dt.COPY){let s=e.basename;if(!n){const t=await i.getDirectoryContents(d);s=(0,O.E6)(e.basename,t.map((e=>e.basename)),{suffix:a,ignoreFileExtension:e.type===O.pt.Folder})}if(await i.copyFile(o,(0,We.join)(d,s)),e.dirname===t.path){const{data:e}=await i.stat((0,We.join)(d,s),{details:!0,data:(0,O.VL)()});(0,R.Ic)("files:node:created",(0,O.Al)(e))}}else{if(!n){const s=await function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";e="".concat(O.lJ).concat(e);const t=new AbortController,s=(0,O.VL)();return new jt.CancelablePromise((async(n,i,a)=>{a((()=>t.abort()));try{const i=await Ot.getDirectoryContents(e,{details:!0,data:s,includeSelf:!0,signal:t.signal}),a=i.data[0],r=i.data.slice(1);if(a.filename!==e&&"".concat(a.filename,"/")!==e)throw new Error("Root node does not match requested path");n({folder:Mt(a),contents:r.map((e=>{try{return Mt(e)}catch(t){return se.error("Invalid node detected '".concat(e.basename,"'"),{error:t}),null}})).filter(Boolean)})}catch(e){i(e)}}))}(t.path);if((0,qe.h)([e],s.contents))try{const{selected:n,renamed:i}=await(0,qe.o)(t.path,[e],s.contents);if(!n.length&&!i.length)return}catch(e){return void(0,Q.Qg)((0,V.Tl)("files","Move cancelled"))}}try{await i.moveFile(o,(0,We.join)(d,e.basename))}catch(e){var r,l;const t=new DOMParser,s=await(null===(r=e.response)||void 0===r?void 0:r.text()),n=null===(l=t.parseFromString(null!=s?s:"","text/xml").querySelector("message"))||void 0===l?void 0:l.textContent;throw n&&(0,Q.Qg)(n),e}(0,R.Ic)("files:node:deleted",e)}}catch(e){if(e instanceof Nt.pe){var d,m,c;if(412===(null==e||null===(d=e.response)||void 0===d?void 0:d.status))throw new Error((0,V.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null==e||null===(m=e.response)||void 0===m?void 0:m.status))throw new Error((0,V.Tl)("files","The files are locked"));if(404===(null==e||null===(c=e.response)||void 0===c?void 0:c.status))throw new Error((0,V.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw se.debug(e),new Error}finally{o.Ay.set(e,"status",""),i()}}))};async function Ht(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",s=arguments.length>2?arguments[2]:void 0;const{resolve:n,reject:i,promise:a}=Promise.withResolvers(),r=s.map((e=>e.fileid)).filter(Boolean);return(0,Q.a1)((0,V.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!r.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(t).setButtonFactory(((t,i)=>{const a=[],r=(0,We.basename)(i),o=s.map((e=>e.dirname)),l=s.map((e=>e.path));return e!==Dt.COPY&&e!==Dt.MOVE_OR_COPY||a.push({label:r?(0,V.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,V.Tl)("files","Copy"),type:"primary",icon:Lt,async callback(e){n({destination:e[0],action:Dt.COPY})}}),o.includes(i)||l.includes(i)||e!==Dt.MOVE&&e!==Dt.MOVE_OR_COPY||a.push({label:r?(0,V.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,V.Tl)("files","Move"),type:e===Dt.MOVE?"primary":"secondary",icon:Ut,async callback(e){n({destination:e[0],action:Dt.MOVE})}}),a})).build().pick().catch((e=>{se.debug(e),e instanceof Q.vT?n(!1):i(new Error((0,V.Tl)("files","Move or copy operation failed")))})),a}new O.hY({id:"move-copy",displayName(e){switch(Rt(e)){case Dt.MOVE:return(0,V.Tl)("files","Move");case Dt.COPY:return(0,V.Tl)("files","Copy");case Dt.MOVE_OR_COPY:return(0,V.Tl)("files","Move or copy")}},iconSvgInline:()=>Ut,enabled:e=>!!e.every((e=>{var t;return null===(t=e.root)||void 0===t?void 0:t.startsWith("/files/")}))&&e.length>0&&(zt(e)||Bt(e)),async exec(e,t,s){const n=Rt([e]);let i;try{i=await Ht(n,s,[e])}catch(e){return se.error(e),!1}if(!1===i)return(0,Q.cf)((0,V.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e.displayname})),null;try{return await Vt(e,i.destination,i.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,Q.Qg)(e.message),null)}},async execBatch(e,t,s){const n=Rt(e),i=await Ht(n,s,e);if(!1===i)return(0,Q.cf)(1===e.length?(0,V.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e[0].displayname}):(0,V.Tl)("files","Cancelled move or copy operation")),e.map((()=>null));const a=e.map((async e=>{try{return await Vt(e,i.destination,i.action),!0}catch(t){return se.error("Failed to ".concat(i.action," node"),{node:e,error:t}),!1}}));return await Promise.all(a)},order:15});var qt=n(96763);const Wt=async e=>{const t=e.filter((e=>"file"===e.kind||(se.debug("Skipping dropped item",{kind:e.kind,type:e.type}),!1))).map((e=>{var t,s,n,i;return null!==(t=null!==(s=null==e||null===(n=e.getAsEntry)||void 0===n?void 0:n.call(e))&&void 0!==s?s:null==e||null===(i=e.webkitGetAsEntry)||void 0===i?void 0:i.call(e))&&void 0!==t?t:e}));let s=!1;const n=new xt("root");for(const e of t)if(e instanceof DataTransferItem){se.warn("Could not get FilesystemEntry of item, falling back to file");const t=e.getAsFile();if(null===t){se.warn("Could not process DataTransferItem",{type:e.type,kind:e.kind}),(0,Q.Qg)((0,V.Tl)("files","One of the dropped files could not be processed"));continue}if("httpd/unix-directory"===t.type||!t.type){s||(se.warn("Browser does not support Filesystem API. Directories will not be uploaded"),(0,Q.I9)((0,V.Tl)("files","Your browser does not support the Filesystem API. Directories will not be uploaded")),s=!0);continue}n.contents.push(t)}else try{n.contents.push(await kt(e))}catch(e){se.error("Error while traversing file tree",{error:e})}return n},Gt=async(e,t,s)=>{const n=(0,qe.g)();if(await(0,qe.h)(e.contents,s)&&(e.contents=await Ft(e.contents,t,s)),0===e.contents.length)return se.info("No files to upload",{root:e}),(0,Q.cf)((0,V.Tl)("files","No files to upload")),[];se.debug("Uploading files to ".concat(t.path),{root:e,contents:e.contents});const i=[],a=async(e,s)=>{for(const r of e.contents){const e=(0,We.join)(s,r.name);if(r instanceof xt){const s=(0,ht.HS)(O.lJ,t.path,e);try{qt.debug("Processing directory",{relativePath:e}),await St(s),await a(r,e)}catch(e){(0,Q.Qg)((0,V.Tl)("files","Unable to create the directory {directory}",{directory:r.name})),se.error("",{error:e,absolutePath:s,directory:r})}}else se.debug("Uploading file to "+(0,We.join)(t.path,e),{file:r}),i.push(n.upload(e,r,t.source))}};n.pause(),await a(e,"/"),n.start();const r=(await Promise.allSettled(i)).filter((e=>"rejected"===e.status));return r.length>0?(se.error("Error while uploading files",{errors:r}),(0,Q.Qg)((0,V.Tl)("files","Some files could not be uploaded")),[]):(se.debug("Files uploaded successfully"),(0,Q.Te)((0,V.Tl)("files","Files uploaded successfully")),Promise.all(i))},Yt=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const i=[];if(await(0,qe.h)(e,s)&&(e=await Ft(e,t,s)),0===e.length)return se.info("No files to process",{nodes:e}),void(0,Q.cf)((0,V.Tl)("files","No files to process"));for(const s of e)o.Ay.set(s,"status",O.zI.LOADING),i.push(Vt(s,t,n?Dt.COPY:Dt.MOVE,!0));const a=await Promise.allSettled(i);e.forEach((e=>o.Ay.set(e,"status",void 0)));const r=a.filter((e=>"rejected"===e.status));if(r.length>0)return se.error("Error while copying or moving files",{errors:r}),void(0,Q.Qg)(n?(0,V.Tl)("files","Some files could not be copied"):(0,V.Tl)("files","Some files could not be moved"));se.debug("Files copy/move successful"),(0,Q.Te)(n?(0,V.Tl)("files","Files copied successfully"):(0,V.Tl)("files","Files moved successfully"))},$t=(0,a.nY)("dragging",{state:()=>({dragging:[]}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];o.Ay.set(this,"dragging",e)},reset(){o.Ay.set(this,"dragging",[])}}}),Kt=o.Ay.extend({data:()=>({filesListWidth:null}),mounted(){var e;const t=document.querySelector("#app-content-vue");this.filesListWidth=null!==(e=null==t?void 0:t.clientWidth)&&void 0!==e?e:null,this.$resizeObserver=new ResizeObserver((e=>{e.length>0&&e[0].target===t&&(this.filesListWidth=e[0].contentRect.width)})),this.$resizeObserver.observe(t)},beforeDestroy(){this.$resizeObserver.disconnect()}}),Jt=(0,o.pM)({name:"BreadCrumbs",components:{NcBreadcrumbs:At.N,NcBreadcrumb:Tt.N,NcIconSvgWrapper:$.A},mixins:[Kt],props:{path:{type:String,default:"/"}},setup(){const e=$t(),t=ft(),s=vt(),n=wt(),i=Ct(),{currentView:a}=De();return{draggingStore:e,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,currentView:a}},computed:{dirs(){var e;return["/",...this.path.split("/").filter(Boolean).map((e="/",t=>e+="".concat(t,"/"))).map((e=>e.replace(/^(.+)\/$/,"$1")))]},sections(){return this.dirs.map(((e,t)=>{const s=this.getFileSourceFromPath(e),n=s?this.getNodeFromSource(s):void 0,i={...this.$route,params:{node:null==n?void 0:n.fileid},query:{dir:e}};return{dir:e,exact:!0,name:this.getDirDisplayName(e),to:i,disableDrop:t===this.dirs.length-1}}))},isUploadInProgress(){return 0!==this.uploaderStore.queue.length},wrapUploadProgressBar(){return this.isUploadInProgress&&this.filesListWidth<512},viewIcon(){var e,t;return null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.icon)&&void 0!==e?e:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-home" viewBox="0 0 24 24"><path d="M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z" /></svg>'},selectedFiles(){return this.selectionStore.selected},draggingFiles(){return this.draggingStore.dragging}},methods:{getNodeFromSource(e){return this.filesStore.getNode(e)},getFileSourceFromPath(e){var t;return null!==(t=this.currentView&&this.pathsStore.getPath(this.currentView.id,e))&&void 0!==t?t:null},getDirDisplayName(e){var t;if("/"===e)return(null===(t=this.currentView)||void 0===t?void 0:t.name)||(0,V.Tl)("files","Home");const s=this.getFileSourceFromPath(e),n=s?this.getNodeFromSource(s):void 0;return(null==n?void 0:n.displayname)||(0,We.basename)(e)},onClick(e){var t;(null==e||null===(t=e.query)||void 0===t?void 0:t.dir)===this.$route.query.dir&&this.$emit("reload")},onDragOver(e,t){e.dataTransfer&&(t!==this.dirs[this.dirs.length-1]?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none")},async onDrop(e,t){var s,n,i;if(!(this.draggingFiles||null!==(s=e.dataTransfer)&&void 0!==s&&null!==(s=s.items)&&void 0!==s&&s.length))return;e.preventDefault();const a=this.draggingFiles,r=[...(null===(n=e.dataTransfer)||void 0===n?void 0:n.items)||[]],o=await Wt(r),l=await(null===(i=this.currentView)||void 0===i?void 0:i.getContents(t)),d=null==l?void 0:l.folder;if(!d)return void(0,Q.Qg)(this.t("files","Target folder does not exist any more"));const m=0!=(d.permissions&O.aX.CREATE),c=e.ctrlKey;if(!m||0!==e.button)return;if(se.debug("Dropped",{event:e,folder:d,selection:a,fileTree:o}),o.contents.length>0)return void await Gt(o,d,l.contents);const g=a.map((e=>this.filesStore.getNode(e)));await Yt(g,d,l.contents,c),a.some((e=>this.selectedFiles.includes(e)))&&(se.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},titleForSection(e,t){var s;return(null==t||null===(s=t.to)||void 0===s||null===(s=s.query)||void 0===s?void 0:s.dir)===this.$route.query.dir?(0,V.Tl)("files","Reload current directory"):0===e?(0,V.Tl)("files",'Go to the "{dir}" directory',t):null},ariaForSection(e){var t;return(null==e||null===(t=e.to)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)===this.$route.query.dir?(0,V.Tl)("files","Reload current directory"):null},t:V.Tl}});var Qt=n(32773),Zt={};Zt.styleTagTransform=he(),Zt.setAttributes=ge(),Zt.insert=me().bind(null,"head"),Zt.domAPI=le(),Zt.insertStyleElement=pe(),re()(Qt.A,Zt),Qt.A&&Qt.A.locals&&Qt.A.locals;const Xt=(0,q.A)(Jt,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcBreadcrumbs",{staticClass:"files-list__breadcrumbs",class:{"files-list__breadcrumbs--with-progress":e.wrapUploadProgressBar},attrs:{"data-cy-files-content-breadcrumbs":"","aria-label":e.t("files","Current directory path")},scopedSlots:e._u([{key:"actions",fn:function(){return[e._t("actions")]},proxy:!0}],null,!0)},e._l(e.sections,(function(s,n){return t("NcBreadcrumb",e._b({key:s.dir,attrs:{dir:"auto",to:s.to,"force-icon-text":0===n&&e.filesListWidth>=486,title:e.titleForSection(n,s),"aria-description":e.ariaForSection(s)},on:{drop:function(t){return e.onDrop(t,s.dir)}},nativeOn:{click:function(t){return e.onClick(s.to)},dragover:function(t){return e.onDragOver(t,s.dir)}},scopedSlots:e._u([0===n?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{size:20,svg:e.viewIcon}})]},proxy:!0}:null],null,!0)},"NcBreadcrumb",s,!1))})),1)}),[],!1,null,"20858d70",null).exports,es=e=>{const t=e.filter((e=>e.type===O.pt.File)).length,s=e.filter((e=>e.type===O.pt.Folder)).length;return 0===t?(0,V.zw)("files","{folderCount} folder","{folderCount} folders",s,{folderCount:s}):0===s?(0,V.zw)("files","{fileCount} file","{fileCount} files",t,{fileCount:t}):1===t?(0,V.zw)("files","1 file and {folderCount} folder","1 file and {folderCount} folders",s,{folderCount:s}):1===s?(0,V.zw)("files","{fileCount} file and 1 folder","{fileCount} files and 1 folder",t,{fileCount:t}):(0,V.Tl)("files","{fileCount} files and {folderCount} folders",{fileCount:t,folderCount:s})};var ts=n(19231);const ss=(0,a.nY)("actionsmenu",{state:()=>({opened:null})}),ns=function(){const e=(0,a.nY)("renaming",{state:()=>({renamingNode:void 0,newName:""}),actions:{async rename(){var e,t;if(void 0===this.renamingNode)throw new Error("No node is currently being renamed");const s=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"",n=this.renamingNode.basename,i=this.renamingNode.encodedSource;if(n===s)return!1;const a=this.renamingNode;o.Ay.set(a,"status",O.zI.LOADING);try{return this.renamingNode.rename(s),se.debug("Moving file to",{destination:this.renamingNode.encodedSource,oldEncodedSource:i}),await(0,Z.Ay)({method:"MOVE",url:i,headers:{Destination:this.renamingNode.encodedSource,Overwrite:"F"}}),(0,R.Ic)("files:node:updated",this.renamingNode),(0,R.Ic)("files:node:renamed",this.renamingNode),(0,R.Ic)("files:node:moved",{node:this.renamingNode,oldSource:"".concat((0,We.dirname)(this.renamingNode.source),"/").concat(n)}),this.$reset(),!0}catch(e){if(se.error("Error while renaming file",{error:e}),this.renamingNode.rename(n),(0,Z.F0)(e)){var r,l;if(404===(null==e||null===(r=e.response)||void 0===r?void 0:r.status))throw new Error((0,V.t)("files",'Could not rename "{oldName}", it does not exist any more',{oldName:n}));if(412===(null==e||null===(l=e.response)||void 0===l?void 0:l.status))throw new Error((0,V.t)("files",'The name "{newName}" is already used in the folder "{dir}". Please choose a different name.',{newName:s,dir:(0,We.basename)(this.renamingNode.dirname)}))}throw new Error((0,V.t)("files",'Could not rename "{oldName}"',{oldName:n}))}finally{o.Ay.set(a,"status",void 0)}}}})(...arguments);return e._initialized||((0,R.B1)("files:node:rename",(function(t){e.renamingNode=t,e.newName=t.basename})),e._initialized=!0),e};o.Ay.util.warn,n(13073);var is=n(59271);n(96763);function as(e){var t;const s=(0,is.BA)(e);return null!=(t=null==s?void 0:s.$el)?t:s}const rs=is.oc?window:void 0;function os(...e){let t,s,n,i;if("string"==typeof e[0]||Array.isArray(e[0])?([s,n,i]=e,t=rs):[t,s,n,i]=e,!t)return is.lQ;Array.isArray(s)||(s=[s]),Array.isArray(n)||(n=[n]);const a=[],r=()=>{a.forEach((e=>e())),a.length=0},l=(0,o.wB)((()=>[as(t),(0,is.BA)(i)]),(([e,t])=>{if(r(),!e)return;const i=(0,is.Gv)(t)?{...t}:t;a.push(...s.flatMap((t=>n.map((s=>((e,t,s,n)=>(e.addEventListener(t,s,n),()=>e.removeEventListener(t,s,n)))(e,t,s,i))))))}),{immediate:!0,flush:"post"}),d=()=>{l(),r()};return(0,is.Uo)(d),d}let ls=!1;function ds(e,t,s={}){const{window:n=rs,ignore:i=[],capture:a=!0,detectIframe:r=!1}=s;if(!n)return is.lQ;is.un&&!ls&&(ls=!0,Array.from(n.document.body.children).forEach((e=>e.addEventListener("click",is.lQ))),n.document.documentElement.addEventListener("click",is.lQ));let o=!0;const l=e=>i.some((t=>{if("string"==typeof t)return Array.from(n.document.querySelectorAll(t)).some((t=>t===e.target||e.composedPath().includes(t)));{const s=as(t);return s&&(e.target===s||e.composedPath().includes(s))}})),d=[os(n,"click",(s=>{const n=as(e);n&&n!==s.target&&!s.composedPath().includes(n)&&(0===s.detail&&(o=!l(s)),o?t(s):o=!0)}),{passive:!0,capture:a}),os(n,"pointerdown",(t=>{const s=as(e);o=!l(t)&&!(!s||t.composedPath().includes(s))}),{passive:!0}),r&&os(n,"blur",(s=>{setTimeout((()=>{var i;const a=as(e);"IFRAME"!==(null==(i=n.document.activeElement)?void 0:i.tagName)||(null==a?void 0:a.contains(n.document.activeElement))||t(s)}),0)}))].filter(Boolean);return()=>d.forEach((e=>e()))}const ms={[is.C$.mounted](e,t){const s=!t.modifiers.bubble;if("function"==typeof t.value)e.__onClickOutside_stop=ds(e,t.value,{capture:s});else{const[n,i]=t.value;e.__onClickOutside_stop=ds(e,n,Object.assign({capture:s},i))}},[is.C$.unmounted](e){e.__onClickOutside_stop()}};is.C$.mounted,is.C$.mounted,"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self,is.C$.mounted,is.C$.mounted,is.C$.mounted;is.C$.mounted,is.C$.mounted;Boolean,Boolean,Boolean,Boolean,is.C$.mounted;(0,o.KR)(!1);const cs={name:"FileMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gs=(0,q.A)(cs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-multiple-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var us=n(25866);const ps=o.Ay.extend({name:"DragAndDropPreview",components:{FileMultipleIcon:gs,FolderIcon:us.A},data:()=>({nodes:[]}),computed:{isSingleNode(){return 1===this.nodes.length},isSingleFolder(){return this.isSingleNode&&this.nodes[0].type===O.pt.Folder},name(){return this.size?"".concat(this.summary," – ").concat(this.size):this.summary},size(){const e=this.nodes.reduce(((e,t)=>e+t.size||0),0),t=parseInt(e,10)||0;return"number"!=typeof t||t<0?null:(0,O.v7)(t,!0)},summary(){if(this.isSingleNode){var e;const t=this.nodes[0];return(null===(e=t.attributes)||void 0===e?void 0:e.displayname)||t.basename}return es(this.nodes)}},methods:{update(e){this.nodes=e,this.$refs.previewImg.replaceChildren(),e.slice(0,3).forEach((e=>{const t=document.querySelector('[data-cy-files-list-row-fileid="'.concat(e.fileid,'"] .files-list__row-icon img'));t&&this.$refs.previewImg.appendChild(t.parentNode.cloneNode(!0))})),this.$nextTick((()=>{this.$emit("loaded",this.$el)}))}}}),fs=ps;var hs=n(76810),vs={};vs.styleTagTransform=he(),vs.setAttributes=ge(),vs.insert=me().bind(null,"head"),vs.domAPI=le(),vs.insertStyleElement=pe(),re()(hs.A,vs),hs.A&&hs.A.locals&&hs.A.locals;const ws=(0,q.A)(fs,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list-drag-image"},[t("span",{staticClass:"files-list-drag-image__icon"},[t("span",{ref:"previewImg"}),e._v(" "),e.isSingleFolder?t("FolderIcon"):t("FileMultipleIcon")],1),e._v(" "),t("span",{staticClass:"files-list-drag-image__name"},[e._v(e._s(e.name))])])}),[],!1,null,null,null).exports,ys=o.Ay.extend(ws);let Cs;o.Ay.directive("onClickOutside",ms);const Ts=(0,O.qK)(),As=(0,o.pM)({props:{source:{type:[O.vd,O.ZH,O.bP],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},provide(){return{defaultFileAction:(0,o.EW)((()=>this.defaultFileAction)),enabledFileActions:(0,o.EW)((()=>this.enabledFileActions))}},data:()=>({loading:"",dragover:!1,gridMode:!1}),computed:{currentDir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){var e,t;return(null===(e=this.$route.params)||void 0===e?void 0:e.fileid)||(null===(t=this.$route.query)||void 0===t?void 0:t.fileid)||null},fileid(){var e;return null===(e=this.source)||void 0===e?void 0:e.fileid},uniqueId(){return function(e){let t=0;for(let s=0;s<e.length;s++)t=(t<<5)-t+e.charCodeAt(s)|0;return t>>>0}(this.source.source)},isLoading(){return this.source.status===O.zI.LOADING||""!==this.loading},displayName(){return this.source.displayname||this.source.basename},basename(){return""===this.extension?this.displayName:this.displayName.slice(0,0-this.extension.length)},extension(){return this.source.type===O.pt.Folder?"":(0,We.extname)(this.displayName)},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},isActive(){return String(this.fileid)===String(this.currentFileId)},canDrag(){if(this.isRenaming)return!1;const e=e=>0!=((null==e?void 0:e.permissions)&O.aX.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((e=>this.filesStore.getNode(e))).every(e):e(this.source)},canDrop(){return this.source.type===O.pt.Folder&&!this.draggingFiles.includes(this.source.source)&&0!=(this.source.permissions&O.aX.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId.toString()},set(e){this.actionsMenuStore.opened=e?this.uniqueId.toString():null}},isRenaming(){return this.renamingStore.renamingNode===this.source},enabledFileActions(){return this.source.status===O.zI.FAILED?[]:Ts.filter((e=>{if(!e.enabled)return!0;try{return e.enabled([this.source],this.currentView)}catch(t){return se.error("Error while checking action",{action:e,error:t}),!1}})).sort(((e,t)=>(e.order||0)-(t.order||0)))},defaultFileAction(){return this.enabledFileActions.find((e=>void 0!==e.default))}},watch:{source(e,t){e.source!==t.source&&this.resetState()},openedMenu(){!1===this.openedMenu&&window.setTimeout((()=>{if(this.openedMenu)return;const e=document.getElementById("app-content-vue");null!==e&&(e.style.removeProperty("--mouse-pos-x"),e.style.removeProperty("--mouse-pos-y"))}),300)}},beforeDestroy(){this.resetState()},methods:{resetState(){var e,t;this.loading="",null===(e=this.$refs)||void 0===e||null===(e=e.preview)||void 0===e||null===(t=e.reset)||void 0===t||t.call(e),this.openedMenu=!1},onRightClick(e){if(this.openedMenu)return;if(this.gridMode){var t;const e=null===(t=this.$el)||void 0===t?void 0:t.closest("main.app-content");e.style.removeProperty("--mouse-pos-x"),e.style.removeProperty("--mouse-pos-y")}else{var s;const t=null===(s=this.$el)||void 0===s?void 0:s.closest("main.app-content"),n=t.getBoundingClientRect();t.style.setProperty("--mouse-pos-x",Math.max(0,e.clientX-n.left-200)+"px"),t.style.setProperty("--mouse-pos-y",Math.max(0,e.clientY-n.top)+"px")}const n=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&n?"global":this.uniqueId.toString(),e.preventDefault(),e.stopPropagation()},execDefaultAction(e){if(!(this.isRenaming||e.button>1))return e.ctrlKey||e.metaKey||1===e.button?(e.preventDefault(),window.open((0,d.Jv)("/f/{fileId}",{fileId:this.fileid})),!1):void(this.defaultFileAction?(e.preventDefault(),e.stopPropagation(),this.defaultFileAction.exec(this.source,this.currentView,this.currentDir)):window.open((0,d.Jv)("/f/{fileId}",{fileId:this.fileid}),"_self"))},openDetailsIfAvailable(e){var t;e.preventDefault(),e.stopPropagation(),null!=dt&&null!==(t=dt.enabled)&&void 0!==t&&t.call(dt,[this.source],this.currentView)&&dt.exec(this.source,this.currentView,this.currentDir)},onDragOver(e){this.dragover=this.canDrop,this.canDrop?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none"},onDragLeave(e){const t=e.currentTarget;null!=t&&t.contains(e.relatedTarget)||(this.dragover=!1)},async onDragStart(e){var t,s,n;if(e.stopPropagation(),!this.canDrag||!this.fileid)return e.preventDefault(),void e.stopPropagation();se.debug("Drag started",{event:e}),null===(t=e.dataTransfer)||void 0===t||null===(s=t.clearData)||void 0===s||s.call(t),this.renamingStore.$reset(),this.selectedFiles.includes(this.source.source)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.source.source]);const i=this.draggingStore.dragging.map((e=>this.filesStore.getNode(e))),a=await(async e=>new Promise((t=>{Cs||(Cs=(new ys).$mount(),document.body.appendChild(Cs.$el)),Cs.update(e),Cs.$on("loaded",(()=>{t(Cs.$el),Cs.$off("loaded")}))})))(i);null===(n=e.dataTransfer)||void 0===n||n.setDragImage(a,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,se.debug("Drag ended")},async onDrop(e){var t,s,n;if(!(this.draggingFiles||null!==(t=e.dataTransfer)&&void 0!==t&&null!==(t=t.items)&&void 0!==t&&t.length))return;e.preventDefault(),e.stopPropagation();const i=this.draggingFiles,a=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],r=await Wt(a),o=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.source.path)),l=null==o?void 0:o.folder;if(!l)return void(0,Q.Qg)(this.t("files","Target folder does not exist any more"));if(!this.canDrop||e.button)return;const d=e.ctrlKey;if(this.dragover=!1,se.debug("Dropped",{event:e,folder:l,selection:i,fileTree:r}),r.contents.length>0)return void await Gt(r,l,o.contents);const m=i.map((e=>this.filesStore.getNode(e)));await Yt(m,l,o.contents,d),i.some((e=>this.selectedFiles.includes(e)))&&(se.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:V.Tl}});var bs=n(4604);const xs={name:"CustomElementRender",props:{source:{type:Object,required:!0},currentView:{type:Object,required:!0},render:{type:Function,required:!0}},watch:{source(){this.updateRootElement()},currentView(){this.updateRootElement()}},mounted(){this.updateRootElement()},methods:{async updateRootElement(){const e=await this.render(this.source,this.currentView);e?this.$el.replaceChildren(e):this.$el.replaceChildren()}}},ks=(0,q.A)(xs,(function(){return(0,this._self._c)("span")}),[],!1,null,null,null).exports;var _s=n(89257),Ss=n(24764),Fs=n(80114);const Ns={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ls=(0,q.A)(Ns,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Us=(0,o.pM)({name:"FileEntryActions",components:{ArrowLeftIcon:Ls,CustomElementRender:ks,NcActionButton:_s.A,NcActions:Ss.A,NcActionSeparator:Fs.A,NcIconSvgWrapper:$.A,NcLoadingIcon:st.A},props:{filesListWidth:{type:Number,required:!0},loading:{type:String,required:!0},opened:{type:Boolean,default:!1},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=De();return{currentView:e,enabledFileActions:(0,o.WQ)("enabledFileActions",[])}},data:()=>({openedSubmenu:null}),computed:{currentDir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},isLoading(){return this.source.status===O.zI.LOADING},enabledInlineActions(){return this.filesListWidth<768||this.gridMode?[]:this.enabledFileActions.filter((e=>{try{var t;return null==e||null===(t=e.inline)||void 0===t?void 0:t.call(e,this.source,this.currentView)}catch(t){return se.error("Error while checking if action is inline",{action:e,error:t}),!1}}))},enabledRenderActions(){return this.gridMode?[]:this.enabledFileActions.filter((e=>"function"==typeof e.renderInline))},enabledMenuActions(){if(this.openedSubmenu)return this.enabledInlineActions;const e=[...this.enabledInlineActions,...this.enabledFileActions.filter((e=>e.default!==O.m9.HIDDEN&&"function"!=typeof e.renderInline))].filter(((e,t,s)=>t===s.findIndex((t=>t.id===e.id)))),t=e.filter((e=>!e.parent)).map((e=>e.id));return e.filter((e=>!(e.parent&&t.includes(e.parent))))},enabledSubmenuActions(){return this.enabledFileActions.filter((e=>e.parent)).reduce(((e,t)=>(e[t.parent]||(e[t.parent]=[]),e[t.parent].push(t),e)),{})},openedMenu:{get(){return this.opened},set(e){this.$emit("update:opened",e)}},getBoundariesElement:()=>document.querySelector(".app-content > .files-list"),mountType(){return this.source.attributes["mount-type"]}},watch:{openedMenu(){this.openedSubmenu=null}},methods:{actionDisplayName(e){try{if((this.gridMode||this.filesListWidth<768&&e.inline)&&"function"==typeof e.title){const t=e.title([this.source],this.currentView);if(t)return t}return e.displayName([this.source],this.currentView)}catch(t){return se.error("Error while getting action display name",{action:e,error:t}),e.id}},async onActionClick(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.isLoading||""!==this.loading)return;if(this.enabledSubmenuActions[e.id])return void(this.openedSubmenu=e);let s=e.id;try{s=e.displayName([this.source],this.currentView)}catch(t){se.error("Error while getting action display name",{action:e,error:t})}try{this.$emit("update:loading",e.id),this.$set(this.source,"status",O.zI.LOADING);const t=await e.exec(this.source,this.currentView,this.currentDir);if(null==t)return;if(t)return void(0,Q.Te)((0,V.Tl)("files",'"{displayName}" action executed successfully',{displayName:s}));(0,Q.Qg)((0,V.Tl)("files",'"{displayName}" action failed',{displayName:s}))}catch(t){se.error("Error while executing action",{action:e,error:t}),(0,Q.Qg)((0,V.Tl)("files",'"{displayName}" action failed',{displayName:s}))}finally{this.$emit("update:loading",""),this.$set(this.source,"status",void 0),t&&(this.openedSubmenu=null)}},isMenu(e){var t;return(null===(t=this.enabledSubmenuActions[e])||void 0===t?void 0:t.length)>0},async onBackToMenuClick(e){this.openedSubmenu=null,await this.$nextTick(),this.$nextTick((()=>{var t;const s=null===(t=this.$refs["action-".concat(e.id)])||void 0===t?void 0:t[0];var n;s&&(null===(n=s.$el.querySelector("button"))||void 0===n||n.focus())}))},t:V.Tl}}),Ps=Us;var Es=n(11298),Is={};Is.styleTagTransform=he(),Is.setAttributes=ge(),Is.insert=me().bind(null,"head"),Is.domAPI=le(),Is.insertStyleElement=pe(),re()(Es.A,Is),Es.A&&Es.A.locals&&Es.A.locals;var Ds=n(85722),zs={};zs.styleTagTransform=he(),zs.setAttributes=ge(),zs.insert=me().bind(null,"head"),zs.domAPI=le(),zs.insertStyleElement=pe(),re()(Ds.A,zs),Ds.A&&Ds.A.locals&&Ds.A.locals;var Bs=(0,q.A)(Ps,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("td",{staticClass:"files-list__row-actions",attrs:{"data-cy-files-list-row-actions":""}},[s._l(s.enabledRenderActions,(function(e){return n("CustomElementRender",{key:e.id,staticClass:"files-list__row-action--inline",class:"files-list__row-action-"+e.id,attrs:{"current-view":s.currentView,render:e.renderInline,source:s.source}})})),s._v(" "),n("NcActions",{ref:"actionsMenu",attrs:{"boundaries-element":s.getBoundariesElement,container:s.getBoundariesElement,"force-name":!0,type:"tertiary","force-menu":0===s.enabledInlineActions.length,inline:s.enabledInlineActions.length,open:s.openedMenu},on:{"update:open":function(e){s.openedMenu=e},close:function(e){s.openedSubmenu=null}}},[s._l(s.enabledMenuActions,(function(e){var t;return n("NcActionButton",{key:e.id,ref:"action-".concat(e.id),refInFor:!0,class:{["files-list__row-action-".concat(e.id)]:!0,"files-list__row-action--menu":s.isMenu(e.id)},attrs:{"close-after-click":!s.isMenu(e.id),"data-cy-files-list-row-action":e.id,"is-menu":s.isMenu(e.id),title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t"+s._s("shared"===s.mountType&&"sharing-status"===e.id?"":s.actionDisplayName(e))+"\n\t\t")])})),s._v(" "),s.openedSubmenu&&s.enabledSubmenuActions[null===(e=s.openedSubmenu)||void 0===e?void 0:e.id]?[n("NcActionButton",{staticClass:"files-list__row-action-back",on:{click:function(e){return s.onBackToMenuClick(s.openedSubmenu)}},scopedSlots:s._u([{key:"icon",fn:function(){return[n("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)},[s._v("\n\t\t\t\t"+s._s(s.t("files","Back"))+"\n\t\t\t")]),s._v(" "),n("NcActionSeparator"),s._v(" "),s._l(s.enabledSubmenuActions[null===(t=s.openedSubmenu)||void 0===t?void 0:t.id],(function(e){var t;return n("NcActionButton",{key:e.id,staticClass:"files-list__row-action--submenu",class:"files-list__row-action-".concat(e.id),attrs:{"close-after-click":"","data-cy-files-list-row-action":e.id,title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t\t"+s._s(s.actionDisplayName(e))+"\n\t\t\t")])}))]:s._e()],2)],2)}),[],!1,null,"7a49ca87",null);const js=Bs.exports,Ms=(0,o.pM)({name:"FileEntryCheckbox",components:{NcCheckboxRadioSwitch:Ae.A,NcLoadingIcon:st.A},props:{fileid:{type:Number,required:!0},isLoading:{type:Boolean,default:!1},nodes:{type:Array,required:!0},source:{type:Object,required:!0}},setup(){const e=wt(),t=function(){const e=(0,a.nY)("keyboard",{state:()=>({altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1}),actions:{onEvent(e){e||(e=window.event),o.Ay.set(this,"altKey",!!e.altKey),o.Ay.set(this,"ctrlKey",!!e.ctrlKey),o.Ay.set(this,"metaKey",!!e.metaKey),o.Ay.set(this,"shiftKey",!!e.shiftKey)}}})(...arguments);return e._initialized||(window.addEventListener("keydown",e.onEvent),window.addEventListener("keyup",e.onEvent),window.addEventListener("mousemove",e.onEvent),e._initialized=!0),e}();return{keyboardStore:t,selectionStore:e}},computed:{selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},index(){return this.nodes.findIndex((e=>e.source===this.source.source))},isFile(){return this.source.type===O.pt.File},loadingLabel(){return this.isFile?(0,V.Tl)("files","File is loading"):(0,V.Tl)("files","Folder is loading")},ariaLabel(){return this.isFile?(0,V.Tl)("files",'Toggle selection for file "{displayName}"',{displayName:this.source.basename}):(0,V.Tl)("files",'Toggle selection for folder "{displayName}"',{displayName:this.source.basename})}},methods:{onSelectionChange(e){var t;const s=this.index,n=this.selectionStore.lastSelectedIndex;if(null!==(t=this.keyboardStore)&&void 0!==t&&t.shiftKey&&null!==n){const e=this.selectedFiles.includes(this.source.source),t=Math.min(s,n),i=Math.max(n,s),a=this.selectionStore.lastSelection,r=this.nodes.map((e=>e.source)).slice(t,i+1).filter(Boolean),o=[...a,...r].filter((t=>!e||t!==this.source.source));return se.debug("Shift key pressed, selecting all files in between",{start:t,end:i,filesToSelect:r,isAlreadySelected:e}),void this.selectionStore.set(o)}const i=e?[...this.selectedFiles,this.source.source]:this.selectedFiles.filter((e=>e!==this.source.source));se.debug("Updating selection",{selection:i}),this.selectionStore.set(i),this.selectionStore.setLastIndex(s)},resetSelection(){this.selectionStore.reset()},t:V.Tl}}),Os=(0,q.A)(Ms,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("td",{staticClass:"files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[e.isLoading?t("NcLoadingIcon",{attrs:{name:e.loadingLabel}}):t("NcCheckboxRadioSwitch",{attrs:{"aria-label":e.ariaLabel,checked:e.isSelected},on:{"update:checked":e.onSelectionChange}})],1)}),[],!1,null,null,null).exports;var Rs=n(82182);function Vs(){const e=function(){var e=(0,o.nI)().proxy.$root;if(!e._$route){var t=(0,o.uY)(!0).run((function(){return(0,o.Gc)(Object.assign({},e.$router.currentRoute))}));e._$route=t,e.$router.afterEach((function(e){Object.assign(t,e)}))}return e._$route}();return{directory:(0,o.EW)((()=>String(e.query.dir||"/").replace(/^(.+)\/$/,"$1"))),fileId:(0,o.EW)((()=>{var t;const s=Number.parseInt(null!==(t=e.params.fileid)&&void 0!==t?t:"0")||null;return Number.isNaN(s)?null:s})),openFile:(0,o.EW)((()=>"openfile"in e.query&&("string"!=typeof e.query.openfile||"false"!==e.query.openfile.toLocaleLowerCase())))}}function Hs(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(""===e.trim())return(0,V.t)("files","Filename must not be empty.");try{return(0,O.KT)(e),""}catch(e){if(!(e instanceof O.di))throw e;switch(e.reason){case O.nF.Character:return(0,V.t)("files",'"{char}" is not allowed inside a filename.',{char:e.segment},void 0,{escape:t});case O.nF.ReservedName:return(0,V.t)("files",'"{segment}" is a reserved name and not allowed for filenames.',{segment:e.segment},void 0,{escape:!1});case O.nF.Extension:return e.segment.match(/\.[a-z]/i)?(0,V.t)("files",'"{extension}" is not an allowed filetype.',{extension:e.segment},void 0,{escape:!1}):(0,V.t)("files",'Filenames must not end with "{extension}".',{extension:e.segment},void 0,{escape:!1});default:return(0,V.t)("files","Invalid filename.")}}}const qs=(0,o.pM)({name:"FileEntryName",components:{NcTextField:Rs.A},props:{basename:{type:String,required:!0},extension:{type:String,required:!0},filesListWidth:{type:Number,required:!0},nodes:{type:Array,required:!0},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=De(),{directory:t}=Vs(),s=ns();return{currentView:e,defaultFileAction:(0,o.WQ)("defaultFileAction"),directory:t,renamingStore:s}},computed:{isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},newName:{get(){return this.renamingStore.newName},set(e){this.renamingStore.newName=e}},renameLabel(){return{[O.pt.File]:(0,V.Tl)("files","Filename"),[O.pt.Folder]:(0,V.Tl)("files","Folder name")}[this.source.type]},linkTo(){if(this.source.attributes.failed)return{is:"span",params:{title:(0,V.Tl)("files","This node is unavailable")}};if(this.defaultFileAction&&this.currentView){const e=this.defaultFileAction.displayName([this.source],this.currentView);return{is:"button",params:{"aria-label":e,title:e,tabindex:"0"}}}return{is:"span"}}},watch:{isRenaming:{immediate:!0,handler(e){e&&this.startRenaming()}},newName(){var e,t,s;const n=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"",i=null===(s=this.$refs.renameInput)||void 0===s?void 0:s.$el.querySelector("input");if(!i)return;let a=Hs(n);""===a&&this.checkIfNodeExists(n)&&(a=(0,V.Tl)("files","Another entry with the same name already exists.")),this.$nextTick((()=>{this.isRenaming&&(i.setCustomValidity(a),i.reportValidity())}))}},methods:{checkIfNodeExists(e){return this.nodes.find((t=>t.basename===e&&t!==this.source))},startRenaming(){this.$nextTick((()=>{var e,t;const s=null===(e=this.$refs.renameInput)||void 0===e?void 0:e.$el.querySelector("input");if(!s)return void se.error("Could not find the rename input");s.focus();const n=this.source.basename.length-(null!==(t=this.source.extension)&&void 0!==t?t:"").length;s.setSelectionRange(0,n),s.dispatchEvent(new Event("keyup"))}))},stopRenaming(){this.isRenaming&&this.renamingStore.$reset()},async onRename(){var e,t;const s=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"";if(!this.$refs.renameForm.checkValidity())return void(0,Q.Qg)((0,V.Tl)("files","Invalid filename.")+" "+Hs(s));const n=this.source.basename;if(s!==n)try{await this.renamingStore.rename()&&((0,Q.Te)((0,V.Tl)("files",'Renamed "{oldName}" to "{newName}"',{oldName:n,newName:s})),this.$nextTick((()=>{const e=this.$refs.basename;null==e||e.focus()})))}catch(e){se.error(e),(0,Q.Qg)(e.message),this.startRenaming()}else this.stopRenaming()},t:V.Tl}});var Ws=n(81038),Gs={};Gs.styleTagTransform=he(),Gs.setAttributes=ge(),Gs.insert=me().bind(null,"head"),Gs.domAPI=le(),Gs.insertStyleElement=pe(),re()(Ws.A,Gs),Ws.A&&Ws.A.locals&&Ws.A.locals;const Ys=(0,q.A)(qs,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.isRenaming?t("form",{directives:[{name:"on-click-outside",rawName:"v-on-click-outside",value:e.onRename,expression:"onRename"}],ref:"renameForm",staticClass:"files-list__row-rename",attrs:{"aria-label":e.t("files","Rename file")},on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onRename.apply(null,arguments)}}},[t("NcTextField",{ref:"renameInput",attrs:{label:e.renameLabel,autofocus:!0,minlength:1,required:!0,value:e.newName,enterkeyhint:"done"},on:{"update:value":function(t){e.newName=t},keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.stopRenaming.apply(null,arguments)}}})],1):t(e.linkTo.is,e._b({ref:"basename",tag:"component",staticClass:"files-list__row-name-link",attrs:{"aria-hidden":e.isRenaming,"data-cy-files-list-row-name-link":""}},"component",e.linkTo.params,!1),[t("span",{staticClass:"files-list__row-name-text"},[t("span",{staticClass:"files-list__row-name-",domProps:{textContent:e._s(e.basename)}}),e._v(" "),t("span",{staticClass:"files-list__row-name-ext",domProps:{textContent:e._s(e.extension)}})])])}),[],!1,null,"1b7d6a24",null).exports;var $s=n(43261);const Ks={name:"FileIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Js=(0,q.A)(Ks,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Qs={name:"FolderOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Zs=(0,q.A)(Qs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-open-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Xs={name:"KeyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},en=(0,q.A)(Xs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon key-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,tn={name:"NetworkIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},sn=(0,q.A)(tn,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon network-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,nn={name:"TagIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},an=(0,q.A)(nn,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tag-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,rn={name:"PlayCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},on=(0,q.A)(rn,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon play-circle-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,ln={name:"CollectivesIcon",props:{title:{type:String,default:""},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},dn=(0,q.A)(ln,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon collectives-icon",attrs:{"aria-hidden":!e.title,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 16 16"}},[t("path",{attrs:{d:"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z"}}),e._v(" "),t("path",{attrs:{d:"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z"}}),e._v(" "),t("path",{attrs:{d:"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z"}}),e._v(" "),t("path",{attrs:{d:"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z"}})])])}),[],!1,null,null,null).exports,mn=(0,o.pM)({name:"FavoriteIcon",components:{NcIconSvgWrapper:$.A},data:()=>({StarSvg:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star" viewBox="0 0 24 24"><path d="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z" /></svg>'}),async mounted(){var e;await this.$nextTick();const t=this.$el.querySelector("svg");null==t||null===(e=t.setAttribute)||void 0===e||e.call(t,"viewBox","-4 -4 30 30")},methods:{t:V.Tl}});var cn=n(14781),gn={};gn.styleTagTransform=he(),gn.setAttributes=ge(),gn.insert=me().bind(null,"head"),gn.domAPI=le(),gn.insertStyleElement=pe(),re()(cn.A,gn),cn.A&&cn.A.locals&&cn.A.locals;const un=(0,q.A)(mn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcIconSvgWrapper",{staticClass:"favorite-marker-icon",attrs:{name:e.t("files","Favorite"),svg:e.StarSvg}})}),[],!1,null,"42ea6dd4",null).exports,pn=o.Ay.extend({name:"FileEntryPreview",components:{AccountGroupIcon:$s.A,AccountPlusIcon:at,CollectivesIcon:dn,FavoriteIcon:un,FileIcon:Js,FolderIcon:us.A,FolderOpenIcon:Zs,KeyIcon:en,LinkIcon:Je.A,NetworkIcon:sn,TagIcon:an},props:{source:{type:Object,required:!0},dragover:{type:Boolean,default:!1},gridMode:{type:Boolean,default:!1}},setup:()=>({userConfigStore:Ne()}),data:()=>({backgroundFailed:void 0}),computed:{fileid(){var e,t;return null===(e=this.source)||void 0===e||null===(e=e.fileid)||void 0===e||null===(t=e.toString)||void 0===t?void 0:t.call(e)},isFavorite(){return 1===this.source.attributes.favorite},userConfig(){return this.userConfigStore.userConfig},cropPreviews(){return!0===this.userConfig.crop_image_previews},previewUrl(){if(this.source.type===O.pt.Folder)return null;if(!0===this.backgroundFailed)return null;try{const e=this.source.attributes.previewUrl||(0,d.Jv)("/core/preview?fileId={fileid}",{fileid:this.fileid}),t=new URL(window.location.origin+e);return t.searchParams.set("x",this.gridMode?"128":"32"),t.searchParams.set("y",this.gridMode?"128":"32"),t.searchParams.set("mimeFallback","true"),t.searchParams.set("a",!0===this.cropPreviews?"0":"1"),t.href}catch(e){return null}},fileOverlay(){return void 0!==this.source.attributes["metadata-files-live-photo"]?on:null},folderOverlay(){var e,t,s,n;if(this.source.type!==O.pt.Folder)return null;if(1===(null===(e=this.source)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["is-encrypted"]))return en;if(null!==(t=this.source)&&void 0!==t&&null!==(t=t.attributes)&&void 0!==t&&t["is-tag"])return an;const i=Object.values((null===(s=this.source)||void 0===s||null===(s=s.attributes)||void 0===s?void 0:s["share-types"])||{}).flat();if(i.some((e=>e===He.Z.SHARE_TYPE_LINK||e===He.Z.SHARE_TYPE_EMAIL)))return Je.A;if(i.length>0)return at;switch(null===(n=this.source)||void 0===n||null===(n=n.attributes)||void 0===n?void 0:n["mount-type"]){case"external":case"external-session":return sn;case"group":return $s.A;case"collective":return dn;case"shared":return at}return null}},methods:{reset(){this.backgroundFailed=void 0,this.$refs.previewImg&&(this.$refs.previewImg.src="")},onBackgroundError(e){var t;""!==(null===(t=e.target)||void 0===t?void 0:t.src)&&(this.backgroundFailed=!0)},t:V.Tl}}),fn=(0,q.A)(pn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("span",{staticClass:"files-list__row-icon"},["folder"===e.source.type?[e.dragover?e._m(0):[e._m(1),e._v(" "),e.folderOverlay?t(e.folderOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay"}):e._e()]]:e.previewUrl&&!0!==e.backgroundFailed?t("img",{ref:"previewImg",staticClass:"files-list__row-icon-preview",class:{"files-list__row-icon-preview--loaded":!1===e.backgroundFailed},attrs:{alt:"",loading:"lazy",src:e.previewUrl},on:{error:e.onBackgroundError,load:function(t){e.backgroundFailed=!1}}}):e._m(2),e._v(" "),e.isFavorite?t("span",{staticClass:"files-list__row-icon-favorite"},[e._m(3)],1):e._e(),e._v(" "),e.fileOverlay?t(e.fileOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay files-list__row-icon-overlay--file"}):e._e()],2)}),[function(){var e=this._self._c;return this._self._setupProxy,e("FolderOpenIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FolderIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FileIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FavoriteIcon")}],!1,null,null,null).exports,hn=(0,o.pM)({name:"FileEntry",components:{CustomElementRender:ks,FileEntryActions:js,FileEntryCheckbox:Os,FileEntryName:Ys,FileEntryPreview:fn,NcDateTime:bs.A},mixins:[As],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},compact:{type:Boolean,default:!1}},setup(){const e=ss(),t=$t(),s=ft(),n=ns(),i=wt(),{currentView:a}=De();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},computed:{rowListeners(){return{...this.isRenaming?{}:{dragstart:this.onDragStart,dragover:this.onDragOver},contextmenu:this.onRightClick,dragleave:this.onDragLeave,dragend:this.onDragEnd,drop:this.onDrop}},columns(){var e;return this.filesListWidth<512||this.compact?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},size(){const e=this.source.size;return void 0===e||isNaN(e)||e<0?this.t("files","Pending"):(0,O.v7)(e,!0)},sizeOpacity(){const e=this.source.size;if(void 0===e||isNaN(e)||e<0)return{};const t=Math.round(Math.min(100,100*Math.pow(e/10485760,2)));return{color:"color-mix(in srgb, var(--color-main-text) ".concat(t,"%, var(--color-text-maxcontrast))")}},mtimeOpacity(){var e,t;const s=26784e5,n=null===(e=this.source.mtime)||void 0===e||null===(t=e.getTime)||void 0===t?void 0:t.call(e);if(!n)return{};const i=Math.round(Math.min(100,100*(s-(Date.now()-n))/s));return i<0?{}:{color:"color-mix(in srgb, var(--color-main-text) ".concat(i,"%, var(--color-text-maxcontrast))")}},mtime(){return this.source.mtime&&!isNaN(this.source.mtime.getDate())?this.source.mtime:this.source.crtime&&!isNaN(this.source.crtime.getDate())?this.source.crtime:null},mtimeTitle(){return this.source.mtime?(0,ts.A)(this.source.mtime).format("LLL"):""}},methods:{formatFileSize:O.v7}}),vn=(0,q.A)(hn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",e._g({staticClass:"files-list__row",class:{"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading,"files-list__row--active":e.isActive},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag}},e.rowListeners),[e.source.attributes.failed?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{source:e.source,dragover:e.dragover},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{basename:e.basename,extension:e.extension,"files-list-width":e.filesListWidth,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{directives:[{name:"show",rawName:"v-show",value:!e.isRenamingSmallScreen,expression:"!isRenamingSmallScreen"}],ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}}),e._v(" "),!e.compact&&e.isSizeAvailable?t("td",{staticClass:"files-list__row-size",style:e.sizeOpacity,attrs:{"data-cy-files-list-row-size":""},on:{click:e.openDetailsIfAvailable}},[t("span",[e._v(e._s(e.size))])]):e._e(),e._v(" "),!e.compact&&e.isMtimeAvailable?t("td",{staticClass:"files-list__row-mtime",style:e.mtimeOpacity,attrs:{"data-cy-files-list-row-mtime":""},on:{click:e.openDetailsIfAvailable}},[e.mtime?t("NcDateTime",{attrs:{timestamp:e.mtime,"ignore-seconds":!0}}):t("span",[e._v(e._s(e.t("files","Unknown date")))])],1):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("td",{key:s.id,staticClass:"files-list__row-column-custom",class:"files-list__row-".concat(null===(n=e.currentView)||void 0===n?void 0:n.id,"-").concat(s.id),attrs:{"data-cy-files-list-row-column-custom":s.id},on:{click:e.openDetailsIfAvailable}},[t("CustomElementRender",{attrs:{"current-view":e.currentView,render:s.render,source:e.source}})],1)}))],2)}),[],!1,null,null,null).exports,wn=(0,o.pM)({name:"FileEntryGrid",components:{FileEntryActions:js,FileEntryCheckbox:Os,FileEntryName:Ys,FileEntryPreview:fn},mixins:[As],inheritAttrs:!1,setup(){const e=ss(),t=$t(),s=ft(),n=ns(),i=wt(),{currentView:a}=De();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},data:()=>({gridMode:!0})}),yn=(0,q.A)(wn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row",class:{"files-list__row--active":e.isActive,"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag},on:{contextmenu:e.onRightClick,dragover:e.onDragOver,dragleave:e.onDragLeave,dragstart:e.onDragStart,dragend:e.onDragEnd,drop:e.onDrop}},[e.source.attributes.failed?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{dragover:e.dragover,"grid-mode":!0,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{basename:e.basename,extension:e.extension,"files-list-width":e.filesListWidth,"grid-mode":!0,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,"grid-mode":!0,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}})],1)}),[],!1,null,null,null).exports;var Cn=n(96763);const Tn={name:"FilesListHeader",props:{header:{type:Object,required:!0},currentFolder:{type:Object,required:!0},currentView:{type:Object,required:!0}},computed:{enabled(){return this.header.enabled(this.currentFolder,this.currentView)}},watch:{enabled(e){e&&this.header.updated(this.currentFolder,this.currentView)},currentFolder(){this.header.updated(this.currentFolder,this.currentView)}},mounted(){Cn.debug("Mounted",this.header.id),this.header.render(this.$refs.mount,this.currentFolder,this.currentView)}},An=(0,q.A)(Tn,(function(){var e=this,t=e._self._c;return t("div",{directives:[{name:"show",rawName:"v-show",value:e.enabled,expression:"enabled"}],class:"files-list__header-".concat(e.header.id)},[t("span",{ref:"mount"})])}),[],!1,null,null,null).exports,bn=o.Ay.extend({name:"FilesListTableFooter",components:{},props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},summary:{type:String,default:""},filesListWidth:{type:Number,default:0}},setup(){const e=vt(),t=ft(),{directory:s}=Vs(),{currentView:n}=De();return{filesStore:t,pathsStore:e,directory:s,currentView:n}},computed:{currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.directory)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.directory);return this.filesStore.getNode(t)},columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},totalSize(){var e;return null!==(e=this.currentFolder)&&void 0!==e&&e.size?(0,O.v7)(this.currentFolder.size,!0):(0,O.v7)(this.nodes.reduce(((e,t)=>e+t.size||0),0),!0)}},methods:{classForColumn(e){return{"files-list__row-column-custom":!0,["files-list__row-".concat(this.currentView.id,"-").concat(e.id)]:!0}},t:V.Tl}});var xn=n(16163),kn={};kn.styleTagTransform=he(),kn.setAttributes=ge(),kn.insert=me().bind(null,"head"),kn.domAPI=le(),kn.insertStyleElement=pe(),re()(xn.A,kn),xn.A&&xn.A.locals&&xn.A.locals;const _n=(0,q.A)(bn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",[t("th",{staticClass:"files-list__row-checkbox"},[t("span",{staticClass:"hidden-visually"},[e._v(e._s(e.t("files","Total rows summary")))])]),e._v(" "),t("td",{staticClass:"files-list__row-name"},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("span",[e._v(e._s(e.summary))])]),e._v(" "),t("td",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("td",{staticClass:"files-list__column files-list__row-size"},[t("span",[e._v(e._s(e.totalSize))])]):e._e(),e._v(" "),e.isMtimeAvailable?t("td",{staticClass:"files-list__column files-list__row-mtime"}):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("th",{key:s.id,class:e.classForColumn(s)},[t("span",[e._v(e._s(null===(n=s.summary)||void 0===n?void 0:n.call(s,e.nodes,e.currentView)))])])}))],2)}),[],!1,null,"23b7c4eb",null).exports;var Sn=n(25384),Fn=n(33388);const Nn=o.Ay.extend({setup(){const{currentView:e}=De();return{currentView:e}},computed:{...(0,a.aH)(Be,["getConfig","setSortingBy","toggleSortingDirection"]),sortingMode(){var e,t;return(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_mode)||(null===(t=this.currentView)||void 0===t?void 0:t.defaultSortKey)||"basename"},isAscSorting(){var e;return"desc"!==(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_direction)}},methods:{toggleSortBy(e){this.sortingMode!==e?this.setSortingBy(e,this.currentView.id):this.toggleSortingDirection(this.currentView.id)}}}),Ln=(0,o.pM)({name:"FilesListTableHeaderButton",components:{MenuDown:Sn.A,MenuUp:Fn.A,NcButton:et.A},mixins:[Nn],props:{name:{type:String,required:!0},mode:{type:String,required:!0}},methods:{t:V.Tl}});var Un=n(21446),Pn={};Pn.styleTagTransform=he(),Pn.setAttributes=ge(),Pn.insert=me().bind(null,"head"),Pn.domAPI=le(),Pn.insertStyleElement=pe(),re()(Un.A,Pn),Un.A&&Un.A.locals&&Un.A.locals;const En=(0,q.A)(Ln,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcButton",{class:["files-list__column-sort-button",{"files-list__column-sort-button--active":e.sortingMode===e.mode,"files-list__column-sort-button--size":"size"===e.sortingMode}],attrs:{alignment:"size"===e.mode?"end":"start-reverse",type:"tertiary",title:e.name},on:{click:function(t){return e.toggleSortBy(e.mode)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.sortingMode!==e.mode||e.isAscSorting?t("MenuUp",{staticClass:"files-list__column-sort-button-icon"}):t("MenuDown",{staticClass:"files-list__column-sort-button-icon"})]},proxy:!0}])},[e._v(" "),t("span",{staticClass:"files-list__column-sort-button-text"},[e._v(e._s(e.name))])])}),[],!1,null,"db2d1330",null).exports,In=(0,o.pM)({name:"FilesListTableHeader",components:{FilesListTableHeaderButton:En,NcCheckboxRadioSwitch:Ae.A},mixins:[Nn],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup(){const e=ft(),t=wt(),{currentView:s}=De();return{filesStore:e,selectionStore:t,currentView:s}},computed:{columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},selectAllBind(){const e=(0,V.Tl)("files","Toggle selection for all files and folders");return{"aria-label":e,checked:this.isAllSelected,indeterminate:this.isSomeSelected,title:e}},selectedNodes(){return this.selectionStore.selected},isAllSelected(){return this.selectedNodes.length===this.nodes.length},isNoneSelected(){return 0===this.selectedNodes.length},isSomeSelected(){return!this.isAllSelected&&!this.isNoneSelected}},methods:{ariaSortForMode(e){return this.sortingMode===e?this.isAscSorting?"ascending":"descending":null},classForColumn(e){var t;return{"files-list__column":!0,"files-list__column--sortable":!!e.sort,"files-list__row-column-custom":!0,["files-list__row-".concat(null===(t=this.currentView)||void 0===t?void 0:t.id,"-").concat(e.id)]:!0}},onToggleAll(e){if(e){const e=this.nodes.map((e=>e.source)).filter(Boolean);se.debug("Added all nodes to selection",{selection:e}),this.selectionStore.setLastIndex(null),this.selectionStore.set(e)}else se.debug("Cleared selection"),this.selectionStore.reset()},resetSelection(){this.selectionStore.reset()},t:V.Tl}});var Dn=n(75458),zn={};zn.styleTagTransform=he(),zn.setAttributes=ge(),zn.insert=me().bind(null,"head"),zn.domAPI=le(),zn.insertStyleElement=pe(),re()(Dn.A,zn),Dn.A&&Dn.A.locals&&Dn.A.locals;const Bn=(0,q.A)(In,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row-head"},[t("th",{staticClass:"files-list__column files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[t("NcCheckboxRadioSwitch",e._b({on:{"update:checked":e.onToggleAll}},"NcCheckboxRadioSwitch",e.selectAllBind,!1))],1),e._v(" "),t("th",{staticClass:"files-list__column files-list__row-name files-list__column--sortable",attrs:{"aria-sort":e.ariaSortForMode("basename")}},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Name"),mode:"basename"}})],1),e._v(" "),t("th",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("th",{staticClass:"files-list__column files-list__row-size",class:{"files-list__column--sortable":e.isSizeAvailable},attrs:{"aria-sort":e.ariaSortForMode("size")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Size"),mode:"size"}})],1):e._e(),e._v(" "),e.isMtimeAvailable?t("th",{staticClass:"files-list__column files-list__row-mtime",class:{"files-list__column--sortable":e.isMtimeAvailable},attrs:{"aria-sort":e.ariaSortForMode("mtime")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Modified"),mode:"mtime"}})],1):e._e(),e._v(" "),e._l(e.columns,(function(s){return t("th",{key:s.id,class:e.classForColumn(s),attrs:{"aria-sort":e.ariaSortForMode(s.id)}},[s.sort?t("FilesListTableHeaderButton",{attrs:{name:s.title,mode:s.id}}):t("span",[e._v("\n\t\t\t"+e._s(s.title)+"\n\t\t")])],1)}))],2)}),[],!1,null,"68d3de81",null).exports;var jn=n(17334),Mn=n.n(jn),On=n(96763);const Rn=o.Ay.extend({name:"VirtualList",mixins:[Kt],props:{dataComponent:{type:[Object,Function],required:!0},dataKey:{type:String,required:!0},dataSources:{type:Array,required:!0},extraProps:{type:Object,default:()=>({})},scrollToIndex:{type:Number,default:0},gridMode:{type:Boolean,default:!1},caption:{type:String,default:""}},data(){return{index:this.scrollToIndex,beforeHeight:0,headerHeight:0,tableHeight:0,resizeObserver:null}},computed:{isReady(){return this.tableHeight>0},bufferItems(){return this.gridMode?this.columnCount:3},itemHeight(){return this.gridMode?197:55},itemWidth:()=>175,rowCount(){return Math.ceil((this.tableHeight-this.headerHeight)/this.itemHeight)+this.bufferItems/this.columnCount*2+1},columnCount(){return this.gridMode?Math.floor(this.filesListWidth/this.itemWidth):1},startIndex(){return Math.max(0,this.index-this.bufferItems)},shownItems(){return this.gridMode?this.rowCount*this.columnCount:this.rowCount},renderedItems(){if(!this.isReady)return[];const e=this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems),t=e.filter((e=>Object.values(this.$_recycledPool).includes(e[this.dataKey]))).map((e=>e[this.dataKey])),s=Object.keys(this.$_recycledPool).filter((e=>!t.includes(this.$_recycledPool[e])));return e.map((e=>{const t=Object.values(this.$_recycledPool).indexOf(e[this.dataKey]);if(-1!==t)return{key:Object.keys(this.$_recycledPool)[t],item:e};const n=s.pop()||Math.random().toString(36).substr(2);return this.$_recycledPool[n]=e[this.dataKey],{key:n,item:e}}))},totalRowCount(){return Math.floor(this.dataSources.length/this.columnCount)},tbodyStyle(){const e=this.startIndex+this.rowCount>this.dataSources.length,t=this.dataSources.length-this.startIndex-this.shownItems,s=Math.floor(Math.min(this.dataSources.length-this.startIndex,t)/this.columnCount);return{paddingTop:"".concat(Math.floor(this.startIndex/this.columnCount)*this.itemHeight,"px"),paddingBottom:e?0:"".concat(s*this.itemHeight,"px"),minHeight:"".concat(this.totalRowCount*this.itemHeight,"px")}}},watch:{scrollToIndex(e){this.scrollTo(e)},totalRowCount(){this.scrollToIndex&&this.$nextTick((()=>this.scrollTo(this.scrollToIndex)))},columnCount(e,t){0!==t?this.scrollTo(this.index):On.debug("VirtualList: columnCount is 0, skipping scroll")}},mounted(){var e,t;const s=null===(e=this.$refs)||void 0===e?void 0:e.before,n=this.$el,i=null===(t=this.$refs)||void 0===t?void 0:t.thead;this.resizeObserver=new ResizeObserver(Mn()((()=>{var e,t,a;this.beforeHeight=null!==(e=null==s?void 0:s.clientHeight)&&void 0!==e?e:0,this.headerHeight=null!==(t=null==i?void 0:i.clientHeight)&&void 0!==t?t:0,this.tableHeight=null!==(a=null==n?void 0:n.clientHeight)&&void 0!==a?a:0,se.debug("VirtualList: resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(s),this.resizeObserver.observe(n),this.resizeObserver.observe(i),this.scrollToIndex&&this.scrollTo(this.scrollToIndex),this.$el.addEventListener("scroll",this.onScroll,{passive:!0}),this.$_recycledPool={}},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{scrollTo(e){const t=Math.ceil(this.dataSources.length/this.columnCount);if(t<this.rowCount)return void se.debug("VirtualList: Skip scrolling. nothing to scroll",{index:e,targetRow:t,rowCount:this.rowCount});this.index=e;const s=(Math.floor(e/this.columnCount)-.5)*this.itemHeight+this.beforeHeight;se.debug("VirtualList: scrolling to index "+e,{scrollTop:s,columnCount:this.columnCount}),this.$el.scrollTop=s},onScroll(){var e;null!==(e=this._onScrollHandle)&&void 0!==e||(this._onScrollHandle=requestAnimationFrame((()=>{this._onScrollHandle=null;const e=this.$el.scrollTop-this.beforeHeight,t=Math.floor(e/this.itemHeight)*this.columnCount;this.index=Math.max(0,t),this.$emit("scroll")})))}}}),Vn=(0,q.A)(Rn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list",attrs:{"data-cy-files-list":""}},[t("div",{ref:"before",staticClass:"files-list__before"},[e._t("before")],2),e._v(" "),e.$scopedSlots["header-overlay"]?t("div",{staticClass:"files-list__thead-overlay"},[e._t("header-overlay")],2):e._e(),e._v(" "),t("table",{staticClass:"files-list__table",class:{"files-list__table--with-thead-overlay":!!e.$scopedSlots["header-overlay"]}},[e.caption?t("caption",{staticClass:"hidden-visually"},[e._v("\n\t\t\t"+e._s(e.caption)+"\n\t\t")]):e._e(),e._v(" "),t("thead",{ref:"thead",staticClass:"files-list__thead",attrs:{"data-cy-files-list-thead":""}},[e._t("header")],2),e._v(" "),t("tbody",{staticClass:"files-list__tbody",class:e.gridMode?"files-list__tbody--grid":"files-list__tbody--list",style:e.tbodyStyle,attrs:{"data-cy-files-list-tbody":""}},e._l(e.renderedItems,(function(s,n){let{key:i,item:a}=s;return t(e.dataComponent,e._b({key:i,tag:"component",attrs:{source:a,index:n}},"component",e.extraProps,!1))})),1),e._v(" "),t("tfoot",{directives:[{name:"show",rawName:"v-show",value:e.isReady,expression:"isReady"}],staticClass:"files-list__tfoot",attrs:{"data-cy-files-list-tfoot":""}},[e._t("footer")],2)])])}),[],!1,null,null,null).exports,Hn=(0,O.qK)(),qn=(0,o.pM)({name:"FilesListTableHeaderActions",components:{NcActions:Ss.A,NcActionButton:_s.A,NcIconSvgWrapper:$.A,NcLoadingIcon:st.A},mixins:[Kt],props:{currentView:{type:Object,required:!0},selectedNodes:{type:Array,default:()=>[]}},setup:()=>({actionsMenuStore:ss(),filesStore:ft(),selectionStore:wt()}),data:()=>({loading:null}),computed:{dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},enabledActions(){return Hn.filter((e=>e.execBatch)).filter((e=>!e.enabled||e.enabled(this.nodes,this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0)))},nodes(){return this.selectedNodes.map((e=>this.getNode(e))).filter(Boolean)},areSomeNodesLoading(){return this.nodes.some((e=>e.status===O.zI.LOADING))},openedMenu:{get(){return"global"===this.actionsMenuStore.opened},set(e){this.actionsMenuStore.opened=e?"global":null}},inlineActions(){return this.filesListWidth<512?0:this.filesListWidth<768?1:this.filesListWidth<1024?2:3}},methods:{getNode(e){return this.filesStore.getNode(e)},async onActionClick(e){const t=e.displayName(this.nodes,this.currentView),s=this.selectedNodes;try{this.loading=e.id,this.nodes.forEach((e=>{o.Ay.set(e,"status",O.zI.LOADING)}));const n=await e.execBatch(this.nodes,this.currentView,this.dir);if(!n.some((e=>null!==e)))return void this.selectionStore.reset();if(n.some((e=>!1===e))){const e=s.filter(((e,t)=>!1===n[t]));if(this.selectionStore.set(e),n.some((e=>null===e)))return;return void(0,Q.Qg)(this.t("files",'"{displayName}" failed on some elements ',{displayName:t}))}(0,Q.Te)(this.t("files",'"{displayName}" batch action executed successfully',{displayName:t})),this.selectionStore.reset()}catch(s){se.error("Error while executing action",{action:e,e:s}),(0,Q.Qg)(this.t("files",'"{displayName}" action failed',{displayName:t}))}finally{this.loading=null,this.nodes.forEach((e=>{o.Ay.set(e,"status",void 0)}))}},t:V.Tl}}),Wn=qn;var Gn=n(30651),Yn={};Yn.styleTagTransform=he(),Yn.setAttributes=ge(),Yn.insert=me().bind(null,"head"),Yn.domAPI=le(),Yn.insertStyleElement=pe(),re()(Gn.A,Yn),Gn.A&&Gn.A.locals&&Gn.A.locals;var $n=(0,q.A)(Wn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list__column files-list__row-actions-batch"},[t("NcActions",{ref:"actionsMenu",attrs:{disabled:!!e.loading||e.areSomeNodesLoading,"force-name":!0,inline:e.inlineActions,"menu-name":e.inlineActions<=1?e.t("files","Actions"):null,open:e.openedMenu},on:{"update:open":function(t){e.openedMenu=t}}},e._l(e.enabledActions,(function(s){return t("NcActionButton",{key:s.id,class:"files-list__row-actions-batch-"+s.id,on:{click:function(t){return e.onActionClick(s)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loading===s.id?t("NcLoadingIcon",{attrs:{size:18}}):t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline(e.nodes,e.currentView)}})]},proxy:!0}],null,!0)},[e._v("\n\t\t\t"+e._s(s.displayName(e.nodes,e.currentView))+"\n\t\t")])})),1)],1)}),[],!1,null,"91476734",null);const Kn=$n.exports,Jn=(0,o.pM)({name:"FilesListVirtual",components:{FilesListHeader:An,FilesListTableFooter:_n,FilesListTableHeader:Bn,VirtualList:Vn,FilesListTableHeaderActions:Kn},mixins:[Kt],props:{currentView:{type:O.Ss,required:!0},currentFolder:{type:O.vd,required:!0},nodes:{type:Array,required:!0}},setup:()=>({userConfigStore:Ne(),selectionStore:wt()}),data:()=>({FileEntry:vn,FileEntryGrid:yn,headers:(0,O.By)(),scrollToIndex:0,openFileId:null}),computed:{userConfig(){return this.userConfigStore.userConfig},fileId(){return parseInt(this.$route.params.fileid)||null},openFile(){return!!this.$route.query.openfile},summary(){return es(this.nodes)},isMtimeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.mtime))},isSizeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.size))},sortedHeaders(){return this.currentFolder&&this.currentView?[...this.headers].sort(((e,t)=>e.order-t.order)):[]},caption(){const e=(0,V.Tl)("files","List of files and folders."),t=this.currentView.caption||e,s=(0,V.Tl)("files","Column headers with buttons are sortable."),n=(0,V.Tl)("files","This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list.");return"".concat(t,"\n").concat(s,"\n").concat(n)},selectedNodes(){return this.selectionStore.selected},isNoneSelected(){return 0===this.selectedNodes.length}},watch:{fileId:{handler(e){this.scrollToFile(e,!1)},immediate:!0},openFile:{handler(){this.$nextTick((()=>{this.fileId&&(this.openFile?this.handleOpenFile(this.fileId):this.unselectFile())}))},immediate:!0}},mounted(){window.document.querySelector("main.app-content").addEventListener("dragover",this.onDragOver),(0,R.B1)("files:sidebar:closed",this.unselectFile),this.fileId&&this.openSidebarForFile(this.fileId)},beforeDestroy(){window.document.querySelector("main.app-content").removeEventListener("dragover",this.onDragOver),(0,R.al)("files:sidebar:closed",this.unselectFile)},methods:{openSidebarForFile(e){if(document.documentElement.clientWidth>1024&&this.currentFolder.fileid!==e){var t;const s=this.nodes.find((t=>t.fileid===e));s&&null!=dt&&null!==(t=dt.enabled)&&void 0!==t&&t.call(dt,[s],this.currentView)&&(se.debug("Opening sidebar on file "+s.path,{node:s}),dt.exec(s,this.currentView,this.currentFolder.path))}},scrollToFile(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(e){if(e===this.currentFolder.fileid)return;const s=this.nodes.findIndex((t=>t.fileid===e));t&&-1===s&&e!==this.currentFolder.fileid&&(0,Q.Qg)(this.t("files","File not found")),this.scrollToIndex=Math.max(0,s)}},unselectFile(){var e;this.openFile||""!==OCA.Files.Sidebar.file||window.OCP.Files.Router.goToRoute(null,{...this.$route.params,fileid:String(null!==(e=this.currentFolder.fileid)&&void 0!==e?e:"")},this.$route.query)},handleOpenFile(e){if(null===e)return;const t=this.nodes.find((t=>t.fileid===e));if(void 0===t||t.type===O.pt.Folder)return;se.debug("Opening file "+t.path,{node:t}),this.openFileId=e;const s=(0,O.qK)().filter((e=>!(null==e||!e.default))).filter((e=>!e.enabled||e.enabled([t],this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0))).at(0);null==s||s.exec(t,this.currentView,this.currentFolder.path)},onDragOver(e){var t;if(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))return;e.preventDefault(),e.stopPropagation();const s=this.$refs.table.$el.getBoundingClientRect().top,n=s+this.$refs.table.$el.getBoundingClientRect().height;e.clientY<s+100?this.$refs.table.$el.scrollTop=this.$refs.table.$el.scrollTop-25:e.clientY>n-50&&(this.$refs.table.$el.scrollTop=this.$refs.table.$el.scrollTop+25)},t:V.Tl}});var Qn=n(16855),Zn={};Zn.styleTagTransform=he(),Zn.setAttributes=ge(),Zn.insert=me().bind(null,"head"),Zn.domAPI=le(),Zn.insertStyleElement=pe(),re()(Qn.A,Zn),Qn.A&&Qn.A.locals&&Qn.A.locals;var Xn=n(42067),ei={};ei.styleTagTransform=he(),ei.setAttributes=ge(),ei.insert=me().bind(null,"head"),ei.domAPI=le(),ei.insertStyleElement=pe(),re()(Xn.A,ei),Xn.A&&Xn.A.locals&&Xn.A.locals;const ti=(0,q.A)(Jn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("VirtualList",{ref:"table",attrs:{"data-component":e.userConfig.grid_view?e.FileEntryGrid:e.FileEntry,"data-key":"source","data-sources":e.nodes,"grid-mode":e.userConfig.grid_view,"extra-props":{isMtimeAvailable:e.isMtimeAvailable,isSizeAvailable:e.isSizeAvailable,nodes:e.nodes,filesListWidth:e.filesListWidth},"scroll-to-index":e.scrollToIndex,caption:e.caption},scopedSlots:e._u([e.isNoneSelected?null:{key:"header-overlay",fn:function(){return[t("span",{staticClass:"files-list__selected"},[e._v(e._s(e.t("files","{count} selected",{count:e.selectedNodes.length})))]),e._v(" "),t("FilesListTableHeaderActions",{attrs:{"current-view":e.currentView,"selected-nodes":e.selectedNodes}})]},proxy:!0},{key:"before",fn:function(){return e._l(e.sortedHeaders,(function(s){return t("FilesListHeader",{key:s.id,attrs:{"current-folder":e.currentFolder,"current-view":e.currentView,header:s}})}))},proxy:!0},{key:"header",fn:function(){return[t("FilesListTableHeader",{ref:"thead",attrs:{"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes}})]},proxy:!0},{key:"footer",fn:function(){return[t("FilesListTableFooter",{attrs:{"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes,summary:e.summary}})]},proxy:!0}],null,!0)})}),[],!1,null,"91ee9762",null).exports,si={name:"TrayArrowDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ni=(0,q.A)(si,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tray-arrow-down-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,ii=(0,o.pM)({name:"DragAndDropNotice",components:{TrayArrowDownIcon:ni},props:{currentFolder:{type:Object,required:!0}},setup(){const{currentView:e}=De();return{currentView:e}},data:()=>({dragover:!1}),computed:{canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&O.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?this.t("files","Your have used your space quota and cannot upload files anymore"):this.canUpload?null:this.t("files","You don’t have permission to upload or create files here")},resetDragOver(){return Mn()((()=>{this.dragover=!1}),3e3)}},mounted(){const e=window.document.getElementById("app-content-vue");e.addEventListener("dragover",this.onDragOver),e.addEventListener("dragleave",this.onDragLeave),e.addEventListener("drop",this.onContentDrop)},beforeDestroy(){const e=window.document.getElementById("app-content-vue");e.removeEventListener("dragover",this.onDragOver),e.removeEventListener("dragleave",this.onDragLeave),e.removeEventListener("drop",this.onContentDrop)},methods:{onDragOver(e){var t;e.preventDefault(),(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))&&(this.dragover=!0,this.resetDragOver())},onDragLeave(e){var t;const s=e.currentTarget;null!=s&&s.contains(null!==(t=e.relatedTarget)&&void 0!==t?t:e.target)||this.dragover&&(this.dragover=!1,this.resetDragOver.clear())},onContentDrop(e){se.debug("Drag and drop cancelled, dropped on empty space",{event:e}),e.preventDefault(),this.dragover&&(this.dragover=!1,this.resetDragOver.clear())},async onDrop(e){var t,s,n;if(this.cantUploadLabel)return void(0,Q.Qg)(this.cantUploadLabel);if(null!==(t=this.$el.querySelector("tbody"))&&void 0!==t&&t.contains(e.target))return;e.preventDefault(),e.stopPropagation();const i=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],a=await Wt(i),r=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.currentFolder.path)),o=null==r?void 0:r.folder;if(!o)return void(0,Q.Qg)(this.t("files","Target folder does not exist any more"));if(e.button)return;se.debug("Dropped",{event:e,folder:o,fileTree:a});const l=(await Gt(a,o,r.contents)).findLast((e=>{var t;return e.status!==qe.S.FAILED&&!e.file.webkitRelativePath.includes("/")&&(null===(t=e.response)||void 0===t||null===(t=t.headers)||void 0===t?void 0:t["oc-fileid"])&&2===e.source.replace(o.source,"").split("/").length}));if(void 0!==l){se.debug("Scrolling to last upload in current folder",{lastUpload:l});const e={path:this.$route.path,params:{...this.$route.params,fileid:String(l.response.headers["oc-fileid"])},query:{...this.$route.query}};delete e.query.openfile,this.$router.push(e)}this.dragover=!1,this.resetDragOver.clear()},t:V.Tl}});var ai=n(94932),ri={};ri.styleTagTransform=he(),ri.setAttributes=ge(),ri.insert=me().bind(null,"head"),ri.domAPI=le(),ri.insertStyleElement=pe(),re()(ai.A,ri),ai.A&&ai.A.locals&&ai.A.locals;const oi=(0,q.A)(ii,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{directives:[{name:"show",rawName:"v-show",value:e.dragover,expression:"dragover"}],staticClass:"files-list__drag-drop-notice",attrs:{"data-cy-files-drag-drop-area":""},on:{drop:e.onDrop}},[t("div",{staticClass:"files-list__drag-drop-notice-wrapper"},[e.canUpload&&!e.isQuotaExceeded?[t("TrayArrowDownIcon",{attrs:{size:48}}),e._v(" "),t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.t("files","Drag and drop files here to upload"))+"\n\t\t\t")])]:[t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.cantUploadLabel)+"\n\t\t\t")])]],2)])}),[],!1,null,"06f3ea08",null).exports;var li,di=n(96763);const mi=void 0!==(null===(li=(0,Ve.F)())||void 0===li?void 0:li.files_sharing),ci=(0,o.pM)({name:"FilesList",components:{BreadCrumbs:Xt,DragAndDropNotice:oi,FilesListVirtual:ti,LinkIcon:Je.A,ListViewIcon:Ze,NcAppContent:Xe.A,NcButton:et.A,NcEmptyContent:tt.A,NcIconSvgWrapper:$.A,NcLoadingIcon:st.A,PlusIcon:nt.A,AccountPlusIcon:at,UploadPicker:qe.U,ViewGridIcon:ot,IconAlertCircleOutline:Ye.A,IconReload:Ke},mixins:[Kt,Nn],setup(){var e;const t=ft(),s=vt(),n=wt(),i=Ct(),a=Ne(),r=Be(),{currentView:o}=De(),l=null===(e=(0,J.C)("core","config",[])["enable_non-accessible_features"])||void 0===e||e;return{currentView:o,n:V.n,t:V.t,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,userConfigStore:a,viewConfigStore:r,enableGridView:l,ShareType:He.I}},data:()=>({filterText:"",loading:!0,error:null,promise:null,unsubscribeStoreCallback:()=>{}}),computed:{userConfig(){return this.userConfigStore.userConfig},pageHeading(){var e,t;const s=null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.name)&&void 0!==e?e:(0,V.t)("files","Files");return void 0===this.currentFolder||"/"===this.dir?s:"".concat(this.currentFolder.displayname," - ").concat(s)},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},fileId(){var e,t;const s=Number.parseInt(null!==(e=null===(t=this.$route)||void 0===t?void 0:t.params.fileid)&&void 0!==e?e:"");return Number.isNaN(s)?null:s},currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.dir);return void 0!==t?this.filesStore.getNode(t):void 0},dirContentsSorted(){var e;if(!this.currentView)return[];let t=[...this.dirContents];this.filterText&&(t=t.filter((e=>e.basename.toLowerCase().includes(this.filterText.toLowerCase()))),di.debug("Files view filtered",t));const s=((null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]).find((e=>e.id===this.sortingMode));if(null!=s&&s.sort&&"function"==typeof s.sort){const e=[...this.dirContents].sort(s.sort);return this.isAscSorting?e:e.reverse()}return(0,O.ur)(t,{sortFavoritesFirst:this.userConfig.sort_favorites_first,sortFoldersFirst:this.userConfig.sort_folders_first,sortingMode:this.sortingMode,sortingOrder:this.isAscSorting?"asc":"desc"})},dirContents(){var e,t;const s=null===(e=this.userConfigStore)||void 0===e?void 0:e.userConfig.show_hidden;return((null===(t=this.currentFolder)||void 0===t?void 0:t._children)||[]).map(this.getNode).filter((e=>{var t;return s?!!e:e&&!0!==(null==e||null===(t=e.attributes)||void 0===t?void 0:t.hidden)&&!(null!=e&&e.basename.startsWith("."))}))},isEmptyDir(){return 0===this.dirContents.length},isRefreshing(){return void 0!==this.currentFolder&&!this.isEmptyDir&&this.loading},toPreviousDir(){const e=this.dir.split("/").slice(0,-1).join("/")||"/";return{...this.$route,query:{dir:e}}},shareAttributes(){var e,t;if(null!==(e=this.currentFolder)&&void 0!==e&&null!==(e=e.attributes)&&void 0!==e&&e["share-types"])return Object.values((null===(t=this.currentFolder)||void 0===t||null===(t=t.attributes)||void 0===t?void 0:t["share-types"])||{}).flat()},shareButtonLabel(){return this.shareAttributes?this.shareButtonType===He.I.Link?this.t("files","Shared by link"):this.t("files","Shared"):this.t("files","Share")},shareButtonType(){return this.shareAttributes?this.shareAttributes.some((e=>e===He.I.Link))?He.I.Link:He.I.User:null},gridViewButtonLabel(){return this.userConfig.grid_view?this.t("files","Switch to list view"):this.t("files","Switch to grid view")},canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&O.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?this.t("files","Your have used your space quota and cannot upload files anymore"):this.t("files","You don’t have permission to upload or create files here")},canShare(){return mi&&this.currentFolder&&0!=(this.currentFolder.permissions&O.aX.SHARE)},onSearch(){return Mn()((e=>{di.debug("Files app handling search event from unified search...",e),this.filterText=e.query}),500)}},watch:{pageHeading(){var e,t;document.title="".concat(this.pageHeading," - ").concat(null!==(e=null===(t=(0,Ve.F)().theming)||void 0===t?void 0:t.productName)&&void 0!==e?e:"Nextcloud")},currentView(e,t){(null==e?void 0:e.id)!==(null==t?void 0:t.id)&&(se.debug("View changed",{newView:e,oldView:t}),this.selectionStore.reset(),this.resetSearch(),this.fetchContent())},dir(e,t){var s,n;se.debug("Directory changed",{newDir:e,oldDir:t}),this.selectionStore.reset(),this.resetSearch(),null!==(s=window.OCA.Files.Sidebar)&&void 0!==s&&s.close&&window.OCA.Files.Sidebar.close(),this.fetchContent();const i=null===(n=this.$refs)||void 0===n?void 0:n.filesListVirtual;null!=i&&i.$el&&(i.$el.scrollTop=0)},dirContents(e){se.debug("Directory contents changed",{view:this.currentView,folder:this.currentFolder,contents:e}),(0,R.Ic)("files:list:updated",{view:this.currentView,folder:this.currentFolder,contents:e})}},mounted(){this.fetchContent(),(0,R.B1)("files:node:deleted",this.onNodeDeleted),(0,R.B1)("files:node:updated",this.onUpdatedNode),(0,R.B1)("nextcloud:unified-search.search",this.onSearch),(0,R.B1)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback=this.userConfigStore.$subscribe((()=>this.fetchContent()),{deep:!0})},unmounted(){(0,R.al)("files:node:deleted",this.onNodeDeleted),(0,R.al)("files:node:updated",this.onUpdatedNode),(0,R.al)("nextcloud:unified-search.search",this.onSearch),(0,R.al)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback()},methods:{async fetchContent(){this.loading=!0,this.error=null;const e=this.dir,t=this.currentView;if(t){this.promise&&"cancel"in this.promise&&(this.promise.cancel(),se.debug("Cancelled previous ongoing fetch")),this.promise=t.getContents(e);try{const{folder:s,contents:n}=await this.promise;se.debug("Fetched contents",{dir:e,folder:s,contents:n}),this.filesStore.updateNodes(n),this.$set(s,"_children",n.map((e=>e.source))),"/"===e?this.filesStore.setRoot({service:t.id,root:s}):s.fileid?(this.filesStore.updateNodes([s]),this.pathsStore.addPath({service:t.id,source:s.source,path:e})):se.error("Invalid root folder returned",{dir:e,folder:s,currentView:t}),n.filter((e=>"folder"===e.type)).forEach((s=>{this.pathsStore.addPath({service:t.id,source:s.source,path:(0,We.join)(e,s.basename)})}))}catch(e){se.error("Error while fetching content",{error:e}),this.error=function(e){if(e instanceof Error){if(function(e){return e instanceof Error&&"status"in e&&"response"in e}(e)){var t;const s=e.status||(null===(t=e.response)||void 0===t?void 0:t.status)||0;if([400,404,405].includes(s))return(0,V.t)("files","Folder not found");if(403===s)return(0,V.t)("files","This operation is forbidden");if(500===s)return(0,V.t)("files","This directory is unavailable, please check the logs or contact the administrator");if(503===s)return(0,V.t)("files","Storage is temporarily not available")}return(0,V.t)("files","Unexpected error: {error}",{error:e.message})}return(0,V.t)("files","Unknown error")}(e)}finally{this.loading=!1}}else se.debug("The current view doesn't exists or is not ready.",{currentView:t})},getNode(e){return this.filesStore.getNode(e)},onNodeDeleted(e){var t,s,n;e.fileid&&e.fileid===this.fileId&&(e.fileid===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)?window.OCP.Files.Router.goToRoute(null,{view:this.$route.params.view},{dir:null!==(s=null===(n=this.currentFolder)||void 0===n?void 0:n.dirname)&&void 0!==s?s:"/"}):window.OCP.Files.Router.goToRoute(null,{...this.$route.params,fileid:void 0},{...this.$route.query,openfile:void 0}))},onUpload(e){var t;(0,We.dirname)(e.source)===(null===(t=this.currentFolder)||void 0===t?void 0:t.source)&&this.fetchContent()},async onUploadFail(e){var t;const s=(null===(t=e.response)||void 0===t?void 0:t.status)||0;if(507!==s)if(404!==s&&409!==s)if(403!==s){try{var n;const t=new Ge.Parser({trim:!0,explicitRoot:!1}),s=(await t.parseStringPromise(null===(n=e.response)||void 0===n?void 0:n.data))["s:message"][0];if("string"==typeof s&&""!==s.trim())return void(0,Q.Qg)(this.t("files","Error during upload: {message}",{message:s}))}catch(e){se.error("Error while parsing",{error:e})}0===s?(0,Q.Qg)(this.t("files","Unknown error during upload")):(0,Q.Qg)(this.t("files","Error during upload, status code {status}",{status:s}))}else(0,Q.Qg)(this.t("files","Operation is blocked by access control"));else(0,Q.Qg)(this.t("files","Target folder does not exist any more"));else(0,Q.Qg)(this.t("files","Not enough free space"))},onUpdatedNode(e){var t;(null==e?void 0:e.fileid)===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)&&this.fetchContent()},resetSearch(){this.onSearch.clear(),this.filterText=""},openSharingSidebar(){var e;this.currentFolder?(null!==(e=window)&&void 0!==e&&null!==(e=e.OCA)&&void 0!==e&&null!==(e=e.Files)&&void 0!==e&&null!==(e=e.Sidebar)&&void 0!==e&&e.setActiveTab&&window.OCA.Files.Sidebar.setActiveTab("sharing"),dt.exec(this.currentFolder,this.currentView,this.currentFolder.path)):se.debug("No current folder found for opening sharing sidebar")},toggleGridView(){this.userConfigStore.update("grid_view",!this.userConfig.grid_view)}}});var gi=n(4195),ui={};ui.styleTagTransform=he(),ui.setAttributes=ge(),ui.insert=me().bind(null,"head"),ui.domAPI=le(),ui.insertStyleElement=pe(),re()(gi.A,ui),gi.A&&gi.A.locals&&gi.A.locals;const pi=(0,q.A)(ci,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("NcAppContent",{attrs:{"page-heading":s.pageHeading,"data-cy-files-content":""}},[n("div",{staticClass:"files-list__header"},[n("BreadCrumbs",{attrs:{path:s.dir},on:{reload:s.fetchContent},scopedSlots:s._u([{key:"actions",fn:function(){return[s.canShare&&s.filesListWidth>=512?n("NcButton",{staticClass:"files-list__header-share-button",class:{"files-list__header-share-button--shared":s.shareButtonType},attrs:{"aria-label":s.shareButtonLabel,title:s.shareButtonLabel,type:"tertiary"},on:{click:s.openSharingSidebar},scopedSlots:s._u([{key:"icon",fn:function(){return[s.shareButtonType===s.ShareType.Link?n("LinkIcon"):n("AccountPlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,4106306959)}):s._e(),s._v(" "),!s.canUpload||s.isQuotaExceeded?n("NcButton",{staticClass:"files-list__header-upload-button--disabled",attrs:{"aria-label":s.cantUploadLabel,title:s.cantUploadLabel,disabled:!0,type:"secondary"},scopedSlots:s._u([{key:"icon",fn:function(){return[n("PlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2953566425)},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","New"))+"\n\t\t\t\t")]):s.currentFolder?n("UploadPicker",{staticClass:"files-list__header-upload-button",attrs:{content:s.dirContents,destination:s.currentFolder,multiple:!0},on:{failed:s.onUploadFail,uploaded:s.onUpload}}):s._e()]},proxy:!0}])}),s._v(" "),s.filesListWidth>=512&&s.enableGridView?n("NcButton",{staticClass:"files-list__header-grid-button",attrs:{"aria-label":s.gridViewButtonLabel,title:s.gridViewButtonLabel,type:"tertiary"},on:{click:s.toggleGridView},scopedSlots:s._u([{key:"icon",fn:function(){return[s.userConfig.grid_view?n("ListViewIcon"):n("ViewGridIcon")]},proxy:!0}],null,!1,1682960703)}):s._e(),s._v(" "),s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__refresh-icon"}):s._e()],1),s._v(" "),!s.loading&&s.canUpload?n("DragAndDropNotice",{attrs:{"current-folder":s.currentFolder}}):s._e(),s._v(" "),s.loading&&!s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__loading-icon",attrs:{size:38,name:s.t("files","Loading current folder")}}):!s.loading&&s.isEmptyDir?[s.error?n("NcEmptyContent",{attrs:{name:s.error,"data-cy-files-content-error":""},scopedSlots:s._u([{key:"action",fn:function(){return[n("NcButton",{attrs:{type:"secondary"},on:{click:s.fetchContent},scopedSlots:s._u([{key:"icon",fn:function(){return[n("IconReload",{attrs:{size:20}})]},proxy:!0}],null,!1,3448385010)},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","Retry"))+"\n\t\t\t\t")])]},proxy:!0},{key:"icon",fn:function(){return[n("IconAlertCircleOutline")]},proxy:!0}],null,!1,2673163798)}):n("NcEmptyContent",{attrs:{name:(null===(e=s.currentView)||void 0===e?void 0:e.emptyTitle)||s.t("files","No files in here"),description:(null===(t=s.currentView)||void 0===t?void 0:t.emptyCaption)||s.t("files","Upload some content or sync with your devices!"),"data-cy-files-content-empty":""},scopedSlots:s._u(["/"!==s.dir?{key:"action",fn:function(){return[n("NcButton",{attrs:{"aria-label":s.t("files","Go to the previous folder"),type:"primary",to:s.toPreviousDir}},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","Go back"))+"\n\t\t\t\t")])]},proxy:!0}:null,{key:"icon",fn:function(){return[n("NcIconSvgWrapper",{attrs:{svg:s.currentView.icon}})]},proxy:!0}],null,!0)})]:n("FilesListVirtual",{ref:"filesListVirtual",attrs:{"current-folder":s.currentFolder,"current-view":s.currentView,nodes:s.dirContentsSorted}})],2)}),[],!1,null,"575ac9fe",null).exports,fi=(0,o.pM)({name:"FilesApp",components:{NcContent:M.A,FilesList:pi,Navigation:Re}}),hi=(0,q.A)(fi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcContent",{attrs:{"app-name":"files"}},[t("Navigation"),e._v(" "),t("FilesList")],1)}),[],!1,null,null,null).exports;var vi,wi;n.nc=btoa((0,r.do)()),window.OCA.Files=null!==(vi=window.OCA.Files)&&void 0!==vi?vi:{},window.OCP.Files=null!==(wi=window.OCP.Files)&&void 0!==wi?wi:{};const yi=new class{constructor(e){var t,s,n;t=this,n=void 0,(s=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(s="_router"))in t?Object.defineProperty(t,s,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[s]=n,this._router=e}get name(){return this._router.currentRoute.name}get query(){return this._router.currentRoute.query||{}}get params(){return this._router.currentRoute.params||{}}goTo(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._router.push({path:e,replace:t})}goToRoute(e,t,s,n){return this._router.push({name:e,query:s,params:t,replace:n})}}(z);Object.assign(window.OCP.Files,{Router:yi}),o.Ay.use(a.R2);const Ci=new class{constructor(){var e,t,s;e=this,s=void 0,(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t="_settings"))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,this._settings=[],j.debug("OCA.Files.Settings initialized")}register(e){return this._settings.filter((t=>t.name===e.name)).length>0?(j.error("A setting with the same name is already registered"),!1):(this._settings.push(e),!0)}get settings(){return this._settings}};Object.assign(window.OCA.Files,{Settings:Ci}),Object.assign(window.OCA.Files.Settings,{Setting:class{constructor(e,t){let{el:s,open:n,close:i}=t;B(this,"_close",void 0),B(this,"_el",void 0),B(this,"_name",void 0),B(this,"_open",void 0),this._name=e,this._el=s,this._open=n,this._close=i,"function"!=typeof this._open&&(this._open=()=>{}),"function"!=typeof this._close&&(this._close=()=>{})}get name(){return this._name}get el(){return this._el}get open(){return this._open}get close(){return this._close}}}),new(o.Ay.extend(hi))({router:z,pinia:l}).$mount("#content")},96667:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const o=r},32773:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__breadcrumbs[data-v-20858d70]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px;min-width:0}.files-list__breadcrumbs[data-v-20858d70] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-20858d70]{flex-direction:column !important;align-items:flex-start !important}","",{version:3,sources:["webpack://./apps/files/src/components/BreadCrumbs.vue"],names:[],mappings:"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,WAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA",sourcesContent:["\n.files-list__breadcrumbs {\n\t// Take as much space as possible\n\tflex: 1 1 100% !important;\n\twidth: 100%;\n\theight: 100%;\n\tmargin-block: 0;\n\tmargin-inline: 10px;\n\tmin-width: 0;\n\n\t:deep() {\n\t\ta {\n\t\t\tcursor: pointer !important;\n\t\t}\n\t}\n\n\t&--with-progress {\n\t\tflex-direction: column !important;\n\t\talign-items: flex-start !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},94932:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__drag-drop-notice[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-06f3ea08]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropNotice.vue"],names:[],mappings:"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA",sourcesContent:["\n.files-list__drag-drop-notice {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\t// Breadcrumbs height + row thead height\n\tmin-height: calc(58px + 55px);\n\tmargin: 0;\n\tuser-select: none;\n\tcolor: var(--color-text-maxcontrast);\n\tbackground-color: var(--color-main-background);\n\tborder-color: black;\n\n\th3 {\n\t\tmargin-left: 16px;\n\t\tcolor: inherit;\n\t}\n\n\t&-wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\theight: 15vh;\n\t\tmax-height: 70%;\n\t\tpadding: 0 5vw;\n\t\tborder: 2px var(--color-border-dark) dashed;\n\t\tborder-radius: var(--border-radius-large);\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},76810:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropPreview.vue"],names:[],mappings:"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["\n$size: 32px;\n$stack-shift: 6px;\n\n.files-list-drag-image {\n\tposition: absolute;\n\ttop: -9999px;\n\tleft: -9999px;\n\tdisplay: flex;\n\toverflow: hidden;\n\talign-items: center;\n\theight: 44px;\n\tpadding: 6px 12px;\n\tbackground: var(--color-main-background);\n\n\t&__icon,\n\t.files-list__row-icon {\n\t\tdisplay: flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t&__icon {\n\t\toverflow: visible;\n\t\tmargin-right: 12px;\n\n\t\timg {\n\t\t\tmax-width: 100%;\n\t\t\tmax-height: 100%;\n\t\t}\n\n\t\t.material-design-icon {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t&.folder-icon {\n\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t}\n\t\t}\n\n\t\t// Previews container\n\t\t> span {\n\t\t\tdisplay: flex;\n\n\t\t\t// Stack effect if more than one element\n\t\t\t.files-list__row-icon + .files-list__row-icon {\n\t\t\t\tmargin-top: $stack-shift;\n\t\t\t\tmargin-left: $stack-shift - $size;\n\t\t\t\t& + .files-list__row-icon {\n\t\t\t\t\tmargin-top: $stack-shift * 2;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// If we have manually clone the preview,\n\t\t\t// let's hide any fallback icons\n\t\t\t&:not(:empty) + * {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__name {\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},14781:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".favorite-marker-icon[data-v-42ea6dd4]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue"],names:[],mappings:"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA",sourcesContent:["\n.favorite-marker-icon {\n\tcolor: var(--color-favorite);\n\t// Override NcIconSvgWrapper defaults (clickable area)\n\tmin-width: unset !important;\n min-height: unset !important;\n\n\t:deep() {\n\t\tsvg {\n\t\t\t// We added a stroke for a11y so we must increase the size to include the stroke\n\t\t\twidth: 26px !important;\n\t\t\theight: 26px !important;\n\n\t\t\t// Override NcIconSvgWrapper defaults of 20px\n\t\t\tmax-width: unset !important;\n\t\t\tmax-height: unset !important;\n\n\t\t\t// Sow a border around the icon for better contrast\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-main-background);\n\t\t\t\tstroke-width: 8px;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t\tpaint-order: stroke;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},11298:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA",sourcesContent:['\n// Allow right click to define the position of the menu\n// only if defined\nmain.app-content[style*="mouse-pos-x"] .v-popper__popper {\n\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\n\n\t// If the menu is too close to the bottom, we move it up\n\t&[data-popper-placement="top"] {\n\t\t// 34px added to align with the top of the cursor\n\t\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\n\t}\n\t// Hide arrow if floating\n\t.v-popper__arrow-container {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const o=r},85722:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA",sourcesContent:["\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\n\t.button-vue__text {\n\t\tcolor: var(--color-primary-element);\n\t}\n\t.button-vue__icon {\n\t\tcolor: var(--color-primary-element);\n\t}\n}\n"],sourceRoot:""}]);const o=r},81038:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"button.files-list__row-name-link[data-v-1b7d6a24]{background-color:unset;border:none;font-weight:normal}button.files-list__row-name-link[data-v-1b7d6a24]:active{background-color:unset !important}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryName.vue"],names:[],mappings:"AACA,kDACC,sBAAA,CACA,WAAA,CACA,kBAAA,CAEA,yDAEC,iCAAA",sourcesContent:["\nbutton.files-list__row-name-link {\n\tbackground-color: unset;\n\tborder: none;\n\tfont-weight: normal;\n\n\t&:active {\n\t\t// No active styles - handled by the row entry\n\t\tbackground-color: unset !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},16163:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tr[data-v-23b7c4eb]{margin-bottom:max(25vh,var(--body-container-margin));border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-23b7c4eb]{user-select:none;color:var(--color-text-maxcontrast) !important}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableFooter.vue"],names:[],mappings:"AAEA,oBACC,oDAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA",sourcesContent:["\n// Scoped row\ntr {\n\tmargin-bottom: max(25vh, var(--body-container-margin));\n\tborder-top: 1px solid var(--color-border);\n\t// Prevent hover effect on the whole row\n\tbackground-color: transparent !important;\n\tborder-bottom: none !important;\n\n\ttd {\n\t\tuser-select: none;\n\t\t// Make sure the cell colors don't apply to column headers\n\t\tcolor: var(--color-text-maxcontrast) !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},75458:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column[data-v-68d3de81]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-68d3de81]{cursor:pointer}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeader.vue"],names:[],mappings:"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA",sourcesContent:["\n.files-list__column {\n\tuser-select: none;\n\t// Make sure the cell colors don't apply to column headers\n\tcolor: var(--color-text-maxcontrast) !important;\n\n\t&--sortable {\n\t\tcursor: pointer;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},30651:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__row-actions-batch[data-v-91476734]{flex:1 1 100% !important;max-width:100%}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderActions.vue"],names:[],mappings:"AACA,gDACC,wBAAA,CACA,cAAA",sourcesContent:["\n.files-list__row-actions-batch {\n\tflex: 1 1 100% !important;\n\tmax-width: 100%;\n}\n"],sourceRoot:""}]);const o=r},21446:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column-sort-button[data-v-db2d1330]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-db2d1330]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-db2d1330]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-db2d1330]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-db2d1330]{opacity:1}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderButton.vue"],names:[],mappings:"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA",sourcesContent:["\n.files-list__column-sort-button {\n\t// Compensate for cells margin\n\tmargin: 0 calc(var(--cell-margin) * -1);\n\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\n\n\t&-text {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tfont-weight: normal;\n\t}\n\n\t&-icon {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\topacity: 0;\n\t\ttransition: opacity var(--animation-quick);\n\t\tinset-inline-start: -10px;\n\t}\n\n\t&--size &-icon {\n\t\tinset-inline-start: 10px;\n\t}\n\n\t&--active &-icon,\n\t&:hover &-icon,\n\t&:focus &-icon,\n\t&:active &-icon {\n\t\topacity: 1;\n\t}\n}\n"],sourceRoot:""}]);const o=r},16855:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list[data-v-91ee9762]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-91ee9762] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-91ee9762] tbody tr{contain:strict}.files-list[data-v-91ee9762] tbody tr:hover,.files-list[data-v-91ee9762] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-91ee9762] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-91ee9762] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-91ee9762] .files-list__table{display:block}.files-list[data-v-91ee9762] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-91ee9762] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-91ee9762] .files-list__thead,.files-list[data-v-91ee9762] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-91ee9762] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-91ee9762] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-91ee9762] td,.files-list[data-v-91ee9762] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-91ee9762] td span,.files-list[data-v-91ee9762] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-91ee9762] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-91ee9762] .files-list__row-checkbox{justify-content:center}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-91ee9762] .files-list__row:hover,.files-list[data-v-91ee9762] .files-list__row:focus,.files-list[data-v-91ee9762] .files-list__row:active,.files-list[data-v-91ee9762] .files-list__row--active,.files-list[data-v-91ee9762] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-91ee9762] .files-list__row:hover>*,.files-list[data-v-91ee9762] .files-list__row:focus>*,.files-list[data-v-91ee9762] .files-list__row:active>*,.files-list[data-v-91ee9762] .files-list__row--active>*,.files-list[data-v-91ee9762] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-91ee9762] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-91ee9762] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-91ee9762] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-91ee9762] .files-list__row-icon *{cursor:pointer}.files-list[data-v-91ee9762] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-91ee9762] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-91ee9762] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-91ee9762] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-91ee9762] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-91ee9762] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link{display:flex;align-items:center;text-align:start;width:100%;height:100%;min-width:0;margin:0}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus-visible{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus .files-list__row-name-text{outline:var(--border-width-input-focused) solid var(--color-main-text) !important;border-radius:var(--border-radius-element)}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:var(--default-grid-baseline) calc(2*var(--default-grid-baseline));margin-left:-10px;display:inline-flex}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-91ee9762] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-91ee9762] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-91ee9762] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-91ee9762] .files-list__row-actions{width:auto}.files-list[data-v-91ee9762] .files-list__row-actions~td,.files-list[data-v-91ee9762] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-91ee9762] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-91ee9762] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-91ee9762] .files-list__row-mtime,.files-list[data-v-91ee9762] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-91ee9762] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-91ee9762] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-91ee9762] .files-list__row-column-custom{width:calc(var(--row-height)*2)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,qFACC,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CACA,QAAA,CAGA,mGACC,uBAAA,CAID,sHACC,iFAAA,CACA,0CAAA,CAED,0IACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,yEAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA",sourcesContent:["\n.files-list {\n\t--row-height: 55px;\n\t--cell-margin: 14px;\n\n\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\n\t--checkbox-size: 24px;\n\t--clickable-area: 44px;\n\t--icon-preview-size: 32px;\n\n\toverflow: auto;\n\theight: 100%;\n\twill-change: scroll-position;\n\n\t& :deep() {\n\t\t// Table head, body and footer\n\t\ttbody {\n\t\t\twill-change: padding;\n\t\t\tcontain: layout paint style;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\t// Necessary for virtual scrolling absolute\n\t\t\tposition: relative;\n\n\t\t\t/* Hover effect on tbody lines only */\n\t\t\ttr {\n\t\t\t\tcontain: strict;\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\tbackground-color: var(--color-background-dark);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Before table and thead\n\t\t.files-list__before {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\n\t\t.files-list__selected {\n\t\t\tpadding-right: 12px;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t.files-list__table {\n\t\t\tdisplay: block;\n\n\t\t\t&.files-list__table--with-thead-overlay {\n\t\t\t\t// Hide the table header below the overlay\n\t\t\t\tmargin-top: calc(-1 * var(--row-height));\n\t\t\t}\n\t\t}\n\n\t\t.files-list__thead-overlay {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\ttop: 0;\n\t\t\t// Save space for a row checkbox\n\t\t\tmargin-left: var(--row-height);\n\t\t\t// More than .files-list__thead\n\t\t\tz-index: 20;\n\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\t// Reuse row styles\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\t.files-list__thead,\n\t\t.files-list__tfoot {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\tbackground-color: var(--color-main-background);\n\n\t\t}\n\n\t\t// Table header\n\t\t.files-list__thead {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\tz-index: 10;\n\t\t\ttop: 0;\n\t\t}\n\n\t\ttr {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t\tuser-select: none;\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\tbox-sizing: border-box;\n\t\t\tuser-select: none;\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\ttd, th {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tflex: 0 0 auto;\n\t\t\tjustify-content: left;\n\t\t\twidth: var(--row-height);\n\t\t\theight: var(--row-height);\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\tborder: none;\n\n\t\t\t// Columns should try to add any text\n\t\t\t// node wrapped in a span. That should help\n\t\t\t// with the ellipsis on overflow.\n\t\t\tspan {\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row--failed {\n\t\t\tposition: absolute;\n\t\t\tdisplay: block;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t\topacity: .1;\n\t\t\tz-index: -1;\n\t\t\tbackground: var(--color-error);\n\t\t}\n\n\t\t.files-list__row-checkbox {\n\t\t\tjustify-content: center;\n\n\t\t\t.checkbox-radio-switch {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\t--icon-size: var(--checkbox-size);\n\n\t\t\t\tlabel.checkbox-radio-switch__label {\n\t\t\t\t\twidth: var(--clickable-area);\n\t\t\t\t\theight: var(--clickable-area);\n\t\t\t\t\tmargin: 0;\n\t\t\t\t\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\n\t\t\t\t}\n\n\t\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\t\tmargin: 0 !important;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row {\n\t\t\t&:hover, &:focus, &:active, &--active, &--dragover {\n\t\t\t\t// WCAG AA compliant\n\t\t\t\tbackground-color: var(--color-background-hover);\n\t\t\t\t// text-maxcontrast have been designed to pass WCAG AA over\n\t\t\t\t// a white background, we need to adjust then.\n\t\t\t\t--color-text-maxcontrast: var(--color-main-text);\n\t\t\t\t> * {\n\t\t\t\t\t--color-border: var(--color-border-dark);\n\t\t\t\t}\n\n\t\t\t\t// Hover state of the row should also change the favorite markers background\n\t\t\t\t.favorite-marker-icon svg path {\n\t\t\t\t\tstroke: var(--color-background-hover);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&--dragover * {\n\t\t\t\t// Prevent dropping on row children\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t}\n\n\t\t// Entry preview or mime icon\n\t\t.files-list__row-icon {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\toverflow: visible;\n\t\t\talign-items: center;\n\t\t\t// No shrinking or growing allowed\n\t\t\tflex: 0 0 var(--icon-preview-size);\n\t\t\tjustify-content: center;\n\t\t\twidth: var(--icon-preview-size);\n\t\t\theight: 100%;\n\t\t\t// Show same padding as the checkbox right padding for visual balance\n\t\t\tmargin-right: var(--checkbox-padding);\n\t\t\tcolor: var(--color-primary-element);\n\n\t\t\t// Icon is also clickable\n\t\t\t* {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t& > span {\n\t\t\t\tjustify-content: flex-start;\n\n\t\t\t\t&:not(.files-list__row-icon-favorite) svg {\n\t\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\t}\n\n\t\t\t\t// Slightly increase the size of the folder icon\n\t\t\t\t&.folder-icon,\n\t\t\t\t&.folder-open-icon {\n\t\t\t\t\tmargin: -3px;\n\t\t\t\t\tsvg {\n\t\t\t\t\t\twidth: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t\theight: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-preview {\n\t\t\t\toverflow: hidden;\n\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\tborder-radius: var(--border-radius);\n\t\t\t\t// Center and contain the preview\n\t\t\t\tobject-fit: contain;\n\t\t\t\tobject-position: center;\n\n\t\t\t\t/* Preview not loaded animation effect */\n\t\t\t\t&:not(.files-list__row-icon-preview--loaded) {\n\t\t\t\t\tbackground: var(--color-loading-dark);\n\t\t\t\t\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-favorite {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: -10px;\n\t\t\t}\n\n\t\t\t// File and folder overlay\n\t\t\t&-overlay {\n\t\t\t\tposition: absolute;\n\t\t\t\tmax-height: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tmax-width: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tcolor: var(--color-primary-element-text);\n\t\t\t\t// better alignment with the folder icon\n\t\t\t\tmargin-top: 2px;\n\n\t\t\t\t// Improve icon contrast with a background for files\n\t\t\t\t&--file {\n\t\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t\tbackground: var(--color-main-background);\n\t\t\t\t\tborder-radius: 100%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Entry link\n\t\t.files-list__row-name {\n\t\t\t// Prevent link from overflowing\n\t\t\toverflow: hidden;\n\t\t\t// Take as much space as possible\n\t\t\tflex: 1 1 auto;\n\n\t\t\tbutton.files-list__row-name-link {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\ttext-align: start;\n\t\t\t\t// Fill cell height and width\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\t// Necessary for flex grow to work\n\t\t\t\tmin-width: 0;\n\t\t\t\tmargin: 0;\n\n\t\t\t\t// Already added to the inner text, see rule below\n\t\t\t\t&:focus-visible {\n\t\t\t\t\toutline: none !important;\n\t\t\t\t}\n\n\t\t\t\t// Keyboard indicator a11y\n\t\t\t\t&:focus .files-list__row-name-text {\n\t\t\t\t\toutline: var(--border-width-input-focused) solid var(--color-main-text) !important;\n\t\t\t\t\tborder-radius: var(--border-radius-element);\n\t\t\t\t}\n\t\t\t\t&:focus:not(:focus-visible) .files-list__row-name-text {\n\t\t\t\t\toutline: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.files-list__row-name-text {\n\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t// Make some space for the outline\n\t\t\t\tpadding: var(--default-grid-baseline) calc(2 * var(--default-grid-baseline));\n\t\t\t\tmargin-left: -10px;\n\t\t\t\t// Align two name and ext\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\n\t\t\t.files-list__row-name-ext {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t\t// always show the extension\n\t\t\t\toverflow: visible;\n\t\t\t}\n\t\t}\n\n\t\t// Rename form\n\t\t.files-list__row-rename {\n\t\t\twidth: 100%;\n\t\t\tmax-width: 600px;\n\t\t\tinput {\n\t\t\t\twidth: 100%;\n\t\t\t\t// Align with text, 0 - padding - border\n\t\t\t\tmargin-left: -8px;\n\t\t\t\tpadding: 2px 6px;\n\t\t\t\tborder-width: 2px;\n\n\t\t\t\t&:invalid {\n\t\t\t\t\t// Show red border on invalid input\n\t\t\t\t\tborder-color: var(--color-error);\n\t\t\t\t\tcolor: red;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-actions {\n\t\t\t// take as much space as necessary\n\t\t\twidth: auto;\n\n\t\t\t// Add margin to all cells after the actions\n\t\t\t& ~ td,\n\t\t\t& ~ th {\n\t\t\t\tmargin: 0 var(--cell-margin);\n\t\t\t}\n\n\t\t\tbutton {\n\t\t\t\t.button-vue__text {\n\t\t\t\t\t// Remove bold from default button styling\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-action--inline {\n\t\t\tmargin-right: 7px;\n\t\t}\n\n\t\t.files-list__row-mtime,\n\t\t.files-list__row-size {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t\t.files-list__row-size {\n\t\t\twidth: calc(var(--row-height) * 1.5);\n\t\t\t// Right align content/text\n\t\t\tjustify-content: flex-end;\n\t\t}\n\n\t\t.files-list__row-mtime {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\n\t\t.files-list__row-column-custom {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},42067:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA",sourcesContent:["\n// Grid mode\ntbody.files-list__tbody.files-list__tbody--grid {\n\t--half-clickable-area: calc(var(--clickable-area) / 2);\n\t--row-width: 160px;\n\t// We use half of the clickable area as visual balance margin\n\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\n\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\n\t--checkbox-padding: 0px;\n\n\tdisplay: grid;\n\tgrid-template-columns: repeat(auto-fill, var(--row-width));\n\tgrid-gap: 15px;\n\trow-gap: 15px;\n\n\talign-content: center;\n\talign-items: center;\n\tjustify-content: space-around;\n\tjustify-items: center;\n\n\ttr {\n\t\twidth: var(--row-width);\n\t\theight: calc(var(--row-height) + var(--clickable-area));\n\t\tborder: none;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t// Checkbox in the top left\n\t.files-list__row-checkbox {\n\t\tposition: absolute;\n\t\tz-index: 9;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\toverflow: hidden;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t\tborder-radius: var(--half-clickable-area);\n\t}\n\n\t// Star icon in the top right\n\t.files-list__row-icon-favorite {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n\n\t.files-list__row-name {\n\t\tdisplay: grid;\n\t\tjustify-content: stretch;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tgrid-auto-rows: var(--row-height) var(--clickable-area);\n\n\t\tspan.files-list__row-icon {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\t// Visual balance, we use half of the clickable area\n\t\t\t// as a margin around the preview\n\t\t\tpadding-top: var(--half-clickable-area);\n\t\t}\n\n\t\t.files-list__row-name-text {\n\t\t\tmargin: 0;\n\t\t\tpadding-right: 0;\n\t\t}\n\t}\n\n\t.files-list__row-actions {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n}\n"],sourceRoot:""}]);const o=r},47747:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation-entry__settings-quota--not-unlimited[data-v-400127b6] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-400127b6]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}","",{version:3,sources:["webpack://./apps/files/src/components/NavigationQuota.vue"],names:[],mappings:"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA",sourcesContent:["\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n"],sourceRoot:""}]);const o=r},4195:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".toast-loading-icon{margin-inline-start:-4px;min-width:26px}.app-content[data-v-575ac9fe]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-575ac9fe]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-575ac9fe]{flex:0 0}.files-list__header-share-button[data-v-575ac9fe]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-575ac9fe]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-575ac9fe]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-575ac9fe]{margin:auto}","",{version:3,sources:["webpack://./apps/files/src/views/FilesList.vue"],names:[],mappings:"AACA,oBAEC,wBAAA,CAEA,cAAA,CAGD,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA",sourcesContent:["\n:global(.toast-loading-icon) {\n\t// Reduce start margin (it was made for text but this is an icon)\n\tmargin-inline-start: -4px;\n\t// 16px icon + 5px on both sides\n\tmin-width: 26px;\n}\n\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n\tposition: relative !important;\n}\n\n.files-list {\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\t// Do not grow or shrink (vertically)\n\t\tflex: 0 0;\n\t\tmax-width: 100%;\n\t\t// Align with the navigation toggle icon\n\t\tmargin-block: var(--app-navigation-padding, 4px);\n\t\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\n\n\t\t>* {\n\t\t\t// Do not grow or shrink (horizontally)\n\t\t\t// Only the breadcrumbs shrinks\n\t\t\tflex: 0 0;\n\t\t}\n\n\t\t&-share-button {\n\t\t\tcolor: var(--color-text-maxcontrast) !important;\n\n\t\t\t&--shared {\n\t\t\t\tcolor: var(--color-main-text) !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__refresh-icon {\n\t\tflex: 0 0 44px;\n\t\twidth: 44px;\n\t\theight: 44px;\n\t}\n\n\t&__loading-icon {\n\t\tmargin: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r},46845:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation[data-v-d0738916] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-d0738916] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-d0738916]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-d0738916]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}","",{version:3,sources:["webpack://./apps/files/src/views/Navigation.vue"],names:[],mappings:"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA",sourcesContent:["\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\n.app-navigation::v-deep .app-navigation-entry-icon {\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n}\n\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\n\tcolor: var(--color-primary-element-text);\n}\n\n.app-navigation > ul.app-navigation__list {\n\t// Use flex gap value for more elegant spacing\n\tpadding-bottom: var(--default-grid-baseline, 4px);\n}\n\n.app-navigation-entry__settings {\n\theight: auto !important;\n\toverflow: hidden !important;\n\tpadding-top: 0 !important;\n\t// Prevent shrinking or growing\n\tflex: 0 0 auto;\n}\n"],sourceRoot:""}]);const o=r},60335:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".setting-link[data-v-00f09e69]:hover{text-decoration:underline}","",{version:3,sources:["webpack://./apps/files/src/views/Settings.vue"],names:[],mappings:"AACA,qCACC,yBAAA",sourcesContent:["\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n"],sourceRoot:""}]);const o=r},51111:e=>{"use strict";const t=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!t.has(e&&e.code)},64043:(e,t,s)=>{var n=s(48287).Buffer;!function(e){e.parser=function(e,t){return new a(e,t)},e.SAXParser=a,e.SAXStream=o,e.createStream=function(e,t){return new o(e,t)},e.MAX_BUFFER_LENGTH=65536;var t,i=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];function a(t,s){if(!(this instanceof a))return new a(t,s);var n=this;!function(e){for(var t=0,s=i.length;t<s;t++)e[i[t]]=""}(n),n.q=n.c="",n.bufferCheckPosition=e.MAX_BUFFER_LENGTH,n.opt=s||{},n.opt.lowercase=n.opt.lowercase||n.opt.lowercasetags,n.looseCase=n.opt.lowercase?"toLowerCase":"toUpperCase",n.tags=[],n.closed=n.closedRoot=n.sawRoot=!1,n.tag=n.error=null,n.strict=!!t,n.noscript=!(!t&&!n.opt.noscript),n.state=k.BEGIN,n.strictEntities=n.opt.strictEntities,n.ENTITIES=n.strictEntities?Object.create(e.XML_ENTITIES):Object.create(e.ENTITIES),n.attribList=[],n.opt.xmlns&&(n.ns=Object.create(g)),n.trackPosition=!1!==n.opt.position,n.trackPosition&&(n.position=n.line=n.column=0),S(n,"onready")}e.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"],Object.create||(Object.create=function(e){function t(){}return t.prototype=e,new t}),Object.keys||(Object.keys=function(e){var t=[];for(var s in e)e.hasOwnProperty(s)&&t.push(s);return t}),a.prototype={end:function(){P(this)},write:function(t){var s=this;if(this.error)throw this.error;if(s.closed)return U(s,"Cannot write after close. Assign an onready handler.");if(null===t)return P(s);"object"==typeof t&&(t=t.toString());for(var n=0,a="";a=R(t,n++),s.c=a,a;)switch(s.trackPosition&&(s.position++,"\n"===a?(s.line++,s.column=0):s.column++),s.state){case k.BEGIN:if(s.state=k.BEGIN_WHITESPACE,"\ufeff"===a)continue;O(s,a);continue;case k.BEGIN_WHITESPACE:O(s,a);continue;case k.TEXT:if(s.sawRoot&&!s.closedRoot){for(var r=n-1;a&&"<"!==a&&"&"!==a;)(a=R(t,n++))&&s.trackPosition&&(s.position++,"\n"===a?(s.line++,s.column=0):s.column++);s.textNode+=t.substring(r,n-1)}"<"!==a||s.sawRoot&&s.closedRoot&&!s.strict?(v(a)||s.sawRoot&&!s.closedRoot||E(s,"Text data outside of root node."),"&"===a?s.state=k.TEXT_ENTITY:s.textNode+=a):(s.state=k.OPEN_WAKA,s.startTagPosition=s.position);continue;case k.SCRIPT:"<"===a?s.state=k.SCRIPT_ENDING:s.script+=a;continue;case k.SCRIPT_ENDING:"/"===a?s.state=k.CLOSE_TAG:(s.script+="<"+a,s.state=k.SCRIPT);continue;case k.OPEN_WAKA:if("!"===a)s.state=k.SGML_DECL,s.sgmlDecl="";else if(v(a));else if(C(u,a))s.state=k.OPEN_TAG,s.tagName=a;else if("/"===a)s.state=k.CLOSE_TAG,s.tagName="";else if("?"===a)s.state=k.PROC_INST,s.procInstName=s.procInstBody="";else{if(E(s,"Unencoded <"),s.startTagPosition+1<s.position){var o=s.position-s.startTagPosition;a=new Array(o).join(" ")+a}s.textNode+="<"+a,s.state=k.TEXT}continue;case k.SGML_DECL:(s.sgmlDecl+a).toUpperCase()===l?(F(s,"onopencdata"),s.state=k.CDATA,s.sgmlDecl="",s.cdata=""):s.sgmlDecl+a==="--"?(s.state=k.COMMENT,s.comment="",s.sgmlDecl=""):(s.sgmlDecl+a).toUpperCase()===d?(s.state=k.DOCTYPE,(s.doctype||s.sawRoot)&&E(s,"Inappropriately located doctype declaration"),s.doctype="",s.sgmlDecl=""):">"===a?(F(s,"onsgmldeclaration",s.sgmlDecl),s.sgmlDecl="",s.state=k.TEXT):w(a)?(s.state=k.SGML_DECL_QUOTED,s.sgmlDecl+=a):s.sgmlDecl+=a;continue;case k.SGML_DECL_QUOTED:a===s.q&&(s.state=k.SGML_DECL,s.q=""),s.sgmlDecl+=a;continue;case k.DOCTYPE:">"===a?(s.state=k.TEXT,F(s,"ondoctype",s.doctype),s.doctype=!0):(s.doctype+=a,"["===a?s.state=k.DOCTYPE_DTD:w(a)&&(s.state=k.DOCTYPE_QUOTED,s.q=a));continue;case k.DOCTYPE_QUOTED:s.doctype+=a,a===s.q&&(s.q="",s.state=k.DOCTYPE);continue;case k.DOCTYPE_DTD:s.doctype+=a,"]"===a?s.state=k.DOCTYPE:w(a)&&(s.state=k.DOCTYPE_DTD_QUOTED,s.q=a);continue;case k.DOCTYPE_DTD_QUOTED:s.doctype+=a,a===s.q&&(s.state=k.DOCTYPE_DTD,s.q="");continue;case k.COMMENT:"-"===a?s.state=k.COMMENT_ENDING:s.comment+=a;continue;case k.COMMENT_ENDING:"-"===a?(s.state=k.COMMENT_ENDED,s.comment=L(s.opt,s.comment),s.comment&&F(s,"oncomment",s.comment),s.comment=""):(s.comment+="-"+a,s.state=k.COMMENT);continue;case k.COMMENT_ENDED:">"!==a?(E(s,"Malformed comment"),s.comment+="--"+a,s.state=k.COMMENT):s.state=k.TEXT;continue;case k.CDATA:"]"===a?s.state=k.CDATA_ENDING:s.cdata+=a;continue;case k.CDATA_ENDING:"]"===a?s.state=k.CDATA_ENDING_2:(s.cdata+="]"+a,s.state=k.CDATA);continue;case k.CDATA_ENDING_2:">"===a?(s.cdata&&F(s,"oncdata",s.cdata),F(s,"onclosecdata"),s.cdata="",s.state=k.TEXT):"]"===a?s.cdata+="]":(s.cdata+="]]"+a,s.state=k.CDATA);continue;case k.PROC_INST:"?"===a?s.state=k.PROC_INST_ENDING:v(a)?s.state=k.PROC_INST_BODY:s.procInstName+=a;continue;case k.PROC_INST_BODY:if(!s.procInstBody&&v(a))continue;"?"===a?s.state=k.PROC_INST_ENDING:s.procInstBody+=a;continue;case k.PROC_INST_ENDING:">"===a?(F(s,"onprocessinginstruction",{name:s.procInstName,body:s.procInstBody}),s.procInstName=s.procInstBody="",s.state=k.TEXT):(s.procInstBody+="?"+a,s.state=k.PROC_INST_BODY);continue;case k.OPEN_TAG:C(p,a)?s.tagName+=a:(I(s),">"===a?B(s):"/"===a?s.state=k.OPEN_TAG_SLASH:(v(a)||E(s,"Invalid character in tag name"),s.state=k.ATTRIB));continue;case k.OPEN_TAG_SLASH:">"===a?(B(s,!0),j(s)):(E(s,"Forward-slash in opening tag not followed by >"),s.state=k.ATTRIB);continue;case k.ATTRIB:if(v(a))continue;">"===a?B(s):"/"===a?s.state=k.OPEN_TAG_SLASH:C(u,a)?(s.attribName=a,s.attribValue="",s.state=k.ATTRIB_NAME):E(s,"Invalid attribute name");continue;case k.ATTRIB_NAME:"="===a?s.state=k.ATTRIB_VALUE:">"===a?(E(s,"Attribute without value"),s.attribValue=s.attribName,z(s),B(s)):v(a)?s.state=k.ATTRIB_NAME_SAW_WHITE:C(p,a)?s.attribName+=a:E(s,"Invalid attribute name");continue;case k.ATTRIB_NAME_SAW_WHITE:if("="===a)s.state=k.ATTRIB_VALUE;else{if(v(a))continue;E(s,"Attribute without value"),s.tag.attributes[s.attribName]="",s.attribValue="",F(s,"onattribute",{name:s.attribName,value:""}),s.attribName="",">"===a?B(s):C(u,a)?(s.attribName=a,s.state=k.ATTRIB_NAME):(E(s,"Invalid attribute name"),s.state=k.ATTRIB)}continue;case k.ATTRIB_VALUE:if(v(a))continue;w(a)?(s.q=a,s.state=k.ATTRIB_VALUE_QUOTED):(E(s,"Unquoted attribute value"),s.state=k.ATTRIB_VALUE_UNQUOTED,s.attribValue=a);continue;case k.ATTRIB_VALUE_QUOTED:if(a!==s.q){"&"===a?s.state=k.ATTRIB_VALUE_ENTITY_Q:s.attribValue+=a;continue}z(s),s.q="",s.state=k.ATTRIB_VALUE_CLOSED;continue;case k.ATTRIB_VALUE_CLOSED:v(a)?s.state=k.ATTRIB:">"===a?B(s):"/"===a?s.state=k.OPEN_TAG_SLASH:C(u,a)?(E(s,"No whitespace between attributes"),s.attribName=a,s.attribValue="",s.state=k.ATTRIB_NAME):E(s,"Invalid attribute name");continue;case k.ATTRIB_VALUE_UNQUOTED:if(!y(a)){"&"===a?s.state=k.ATTRIB_VALUE_ENTITY_U:s.attribValue+=a;continue}z(s),">"===a?B(s):s.state=k.ATTRIB;continue;case k.CLOSE_TAG:if(s.tagName)">"===a?j(s):C(p,a)?s.tagName+=a:s.script?(s.script+="</"+s.tagName,s.tagName="",s.state=k.SCRIPT):(v(a)||E(s,"Invalid tagname in closing tag"),s.state=k.CLOSE_TAG_SAW_WHITE);else{if(v(a))continue;T(u,a)?s.script?(s.script+="</"+a,s.state=k.SCRIPT):E(s,"Invalid tagname in closing tag."):s.tagName=a}continue;case k.CLOSE_TAG_SAW_WHITE:if(v(a))continue;">"===a?j(s):E(s,"Invalid characters in closing tag");continue;case k.TEXT_ENTITY:case k.ATTRIB_VALUE_ENTITY_Q:case k.ATTRIB_VALUE_ENTITY_U:var m,c;switch(s.state){case k.TEXT_ENTITY:m=k.TEXT,c="textNode";break;case k.ATTRIB_VALUE_ENTITY_Q:m=k.ATTRIB_VALUE_QUOTED,c="attribValue";break;case k.ATTRIB_VALUE_ENTITY_U:m=k.ATTRIB_VALUE_UNQUOTED,c="attribValue"}if(";"===a)if(s.opt.unparsedEntities){var g=M(s);s.entity="",s.state=m,s.write(g)}else s[c]+=M(s),s.entity="",s.state=m;else C(s.entity.length?h:f,a)?s.entity+=a:(E(s,"Invalid character in entity name"),s[c]+="&"+s.entity+a,s.entity="",s.state=m);continue;default:throw new Error(s,"Unknown state: "+s.state)}return s.position>=s.bufferCheckPosition&&function(t){for(var s=Math.max(e.MAX_BUFFER_LENGTH,10),n=0,a=0,r=i.length;a<r;a++){var o=t[i[a]].length;if(o>s)switch(i[a]){case"textNode":N(t);break;case"cdata":F(t,"oncdata",t.cdata),t.cdata="";break;case"script":F(t,"onscript",t.script),t.script="";break;default:U(t,"Max buffer length exceeded: "+i[a])}n=Math.max(n,o)}var l=e.MAX_BUFFER_LENGTH-n;t.bufferCheckPosition=l+t.position}(s),s},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){var e;N(e=this),""!==e.cdata&&(F(e,"oncdata",e.cdata),e.cdata=""),""!==e.script&&(F(e,"onscript",e.script),e.script="")}};try{t=s(88310).Stream}catch(e){t=function(){}}t||(t=function(){});var r=e.EVENTS.filter((function(e){return"error"!==e&&"end"!==e}));function o(e,s){if(!(this instanceof o))return new o(e,s);t.apply(this),this._parser=new a(e,s),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(e){n.emit("error",e),n._parser.error=null},this._decoder=null,r.forEach((function(e){Object.defineProperty(n,"on"+e,{get:function(){return n._parser["on"+e]},set:function(t){if(!t)return n.removeAllListeners(e),n._parser["on"+e]=t,t;n.on(e,t)},enumerable:!0,configurable:!1})}))}o.prototype=Object.create(t.prototype,{constructor:{value:o}}),o.prototype.write=function(e){if("function"==typeof n&&"function"==typeof n.isBuffer&&n.isBuffer(e)){if(!this._decoder){var t=s(83141).I;this._decoder=new t("utf8")}e=this._decoder.write(e)}return this._parser.write(e.toString()),this.emit("data",e),!0},o.prototype.end=function(e){return e&&e.length&&this.write(e),this._parser.end(),!0},o.prototype.on=function(e,s){var n=this;return n._parser["on"+e]||-1===r.indexOf(e)||(n._parser["on"+e]=function(){var t=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);t.splice(0,0,e),n.emit.apply(n,t)}),t.prototype.on.call(n,e,s)};var l="[CDATA[",d="DOCTYPE",m="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",g={xml:m,xmlns:c},u=/[:_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]/,p=/[:_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\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,f=/[#:_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]/,h=/[#:_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\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function v(e){return" "===e||"\n"===e||"\r"===e||"\t"===e}function w(e){return'"'===e||"'"===e}function y(e){return">"===e||v(e)}function C(e,t){return e.test(t)}function T(e,t){return!C(e,t)}var A,b,x,k=0;for(var _ in e.STATE={BEGIN:k++,BEGIN_WHITESPACE:k++,TEXT:k++,TEXT_ENTITY:k++,OPEN_WAKA:k++,SGML_DECL:k++,SGML_DECL_QUOTED:k++,DOCTYPE:k++,DOCTYPE_QUOTED:k++,DOCTYPE_DTD:k++,DOCTYPE_DTD_QUOTED:k++,COMMENT_STARTING:k++,COMMENT:k++,COMMENT_ENDING:k++,COMMENT_ENDED:k++,CDATA:k++,CDATA_ENDING:k++,CDATA_ENDING_2:k++,PROC_INST:k++,PROC_INST_BODY:k++,PROC_INST_ENDING:k++,OPEN_TAG:k++,OPEN_TAG_SLASH:k++,ATTRIB:k++,ATTRIB_NAME:k++,ATTRIB_NAME_SAW_WHITE:k++,ATTRIB_VALUE:k++,ATTRIB_VALUE_QUOTED:k++,ATTRIB_VALUE_CLOSED:k++,ATTRIB_VALUE_UNQUOTED:k++,ATTRIB_VALUE_ENTITY_Q:k++,ATTRIB_VALUE_ENTITY_U:k++,CLOSE_TAG:k++,CLOSE_TAG_SAW_WHITE:k++,SCRIPT:k++,SCRIPT_ENDING:k++},e.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},e.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(e.ENTITIES).forEach((function(t){var s=e.ENTITIES[t],n="number"==typeof s?String.fromCharCode(s):s;e.ENTITIES[t]=n})),e.STATE)e.STATE[e.STATE[_]]=_;function S(e,t,s){e[t]&&e[t](s)}function F(e,t,s){e.textNode&&N(e),S(e,t,s)}function N(e){e.textNode=L(e.opt,e.textNode),e.textNode&&S(e,"ontext",e.textNode),e.textNode=""}function L(e,t){return e.trim&&(t=t.trim()),e.normalize&&(t=t.replace(/\s+/g," ")),t}function U(e,t){return N(e),e.trackPosition&&(t+="\nLine: "+e.line+"\nColumn: "+e.column+"\nChar: "+e.c),t=new Error(t),e.error=t,S(e,"onerror",t),e}function P(e){return e.sawRoot&&!e.closedRoot&&E(e,"Unclosed root tag"),e.state!==k.BEGIN&&e.state!==k.BEGIN_WHITESPACE&&e.state!==k.TEXT&&U(e,"Unexpected end"),N(e),e.c="",e.closed=!0,S(e,"onend"),a.call(e,e.strict,e.opt),e}function E(e,t){if("object"!=typeof e||!(e instanceof a))throw new Error("bad call to strictFail");e.strict&&U(e,t)}function I(e){e.strict||(e.tagName=e.tagName[e.looseCase]());var t=e.tags[e.tags.length-1]||e,s=e.tag={name:e.tagName,attributes:{}};e.opt.xmlns&&(s.ns=t.ns),e.attribList.length=0,F(e,"onopentagstart",s)}function D(e,t){var s=e.indexOf(":")<0?["",e]:e.split(":"),n=s[0],i=s[1];return t&&"xmlns"===e&&(n="xmlns",i=""),{prefix:n,local:i}}function z(e){if(e.strict||(e.attribName=e.attribName[e.looseCase]()),-1!==e.attribList.indexOf(e.attribName)||e.tag.attributes.hasOwnProperty(e.attribName))e.attribName=e.attribValue="";else{if(e.opt.xmlns){var t=D(e.attribName,!0),s=t.prefix,n=t.local;if("xmlns"===s)if("xml"===n&&e.attribValue!==m)E(e,"xml: prefix must be bound to "+m+"\nActual: "+e.attribValue);else if("xmlns"===n&&e.attribValue!==c)E(e,"xmlns: prefix must be bound to "+c+"\nActual: "+e.attribValue);else{var i=e.tag,a=e.tags[e.tags.length-1]||e;i.ns===a.ns&&(i.ns=Object.create(a.ns)),i.ns[n]=e.attribValue}e.attribList.push([e.attribName,e.attribValue])}else e.tag.attributes[e.attribName]=e.attribValue,F(e,"onattribute",{name:e.attribName,value:e.attribValue});e.attribName=e.attribValue=""}}function B(e,t){if(e.opt.xmlns){var s=e.tag,n=D(e.tagName);s.prefix=n.prefix,s.local=n.local,s.uri=s.ns[n.prefix]||"",s.prefix&&!s.uri&&(E(e,"Unbound namespace prefix: "+JSON.stringify(e.tagName)),s.uri=n.prefix);var i=e.tags[e.tags.length-1]||e;s.ns&&i.ns!==s.ns&&Object.keys(s.ns).forEach((function(t){F(e,"onopennamespace",{prefix:t,uri:s.ns[t]})}));for(var a=0,r=e.attribList.length;a<r;a++){var o=e.attribList[a],l=o[0],d=o[1],m=D(l,!0),c=m.prefix,g=m.local,u=""===c?"":s.ns[c]||"",p={name:l,value:d,prefix:c,local:g,uri:u};c&&"xmlns"!==c&&!u&&(E(e,"Unbound namespace prefix: "+JSON.stringify(c)),p.uri=c),e.tag.attributes[l]=p,F(e,"onattribute",p)}e.attribList.length=0}e.tag.isSelfClosing=!!t,e.sawRoot=!0,e.tags.push(e.tag),F(e,"onopentag",e.tag),t||(e.noscript||"script"!==e.tagName.toLowerCase()?e.state=k.TEXT:e.state=k.SCRIPT,e.tag=null,e.tagName=""),e.attribName=e.attribValue="",e.attribList.length=0}function j(e){if(!e.tagName)return E(e,"Weird empty close tag."),e.textNode+="</>",void(e.state=k.TEXT);if(e.script){if("script"!==e.tagName)return e.script+="</"+e.tagName+">",e.tagName="",void(e.state=k.SCRIPT);F(e,"onscript",e.script),e.script=""}var t=e.tags.length,s=e.tagName;e.strict||(s=s[e.looseCase]());for(var n=s;t--&&e.tags[t].name!==n;)E(e,"Unexpected close tag");if(t<0)return E(e,"Unmatched closing tag: "+e.tagName),e.textNode+="</"+e.tagName+">",void(e.state=k.TEXT);e.tagName=s;for(var i=e.tags.length;i-- >t;){var a=e.tag=e.tags.pop();e.tagName=e.tag.name,F(e,"onclosetag",e.tagName);var r={};for(var o in a.ns)r[o]=a.ns[o];var l=e.tags[e.tags.length-1]||e;e.opt.xmlns&&a.ns!==l.ns&&Object.keys(a.ns).forEach((function(t){var s=a.ns[t];F(e,"onclosenamespace",{prefix:t,uri:s})}))}0===t&&(e.closedRoot=!0),e.tagName=e.attribValue=e.attribName="",e.attribList.length=0,e.state=k.TEXT}function M(e){var t,s=e.entity,n=s.toLowerCase(),i="";return e.ENTITIES[s]?e.ENTITIES[s]:e.ENTITIES[n]?e.ENTITIES[n]:("#"===(s=n).charAt(0)&&("x"===s.charAt(1)?(s=s.slice(2),i=(t=parseInt(s,16)).toString(16)):(s=s.slice(1),i=(t=parseInt(s,10)).toString(10))),s=s.replace(/^0+/,""),isNaN(t)||i.toLowerCase()!==s?(E(e,"Invalid character entity"),"&"+e.entity+";"):String.fromCodePoint(t))}function O(e,t){"<"===t?(e.state=k.OPEN_WAKA,e.startTagPosition=e.position):v(t)||(E(e,"Non-whitespace before first tag."),e.textNode=t,e.state=k.TEXT)}function R(e,t){var s="";return t<e.length&&(s=e.charAt(t)),s}k=e.STATE,String.fromCodePoint||(A=String.fromCharCode,b=Math.floor,x=function(){var e,t,s=[],n=-1,i=arguments.length;if(!i)return"";for(var a="";++n<i;){var r=Number(arguments[n]);if(!isFinite(r)||r<0||r>1114111||b(r)!==r)throw RangeError("Invalid code point: "+r);r<=65535?s.push(r):(e=55296+((r-=65536)>>10),t=r%1024+56320,s.push(e,t)),(n+1===i||s.length>16384)&&(a+=A.apply(null,s),s.length=0)}return a},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:x,configurable:!0,writable:!0}):String.fromCodePoint=x)}(t)},42791:function(e,t,s){var n=s(65606);!function(e,t){"use strict";if(!e.setImmediate){var s,i,a,r,o,l=1,d={},m=!1,c=e.document,g=Object.getPrototypeOf&&Object.getPrototypeOf(e);g=g&&g.setTimeout?g:e,"[object process]"==={}.toString.call(e.process)?s=function(e){n.nextTick((function(){p(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,s=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=s,t}}()?(r="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(r)&&p(+t.data.slice(r.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),s=function(t){e.postMessage(r+t,"*")}):e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},s=function(e){a.port2.postMessage(e)}):c&&"onreadystatechange"in c.createElement("script")?(i=c.documentElement,s=function(e){var t=c.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):s=function(e){setTimeout(p,0,e)},g.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return d[l]=i,s(l),l++},g.clearImmediate=u}function u(e){delete d[e]}function p(e){if(m)setTimeout(p,0,e);else{var t=d[e];if(t){m=!0;try{!function(e){var t=e.callback,s=e.args;switch(s.length){case 0:t();break;case 1:t(s[0]);break;case 2:t(s[0],s[1]);break;case 3:t(s[0],s[1],s[2]);break;default:t.apply(undefined,s)}}(t)}finally{u(e),m=!1}}}}}("undefined"==typeof self?void 0===s.g?this:s.g:self)},75270:e=>{function t(e,t){return null==e?t:e}e.exports=function(e){var s,n=t((e=e||{}).max,1),i=t(e.min,0),a=t(e.autostart,!0),r=t(e.ignoreSameProgress,!1),o=null,l=null,d=null,m=(s=t(e.historyTimeConstant,2.5),function(e,t,n){return e+n/(n+s)*(t-e)});function c(){g(i)}function g(e,t){if("number"!=typeof t&&(t=Date.now()),l!==t&&(!r||d!==e)){if(null===l||null===d)return d=e,void(l=t);var s=.001*(t-l),n=(e-d)/s;o=null===o?n:m(o,n,s),d=e,l=t}}return{start:c,reset:function(){o=null,l=null,d=null,a&&c()},report:g,estimate:function(e){if(null===d)return 1/0;if(d>=n)return 0;if(null===o)return 1/0;var t=(n-d)/o;return"number"==typeof e&&"number"==typeof l&&(t-=.001*(e-l)),Math.max(0,t)},rate:function(){return null===o?0:o}}}},97103:function(e,t,s){var n=void 0!==s.g&&s.g||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function a(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new a(i.call(setTimeout,n,arguments),clearTimeout)},t.setInterval=function(){return new a(i.call(setInterval,n,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},a.prototype.unref=a.prototype.ref=function(){},a.prototype.close=function(){this._clearFn.call(n,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},s(42791),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==s.g&&s.g.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==s.g&&s.g.clearImmediate||this&&this.clearImmediate},83177:function(e,t){(function(){"use strict";t.stripBOM=function(e){return"\ufeff"===e[0]?e.substring(1):e}}).call(this)},56712:function(e,t,s){(function(){"use strict";var e,n,i,a,r,o={}.hasOwnProperty;e=s(59665),n=s(66465).defaults,a=function(e){return"string"==typeof e&&(e.indexOf("&")>=0||e.indexOf(">")>=0||e.indexOf("<")>=0)},r=function(e){return"<![CDATA["+i(e)+"]]>"},i=function(e){return e.replace("]]>","]]]]><![CDATA[>")},t.Builder=function(){function t(e){var t,s,i;for(t in this.options={},s=n[.2])o.call(s,t)&&(i=s[t],this.options[t]=i);for(t in e)o.call(e,t)&&(i=e[t],this.options[t]=i)}return t.prototype.buildObject=function(t){var s,i,l,d,m,c;return s=this.options.attrkey,i=this.options.charkey,1===Object.keys(t).length&&this.options.rootName===n[.2].rootName?t=t[m=Object.keys(t)[0]]:m=this.options.rootName,c=this,l=function(e,t){var n,d,m,g,u,p;if("object"!=typeof t)c.options.cdata&&a(t)?e.raw(r(t)):e.txt(t);else if(Array.isArray(t)){for(g in t)if(o.call(t,g))for(u in d=t[g])m=d[u],e=l(e.ele(u),m).up()}else for(u in t)if(o.call(t,u))if(d=t[u],u===s){if("object"==typeof d)for(n in d)p=d[n],e=e.att(n,p)}else if(u===i)e=c.options.cdata&&a(d)?e.raw(r(d)):e.txt(d);else if(Array.isArray(d))for(g in d)o.call(d,g)&&(e="string"==typeof(m=d[g])?c.options.cdata&&a(m)?e.ele(u).raw(r(m)).up():e.ele(u,m).up():l(e.ele(u),m).up());else"object"==typeof d?e=l(e.ele(u),d).up():"string"==typeof d&&c.options.cdata&&a(d)?e=e.ele(u).raw(r(d)).up():(null==d&&(d=""),e=e.ele(u,d.toString()).up());return e},d=e.create(m,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),l(d,t).end(this.options.renderOpts)},t}()}).call(this)},66465:function(e,t){(function(){t.defaults={.1:{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},.2:{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:"\n"},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}}).call(this)},11912:function(e,t,s){(function(){"use strict";var e,n,i,a,r,o,l,d,m,c=function(e,t){return function(){return e.apply(t,arguments)}},g={}.hasOwnProperty;d=s(64043),a=s(37007),e=s(83177),l=s(92114),m=s(97103).setImmediate,n=s(66465).defaults,r=function(e){return"object"==typeof e&&null!=e&&0===Object.keys(e).length},o=function(e,t,s){var n,i;for(n=0,i=e.length;n<i;n++)t=(0,e[n])(t,s);return t},i=function(e,t,s){var n;return(n=Object.create(null)).value=s,n.writable=!0,n.enumerable=!0,n.configurable=!0,Object.defineProperty(e,t,n)},t.Parser=function(s){function a(e){var s,i,a;if(this.parseStringPromise=c(this.parseStringPromise,this),this.parseString=c(this.parseString,this),this.reset=c(this.reset,this),this.assignOrPush=c(this.assignOrPush,this),this.processAsync=c(this.processAsync,this),!(this instanceof t.Parser))return new t.Parser(e);for(s in this.options={},i=n[.2])g.call(i,s)&&(a=i[s],this.options[s]=a);for(s in e)g.call(e,s)&&(a=e[s],this.options[s]=a);this.options.xmlns&&(this.options.xmlnskey=this.options.attrkey+"ns"),this.options.normalizeTags&&(this.options.tagNameProcessors||(this.options.tagNameProcessors=[]),this.options.tagNameProcessors.unshift(l.normalize)),this.reset()}return function(e,t){for(var s in t)g.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(a,s),a.prototype.processAsync=function(){var e,t;try{return this.remaining.length<=this.options.chunkSize?(e=this.remaining,this.remaining="",this.saxParser=this.saxParser.write(e),this.saxParser.close()):(e=this.remaining.substr(0,this.options.chunkSize),this.remaining=this.remaining.substr(this.options.chunkSize,this.remaining.length),this.saxParser=this.saxParser.write(e),m(this.processAsync))}catch(e){if(t=e,!this.saxParser.errThrown)return this.saxParser.errThrown=!0,this.emit(t)}},a.prototype.assignOrPush=function(e,t,s){return t in e?(e[t]instanceof Array||i(e,t,[e[t]]),e[t].push(s)):this.options.explicitArray?i(e,t,[s]):i(e,t,s)},a.prototype.reset=function(){var e,t,s,n,a;return this.removeAllListeners(),this.saxParser=d.parser(this.options.strict,{trim:!1,normalize:!1,xmlns:this.options.xmlns}),this.saxParser.errThrown=!1,this.saxParser.onerror=(a=this,function(e){if(a.saxParser.resume(),!a.saxParser.errThrown)return a.saxParser.errThrown=!0,a.emit("error",e)}),this.saxParser.onend=function(e){return function(){if(!e.saxParser.ended)return e.saxParser.ended=!0,e.emit("end",e.resultObject)}}(this),this.saxParser.ended=!1,this.EXPLICIT_CHARKEY=this.options.explicitCharkey,this.resultObject=null,n=[],e=this.options.attrkey,t=this.options.charkey,this.saxParser.onopentag=function(s){return function(a){var r,l,d,m,c;if((d={})[t]="",!s.options.ignoreAttrs)for(r in c=a.attributes)g.call(c,r)&&(e in d||s.options.mergeAttrs||(d[e]={}),l=s.options.attrValueProcessors?o(s.options.attrValueProcessors,a.attributes[r],r):a.attributes[r],m=s.options.attrNameProcessors?o(s.options.attrNameProcessors,r):r,s.options.mergeAttrs?s.assignOrPush(d,m,l):i(d[e],m,l));return d["#name"]=s.options.tagNameProcessors?o(s.options.tagNameProcessors,a.name):a.name,s.options.xmlns&&(d[s.options.xmlnskey]={uri:a.uri,local:a.local}),n.push(d)}}(this),this.saxParser.onclosetag=function(e){return function(){var s,a,l,d,m,c,u,p,f,h;if(c=n.pop(),m=c["#name"],e.options.explicitChildren&&e.options.preserveChildrenOrder||delete c["#name"],!0===c.cdata&&(s=c.cdata,delete c.cdata),f=n[n.length-1],c[t].match(/^\s*$/)&&!s?(a=c[t],delete c[t]):(e.options.trim&&(c[t]=c[t].trim()),e.options.normalize&&(c[t]=c[t].replace(/\s{2,}/g," ").trim()),c[t]=e.options.valueProcessors?o(e.options.valueProcessors,c[t],m):c[t],1===Object.keys(c).length&&t in c&&!e.EXPLICIT_CHARKEY&&(c=c[t])),r(c)&&(c="function"==typeof e.options.emptyTag?e.options.emptyTag():""!==e.options.emptyTag?e.options.emptyTag:a),null!=e.options.validator&&(h="/"+function(){var e,t,s;for(s=[],e=0,t=n.length;e<t;e++)d=n[e],s.push(d["#name"]);return s}().concat(m).join("/"),function(){var t;try{return c=e.options.validator(h,f&&f[m],c)}catch(s){return t=s,e.emit("error",t)}}()),e.options.explicitChildren&&!e.options.mergeAttrs&&"object"==typeof c)if(e.options.preserveChildrenOrder){if(f){for(l in f[e.options.childkey]=f[e.options.childkey]||[],u={},c)g.call(c,l)&&i(u,l,c[l]);f[e.options.childkey].push(u),delete c["#name"],1===Object.keys(c).length&&t in c&&!e.EXPLICIT_CHARKEY&&(c=c[t])}}else d={},e.options.attrkey in c&&(d[e.options.attrkey]=c[e.options.attrkey],delete c[e.options.attrkey]),!e.options.charsAsChildren&&e.options.charkey in c&&(d[e.options.charkey]=c[e.options.charkey],delete c[e.options.charkey]),Object.getOwnPropertyNames(c).length>0&&(d[e.options.childkey]=c),c=d;return n.length>0?e.assignOrPush(f,m,c):(e.options.explicitRoot&&(p=c,i(c={},m,p)),e.resultObject=c,e.saxParser.ended=!0,e.emit("end",e.resultObject))}}(this),s=function(e){return function(s){var i,a;if(a=n[n.length-1])return a[t]+=s,e.options.explicitChildren&&e.options.preserveChildrenOrder&&e.options.charsAsChildren&&(e.options.includeWhiteChars||""!==s.replace(/\\n/g,"").trim())&&(a[e.options.childkey]=a[e.options.childkey]||[],(i={"#name":"__text__"})[t]=s,e.options.normalize&&(i[t]=i[t].replace(/\s{2,}/g," ").trim()),a[e.options.childkey].push(i)),a}}(this),this.saxParser.ontext=s,this.saxParser.oncdata=function(e){var t;if(t=s(e))return t.cdata=!0}},a.prototype.parseString=function(t,s){var n;null!=s&&"function"==typeof s&&(this.on("end",(function(e){return this.reset(),s(null,e)})),this.on("error",(function(e){return this.reset(),s(e)})));try{return""===(t=t.toString()).trim()?(this.emit("end",null),!0):(t=e.stripBOM(t),this.options.async?(this.remaining=t,m(this.processAsync),this.saxParser):this.saxParser.write(t).close())}catch(e){if(n=e,!this.saxParser.errThrown&&!this.saxParser.ended)return this.emit("error",n),this.saxParser.errThrown=!0;if(this.saxParser.ended)throw n}},a.prototype.parseStringPromise=function(e){return new Promise((t=this,function(s,n){return t.parseString(e,(function(e,t){return e?n(e):s(t)}))}));var t},a}(a),t.parseString=function(e,s,n){var i,a;return null!=n?("function"==typeof n&&(i=n),"object"==typeof s&&(a=s)):("function"==typeof s&&(i=s),a={}),new t.Parser(a).parseString(e,i)},t.parseStringPromise=function(e,s){var n;return"object"==typeof s&&(n=s),new t.Parser(n).parseStringPromise(e)}}).call(this)},92114:function(e,t){(function(){"use strict";var e;e=new RegExp(/(?!xmlns)^.*:/),t.normalize=function(e){return e.toLowerCase()},t.firstCharLowerCase=function(e){return e.charAt(0).toLowerCase()+e.slice(1)},t.stripPrefix=function(t){return t.replace(e,"")},t.parseNumbers=function(e){return isNaN(e)||(e=e%1==0?parseInt(e,10):parseFloat(e)),e},t.parseBooleans=function(e){return/^(?:true|false)$/i.test(e)&&(e="true"===e.toLowerCase()),e}}).call(this)},38805:function(e,t,s){(function(){"use strict";var e,n,i,a,r={}.hasOwnProperty;n=s(66465),e=s(56712),i=s(11912),a=s(92114),t.defaults=n.defaults,t.processors=a,t.ValidationError=function(e){function t(e){this.message=e}return function(e,t){for(var s in t)r.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(t,Error),t}(),t.Builder=e.Builder,t.Parser=i.Parser,t.parseString=i.parseString,t.parseStringPromise=i.parseStringPromise}).call(this)},34923:function(e){(function(){e.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(this)},71737:function(e){(function(){e.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(this)},49241:function(e){(function(){var t,s,n,i,a,r,o,l=[].slice,d={}.hasOwnProperty;t=function(){var e,t,s,n,i,r;if(r=arguments[0],i=2<=arguments.length?l.call(arguments,1):[],a(Object.assign))Object.assign.apply(null,arguments);else for(e=0,s=i.length;e<s;e++)if(null!=(n=i[e]))for(t in n)d.call(n,t)&&(r[t]=n[t]);return r},a=function(e){return!!e&&"[object Function]"===Object.prototype.toString.call(e)},r=function(e){var t;return!!e&&("function"==(t=typeof e)||"object"===t)},n=function(e){return a(Array.isArray)?Array.isArray(e):"[object Array]"===Object.prototype.toString.call(e)},i=function(e){var t;if(n(e))return!e.length;for(t in e)if(d.call(e,t))return!1;return!0},o=function(e){var t,s;return r(e)&&(s=Object.getPrototypeOf(e))&&(t=s.constructor)&&"function"==typeof t&&t instanceof t&&Function.prototype.toString.call(t)===Function.prototype.toString.call(Object)},s=function(e){return a(e.valueOf)?e.valueOf():e},e.exports.assign=t,e.exports.isFunction=a,e.exports.isObject=r,e.exports.isArray=n,e.exports.isEmpty=i,e.exports.isPlainObject=o,e.exports.getValue=s}).call(this)},88753:function(e){(function(){e.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(this)},54238:function(e,t,s){(function(){var t;t=s(71737),s(10468),e.exports=function(){function e(e,s,n){if(this.parent=e,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),null==s)throw new Error("Missing attribute name. "+this.debugInfo(s));this.name=this.stringify.name(s),this.value=this.stringify.attValue(n),this.type=t.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(e.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(e.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(e.prototype,"textContent",{get:function(){return this.value},set:function(e){return this.value=e||""}}),Object.defineProperty(e.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(e.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(e.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(e.prototype,"specified",{get:function(){return!0}}),e.prototype.clone=function(){return Object.create(this)},e.prototype.toString=function(e){return this.options.writer.attribute(this,this.options.writer.filterOptions(e))},e.prototype.debugInfo=function(e){return null==(e=e||this.name)?"parent: <"+this.parent.name+">":"attribute: {"+e+"}, parent: <"+this.parent.name+">"},e.prototype.isEqualNode=function(e){return e.namespaceURI===this.namespaceURI&&e.prefix===this.prefix&&e.localName===this.localName&&e.value===this.value},e}()}).call(this)},92691:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=t.CData,this.value=this.stringify.cdata(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.cdata(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},17457:function(e,t,s){(function(){var t,n={}.hasOwnProperty;t=s(10468),e.exports=function(e){function t(e){t.__super__.constructor.call(this,e),this.value=""}return function(e,t){for(var s in t)n.call(t,s)&&(e[s]=t[s]);function i(){this.constructor=e}i.prototype=t.prototype,e.prototype=new i,e.__super__=t.prototype}(t,e),Object.defineProperty(t.prototype,"data",{get:function(){return this.value},set:function(e){return this.value=e||""}}),Object.defineProperty(t.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(t.prototype,"textContent",{get:function(){return this.value},set:function(e){return this.value=e||""}}),t.prototype.clone=function(){return Object.create(this)},t.prototype.substringData=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.appendData=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.insertData=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.deleteData=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.replaceData=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isEqualNode=function(e){return!!t.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.data===this.data},t}(t)}).call(this)},32679:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=t.Comment,this.value=this.stringify.comment(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.comment(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},33074:function(e,t,s){(function(){var t,n;t=s(55660),n=s(92527),e.exports=function(){function e(){this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new t,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=Object.create(this.defaultParams)}return Object.defineProperty(e.prototype,"parameterNames",{get:function(){return new n(Object.keys(this.defaultParams))}}),e.prototype.getParameter=function(e){return this.params.hasOwnProperty(e)?this.params[e]:null},e.prototype.canSetParameter=function(e,t){return!0},e.prototype.setParameter=function(e,t){return null!=t?this.params[e]=t:delete this.params[e]},e}()}).call(this)},55660:function(e){(function(){e.exports=function(){function e(){}return e.prototype.handleError=function(e){throw new Error(e)},e}()}).call(this)},67260:function(e){(function(){e.exports=function(){function e(){}return e.prototype.hasFeature=function(e,t){return!0},e.prototype.createDocumentType=function(e,t,s){throw new Error("This DOM method is not implemented.")},e.prototype.createDocument=function(e,t,s){throw new Error("This DOM method is not implemented.")},e.prototype.createHTMLDocument=function(e){throw new Error("This DOM method is not implemented.")},e.prototype.getFeature=function(e,t){throw new Error("This DOM method is not implemented.")},e}()}).call(this)},92527:function(e){(function(){e.exports=function(){function e(e){this.arr=e||[]}return Object.defineProperty(e.prototype,"length",{get:function(){return this.arr.length}}),e.prototype.item=function(e){return this.arr[e]||null},e.prototype.contains=function(e){return-1!==this.arr.indexOf(e)},e}()}).call(this)},34111:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,i,a,r,o){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing DTD element name. "+this.debugInfo());if(null==i)throw new Error("Missing DTD attribute name. "+this.debugInfo(n));if(!a)throw new Error("Missing DTD attribute type. "+this.debugInfo(n));if(!r)throw new Error("Missing DTD attribute default. "+this.debugInfo(n));if(0!==r.indexOf("#")&&(r="#"+r),!r.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(n));if(o&&!r.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(n));this.elementName=this.stringify.name(n),this.type=t.AttributeDeclaration,this.attributeName=this.stringify.name(i),this.attributeType=this.stringify.dtdAttType(a),o&&(this.defaultValue=this.stringify.dtdAttDefault(o)),this.defaultValueType=r}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.toString=function(e){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},67696:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,i){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing DTD element name. "+this.debugInfo());i||(i="(#PCDATA)"),Array.isArray(i)&&(i="("+i.join(",")+")"),this.name=this.stringify.name(n),this.type=t.ElementDeclaration,this.value=this.stringify.dtdElementValue(i)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.toString=function(e){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},5529:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;i=s(49241).isObject,n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,a,r){if(s.__super__.constructor.call(this,e),null==a)throw new Error("Missing DTD entity name. "+this.debugInfo(a));if(null==r)throw new Error("Missing DTD entity value. "+this.debugInfo(a));if(this.pe=!!n,this.name=this.stringify.name(a),this.type=t.EntityDeclaration,i(r)){if(!r.pubID&&!r.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(a));if(r.pubID&&!r.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(a));if(this.internal=!1,null!=r.pubID&&(this.pubID=this.stringify.dtdPubID(r.pubID)),null!=r.sysID&&(this.sysID=this.stringify.dtdSysID(r.sysID)),null!=r.nData&&(this.nData=this.stringify.dtdNData(r.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(a))}else this.value=this.stringify.dtdEntityValue(r),this.internal=!0}return function(e,t){for(var s in t)a.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(s.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(s.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(s.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(s.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(s.prototype,"xmlVersion",{get:function(){return null}}),s.prototype.toString=function(e){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},28012:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,i){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing DTD notation name. "+this.debugInfo(n));if(!i.pubID&&!i.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(n));this.name=this.stringify.name(n),this.type=t.NotationDeclaration,null!=i.pubID&&(this.pubID=this.stringify.dtdPubID(i.pubID)),null!=i.sysID&&(this.sysID=this.stringify.dtdSysID(i.sysID))}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(s.prototype,"systemId",{get:function(){return this.sysID}}),s.prototype.toString=function(e){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},34130:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;i=s(49241).isObject,n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,a,r){var o;s.__super__.constructor.call(this,e),i(n)&&(n=(o=n).version,a=o.encoding,r=o.standalone),n||(n="1.0"),this.type=t.Declaration,this.version=this.stringify.xmlVersion(n),null!=a&&(this.encoding=this.stringify.xmlEncoding(a)),null!=r&&(this.standalone=this.stringify.xmlStandalone(r))}return function(e,t){for(var s in t)a.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.toString=function(e){return this.options.writer.declaration(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},96376:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m={}.hasOwnProperty;d=s(49241).isObject,l=s(10468),t=s(71737),n=s(34111),a=s(5529),i=s(67696),r=s(28012),o=s(24797),e.exports=function(e){function s(e,n,i){var a,r,o,l,m,c;if(s.__super__.constructor.call(this,e),this.type=t.DocType,e.children)for(r=0,o=(l=e.children).length;r<o;r++)if((a=l[r]).type===t.Element){this.name=a.name;break}this.documentObject=e,d(n)&&(n=(m=n).pubID,i=m.sysID),null==i&&(i=(c=[n,i])[0],n=c[1]),null!=n&&(this.pubID=this.stringify.dtdPubID(n)),null!=i&&(this.sysID=this.stringify.dtdSysID(i))}return function(e,t){for(var s in t)m.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"entities",{get:function(){var e,s,n,i,a;for(i={},s=0,n=(a=this.children).length;s<n;s++)(e=a[s]).type!==t.EntityDeclaration||e.pe||(i[e.name]=e);return new o(i)}}),Object.defineProperty(s.prototype,"notations",{get:function(){var e,s,n,i,a;for(i={},s=0,n=(a=this.children).length;s<n;s++)(e=a[s]).type===t.NotationDeclaration&&(i[e.name]=e);return new o(i)}}),Object.defineProperty(s.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(s.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(s.prototype,"internalSubset",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),s.prototype.element=function(e,t){var s;return s=new i(this,e,t),this.children.push(s),this},s.prototype.attList=function(e,t,s,i,a){var r;return r=new n(this,e,t,s,i,a),this.children.push(r),this},s.prototype.entity=function(e,t){var s;return s=new a(this,!1,e,t),this.children.push(s),this},s.prototype.pEntity=function(e,t){var s;return s=new a(this,!0,e,t),this.children.push(s),this},s.prototype.notation=function(e,t){var s;return s=new r(this,e,t),this.children.push(s),this},s.prototype.toString=function(e){return this.options.writer.docType(this,this.options.writer.filterOptions(e))},s.prototype.ele=function(e,t){return this.element(e,t)},s.prototype.att=function(e,t,s,n,i){return this.attList(e,t,s,n,i)},s.prototype.ent=function(e,t){return this.entity(e,t)},s.prototype.pent=function(e,t){return this.pEntity(e,t)},s.prototype.not=function(e,t){return this.notation(e,t)},s.prototype.up=function(){return this.root()||this.documentObject},s.prototype.isEqualNode=function(e){return!!s.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.name===this.name&&e.publicId===this.publicId&&e.systemId===this.systemId},s}(l)}).call(this)},71933:function(e,t,s){(function(){var t,n,i,a,r,o,l,d={}.hasOwnProperty;l=s(49241).isPlainObject,i=s(67260),n=s(33074),a=s(10468),t=s(71737),o=s(43976),r=s(40382),e.exports=function(e){function s(e){s.__super__.constructor.call(this,null),this.name="#document",this.type=t.Document,this.documentURI=null,this.domConfig=new n,e||(e={}),e.writer||(e.writer=new r),this.options=e,this.stringify=new o(e)}return function(e,t){for(var s in t)d.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"implementation",{value:new i}),Object.defineProperty(s.prototype,"doctype",{get:function(){var e,s,n,i;for(s=0,n=(i=this.children).length;s<n;s++)if((e=i[s]).type===t.DocType)return e;return null}}),Object.defineProperty(s.prototype,"documentElement",{get:function(){return this.rootObject||null}}),Object.defineProperty(s.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(s.prototype,"strictErrorChecking",{get:function(){return!1}}),Object.defineProperty(s.prototype,"xmlEncoding",{get:function(){return 0!==this.children.length&&this.children[0].type===t.Declaration?this.children[0].encoding:null}}),Object.defineProperty(s.prototype,"xmlStandalone",{get:function(){return 0!==this.children.length&&this.children[0].type===t.Declaration&&"yes"===this.children[0].standalone}}),Object.defineProperty(s.prototype,"xmlVersion",{get:function(){return 0!==this.children.length&&this.children[0].type===t.Declaration?this.children[0].version:"1.0"}}),Object.defineProperty(s.prototype,"URL",{get:function(){return this.documentURI}}),Object.defineProperty(s.prototype,"origin",{get:function(){return null}}),Object.defineProperty(s.prototype,"compatMode",{get:function(){return null}}),Object.defineProperty(s.prototype,"characterSet",{get:function(){return null}}),Object.defineProperty(s.prototype,"contentType",{get:function(){return null}}),s.prototype.end=function(e){var t;return t={},e?l(e)&&(t=e,e=this.options.writer):e=this.options.writer,e.document(this,e.filterOptions(t))},s.prototype.toString=function(e){return this.options.writer.document(this,this.options.writer.filterOptions(e))},s.prototype.createElement=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createDocumentFragment=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createTextNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createComment=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createCDATASection=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createProcessingInstruction=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createAttribute=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createEntityReference=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.importNode=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createElementNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagNameNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementById=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.adoptNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.normalizeDocument=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.renameNode=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByClassName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createEvent=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createRange=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createNodeIterator=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createTreeWalker=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s}(a)}).call(this)},80400:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m,c,g,u,p,f,h,v,w,y,C,T,A,b,x,k={}.hasOwnProperty;x=s(49241),A=x.isObject,T=x.isFunction,b=x.isPlainObject,C=x.getValue,t=s(71737),u=s(71933),p=s(33906),a=s(92691),r=s(32679),h=s(1268),y=s(82535),f=s(85915),c=s(34130),g=s(96376),o=s(34111),d=s(5529),l=s(67696),m=s(28012),i=s(54238),w=s(43976),v=s(40382),n=s(88753),e.exports=function(){function e(e,s,n){var i;this.name="?xml",this.type=t.Document,e||(e={}),i={},e.writer?b(e.writer)&&(i=e.writer,e.writer=new v):e.writer=new v,this.options=e,this.writer=e.writer,this.writerOptions=this.writer.filterOptions(i),this.stringify=new w(e),this.onDataCallback=s||function(){},this.onEndCallback=n||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return e.prototype.createChildNode=function(e){var s,n,i,a,r,o,l,d;switch(e.type){case t.CData:this.cdata(e.value);break;case t.Comment:this.comment(e.value);break;case t.Element:for(n in i={},l=e.attribs)k.call(l,n)&&(s=l[n],i[n]=s.value);this.node(e.name,i);break;case t.Dummy:this.dummy();break;case t.Raw:this.raw(e.value);break;case t.Text:this.text(e.value);break;case t.ProcessingInstruction:this.instruction(e.target,e.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+e.constructor.name)}for(r=0,o=(d=e.children).length;r<o;r++)a=d[r],this.createChildNode(a),a.type===t.Element&&this.up();return this},e.prototype.dummy=function(){return this},e.prototype.node=function(e,t,s){var n;if(null==e)throw new Error("Missing node name.");if(this.root&&-1===this.currentLevel)throw new Error("Document can only have one root node. "+this.debugInfo(e));return this.openCurrent(),e=C(e),null==t&&(t={}),t=C(t),A(t)||(s=(n=[t,s])[0],t=n[1]),this.currentNode=new p(this,e,t),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,null!=s&&this.text(s),this},e.prototype.element=function(e,s,n){var i,a,r,o,l,d;if(this.currentNode&&this.currentNode.type===t.DocType)this.dtdElement.apply(this,arguments);else if(Array.isArray(e)||A(e)||T(e))for(o=this.options.noValidation,this.options.noValidation=!0,(d=new u(this.options).element("TEMP_ROOT")).element(e),this.options.noValidation=o,a=0,r=(l=d.children).length;a<r;a++)i=l[a],this.createChildNode(i),i.type===t.Element&&this.up();else this.node(e,s,n);return this},e.prototype.attribute=function(e,t){var s,n;if(!this.currentNode||this.currentNode.children)throw new Error("att() can only be used immediately after an ele() call in callback mode. "+this.debugInfo(e));if(null!=e&&(e=C(e)),A(e))for(s in e)k.call(e,s)&&(n=e[s],this.attribute(s,n));else T(t)&&(t=t.apply()),this.options.keepNullAttributes&&null==t?this.currentNode.attribs[e]=new i(this,e,""):null!=t&&(this.currentNode.attribs[e]=new i(this,e,t));return this},e.prototype.text=function(e){var t;return this.openCurrent(),t=new y(this,e),this.onData(this.writer.text(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.cdata=function(e){var t;return this.openCurrent(),t=new a(this,e),this.onData(this.writer.cdata(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.comment=function(e){var t;return this.openCurrent(),t=new r(this,e),this.onData(this.writer.comment(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.raw=function(e){var t;return this.openCurrent(),t=new h(this,e),this.onData(this.writer.raw(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.instruction=function(e,t){var s,n,i,a,r;if(this.openCurrent(),null!=e&&(e=C(e)),null!=t&&(t=C(t)),Array.isArray(e))for(s=0,a=e.length;s<a;s++)n=e[s],this.instruction(n);else if(A(e))for(n in e)k.call(e,n)&&(i=e[n],this.instruction(n,i));else T(t)&&(t=t.apply()),r=new f(this,e,t),this.onData(this.writer.processingInstruction(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this},e.prototype.declaration=function(e,t,s){var n;if(this.openCurrent(),this.documentStarted)throw new Error("declaration() must be the first node.");return n=new c(this,e,t,s),this.onData(this.writer.declaration(n,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.doctype=function(e,t,s){if(this.openCurrent(),null==e)throw new Error("Missing root node name.");if(this.root)throw new Error("dtd() must come before the root node.");return this.currentNode=new g(this,t,s),this.currentNode.rootNodeName=e,this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,this},e.prototype.dtdElement=function(e,t){var s;return this.openCurrent(),s=new l(this,e,t),this.onData(this.writer.dtdElement(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.attList=function(e,t,s,n,i){var a;return this.openCurrent(),a=new o(this,e,t,s,n,i),this.onData(this.writer.dtdAttList(a,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.entity=function(e,t){var s;return this.openCurrent(),s=new d(this,!1,e,t),this.onData(this.writer.dtdEntity(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.pEntity=function(e,t){var s;return this.openCurrent(),s=new d(this,!0,e,t),this.onData(this.writer.dtdEntity(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.notation=function(e,t){var s;return this.openCurrent(),s=new m(this,e,t),this.onData(this.writer.dtdNotation(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.up=function(){if(this.currentLevel<0)throw new Error("The document node has no parent.");return this.currentNode?(this.currentNode.children?this.closeNode(this.currentNode):this.openNode(this.currentNode),this.currentNode=null):this.closeNode(this.openTags[this.currentLevel]),delete this.openTags[this.currentLevel],this.currentLevel--,this},e.prototype.end=function(){for(;this.currentLevel>=0;)this.up();return this.onEnd()},e.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},e.prototype.openNode=function(e){var s,i,a,r;if(!e.isOpen){if(this.root||0!==this.currentLevel||e.type!==t.Element||(this.root=e),i="",e.type===t.Element){for(a in this.writerOptions.state=n.OpenTag,i=this.writer.indent(e,this.writerOptions,this.currentLevel)+"<"+e.name,r=e.attribs)k.call(r,a)&&(s=r[a],i+=this.writer.attribute(s,this.writerOptions,this.currentLevel));i+=(e.children?">":"/>")+this.writer.endline(e,this.writerOptions,this.currentLevel),this.writerOptions.state=n.InsideTag}else this.writerOptions.state=n.OpenTag,i=this.writer.indent(e,this.writerOptions,this.currentLevel)+"<!DOCTYPE "+e.rootNodeName,e.pubID&&e.sysID?i+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.sysID&&(i+=' SYSTEM "'+e.sysID+'"'),e.children?(i+=" [",this.writerOptions.state=n.InsideTag):(this.writerOptions.state=n.CloseTag,i+=">"),i+=this.writer.endline(e,this.writerOptions,this.currentLevel);return this.onData(i,this.currentLevel),e.isOpen=!0}},e.prototype.closeNode=function(e){var s;if(!e.isClosed)return"",this.writerOptions.state=n.CloseTag,s=e.type===t.Element?this.writer.indent(e,this.writerOptions,this.currentLevel)+"</"+e.name+">"+this.writer.endline(e,this.writerOptions,this.currentLevel):this.writer.indent(e,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(e,this.writerOptions,this.currentLevel),this.writerOptions.state=n.None,this.onData(s,this.currentLevel),e.isClosed=!0},e.prototype.onData=function(e,t){return this.documentStarted=!0,this.onDataCallback(e,t+1)},e.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},e.prototype.debugInfo=function(e){return null==e?"":"node: <"+e+">"},e.prototype.ele=function(){return this.element.apply(this,arguments)},e.prototype.nod=function(e,t,s){return this.node(e,t,s)},e.prototype.txt=function(e){return this.text(e)},e.prototype.dat=function(e){return this.cdata(e)},e.prototype.com=function(e){return this.comment(e)},e.prototype.ins=function(e,t){return this.instruction(e,t)},e.prototype.dec=function(e,t,s){return this.declaration(e,t,s)},e.prototype.dtd=function(e,t,s){return this.doctype(e,t,s)},e.prototype.e=function(e,t,s){return this.element(e,t,s)},e.prototype.n=function(e,t,s){return this.node(e,t,s)},e.prototype.t=function(e){return this.text(e)},e.prototype.d=function(e){return this.cdata(e)},e.prototype.c=function(e){return this.comment(e)},e.prototype.r=function(e){return this.raw(e)},e.prototype.i=function(e,t){return this.instruction(e,t)},e.prototype.att=function(){return this.currentNode&&this.currentNode.type===t.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},e.prototype.a=function(){return this.currentNode&&this.currentNode.type===t.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},e.prototype.ent=function(e,t){return this.entity(e,t)},e.prototype.pent=function(e,t){return this.pEntity(e,t)},e.prototype.not=function(e,t){return this.notation(e,t)},e}()}).call(this)},21218:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e){s.__super__.constructor.call(this,e),this.type=t.Dummy}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return""},s}(n)}).call(this)},33906:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m={}.hasOwnProperty;d=s(49241),l=d.isObject,o=d.isFunction,r=d.getValue,a=s(10468),t=s(71737),n=s(54238),i=s(24797),e.exports=function(e){function s(e,n,i){var a,r,o,l;if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(n),this.type=t.Element,this.attribs={},this.schemaTypeInfo=null,null!=i&&this.attribute(i),e.type===t.Document&&(this.isRoot=!0,this.documentObject=e,e.rootObject=this,e.children))for(r=0,o=(l=e.children).length;r<o;r++)if((a=l[r]).type===t.DocType){a.name=this.name;break}}return function(e,t){for(var s in t)m.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"tagName",{get:function(){return this.name}}),Object.defineProperty(s.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(s.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(s.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(s.prototype,"id",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"className",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"classList",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"attributes",{get:function(){return this.attributeMap&&this.attributeMap.nodes||(this.attributeMap=new i(this.attribs)),this.attributeMap}}),s.prototype.clone=function(){var e,t,s,n;for(t in(s=Object.create(this)).isRoot&&(s.documentObject=null),s.attribs={},n=this.attribs)m.call(n,t)&&(e=n[t],s.attribs[t]=e.clone());return s.children=[],this.children.forEach((function(e){var t;return(t=e.clone()).parent=s,s.children.push(t)})),s},s.prototype.attribute=function(e,t){var s,i;if(null!=e&&(e=r(e)),l(e))for(s in e)m.call(e,s)&&(i=e[s],this.attribute(s,i));else o(t)&&(t=t.apply()),this.options.keepNullAttributes&&null==t?this.attribs[e]=new n(this,e,""):null!=t&&(this.attribs[e]=new n(this,e,t));return this},s.prototype.removeAttribute=function(e){var t,s,n;if(null==e)throw new Error("Missing attribute name. "+this.debugInfo());if(e=r(e),Array.isArray(e))for(s=0,n=e.length;s<n;s++)t=e[s],delete this.attribs[t];else delete this.attribs[e];return this},s.prototype.toString=function(e){return this.options.writer.element(this,this.options.writer.filterOptions(e))},s.prototype.att=function(e,t){return this.attribute(e,t)},s.prototype.a=function(e,t){return this.attribute(e,t)},s.prototype.getAttribute=function(e){return this.attribs.hasOwnProperty(e)?this.attribs[e].value:null},s.prototype.setAttribute=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getAttributeNode=function(e){return this.attribs.hasOwnProperty(e)?this.attribs[e]:null},s.prototype.setAttributeNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.removeAttributeNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setAttributeNS=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.removeAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getAttributeNodeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setAttributeNodeNS=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagNameNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.hasAttribute=function(e){return this.attribs.hasOwnProperty(e)},s.prototype.hasAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setIdAttribute=function(e,t){return this.attribs.hasOwnProperty(e)?this.attribs[e].isId:t},s.prototype.setIdAttributeNS=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setIdAttributeNode=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagNameNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByClassName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.isEqualNode=function(e){var t,n,i;if(!s.__super__.isEqualNode.apply(this,arguments).isEqualNode(e))return!1;if(e.namespaceURI!==this.namespaceURI)return!1;if(e.prefix!==this.prefix)return!1;if(e.localName!==this.localName)return!1;if(e.attribs.length!==this.attribs.length)return!1;for(t=n=0,i=this.attribs.length-1;0<=i?n<=i:n>=i;t=0<=i?++n:--n)if(!this.attribs[t].isEqualNode(e.attribs[t]))return!1;return!0},s}(a)}).call(this)},24797:function(e){(function(){e.exports=function(){function e(e){this.nodes=e}return Object.defineProperty(e.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),e.prototype.clone=function(){return this.nodes=null},e.prototype.getNamedItem=function(e){return this.nodes[e]},e.prototype.setNamedItem=function(e){var t;return t=this.nodes[e.nodeName],this.nodes[e.nodeName]=e,t||null},e.prototype.removeNamedItem=function(e){var t;return t=this.nodes[e],delete this.nodes[e],t||null},e.prototype.item=function(e){return this.nodes[Object.keys(this.nodes)[e]]||null},e.prototype.getNamedItemNS=function(e,t){throw new Error("This DOM method is not implemented.")},e.prototype.setNamedItemNS=function(e){throw new Error("This DOM method is not implemented.")},e.prototype.removeNamedItemNS=function(e,t){throw new Error("This DOM method is not implemented.")},e}()}).call(this)},10468:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m,c,g,u,p,f,h,v,w,y={}.hasOwnProperty;w=s(49241),v=w.isObject,h=w.isFunction,f=w.isEmpty,p=w.getValue,d=null,i=null,a=null,r=null,o=null,g=null,u=null,c=null,l=null,n=null,m=null,t=null,e.exports=function(){function e(e){this.parent=e,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,d||(d=s(33906),i=s(92691),a=s(32679),r=s(34130),o=s(96376),g=s(1268),u=s(82535),c=s(85915),l=s(21218),n=s(71737),m=s(16684),s(24797),t=s(34923))}return Object.defineProperty(e.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(e.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(e.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(e.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(e.prototype,"childNodes",{get:function(){return this.childNodeList&&this.childNodeList.nodes||(this.childNodeList=new m(this.children)),this.childNodeList}}),Object.defineProperty(e.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(e.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(e.prototype,"previousSibling",{get:function(){var e;return e=this.parent.children.indexOf(this),this.parent.children[e-1]||null}}),Object.defineProperty(e.prototype,"nextSibling",{get:function(){var e;return e=this.parent.children.indexOf(this),this.parent.children[e+1]||null}}),Object.defineProperty(e.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(e.prototype,"textContent",{get:function(){var e,t,s,i,a;if(this.nodeType===n.Element||this.nodeType===n.DocumentFragment){for(a="",t=0,s=(i=this.children).length;t<s;t++)(e=i[t]).textContent&&(a+=e.textContent);return a}return null},set:function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),e.prototype.setParent=function(e){var t,s,n,i,a;for(this.parent=e,e&&(this.options=e.options,this.stringify=e.stringify),a=[],s=0,n=(i=this.children).length;s<n;s++)t=i[s],a.push(t.setParent(this));return a},e.prototype.element=function(e,t,s){var n,i,a,r,o,l,d,m,c,g,u;if(l=null,null===t&&null==s&&(t=(c=[{},null])[0],s=c[1]),null==t&&(t={}),t=p(t),v(t)||(s=(g=[t,s])[0],t=g[1]),null!=e&&(e=p(e)),Array.isArray(e))for(a=0,d=e.length;a<d;a++)i=e[a],l=this.element(i);else if(h(e))l=this.element(e.apply());else if(v(e)){for(o in e)if(y.call(e,o))if(u=e[o],h(u)&&(u=u.apply()),!this.options.ignoreDecorators&&this.stringify.convertAttKey&&0===o.indexOf(this.stringify.convertAttKey))l=this.attribute(o.substr(this.stringify.convertAttKey.length),u);else if(!this.options.separateArrayItems&&Array.isArray(u)&&f(u))l=this.dummy();else if(v(u)&&f(u))l=this.element(o);else if(this.options.keepNullNodes||null!=u)if(!this.options.separateArrayItems&&Array.isArray(u))for(r=0,m=u.length;r<m;r++)i=u[r],(n={})[o]=i,l=this.element(n);else v(u)?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===o.indexOf(this.stringify.convertTextKey)?l=this.element(u):(l=this.element(o)).element(u):l=this.element(o,u);else l=this.dummy()}else l=this.options.keepNullNodes||null!==s?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===e.indexOf(this.stringify.convertTextKey)?this.text(s):!this.options.ignoreDecorators&&this.stringify.convertCDataKey&&0===e.indexOf(this.stringify.convertCDataKey)?this.cdata(s):!this.options.ignoreDecorators&&this.stringify.convertCommentKey&&0===e.indexOf(this.stringify.convertCommentKey)?this.comment(s):!this.options.ignoreDecorators&&this.stringify.convertRawKey&&0===e.indexOf(this.stringify.convertRawKey)?this.raw(s):!this.options.ignoreDecorators&&this.stringify.convertPIKey&&0===e.indexOf(this.stringify.convertPIKey)?this.instruction(e.substr(this.stringify.convertPIKey.length),s):this.node(e,t,s):this.dummy();if(null==l)throw new Error("Could not create any elements with: "+e+". "+this.debugInfo());return l},e.prototype.insertBefore=function(e,t,s){var n,i,a,r,o;if(null!=e?e.type:void 0)return r=t,(a=e).setParent(this),r?(i=children.indexOf(r),o=children.splice(i),children.push(a),Array.prototype.push.apply(children,o)):children.push(a),a;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(e));return i=this.parent.children.indexOf(this),o=this.parent.children.splice(i),n=this.parent.element(e,t,s),Array.prototype.push.apply(this.parent.children,o),n},e.prototype.insertAfter=function(e,t,s){var n,i,a;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(e));return i=this.parent.children.indexOf(this),a=this.parent.children.splice(i+1),n=this.parent.element(e,t,s),Array.prototype.push.apply(this.parent.children,a),n},e.prototype.remove=function(){var e;if(this.isRoot)throw new Error("Cannot remove the root element. "+this.debugInfo());return e=this.parent.children.indexOf(this),[].splice.apply(this.parent.children,[e,e-e+1].concat([])),this.parent},e.prototype.node=function(e,t,s){var n,i;return null!=e&&(e=p(e)),t||(t={}),t=p(t),v(t)||(s=(i=[t,s])[0],t=i[1]),n=new d(this,e,t),null!=s&&n.text(s),this.children.push(n),n},e.prototype.text=function(e){var t;return v(e)&&this.element(e),t=new u(this,e),this.children.push(t),this},e.prototype.cdata=function(e){var t;return t=new i(this,e),this.children.push(t),this},e.prototype.comment=function(e){var t;return t=new a(this,e),this.children.push(t),this},e.prototype.commentBefore=function(e){var t,s;return t=this.parent.children.indexOf(this),s=this.parent.children.splice(t),this.parent.comment(e),Array.prototype.push.apply(this.parent.children,s),this},e.prototype.commentAfter=function(e){var t,s;return t=this.parent.children.indexOf(this),s=this.parent.children.splice(t+1),this.parent.comment(e),Array.prototype.push.apply(this.parent.children,s),this},e.prototype.raw=function(e){var t;return t=new g(this,e),this.children.push(t),this},e.prototype.dummy=function(){return new l(this)},e.prototype.instruction=function(e,t){var s,n,i,a,r;if(null!=e&&(e=p(e)),null!=t&&(t=p(t)),Array.isArray(e))for(a=0,r=e.length;a<r;a++)s=e[a],this.instruction(s);else if(v(e))for(s in e)y.call(e,s)&&(n=e[s],this.instruction(s,n));else h(t)&&(t=t.apply()),i=new c(this,e,t),this.children.push(i);return this},e.prototype.instructionBefore=function(e,t){var s,n;return s=this.parent.children.indexOf(this),n=this.parent.children.splice(s),this.parent.instruction(e,t),Array.prototype.push.apply(this.parent.children,n),this},e.prototype.instructionAfter=function(e,t){var s,n;return s=this.parent.children.indexOf(this),n=this.parent.children.splice(s+1),this.parent.instruction(e,t),Array.prototype.push.apply(this.parent.children,n),this},e.prototype.declaration=function(e,t,s){var i,a;return i=this.document(),a=new r(i,e,t,s),0===i.children.length?i.children.unshift(a):i.children[0].type===n.Declaration?i.children[0]=a:i.children.unshift(a),i.root()||i},e.prototype.dtd=function(e,t){var s,i,a,r,l,d,m,c,g;for(s=this.document(),i=new o(s,e,t),a=r=0,d=(c=s.children).length;r<d;a=++r)if(c[a].type===n.DocType)return s.children[a]=i,i;for(a=l=0,m=(g=s.children).length;l<m;a=++l)if(g[a].isRoot)return s.children.splice(a,0,i),i;return s.children.push(i),i},e.prototype.up=function(){if(this.isRoot)throw new Error("The root node has no parent. Use doc() if you need to get the document object.");return this.parent},e.prototype.root=function(){var e;for(e=this;e;){if(e.type===n.Document)return e.rootObject;if(e.isRoot)return e;e=e.parent}},e.prototype.document=function(){var e;for(e=this;e;){if(e.type===n.Document)return e;e=e.parent}},e.prototype.end=function(e){return this.document().end(e)},e.prototype.prev=function(){var e;if((e=this.parent.children.indexOf(this))<1)throw new Error("Already at the first node. "+this.debugInfo());return this.parent.children[e-1]},e.prototype.next=function(){var e;if(-1===(e=this.parent.children.indexOf(this))||e===this.parent.children.length-1)throw new Error("Already at the last node. "+this.debugInfo());return this.parent.children[e+1]},e.prototype.importDocument=function(e){var t;return(t=e.root().clone()).parent=this,t.isRoot=!1,this.children.push(t),this},e.prototype.debugInfo=function(e){var t,s;return null!=(e=e||this.name)||(null!=(t=this.parent)?t.name:void 0)?null==e?"parent: <"+this.parent.name+">":(null!=(s=this.parent)?s.name:void 0)?"node: <"+e+">, parent: <"+this.parent.name+">":"node: <"+e+">":""},e.prototype.ele=function(e,t,s){return this.element(e,t,s)},e.prototype.nod=function(e,t,s){return this.node(e,t,s)},e.prototype.txt=function(e){return this.text(e)},e.prototype.dat=function(e){return this.cdata(e)},e.prototype.com=function(e){return this.comment(e)},e.prototype.ins=function(e,t){return this.instruction(e,t)},e.prototype.doc=function(){return this.document()},e.prototype.dec=function(e,t,s){return this.declaration(e,t,s)},e.prototype.e=function(e,t,s){return this.element(e,t,s)},e.prototype.n=function(e,t,s){return this.node(e,t,s)},e.prototype.t=function(e){return this.text(e)},e.prototype.d=function(e){return this.cdata(e)},e.prototype.c=function(e){return this.comment(e)},e.prototype.r=function(e){return this.raw(e)},e.prototype.i=function(e,t){return this.instruction(e,t)},e.prototype.u=function(){return this.up()},e.prototype.importXMLBuilder=function(e){return this.importDocument(e)},e.prototype.replaceChild=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.removeChild=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.appendChild=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.hasChildNodes=function(){return 0!==this.children.length},e.prototype.cloneNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isSupported=function(e,t){return!0},e.prototype.hasAttributes=function(){return 0!==this.attribs.length},e.prototype.compareDocumentPosition=function(e){var s,n;return(s=this)===e?0:this.document()!==e.document()?(n=t.Disconnected|t.ImplementationSpecific,Math.random()<.5?n|=t.Preceding:n|=t.Following,n):s.isAncestor(e)?t.Contains|t.Preceding:s.isDescendant(e)?t.Contains|t.Following:s.isPreceding(e)?t.Preceding:t.Following},e.prototype.isSameNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.lookupPrefix=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isDefaultNamespace=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.lookupNamespaceURI=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isEqualNode=function(e){var t,s,n;if(e.nodeType!==this.nodeType)return!1;if(e.children.length!==this.children.length)return!1;for(t=s=0,n=this.children.length-1;0<=n?s<=n:s>=n;t=0<=n?++s:--s)if(!this.children[t].isEqualNode(e.children[t]))return!1;return!0},e.prototype.getFeature=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.setUserData=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.getUserData=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.contains=function(e){return!!e&&(e===this||this.isDescendant(e))},e.prototype.isDescendant=function(e){var t,s,n,i;for(s=0,n=(i=this.children).length;s<n;s++){if(e===(t=i[s]))return!0;if(t.isDescendant(e))return!0}return!1},e.prototype.isAncestor=function(e){return e.isDescendant(this)},e.prototype.isPreceding=function(e){var t,s;return t=this.treePosition(e),s=this.treePosition(this),-1!==t&&-1!==s&&t<s},e.prototype.isFollowing=function(e){var t,s;return t=this.treePosition(e),s=this.treePosition(this),-1!==t&&-1!==s&&t>s},e.prototype.treePosition=function(e){var t,s;return s=0,t=!1,this.foreachTreeNode(this.document(),(function(n){if(s++,!t&&n===e)return t=!0})),t?s:-1},e.prototype.foreachTreeNode=function(e,t){var s,n,i,a,r;for(e||(e=this.document()),n=0,i=(a=e.children).length;n<i;n++){if(r=t(s=a[n]))return r;if(r=this.foreachTreeNode(s,t))return r}},e}()}).call(this)},16684:function(e){(function(){e.exports=function(){function e(e){this.nodes=e}return Object.defineProperty(e.prototype,"length",{get:function(){return this.nodes.length||0}}),e.prototype.clone=function(){return this.nodes=null},e.prototype.item=function(e){return this.nodes[e]||null},e}()}).call(this)},85915:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n,i){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing instruction target. "+this.debugInfo());this.type=t.ProcessingInstruction,this.target=this.stringify.insTarget(n),this.name=this.target,i&&(this.value=this.stringify.insValue(i))}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(e))},s.prototype.isEqualNode=function(e){return!!s.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.target===this.target},s}(n)}).call(this)},1268:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(10468),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing raw text. "+this.debugInfo());this.type=t.Raw,this.value=this.stringify.raw(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.raw(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},96775:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;t=s(71737),i=s(6286),n=s(88753),e.exports=function(e){function s(e,t){this.stream=e,s.__super__.constructor.call(this,t)}return function(e,t){for(var s in t)a.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.endline=function(e,t,i){return e.isLastRootNode&&t.state===n.CloseTag?"":s.__super__.endline.call(this,e,t,i)},s.prototype.document=function(e,t){var s,n,i,a,r,o,l,d,m;for(n=i=0,r=(l=e.children).length;i<r;n=++i)(s=l[n]).isLastRootNode=n===e.children.length-1;for(t=this.filterOptions(t),m=[],a=0,o=(d=e.children).length;a<o;a++)s=d[a],m.push(this.writeChildNode(s,t,0));return m},s.prototype.attribute=function(e,t,n){return this.stream.write(s.__super__.attribute.call(this,e,t,n))},s.prototype.cdata=function(e,t,n){return this.stream.write(s.__super__.cdata.call(this,e,t,n))},s.prototype.comment=function(e,t,n){return this.stream.write(s.__super__.comment.call(this,e,t,n))},s.prototype.declaration=function(e,t,n){return this.stream.write(s.__super__.declaration.call(this,e,t,n))},s.prototype.docType=function(e,t,s){var i,a,r,o;if(s||(s=0),this.openNode(e,t,s),t.state=n.OpenTag,this.stream.write(this.indent(e,t,s)),this.stream.write("<!DOCTYPE "+e.root().name),e.pubID&&e.sysID?this.stream.write(' PUBLIC "'+e.pubID+'" "'+e.sysID+'"'):e.sysID&&this.stream.write(' SYSTEM "'+e.sysID+'"'),e.children.length>0){for(this.stream.write(" ["),this.stream.write(this.endline(e,t,s)),t.state=n.InsideTag,a=0,r=(o=e.children).length;a<r;a++)i=o[a],this.writeChildNode(i,t,s+1);t.state=n.CloseTag,this.stream.write("]")}return t.state=n.CloseTag,this.stream.write(t.spaceBeforeSlash+">"),this.stream.write(this.endline(e,t,s)),t.state=n.None,this.closeNode(e,t,s)},s.prototype.element=function(e,s,i){var r,o,l,d,m,c,g,u,p;for(g in i||(i=0),this.openNode(e,s,i),s.state=n.OpenTag,this.stream.write(this.indent(e,s,i)+"<"+e.name),u=e.attribs)a.call(u,g)&&(r=u[g],this.attribute(r,s,i));if(d=0===(l=e.children.length)?null:e.children[0],0===l||e.children.every((function(e){return(e.type===t.Text||e.type===t.Raw)&&""===e.value})))s.allowEmpty?(this.stream.write(">"),s.state=n.CloseTag,this.stream.write("</"+e.name+">")):(s.state=n.CloseTag,this.stream.write(s.spaceBeforeSlash+"/>"));else if(!s.pretty||1!==l||d.type!==t.Text&&d.type!==t.Raw||null==d.value){for(this.stream.write(">"+this.endline(e,s,i)),s.state=n.InsideTag,m=0,c=(p=e.children).length;m<c;m++)o=p[m],this.writeChildNode(o,s,i+1);s.state=n.CloseTag,this.stream.write(this.indent(e,s,i)+"</"+e.name+">")}else this.stream.write(">"),s.state=n.InsideTag,s.suppressPrettyCount++,this.writeChildNode(d,s,i+1),s.suppressPrettyCount--,s.state=n.CloseTag,this.stream.write("</"+e.name+">");return this.stream.write(this.endline(e,s,i)),s.state=n.None,this.closeNode(e,s,i)},s.prototype.processingInstruction=function(e,t,n){return this.stream.write(s.__super__.processingInstruction.call(this,e,t,n))},s.prototype.raw=function(e,t,n){return this.stream.write(s.__super__.raw.call(this,e,t,n))},s.prototype.text=function(e,t,n){return this.stream.write(s.__super__.text.call(this,e,t,n))},s.prototype.dtdAttList=function(e,t,n){return this.stream.write(s.__super__.dtdAttList.call(this,e,t,n))},s.prototype.dtdElement=function(e,t,n){return this.stream.write(s.__super__.dtdElement.call(this,e,t,n))},s.prototype.dtdEntity=function(e,t,n){return this.stream.write(s.__super__.dtdEntity.call(this,e,t,n))},s.prototype.dtdNotation=function(e,t,n){return this.stream.write(s.__super__.dtdNotation.call(this,e,t,n))},s}(i)}).call(this)},40382:function(e,t,s){(function(){var t,n={}.hasOwnProperty;t=s(6286),e.exports=function(e){function t(e){t.__super__.constructor.call(this,e)}return function(e,t){for(var s in t)n.call(t,s)&&(e[s]=t[s]);function i(){this.constructor=e}i.prototype=t.prototype,e.prototype=new i,e.__super__=t.prototype}(t,e),t.prototype.document=function(e,t){var s,n,i,a,r;for(t=this.filterOptions(t),a="",n=0,i=(r=e.children).length;n<i;n++)s=r[n],a+=this.writeChildNode(s,t,0);return t.pretty&&a.slice(-t.newline.length)===t.newline&&(a=a.slice(0,-t.newline.length)),a},t}(t)}).call(this)},43976:function(e){(function(){var t=function(e,t){return function(){return e.apply(t,arguments)}},s={}.hasOwnProperty;e.exports=function(){function e(e){var n,i,a;for(n in this.assertLegalName=t(this.assertLegalName,this),this.assertLegalChar=t(this.assertLegalChar,this),e||(e={}),this.options=e,this.options.version||(this.options.version="1.0"),i=e.stringify||{})s.call(i,n)&&(a=i[n],this[n]=a)}return e.prototype.name=function(e){return this.options.noValidation?e:this.assertLegalName(""+e||"")},e.prototype.text=function(e){return this.options.noValidation?e:this.assertLegalChar(this.textEscape(""+e||""))},e.prototype.cdata=function(e){return this.options.noValidation?e:(e=(e=""+e||"").replace("]]>","]]]]><![CDATA[>"),this.assertLegalChar(e))},e.prototype.comment=function(e){if(this.options.noValidation)return e;if((e=""+e||"").match(/--/))throw new Error("Comment text cannot contain double-hypen: "+e);return this.assertLegalChar(e)},e.prototype.raw=function(e){return this.options.noValidation?e:""+e||""},e.prototype.attValue=function(e){return this.options.noValidation?e:this.assertLegalChar(this.attEscape(e=""+e||""))},e.prototype.insTarget=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.insValue=function(e){if(this.options.noValidation)return e;if((e=""+e||"").match(/\?>/))throw new Error("Invalid processing instruction value: "+e);return this.assertLegalChar(e)},e.prototype.xmlVersion=function(e){if(this.options.noValidation)return e;if(!(e=""+e||"").match(/1\.[0-9]+/))throw new Error("Invalid version number: "+e);return e},e.prototype.xmlEncoding=function(e){if(this.options.noValidation)return e;if(!(e=""+e||"").match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+e);return this.assertLegalChar(e)},e.prototype.xmlStandalone=function(e){return this.options.noValidation?e:e?"yes":"no"},e.prototype.dtdPubID=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdSysID=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdElementValue=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdAttType=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdAttDefault=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdEntityValue=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdNData=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.convertAttKey="@",e.prototype.convertPIKey="?",e.prototype.convertTextKey="#text",e.prototype.convertCDataKey="#cdata",e.prototype.convertCommentKey="#comment",e.prototype.convertRawKey="#raw",e.prototype.assertLegalChar=function(e){var t,s;if(this.options.noValidation)return e;if(t="","1.0"===this.options.version){if(t=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,s=e.match(t))throw new Error("Invalid character in string: "+e+" at index "+s.index)}else if("1.1"===this.options.version&&(t=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,s=e.match(t)))throw new Error("Invalid character in string: "+e+" at index "+s.index);return e},e.prototype.assertLegalName=function(e){var t;if(this.options.noValidation)return e;if(this.assertLegalChar(e),t=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!e.match(t))throw new Error("Invalid character in name");return e},e.prototype.textEscape=function(e){var t;return this.options.noValidation?e:(t=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,e.replace(t,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r/g,"&#xD;"))},e.prototype.attEscape=function(e){var t;return this.options.noValidation?e:(t=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,e.replace(t,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;"))},e}()}).call(this)},82535:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=t.Text,this.value=this.stringify.text(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"wholeText",{get:function(){var e,t,s;for(s="",t=this.previousSibling;t;)s=t.data+s,t=t.previousSibling;for(s+=this.data,e=this.nextSibling;e;)s+=e.data,e=e.nextSibling;return s}}),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.text(this,this.options.writer.filterOptions(e))},s.prototype.splitText=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.replaceWholeText=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s}(n)}).call(this)},6286:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;i=s(49241).assign,t=s(71737),s(34130),s(96376),s(92691),s(32679),s(33906),s(1268),s(82535),s(85915),s(21218),s(34111),s(67696),s(5529),s(28012),n=s(88753),e.exports=function(){function e(e){var t,s,n;for(t in e||(e={}),this.options=e,s=e.writer||{})a.call(s,t)&&(n=s[t],this["_"+t]=this[t],this[t]=n)}return e.prototype.filterOptions=function(e){var t,s,a,r,o,l,d,m;return e||(e={}),e=i({},this.options,e),(t={writer:this}).pretty=e.pretty||!1,t.allowEmpty=e.allowEmpty||!1,t.indent=null!=(s=e.indent)?s:" ",t.newline=null!=(a=e.newline)?a:"\n",t.offset=null!=(r=e.offset)?r:0,t.dontPrettyTextNodes=null!=(o=null!=(l=e.dontPrettyTextNodes)?l:e.dontprettytextnodes)?o:0,t.spaceBeforeSlash=null!=(d=null!=(m=e.spaceBeforeSlash)?m:e.spacebeforeslash)?d:"",!0===t.spaceBeforeSlash&&(t.spaceBeforeSlash=" "),t.suppressPrettyCount=0,t.user={},t.state=n.None,t},e.prototype.indent=function(e,t,s){var n;return!t.pretty||t.suppressPrettyCount?"":t.pretty&&(n=(s||0)+t.offset+1)>0?new Array(n).join(t.indent):""},e.prototype.endline=function(e,t,s){return!t.pretty||t.suppressPrettyCount?"":t.newline},e.prototype.attribute=function(e,t,s){var n;return this.openAttribute(e,t,s),n=" "+e.name+'="'+e.value+'"',this.closeAttribute(e,t,s),n},e.prototype.cdata=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<![CDATA[",t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+="]]>"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.comment=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"\x3c!-- ",t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+=" --\x3e"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.declaration=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<?xml",t.state=n.InsideTag,i+=' version="'+e.version+'"',null!=e.encoding&&(i+=' encoding="'+e.encoding+'"'),null!=e.standalone&&(i+=' standalone="'+e.standalone+'"'),t.state=n.CloseTag,i+=t.spaceBeforeSlash+"?>",i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.docType=function(e,t,s){var i,a,r,o,l;if(s||(s=0),this.openNode(e,t,s),t.state=n.OpenTag,o=this.indent(e,t,s),o+="<!DOCTYPE "+e.root().name,e.pubID&&e.sysID?o+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.sysID&&(o+=' SYSTEM "'+e.sysID+'"'),e.children.length>0){for(o+=" [",o+=this.endline(e,t,s),t.state=n.InsideTag,a=0,r=(l=e.children).length;a<r;a++)i=l[a],o+=this.writeChildNode(i,t,s+1);t.state=n.CloseTag,o+="]"}return t.state=n.CloseTag,o+=t.spaceBeforeSlash+">",o+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),o},e.prototype.element=function(e,s,i){var r,o,l,d,m,c,g,u,p,f,h,v,w,y;for(p in i||(i=0),f=!1,h="",this.openNode(e,s,i),s.state=n.OpenTag,h+=this.indent(e,s,i)+"<"+e.name,v=e.attribs)a.call(v,p)&&(r=v[p],h+=this.attribute(r,s,i));if(d=0===(l=e.children.length)?null:e.children[0],0===l||e.children.every((function(e){return(e.type===t.Text||e.type===t.Raw)&&""===e.value})))s.allowEmpty?(h+=">",s.state=n.CloseTag,h+="</"+e.name+">"+this.endline(e,s,i)):(s.state=n.CloseTag,h+=s.spaceBeforeSlash+"/>"+this.endline(e,s,i));else if(!s.pretty||1!==l||d.type!==t.Text&&d.type!==t.Raw||null==d.value){if(s.dontPrettyTextNodes)for(m=0,g=(w=e.children).length;m<g;m++)if(((o=w[m]).type===t.Text||o.type===t.Raw)&&null!=o.value){s.suppressPrettyCount++,f=!0;break}for(h+=">"+this.endline(e,s,i),s.state=n.InsideTag,c=0,u=(y=e.children).length;c<u;c++)o=y[c],h+=this.writeChildNode(o,s,i+1);s.state=n.CloseTag,h+=this.indent(e,s,i)+"</"+e.name+">",f&&s.suppressPrettyCount--,h+=this.endline(e,s,i),s.state=n.None}else h+=">",s.state=n.InsideTag,s.suppressPrettyCount++,f=!0,h+=this.writeChildNode(d,s,i+1),s.suppressPrettyCount--,f=!1,s.state=n.CloseTag,h+="</"+e.name+">"+this.endline(e,s,i);return this.closeNode(e,s,i),h},e.prototype.writeChildNode=function(e,s,n){switch(e.type){case t.CData:return this.cdata(e,s,n);case t.Comment:return this.comment(e,s,n);case t.Element:return this.element(e,s,n);case t.Raw:return this.raw(e,s,n);case t.Text:return this.text(e,s,n);case t.ProcessingInstruction:return this.processingInstruction(e,s,n);case t.Dummy:return"";case t.Declaration:return this.declaration(e,s,n);case t.DocType:return this.docType(e,s,n);case t.AttributeDeclaration:return this.dtdAttList(e,s,n);case t.ElementDeclaration:return this.dtdElement(e,s,n);case t.EntityDeclaration:return this.dtdEntity(e,s,n);case t.NotationDeclaration:return this.dtdNotation(e,s,n);default:throw new Error("Unknown XML node type: "+e.constructor.name)}},e.prototype.processingInstruction=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<?",t.state=n.InsideTag,i+=e.target,e.value&&(i+=" "+e.value),t.state=n.CloseTag,i+=t.spaceBeforeSlash+"?>",i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.raw=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s),t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.text=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s),t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdAttList=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!ATTLIST",t.state=n.InsideTag,i+=" "+e.elementName+" "+e.attributeName+" "+e.attributeType,"#DEFAULT"!==e.defaultValueType&&(i+=" "+e.defaultValueType),e.defaultValue&&(i+=' "'+e.defaultValue+'"'),t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdElement=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!ELEMENT",t.state=n.InsideTag,i+=" "+e.name+" "+e.value,t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdEntity=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!ENTITY",t.state=n.InsideTag,e.pe&&(i+=" %"),i+=" "+e.name,e.value?i+=' "'+e.value+'"':(e.pubID&&e.sysID?i+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.sysID&&(i+=' SYSTEM "'+e.sysID+'"'),e.nData&&(i+=" NDATA "+e.nData)),t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdNotation=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!NOTATION",t.state=n.InsideTag,i+=" "+e.name,e.pubID&&e.sysID?i+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.pubID?i+=' PUBLIC "'+e.pubID+'"':e.sysID&&(i+=' SYSTEM "'+e.sysID+'"'),t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.openNode=function(e,t,s){},e.prototype.closeNode=function(e,t,s){},e.prototype.openAttribute=function(e,t,s){},e.prototype.closeAttribute=function(e,t,s){},e}()}).call(this)},59665:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m,c;c=s(49241),d=c.assign,m=c.isFunction,i=s(67260),a=s(71933),r=s(80400),l=s(40382),o=s(96775),t=s(71737),n=s(88753),e.exports.create=function(e,t,s,n){var i,r;if(null==e)throw new Error("Root element needs a name.");return n=d({},t,s,n),r=(i=new a(n)).element(e),n.headless||(i.declaration(n),null==n.pubID&&null==n.sysID||i.dtd(n)),r},e.exports.begin=function(e,t,s){var n;return m(e)&&(t=(n=[e,t])[0],s=n[1],e={}),t?new r(e,t,s):new a(e)},e.exports.stringWriter=function(e){return new l(e)},e.exports.streamWriter=function(e,t){return new o(e,t)},e.exports.implementation=new i,e.exports.nodeType=t,e.exports.writerState=n}).call(this)},98383:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},39075:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill:%23fff;fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},15340:()=>{},79838:()=>{},94997:(e,t,s)=>{"use strict";s.d(t,{S:()=>ae,U:()=>ke,a:()=>le,b:()=>ge,g:()=>_e,h:()=>Ae,i:()=>oe,l:()=>te,n:()=>he,o:()=>Se,t:()=>ue});var n=s(85072),i=s.n(n),a=s(97825),r=s.n(a),o=s(77659),l=s.n(o),d=s(55056),m=s.n(d),c=s(10540),g=s.n(c),u=s(41113),p=s.n(u),f=s(96667),h={};h.styleTagTransform=p(),h.setAttributes=m(),h.insert=l().bind(null,"head"),h.domAPI=r(),h.insertStyleElement=g(),i()(f.A,h),f.A&&f.A.locals&&f.A.locals;var v=s(82680),w=s(85471),y=s(21777),C=s(34297),T=s(71225),A=s(43627),b=s(65043);class x extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const k=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class _{static fn(e){return(...t)=>new _(((s,n,i)=>{t.push(i),e(...t).then(s,n)}))}#e=[];#t=!0;#s=k.pending;#n;#i;constructor(e){this.#n=new Promise(((t,s)=>{this.#i=s;const n=e=>{if(this.#s!==k.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#s.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#t,set:e=>{this.#t=e}}}),e((e=>{this.#s===k.canceled&&n.shouldReject||(t(e),this.#a(k.resolved))}),(e=>{this.#s===k.canceled&&n.shouldReject||(s(e),this.#a(k.rejected))}),n)}))}then(e,t){return this.#n.then(e,t)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#s===k.pending){if(this.#a(k.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#i(e)}this.#t&&this.#i(new x(e))}}get isCanceled(){return this.#s===k.canceled}#a(e){this.#s===k.pending&&(this.#s=e)}}Object.setPrototypeOf(_.prototype,Promise.prototype);var S=s(57485),F=s(63814),N=s(51111);const L="axios-retry";function U(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&N(e)}const P=["get","head","options"],E=P.concat(["put","delete"]);function I(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function D(e){return!!e.config?.method&&I(e)&&-1!==E.indexOf(e.config.method)}function z(e){return U(e)||D(e)}function B(e=void 0){const t=e?.response?.headers["retry-after"];if(!t)return 0;let s=1e3*(Number(t)||0);return 0===s&&(s=(new Date(t).valueOf()||0)-Date.now()),Math.max(0,s)}function j(e=0,t=void 0,s=100){const n=2**e*s,i=Math.max(n,B(t));return i+.2*i*Math.random()}const M={retries:3,retryCondition:z,retryDelay:function(e=0,t=void 0){return Math.max(0,B(t))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function O(e,t,s=!1){const n=function(e,t){return{...M,...t,...e[L]}}(e,t||{});return n.retryCount=n.retryCount||0,n.lastRequestTime&&!s||(n.lastRequestTime=Date.now()),e[L]=n,n}const R=(e,t)=>{const s=e.interceptors.request.use((e=>(O(e,t,!0),e[L]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async s=>{const{config:n}=s;if(!n)return Promise.reject(s);const i=O(n,t);return s.response&&i.validateResponse?.(s.response)?s.response:await async function(e,t){const{retries:s,retryCondition:n}=e,i=(e.retryCount||0)<s&&n(t);if("object"==typeof i)try{return!1!==await i}catch(e){return!1}return i}(i,s)?async function(e,t,s,n){t.retryCount+=1;const{retryDelay:i,shouldResetTimeout:a,onRetry:r}=t,o=i(t.retryCount,s);if(function(e,t){e.defaults.agent===t.agent&&delete t.agent,e.defaults.httpAgent===t.httpAgent&&delete t.httpAgent,e.defaults.httpsAgent===t.httpsAgent&&delete t.httpsAgent}(e,n),!a&&n.timeout&&t.lastRequestTime){const e=Date.now()-t.lastRequestTime,i=n.timeout-e-o;if(i<=0)return Promise.reject(s);n.timeout=i}return n.transformRequest=[e=>e],await r(t.retryCount,s,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((t=>{const s=()=>{clearTimeout(i),t(e(n))},i=setTimeout((()=>{t(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",s)}),o);n.signal?.addEventListener&&n.signal.addEventListener("abort",s,{once:!0})}))}(e,i,s,n):(await async function(e,t){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(t,e.retryCount)}(i,s),Promise.reject(s))}));return{requestInterceptorId:s,responseInterceptorId:n}};R.isNetworkError=U,R.isSafeRequestError=function(e){return!!e.config?.method&&I(e)&&-1!==P.indexOf(e.config.method)},R.isIdempotentRequestError=D,R.isNetworkOrIdempotentRequestError=z,R.exponentialDelay=j,R.linearDelay=function(e=100){return(t=0,s=void 0)=>{const n=t*e;return Math.max(n,B(s))}},R.isRetryableError=I;const V=R;var H=s(35947),q=s(11195),W=s(87485),G=s(75270),Y=s(89257),$=s(30567),K=s(80114),J=s(24764),Q=s(18740),Z=s(6695),X=s(95101),ee=s(95674);const te=(0,H.YK)().setApp("@nextcloud/upload").detectUser().build();V(b.Ay,{retries:0});const se=async function(e,t,s,n=(()=>{}),i=void 0,a={},r=5){let o;return o=t instanceof Blob?t:await t(),i&&(a.Destination=i),a["Content-Type"]||(a["Content-Type"]="application/octet-stream"),await b.Ay.request({method:"PUT",url:e,data:o,signal:s,onUploadProgress:n,headers:a,"axios-retry":{retries:r,retryDelay:(e,t)=>j(e,t,1e3)}})},ne=function(e,t,s){return 0===t&&e.size<=s?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(t,t+s)],{type:"application/octet-stream"}))},ie=function(e=void 0){const t=window.OC?.appConfig?.files?.max_chunk_size;if(t<=0)return 0;if(!Number(t))return 10485760;const s=Math.max(Number(t),5242880);return void 0===e?s:Math.max(s,Math.ceil(e/1e4))};var ae=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ae||{});class re{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,t=!1,s,n){const i=Math.min(ie()>0?Math.ceil(s/ie()):1,1e4);this._source=e,this._isChunked=t&&ie()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=s,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}const oe=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,le=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;class de extends File{_originalName;_path;_children;constructor(e){super([],(0,T.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,T.P8)(e),this._path=e}get size(){return this.children.reduce(((e,t)=>e+t.size),0)}get lastModified(){return this.children.reduce(((e,t)=>Math.max(e,t.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChildren(e){for(const t of e)await this.addChild(t)}async addChild(e){const t=this._path&&`${this._path}/`;if(oe(e))e=await new Promise(((t,s)=>e.file(t,s)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const s=e.createReader(),n=await new Promise(((e,t)=>s.readEntries(e,t))),i=new de(`${t}${e.name}`);return await i.addChildren(n),void this._children.set(e.name,i)}const s=e.webkitRelativePath??e.name;if(s.includes("/")){if(!s.startsWith(this._path))throw new Error(`File ${s} is not a child of ${this._path}`);const n=s.slice(t.length),i=(0,T.P8)(n);if(i===n)this._children.set(i,e);else{const s=n.slice(0,n.indexOf("/"));if(this._children.has(s))await this._children.get(s).addChild(e);else{const n=new de(`${t}${s}`);await n.addChild(e),this._children.set(s,n)}}}else this._children.set(e.name,e)}}const me=(0,q.$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"abusaud, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli <alimahwer@yahoo.com>, 2024\nabusaud, 2024\n"},msgstr:["Last-Translator: abusaud, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" هو اسم ممنوع لملف أو مجلد.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" هو نوع ممنوع أن يكون لملف.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" هو غير مسموح به في اسم ملف أو مجلد.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفان متعارضان في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفات متعارضة في {dirname}","{count} ملفات متعارضة في {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["بضع ثوانٍ متبقية"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['غير مسموح ان ينتهي اسم الملف بـ "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["اسم ملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معروف"]},New:{msgid:"New",msgstr:["جديد"]},"New filename":{msgid:"New filename",msgstr:["اسم ملف جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},Upload:{msgid:"Upload",msgstr:["رفع الملفات"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["تمّ تجاوز الرفع"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['رفع "{folder}" تمّ تجاوزه']},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp <enolp@softastur.org>, 2023\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev <microphprashad@gmail.com>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev <microphprashad@gmail.com>, 2023\n"},msgstr:["Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera <marcriera@softcatala.org>, 2022\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\nMartin Hankovec, 2024\nAppukonrad <appukonrad@gmail.com>, 2024\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ není povoleno použít jako název souboru či složky."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ není povoleného typu souboru."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ není povoleno použít v rámci názvu souboru či složky."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"Create new":{msgid:"Create new",msgstr:["Vytvořit nový"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Názvy souborů nemohou končit na „{segment}“."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný název souboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New filename":{msgid:"New filename",msgstr:["Nový název souboru"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},Rename:{msgid:"Rename",msgstr:["Přejmenovat"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},Skip:{msgid:"Skip",msgstr:["Přeskočit"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},Upload:{msgid:"Upload",msgstr:["Nahrát"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrát složky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrát ze zařízení"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávání bylo zrušeno"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrání bylo přeskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Nahrání „{folder}“ bylo přeskočeno"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRasmus Rosendahl-Kaa, 2024\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tilladt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"Create new":{msgid:"Create new",msgstr:["Opret ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavne må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldigt filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nyt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},Rename:{msgid:"Rename",msgstr:["Omdøb"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Spring over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload fra enhed"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload er blevet annulleret"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload er blevet sprunget over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload af "{folder}" er blevet sprunget over']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Andy Scherzinger <info@andy-scherzinger.de>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMartin Wilichowski, 2024\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\n"},msgstr:["Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\n"},msgstr:["Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is a forbidden file or folder name.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is a forbidden file type.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is not allowed inside a file or folder name.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"Create new":{msgid:"Create new",msgstr:["Create new"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filenames must not end with "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Invalid filename"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New filename":{msgid:"New filename",msgstr:["New filename"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},Rename:{msgid:"Rename",msgstr:["Rename"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},Skip:{msgid:"Skip",msgstr:["Skip"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload folders"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload from device"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload has been cancelled"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload has been skipped"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload of "{folder}" has been skipped']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["You can either rename the file, skip this file or cancel the whole operation."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa de imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Cargar archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Cargar carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Cargar desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Carga cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la carga"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿Cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivo en conflicto en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Cuáles archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi",json:{charset:"utf-8",headers:{"Last-Translator":"teemue, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\nteemue, 2024\n"},msgstr:["Last-Translator: teemue, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" on kielletty tiedoston tai hakemiston nimi.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" on kielletty tiedostotyyppi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ei ole sallittu tiedoston tai hakemiston nimessä.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} tiedoston ristiriita","{count} tiedoston ristiriita"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tiedoston ristiriita kansiossa {dirname}","{count} tiedoston ristiriita kansiossa {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Cancel:{msgid:"Cancel",msgstr:["Peruuta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Peruuta koko toimenpide"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},Continue:{msgid:"Continue",msgstr:["Jatka"]},"Create new":{msgid:"Create new",msgstr:["Luo uusi"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},"Existing version":{msgid:"Existing version",msgstr:["Olemassa oleva versio"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tiedoston nimi ei saa päättyä "{segment}"']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Kielletty/väärä tiedoston nimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimeisin muokkauspäivä on tuntematon"]},New:{msgid:"New",msgstr:["Uusi"]},"New filename":{msgid:"New filename",msgstr:["Uusi tiedostonimi"]},"New version":{msgid:"New version",msgstr:["Uusi versio"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Preview image":{msgid:"Preview image",msgstr:["Esikatsele kuva"]},Rename:{msgid:"Rename",msgstr:["Nimeä uudelleen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Valitse kaikki valintaruudut"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Valitse kaikki olemassa olevat tiedostot"]},"Select all new files":{msgid:"Select all new files",msgstr:["Valitse kaikki uudet tiedostot"]},Skip:{msgid:"Skip",msgstr:["Ohita"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ohita tämä tiedosto","Ohita {count} tiedostoa"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tuntematon koko"]},Upload:{msgid:"Upload",msgstr:["Lähetä"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]},"Upload folders":{msgid:"Upload folders",msgstr:["Lähetä kansioita"]},"Upload from device":{msgid:"Upload from device",msgstr:["Lähetä laitteelta"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Lähetys on peruttu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Lähetys on ohitettu"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Hakemiston "{folder}" lähetys on ohitettu']},"Upload progress":{msgid:"Upload progress",msgstr:["Lähetyksen edistyminen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mitkä tiedostot haluat säilyttää?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi."]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Arnaud Cazenave, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\nJérôme HERBINET, 2024\nArnaud Cazenave, 2024\n"},msgstr:["Last-Translator: Arnaud Cazenave, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" est un nom de fichier ou de dossier interdit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" est un type de fichier interdit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les téléversements"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"Create new":{msgid:"Create new",msgstr:["Créer un nouveau"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Le nom des fichiers ne doit pas finir par "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fichier invalide"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New filename":{msgid:"New filename",msgstr:["Nouveau nom de fichier"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},Rename:{msgid:"Rename",msgstr:["Renommer"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},Skip:{msgid:"Skip",msgstr:["Ignorer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},Upload:{msgid:"Upload",msgstr:["Téléverser"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Téléverser des dossiers"]},"Upload from device":{msgid:"Upload from device",msgstr:["Téléverser depuis l'appareil"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Le téléversement a été annulé"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Le téléversement a été ignoré"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Le téléversement de "{folder}" a été ignoré']},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléversement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Is ainm toirmiscthe comhaid nó fillteáin é "{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Is cineál comhaid toirmiscthe é "{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Ní cheadaítear "{segment}" taobh istigh d\'ainm comhaid nó fillteáin.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} soicind fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Níor cheart go gcríochnaíonn comhaid chomhad le "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New filename":{msgid:"New filename",msgstr:["Ainm comhaid nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},Upload:{msgid:"Upload",msgstr:["Uaslódáil"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó ghléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Léiríodh an uaslódáil"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Léiríodh an uaslódáil "{folder}".']},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» é un nome vedado para un ficheiro ou cartafol."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» é un tipo de ficheiro vedado."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Os nomes de ficheiros non deben rematar con «{segment}»."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O envío foi omitido"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["O envío de «{folder}» foi omitido"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Tiltott fájl- vagy mappanév: „{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Tiltott fájltípus: „{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Nem megengedett egy fájl- vagy mappanévben: „{segment}".']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fájlt érintő konfliktus","{count} fájlt érintő konfliktus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fájlt érintő konfliktus a mappában: {dirname}","{count}fájlt érintő konfliktus a mappában: {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Cancel:{msgid:"Cancel",msgstr:["Mégse"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Teljes művelet megszakítása"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},Continue:{msgid:"Continue",msgstr:["Tovább"]},"Create new":{msgid:"Create new",msgstr:["Új létrehozása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},"Existing version":{msgid:"Existing version",msgstr:["Jelenlegi változat"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Fájlnevek nem végződhetnek erre: „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Érvénytelen fájlnév"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Utolsó módosítás dátuma ismeretlen"]},New:{msgid:"New",msgstr:["Új"]},"New filename":{msgid:"New filename",msgstr:["Új fájlnév"]},"New version":{msgid:"New version",msgstr:["Új verzió"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Preview image":{msgid:"Preview image",msgstr:["Kép előnézete"]},Rename:{msgid:"Rename",msgstr:["Átnevezés"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Minden jelölőnégyzet kijelölése"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Minden jelenlegi fájl kijelölése"]},"Select all new files":{msgid:"Select all new files",msgstr:["Minden új fájl kijelölése"]},Skip:{msgid:"Skip",msgstr:["Kihagyás"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ezen fájl kihagyása","{count}fájl kihagyása"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ismeretlen méret"]},Upload:{msgid:"Upload",msgstr:["Feltöltés"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappák feltöltése"]},"Upload from device":{msgid:"Upload from device",msgstr:["Feltöltés eszközről"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Feltöltés meg lett szakítva"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Feltöltés át lett ugorva"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}” feltöltése át lett ugorva"]},"Upload progress":{msgid:"Upload progress",msgstr:["Feltöltési folyamat"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mely fájlokat kívánja megtartani?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["A folytatáshoz minden fájlból legalább egy verziót ki kell választani."]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly <linerly@proton.me>, 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nEmpty Slot Filler, 2023\nLinerly <linerly@proton.me>, 2023\n"},msgstr:["Last-Translator: Linerly <linerly@proton.me>, 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"albanobattistella <albanobattistella@gmail.com>, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFrancesco Sercia, 2024\nalbanobattistella <albanobattistella@gmail.com>, 2024\n"},msgstr:["Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" è un nome di file o cartella proibito.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"è un tipo di file proibito.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" non è consentito all\'interno di un nome di file o cartella.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},Cancel:{msgid:"Cancel",msgstr:["Annulla"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annulla l'intera operazione"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"Create new":{msgid:"Create new",msgstr:["Crea nuovo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['I nomi dei file non devono terminare con "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome file non valido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New filename":{msgid:"New filename",msgstr:["Nuovo nome file"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},Rename:{msgid:"Rename",msgstr:["Rinomina"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},Skip:{msgid:"Skip",msgstr:["Salta"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},Upload:{msgid:"Upload",msgstr:["Caricamento"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carica cartelle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carica dal dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Caricamento annullato"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Il caricamento è stato saltato"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Il caricamento di "{folder}" è stato saltato']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso del caricamento"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["È possibile rinominare il file, ignorarlo o annullare l'intera operazione."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"ja",json:{charset:"utf-8",headers:{"Last-Translator":"kshimohata, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\nkshimohata, 2024\n"},msgstr:["Last-Translator: kshimohata, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" は禁止されているファイルまたはフォルダ名です。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" は禁止されているファイルタイプです。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ファイルまたはフォルダ名に "{segment}" を含めることはできません。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ファイル数の競合"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} で {count} 個のファイルが競合しています"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Cancel:{msgid:"Cancel",msgstr:["キャンセル"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["すべての操作をキャンセルする"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},Continue:{msgid:"Continue",msgstr:["続ける"]},"Create new":{msgid:"Create new",msgstr:["新規作成"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},"Existing version":{msgid:"Existing version",msgstr:["既存バージョン"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ファイル名の末尾に "{segment}" を付けることはできません。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無効なファイル名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最終更新日不明"]},New:{msgid:"New",msgstr:["新規作成"]},"New filename":{msgid:"New filename",msgstr:["新しいファイル名"]},"New version":{msgid:"New version",msgstr:["新しいバージョン"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Preview image":{msgid:"Preview image",msgstr:["プレビュー画像"]},Rename:{msgid:"Rename",msgstr:["名前を変更"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["すべて選択"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["すべての既存ファイルを選択"]},"Select all new files":{msgid:"Select all new files",msgstr:["すべての新規ファイルを選択"]},Skip:{msgid:"Skip",msgstr:["スキップ"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} 個のファイルをスキップする"]},"Unknown size":{msgid:"Unknown size",msgstr:["サイズ不明"]},Upload:{msgid:"Upload",msgstr:["アップロード"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップロード"]},"Upload folders":{msgid:"Upload folders",msgstr:["フォルダのアップロード"]},"Upload from device":{msgid:"Upload from device",msgstr:["デバイスからのアップロード"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["アップロードはキャンセルされました"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["アップロードがスキップされました"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" のアップロードがスキップされました']},"Upload progress":{msgid:"Upload progress",msgstr:["アップロード進行状況"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["どのファイルを保持しますか?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров <sasetodorov@gmail.com>, 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров <sasetodorov@gmail.com>, 2022\n"},msgstr:["Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb",json:{charset:"utf-8",headers:{"Last-Translator":"Roger Knutsen, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRoger Knutsen, 2024\n"},msgstr:["Last-Translator: Roger Knutsen, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tillatt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hele operasjonen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"Create new":{msgid:"Create new",msgstr:["Opprett ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavn må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldig filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},Rename:{msgid:"Rename",msgstr:["Omdøp"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Hopp over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Last opp mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Last opp fra enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Opplastingen er kansellert"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Opplastingen er hoppet over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Opplasting av "{folder}" er hoppet over']},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico <rico-schwab@hotmail.com>, 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico <rico-schwab@hotmail.com>, 2023\n"},msgstr:["Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” to zabroniona nazwa pliku lub folderu."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” jest zabronionym typem pliku."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"Create new":{msgid:"Create new",msgstr:["Utwórz nowe"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Nazwy plików nie mogą kończyć się na „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nieprawidłowa nazwa pliku"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New filename":{msgid:"New filename",msgstr:["Nowa nazwa pliku"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},Rename:{msgid:"Rename",msgstr:["Zmiana nazwy"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie pola wyboru"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},Skip:{msgid:"Skip",msgstr:["Pomiń"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},Upload:{msgid:"Upload",msgstr:["Prześlij"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload folders":{msgid:"Upload folders",msgstr:["Prześlij foldery"]},"Upload from device":{msgid:"Upload from device",msgstr:["Prześlij z urządzenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Przesyłanie zostało anulowane"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Przesyłanie zostało pominięte"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Przesyłanie „{folder}” zostało pominięte"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Paulo Schopf, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\nPaulo Schopf, 2024\n"},msgstr:["Last-Translator: Paulo Schopf, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de arquivo proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido dentro de um nome de arquivo ou pasta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes dos arquivos não devem terminar com "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de arquivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de arquivo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},Skip:{msgid:"Skip",msgstr:["Pular"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carregar do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O upload foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O upload foi pulado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O upload de "{folder}" foi ignorado']},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva <mmsrs@sky.com>, 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva <mmsrs@sky.com>, 2022\n"},msgstr:["Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Александр, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nВлад, 2024\nAlex <fedotov22091982@gmail.com>, 2024\nRoman Stepanov, 2024\nMaksim Sukharev, 2024\nАлександр, 2024\n"},msgstr:["Last-Translator: Александр, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» — это запрещенное имя файла или папки."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» — это запрещенный тип файла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» не допускается в имени файла или папки."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отменить"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена файлов не должны заканчиваться на «{segment}»"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неверное имя файла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New filename":{msgid:"New filename",msgstr:["Новое имя файла"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Выбрать все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропустить"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},Upload:{msgid:"Upload",msgstr:["Загрузить"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузить файлы"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузить папки"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузить с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Загрузка была пропущена"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Загрузка «{folder}» была пропущена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Прогресс загрузки"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Вы можете переименовать файл, пропустить этот файл или отменить всю операцию."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJozef Gaal <preklady@mayday.sk>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ je zakázaný názov súboru alebo priečinka."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je zákazaný typ súboru.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}“ je zakázané v názve súboru alebo adresára.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} súbor má konflikt","{count} súbory majú konflikt","{count} súborov má konflikt","{count} súborov má konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} súborový konflikt v {dirname}","{count} súborové konflikty v {dirname}","{count} súborových konfliktov v {dirname}","{count} súborových konfliktov v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúnd zostáva"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} zostáva"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zostáva niekoľko sekúnd"]},Cancel:{msgid:"Cancel",msgstr:["Zrušiť"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušiť celú operáciu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušiť nahrávanie"]},Continue:{msgid:"Continue",msgstr:["Pokračovať"]},"Create new":{msgid:"Create new",msgstr:["Vytvoriť nové"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovanie zostávajúceho času"]},"Existing version":{msgid:"Existing version",msgstr:["Existujúca verzia"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Názvy súborov nesmú končiť znakom "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný názov súboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dátum poslednej úpravy neznámy"]},New:{msgid:"New",msgstr:["Nový"]},"New filename":{msgid:"New filename",msgstr:["Nový názov súboru"]},"New version":{msgid:"New version",msgstr:["Nová verzia"]},paused:{msgid:"paused",msgstr:["pozastavené"]},"Preview image":{msgid:"Preview image",msgstr:["Náhľad obrázka"]},Rename:{msgid:"Rename",msgstr:["Premenovať"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označiť všetky výberové políčka"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrať všetky existujúce súbory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrať všetky nové súbory"]},Skip:{msgid:"Skip",msgstr:["Preskočiť"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskočiť tento súbor","Preskočiť {count} súbory","Preskočiť {count} súborov","Preskočiť {count} súborov"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznáma veľkosť"]},Upload:{msgid:"Upload",msgstr:["Nahrať"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrať súbory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrať priečinky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrať zo zariadenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávanie bolo zrušené"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrávanie bolo preskočené"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nahrávanie "{folder}" bolo preskočené']},"Upload progress":{msgid:"Upload progress",msgstr:["Priebeh nahrávania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Ktoré súbory chcete ponechať?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru."]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJan Kraljič <jan.kraljic@patware.eu>, 2024\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" je prepovedano ime datoteka ali mape.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je prepovedan tip datoteke.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ni dovoljeno v imenu datoteke ali mape.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["1{count} datoteka je v konfliktu","1{count} datoteki sta v konfiktu","1{count} datotek je v konfliktu","{count} datotek je v konfliktu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} datoteka je v konfiktu v {dirname}","{count} datoteki sta v konfiktu v {dirname}","{count} datotek je v konfiktu v {dirname}","{count} konfliktov datotek v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Cancel:{msgid:"Cancel",msgstr:["Prekliči"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Prekliči celotni postopek"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},Continue:{msgid:"Continue",msgstr:["Nadaljuj"]},"Create new":{msgid:"Create new",msgstr:["Ustvari nov"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjujem čas do konca"]},"Existing version":{msgid:"Existing version",msgstr:["Obstoječa različica"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Imena datotek se ne smejo končati s "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nepravilno ime datoteke"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum zadnje spremembe neznan"]},New:{msgid:"New",msgstr:["Nov"]},"New filename":{msgid:"New filename",msgstr:["Novo ime datoteke"]},"New version":{msgid:"New version",msgstr:["Nova različica"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Preview image":{msgid:"Preview image",msgstr:["Predogled slike"]},Rename:{msgid:"Rename",msgstr:["Preimenuj"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Izberi vsa potrditvena polja"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Označi vse obstoječe datoteke"]},"Select all new files":{msgid:"Select all new files",msgstr:["Označi vse nove datoteke"]},Skip:{msgid:"Skip",msgstr:["Preskoči"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskoči datoteko","Preskoči {count} datoteki","Preskoči {count} datotek","Preskoči {count} datotek"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznana velikost"]},Upload:{msgid:"Upload",msgstr:["Naloži"]},"Upload files":{msgid:"Upload files",msgstr:["Naloži datoteke"]},"Upload folders":{msgid:"Upload folders",msgstr:["Naloži mape"]},"Upload from device":{msgid:"Upload from device",msgstr:["Naloži iz naprave"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nalaganje je bilo preklicano"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nalaganje je bilo preskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nalaganje "{folder}" je bilo preskočeno']},"Upload progress":{msgid:"Upload progress",msgstr:["Napredek nalaganja"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Katere datoteke želite obdržati?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Izbrati morate vsaj eno različico vsake datoteke da nadaljujete."]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” је забрањено име фајла или фолдера."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” је забрањен тип фајла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}” није дозвољено унутар имена фајла или фолдера."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},Cancel:{msgid:"Cancel",msgstr:["Откажи"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отказује комплетну операцију"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"Create new":{msgid:"Create new",msgstr:["Креирај ново"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена фајлова не смеју да се завршавају на „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име долазног фајла ће се додати број."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неисправно име фајла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New filename":{msgid:"New filename",msgstr:["Ново име фајла"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},Rename:{msgid:"Rename",msgstr:["Промени име"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},Skip:{msgid:"Skip",msgstr:["Прескочи"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},Upload:{msgid:"Upload",msgstr:["Отпреми"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload folders":{msgid:"Upload folders",msgstr:["Отпреми фолдере"]},"Upload from device":{msgid:"Upload from device",msgstr:["Отпреми са уређаја"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Отпремање је отказано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Отпремање је прескочено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Отпремање „{folder}”је прескочено"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" är ett förbjudet fil- eller mappnamn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" är en förbjuden filtyp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" är inte tillåtet i ett fil- eller mappnamn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnamn får inte sluta med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnamn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},Upload:{msgid:"Upload",msgstr:["Ladda upp"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Uppladdningen har hoppats över"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Uppladdningen av "{folder}" har hoppats över']},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat <ppnplus@protonmail.com>, 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" dosya ya da klasör adına izin verilmiyor.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" dosya türüne izin verilmiyor.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Bir dosya ya da klasör adında "{segment}" ifadesine izin verilmiyor.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dosya adları "{segment}" ile bitmemeli.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New filename":{msgid:"New filename",msgstr:["Yeni dosya adı"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},Upload:{msgid:"Upload",msgstr:["Yükle"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Yükleme atlandı"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" klasörünün yüklenmesi atlandı']},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" не є дозволеним ім\'ям файлу або каталогу.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" не є дозволеним типом файлу.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" не дозволене сполучення символів в назві файлу або каталогу.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"Create new":{msgid:"Create new",msgstr:["Створити новий"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Ім\'я файлів не можуть закінчуватися на "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Недійсне ім'я файлу"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New filename":{msgid:"New filename",msgstr:["Нове ім'я файлу"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},Rename:{msgid:"Rename",msgstr:["Перейменувати"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},Skip:{msgid:"Skip",msgstr:["Пропустити"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},Upload:{msgid:"Upload",msgstr:["Завантажити"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload folders":{msgid:"Upload folders",msgstr:["Завантажити каталоги"]},"Upload from device":{msgid:"Upload from device",msgstr:["Завантажити з пристрою"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Завантаження скасовано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Завантаження пропущено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Завантаження "{folder}" пропущено']},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Gloryandel, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGloryandel, 2024\n"},msgstr:["Last-Translator: Gloryandel, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是被禁止的文件名或文件夹名。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是被禁止的文件类型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允许包含在文件名或文件夹名中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整个操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"Create new":{msgid:"Create new",msgstr:["新建"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["服务端版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['文件名不得以 "{segment}" 结尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["如果同时选择两个版本,则上传文件的名称中将添加一个数字。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["无效文件名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},New:{msgid:"New",msgstr:["新建"]},"New filename":{msgid:"New filename",msgstr:["新文件名"]},"New version":{msgid:"New version",msgstr:["上传版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},Rename:{msgid:"Rename",msgstr:["重命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["保留所有服务端版本"]},"Select all new files":{msgid:"Select all new files",msgstr:["保留所有上传版本"]},Skip:{msgid:"Skip",msgstr:["跳过"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},Upload:{msgid:"Upload",msgstr:["上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Upload folders":{msgid:"Upload folders",msgstr:["上传文件夹"]},"Upload from device":{msgid:"Upload from device",msgstr:["从设备上传"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上传已取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上传已跳过"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['已跳过上传"{folder}"']},"Upload progress":{msgid:"Upload progress",msgstr:["上传进度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以重命名文件、跳过此文件或取消整个操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择保留一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是禁止使用的檔案或資料夾名稱。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是禁止使用的檔案類型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允許出現在檔案或資料夾名稱中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"Create new":{msgid:"Create new",msgstr:["創建新"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['檔案名不得以 "{segment}" 結尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無效的檔案名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New filename":{msgid:"New filename",msgstr:["新檔案名"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},Rename:{msgid:"Rename",msgstr:["重新命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},Skip:{msgid:"Skip",msgstr:["跳過"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},Upload:{msgid:"Upload",msgstr:["上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload folders":{msgid:"Upload folders",msgstr:["上傳資料夾"]},"Upload from device":{msgid:"Upload from device",msgstr:["從裝置上傳"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上傳已被取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上傳已被跳過"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 的上傳已被跳過']},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以選擇重新命名檔案、跳過此檔案或取消整個操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 <s8321414@gmail.com>, 2024\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>me.addTranslation(e.locale,e.json)));const ce=me.build(),ge=ce.ngettext.bind(ce),ue=ce.gettext.bind(ce);var pe=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(pe||{});class fe{_destinationFolder;_isPublic;_customHeaders;_uploadQueue=[];_jobQueue=new S.A({concurrency:(0,W.F)().files?.chunked_upload?.max_parallel_count??5});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,t){if(this._isPublic=e,this._customHeaders={},!t){const s=`${C.PY}${C.lJ}`;let n;if(e)n="anonymous";else{const e=(0,y.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}t=new C.vd({id:0,owner:n,permissions:C.aX.ALL,root:C.lJ,source:s})}this.destination=t,te.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:ie()})}get destination(){return this._destinationFolder}set destination(e){if(!e||e.type!==C.pt.Folder||!e.source)throw new Error("Invalid destination folder");te.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get customHeaders(){return structuredClone(this._customHeaders)}setCustomHeader(e,t=""){this._customHeaders[e]=t}deleteCustomerHeader(e){delete this._customHeaders[e]}get queue(){return this._uploadQueue}reset(){0===this._uploadQueue.length&&0===this._jobQueue.size||(this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0,te.debug("Uploader state reset"))}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,t)=>e+t),0),t=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,t)=>e+t),0);this._queueSize=e,this._queueProgress=t,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const t of this._notifiers)try{t(e)}catch(t){te.warn("Error in upload notifier",{error:t,source:e.source})}}batchUpload(e,t,s){return s||(s=async e=>e),new _((async(n,i,a)=>{const r=new de("");await r.addChildren(t);const o=`${this.root.replace(/\/$/,"")}/${e.replace(/^\//,"")}`,l=new re(o,!1,0,r);l.status=ae.UPLOADING,this._uploadQueue.push(l),te.debug("Starting new batch upload",{target:o});try{const t=(0,C.H4)(this.root,this._customHeaders),i=this.uploadDirectory(e,r,s,t);a((()=>i.cancel()));const o=await i;l.status=ae.FINISHED,n(o)}catch(e){te.error("Error in batch upload",{error:e}),l.status=ae.FAILED,i(ue("Upload has been cancelled"))}finally{this._notifyAll(l),this.updateStats()}}))}createDirectory(e,t,s){const n=(0,A.normalize)(`${e}/${t.name}`).replace(/\/$/,""),i=`${this.root.replace(/\/$/,"")}/${n.replace(/^\//,"")}`;if(!t.name)throw new Error("Can not create empty directory");const a=new re(i,!1,0,t);return this._uploadQueue.push(a),new _((async(e,i,r)=>{const o=new AbortController;r((()=>o.abort())),a.signal.addEventListener("abort",(()=>i(ue("Upload has been cancelled")))),await this._jobQueue.add((async()=>{a.status=ae.UPLOADING;try{await s.createDirectory(n,{signal:o.signal}),e(a)}catch(e){e&&"object"==typeof e&&"status"in e&&405===e.status?(a.status=ae.FINISHED,te.debug("Directory already exists, writing into it",{directory:t.name})):(a.status=ae.FAILED,i(e))}finally{this._notifyAll(a),this.updateStats()}}))}))}uploadDirectory(e,t,s,n){const i=(0,A.normalize)(`${e}/${t.name}`).replace(/\/$/,"");return new _((async(a,r,o)=>{const l=new AbortController;o((()=>l.abort()));const d=await s(t.children,i);if(!1===d)return te.debug("Upload canceled by user",{directory:t}),void r(ue("Upload has been cancelled"));if(0===d.length&&t.children.length>0)return te.debug("Skipping directory, as all files were skipped by user",{directory:t}),void a([]);const m=[],c=[];l.signal.addEventListener("abort",(()=>{m.forEach((e=>e.cancel())),c.forEach((e=>e.cancel()))})),te.debug("Start directory upload",{directory:t});try{t.name&&(c.push(this.createDirectory(e,t,n)),await c.at(-1));for(const e of d)e instanceof de?m.push(this.uploadDirectory(i,e,s,n)):c.push(this.upload(`${i}/${e.name}`,e));a([await Promise.all(c),...await Promise.all(m)].flat())}catch(e){l.abort(e),r(e)}}))}upload(e,t,s,n=5){const i=`${(s=s||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:a}=new URL(i),r=a+(0,T.O0)(i.slice(a.length));return te.debug(`Uploading ${t.name} to ${r}`),new _((async(e,s,a)=>{oe(t)&&(t=await new Promise((e=>t.file(e,s))));const o=t,l=ie("size"in o?o.size:void 0),d=this._isPublic||0===l||"size"in o&&o.size<l,m=new re(i,!d,o.size,o);if(this._uploadQueue.push(m),this.updateStats(),a(m.cancel),d){te.debug("Initializing regular upload",{file:o,upload:m});const t=await ne(o,0,m.size),n=async()=>{try{m.response=await se(r,t,m.signal,(e=>{m.uploaded=m.uploaded+e.bytes,this.updateStats()}),void 0,{...this._customHeaders,"X-OC-Mtime":Math.floor(o.lastModified/1e3),"Content-Type":o.type}),m.uploaded=m.size,this.updateStats(),te.debug(`Successfully uploaded ${o.name}`,{file:o,upload:m}),e(m)}catch(e){if((0,b.FZ)(e))return m.status=ae.FAILED,void s(ue("Upload has been cancelled"));e?.response&&(m.response=e.response),m.status=ae.FAILED,te.error(`Failed uploading ${o.name}`,{error:e,file:o,upload:m}),s("Failed uploading the file")}this._notifyAll(m)};this._jobQueue.add(n),this.updateStats()}else{te.debug("Initializing chunked upload",{file:o,upload:m});const t=await async function(e,t=5){const s=`${(0,F.dC)(`dav/uploads/${(0,y.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await b.Ay.request({method:"MKCOL",url:s,headers:n,"axios-retry":{retries:t,retryDelay:(e,t)=>j(e,t,1e3)}}),te.debug("Created temporary upload workspace",{url:s}),s}(r,n),i=[];for(let e=0;e<m.chunks;e++){const s=e*l,a=Math.min(s+l,m.size),d=()=>ne(o,s,l),c=()=>se(`${t}/${e+1}`,d,m.signal,(()=>this.updateStats()),r,{...this._customHeaders,"X-OC-Mtime":Math.floor(o.lastModified/1e3),"OC-Total-Length":o.size,"Content-Type":"application/octet-stream"},n).then((()=>{m.uploaded=m.uploaded+l})).catch((t=>{if(507===t?.response?.status)throw te.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:t,upload:m}),m.cancel(),m.status=ae.FAILED,t;throw(0,b.FZ)(t)||(te.error(`Chunk ${e+1} ${s} - ${a} uploading failed`,{error:t,upload:m}),m.cancel(),m.status=ae.FAILED),t}));i.push(this._jobQueue.add(c))}try{await Promise.all(i),this.updateStats(),m.response=await b.Ay.request({method:"MOVE",url:`${t}/.file`,headers:{...this._customHeaders,"X-OC-Mtime":Math.floor(o.lastModified/1e3),"OC-Total-Length":o.size,Destination:r}}),this.updateStats(),m.status=ae.FINISHED,te.debug(`Successfully uploaded ${o.name}`,{file:o,upload:m}),e(m)}catch(e){(0,b.FZ)(e)?(m.status=ae.FAILED,s(ue("Upload has been cancelled"))):(m.status=ae.FAILED,s("Failed assembling the chunks together")),b.Ay.request({method:"DELETE",url:`${t}`})}this._notifyAll(m)}return this._jobQueue.onIdle().then((()=>this.reset())),m}))}}function he(e,t,s,n,i,a,r,o){var l="function"==typeof e?e.options:e;return t&&(l.render=t,l.staticRenderFns=s,l._compiled=!0),a&&(l._scopeId="data-v-"+a),{exports:e,options:l}}const ve=he({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,we=he({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,ye=he({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,Ce=he({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports;function Te(e){const t=(0,w.$V)((()=>s.e(6429).then(s.bind(s,16429)))),{promise:n,reject:i,resolve:a}=Promise.withResolvers();return(0,ee.Ss)(t,{error:e,validateFilename:C.KT},((...e)=>{const[{skip:t,rename:s}]=e;t?a(!1):s?a(s):i()})),n}function Ae(e,t){return be(e,t).length>0}function be(e,t){const s=t.map((e=>e.basename));return e.filter((e=>{const t="basename"in e?e.basename:e.name;return-1!==s.indexOf(t)}))}const xe=w.Ay.extend({name:"UploadPicker",components:{IconCancel:ve,IconFolderUpload:we,IconPlus:ye,IconUpload:Ce,NcActionButton:Y.A,NcActionCaption:$.A,NcActionSeparator:K.A,NcActions:J.A,NcButton:Q.A,NcIconSvgWrapper:Z.A,NcProgressBar:X.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noMenu:{type:Boolean,default:!1},destination:{type:C.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:ue,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",newFileMenuEntries:[],uploadManager:_e()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ae.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ae.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===pe.PAUSED},buttonLabel(){return this.noMenu?ue("Upload"):ue("New")},buttonName(){if(!this.isUploading)return this.buttonLabel}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&te.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=G({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),te.debug("UploadPicker initialised")},methods:{async onClick(e){e.handler(this.destination,await this.getContent().catch((()=>[])))},onTriggerPick(e=!1){const t=this.$refs.input;this.canUploadFolders&&(t.webkitdirectory=e),this.$nextTick((()=>t.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},onPick(){const e=this.$refs.input,t=e.files?Array.from(e.files):[];var s;this.uploadManager.batchUpload("",t,(s=this.getContent,async(e,t)=>{try{const n=await s(t).catch((()=>[])),i=be(e,n);if(i.length>0){const{selected:s,renamed:a}=await Se(t,i,n,{recursive:!0});e=[...s,...a]}const a=[];for(const t of e)try{(0,C.KT)(t.name),a.push(t)}catch(s){if(!(s instanceof C.di))throw te.error(`Unexpected error while validating ${t.name}`,{error:s}),s;let n=await Te(s);!1!==n&&(n=(0,C.E6)(n,e.map((e=>e.name))),Object.defineProperty(t,"name",{value:n}),a.push(t))}if(0===a.length&&e.length>0){const e=(0,T.P8)(t);(0,ee.cf)(e?ue('Upload of "{folder}" has been skipped',{folder:e}):ue("Upload has been skipped"))}return a}catch(e){return te.debug("Upload has been cancelled",{error:e}),(0,ee.I9)(ue("Upload has been cancelled")),!1}})).catch((e=>te.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=ue("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=ue("a few seconds left");else if(e>60){const t=new Date(0);t.setSeconds(e);const s=t.toISOString().slice(11,19);this.timeLeft=ue("{time} left",{time:s})}else this.timeLeft=ue("{seconds} seconds left",{seconds:e});else this.timeLeft=ue("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,C.m1)(e)):te.debug("Invalid destination")},onUploadCompletion(e){e.status===ae.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}}),ke=he(xe,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.destination?t("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[!e.noMenu&&0!==e.newFileMenuEntries.length||e.canUploadFolders?t("NcActions",{attrs:{"aria-label":e.buttonLabel,"menu-name":e.buttonName,type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[t("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),t("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file","close-after-click":!0},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?t("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":"","data-cy-upload-picker-menu-entry":"upload-folder"},on:{click:function(t){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e.noMenu?e._e():e._l(e.menuEntriesUpload,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":s.id},on:{click:function(t){return e.onClick(s)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])})),!e.noMenu&&e.menuEntriesNew.length>0?[t("NcActionSeparator"),t("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":s.id},on:{click:function(t){return e.onClick(s)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e(),!e.noMenu&&e.menuEntriesOther.length>0?[t("NcActionSeparator"),e._l(e.menuEntriesOther,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":s.id},on:{click:function(t){return e.onClick(s)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e()],2):t("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file",type:"secondary"},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]),t("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[t("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),t("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?t("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),t("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],0,0,"c5517ef8").exports;function _e(e=(0,v.f)(),t=!1){return(t||void 0===window._nc_uploader)&&(window._nc_uploader=new fe(e)),window._nc_uploader}async function Se(e,t,n,i){const a=(0,w.$V)((()=>Promise.all([s.e(4208),s.e(918)]).then(s.bind(s,70918))));return new Promise(((s,r)=>{const o=new w.Ay({name:"ConflictPickerRoot",render:l=>l(a,{props:{dirname:e,conflicts:t,content:n,recursiveUpload:!0===i?.recursive},on:{submit(e){s(e),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)},cancel(e){r(e??new Error("Canceled")),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)}}})});o.$mount(),document.body.appendChild(o.$el)}))}},85136:(e,t,s)=>{"use strict";s.d(t,{a:()=>u,j:()=>c,k:()=>g,l:()=>m,t:()=>r});var n=s(84093);const i=(0,s(11195).$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali <alimahwer@yahoo.com>, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAli <alimahwer@yahoo.com>, 2024\n"},msgstr:["Last-Translator: Ali <alimahwer@yahoo.com>, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" لا يصلح كاسم مجلد.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" غير مسموح به كاسم مجلد']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" غير مسموح به داخل اسم مجلد.']},"All files":{msgid:"All files",msgstr:["كل الملفات"]},Choose:{msgid:"Choose",msgstr:["إختَر"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["إختَر {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["إختَر %n ملف","إختَر %n ملف","إختَر %n ملف","إختَر %n ملفات","إختَر %n ملف","إختَر %n ملف"]},Copy:{msgid:"Copy",msgstr:["نسخ"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["نسخٌ إلى {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["تعذّر إنشاء المجلد الجديد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["يتعذّر تحميل إعدادات الملفات"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["يتعذّر تحميل مناظير views الملفات"]},"Create directory":{msgid:"Create directory",msgstr:["أنشِيءْ مجلّداً"]},"Current view selector":{msgid:"Current view selector",msgstr:["مُنتقِي المنظور الحالي"]},Favorites:{msgid:"Favorites",msgstr:["المُفضَّلة"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا."]},"Filter file list":{msgid:"Filter file list",msgstr:["فلترة قائمة الملفات"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["اسم المجلد لا يمكن أن يكون فارغاً."]},Home:{msgid:"Home",msgstr:["البداية"]},Modified:{msgid:"Modified",msgstr:["مُعدَّل"]},Move:{msgid:"Move",msgstr:["أُنقُل"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["أُنقُل إلى {target}"]},Name:{msgid:"Name",msgstr:["الاسم"]},New:{msgid:"New",msgstr:["جديد"]},"New folder":{msgid:"New folder",msgstr:["مٌجلّد جديد"]},"New folder name":{msgid:"New folder name",msgstr:["اسم المجلد الجديد"]},"No files in here":{msgid:"No files in here",msgstr:["لا توجد ملفات هنا"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["لا توجد ملفات تتطابق مع الفلتر الذي وضعته"]},"No matching files":{msgid:"No matching files",msgstr:["لا توجد ملفات مُطابِقة"]},Recent:{msgid:"Recent",msgstr:["الحالي"]},"Select all entries":{msgid:"Select all entries",msgstr:["حدِّد كل المداخل"]},"Select entry":{msgid:"Select entry",msgstr:["إختَر المدخل"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["إختر سطر الـ {nodename}"]},Size:{msgid:"Size",msgstr:["الحجم"]},Undo:{msgid:"Undo",msgstr:["تراجع"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["قُم برفع محتوىً أو قُم بمزامنة أجهزتك!"]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2024","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nenolp <enolp@softastur.org>, 2024\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2024\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» ye un nome de carpeta inválidu."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» ye un nome de carpeta inválidu"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Nun se permite'l caráuter «/» dientro'l nome de les carpetes."]},"All files":{msgid:"All files",msgstr:["Tolos ficheros"]},Choose:{msgid:"Choose",msgstr:["Escoyer"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoyer «{ficheru}»"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoyer %n ficheru","Escoyer %n ficheros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nun se pudo crear la carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nun se pudo cargar la configuración de los ficheros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nun se pudieron cargar les vistes de los ficheros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un direutoriu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de la vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Equí apaecen los ficheros y les carpetes que metas en Favoritos."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Equí apaecen los fichero y les carpetes que modificares apocayá."]},"Filter file list":{msgid:"Filter file list",msgstr:["Peñerar la llista de ficheros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nome de la carpeta nun pue tar baleru."]},Home:{msgid:"Home",msgstr:["Aniciu"]},Modified:{msgid:"Modified",msgstr:["Modificóse"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuevu"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nueva"]},"New folder name":{msgid:"New folder name",msgstr:["Nome de carpeta nuevu"]},"No files in here":{msgid:"No files in here",msgstr:["Equí nun hai nengún ficheru"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nun s'atopó nengún ficheru que concasare cola peñera."]},"No matching files":{msgid:"No matching files",msgstr:["Nun hai nengún ficheru que concase"]},Recent:{msgid:"Recent",msgstr:["De recién"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleicionar toles entraes"]},"Select entry":{msgid:"Select entry",msgstr:["Seleicionar la entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleicionar la filera de: {nodename}"]},Size:{msgid:"Size",msgstr:["Tamañu"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Xubi dalgún elementu o sincroniza colos tos preseos!"]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Disober"]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Sergi Font, 2024","Language-Team":"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nv v <e670006006@gmail.com>, 2024\nMarc Riera <marcriera@softcatala.org>, 2024\nSergi Font, 2024\n"},msgstr:["Last-Translator: Sergi Font, 2024\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" és un nom de carpeta no vàlid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no és permès en el nom de carpeta']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no és permès en el nom de carpeta.']},"All files":{msgid:"All files",msgstr:["Tots els fitxers"]},Choose:{msgid:"Choose",msgstr:["Tria"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Tria {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Tria %n fitxer","Tria %n fitxers"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No s'ha pogut crear la carpeta nova"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No es poden carregar fitxers de configuració"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No es poden carregar fitxers de vistes"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de visualització actual"]},Favorites:{msgid:"Favorites",msgstr:["Preferits"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Els fitxers i les carpetes recentment modificats es mostraran aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar llistat de fitxers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nom de la carpeta no pot estar buit."]},Home:{msgid:"Home",msgstr:["Inici"]},Modified:{msgid:"Modified",msgstr:["Data de modificació"]},Move:{msgid:"Move",msgstr:["Desplaça"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Desplaça a {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Crea"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nova"]},"New folder name":{msgid:"New folder name",msgstr:["Nom de la carpeta nova"]},"No files in here":{msgid:"No files in here",msgstr:["No hi ha cap fitxer"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No s'ha trobat cap fitxer que coincideixi amb el filtre."]},"No matching files":{msgid:"No matching files",msgstr:["No hi ha cap fitxer que coincideixi"]},Recent:{msgid:"Recent",msgstr:["Recents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecciona totes les entrades"]},"Select entry":{msgid:"Select entry",msgstr:["Selecciona l'entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecciona la fila per a {nodename}"]},Size:{msgid:"Size",msgstr:["Mida"]},Undo:{msgid:"Undo",msgstr:["Desfés"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2020","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki <pavel.borecki@gmail.com>, 2020\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:187"},msgstr:["Zpět"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}“ není platný název složky."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}“ není povolený název složky."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky."]},"All files":{msgid:"All files",msgstr:["Veškeré soubory"]},Choose:{msgid:"Choose",msgstr:["Zvolit"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Zvolit {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Zvolte %n soubor","Zvolte %n soubory","Zvolte %n souborů","Zvolte %n soubory"]},Copy:{msgid:"Copy",msgstr:["Zkopírovat"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Zkopírovat do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Novou složku se nepodařilo vytvořit"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodařilo se načíst nastavení pro soubory"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodařilo se načíst pohledy souborů"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvořit složku"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výběr stávajícího zobrazení"]},Favorites:{msgid:"Favorites",msgstr:["Oblíbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Zde se zobrazí soubory a složky, které označíte jako oblíbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Zde se zobrazí soubory a složky, které jste nedávno pozměnili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovat seznam souborů"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Složku je třeba nějak nazvat."]},Home:{msgid:"Home",msgstr:["Domů"]},Modified:{msgid:"Modified",msgstr:["Změněno"]},Move:{msgid:"Move",msgstr:["Přesounout"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Přesunout do {target}"]},Name:{msgid:"Name",msgstr:["Název"]},New:{msgid:"New",msgstr:["Nové"]},"New folder":{msgid:"New folder",msgstr:["Nová složka"]},"New folder name":{msgid:"New folder name",msgstr:["Název pro novou složku"]},"No files in here":{msgid:"No files in here",msgstr:["Nejsou zde žádné soubory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenalezeny žádné soubory odpovídající vašemu filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Žádné odpovídající soubory"]},Recent:{msgid:"Recent",msgstr:["Nedávné"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrat všechny položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrat položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vybrat řádek pro {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Zpět"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!"]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldigt mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tilladt mappenavn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tilladt i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Vælg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vælg {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vælg %n fil","Vælg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke oprette den nye mappe"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Filindstillingerne kunne ikke indlæses"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke indlæse filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opret mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuel visningsvælger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper, du markerer som foretrukne, vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper, du for nylig har ændret, vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer fil liste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavnet må ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Ændret"]},Move:{msgid:"Move",msgstr:["Flyt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flyt til {target}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Ny mappe navn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Der blev ikke fundet nogen filer, der matcher dit filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen matchende filer"]},Recent:{msgid:"Recent",msgstr:["Seneste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vælg alle poster"]},"Select entry":{msgid:"Select entry",msgstr:["Vælg post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vælg rækken for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størelse"]},Undo:{msgid:"Undo",msgstr:["Fortryd"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload noget indhold eller synkroniser med dine enheder!"]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Ettore Atalan <atalanttore@googlemail.com>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2023\nMarkus Eckstein, 2023\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\nJoachim Sokolowski, 2023\nEttore Atalan <atalanttore@googlemail.com>, 2024\n"},msgstr:["Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden."]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Startseite"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Keine Dateien vorhanden"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die deinem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Jüngste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann <mario_siegmann@web.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2024\n"},msgstr:["Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Hier sind keine Dateien"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Neueste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig machen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Αναίρεση"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2023\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is an invalid folder name.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is not an allowed folder name']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is not allowed inside a folder name.']},"All files":{msgid:"All files",msgstr:["All files"]},Choose:{msgid:"Choose",msgstr:["Choose"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choose {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choose %n file","Choose %n files"]},Copy:{msgid:"Copy",msgstr:["Copy"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copy to {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Could not create the new folder"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Could not load files settings"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Could not load files views"]},"Create directory":{msgid:"Create directory",msgstr:["Create directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Current view selector"]},Favorites:{msgid:"Favorites",msgstr:["Favourites"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Files and folders you mark as favourite will show up here."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Files and folders you recently modified will show up here."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter file list"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Folder name cannot be empty."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modified"]},Move:{msgid:"Move",msgstr:["Move"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Move to {target}"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["New"]},"New folder":{msgid:"New folder",msgstr:["New folder"]},"New folder name":{msgid:"New folder name",msgstr:["New folder name"]},"No files in here":{msgid:"No files in here",msgstr:["No files in here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No files matching your filter were found."]},"No matching files":{msgid:"No matching files",msgstr:["No matching files"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Select all entries"]},"Select entry":{msgid:"Select entry",msgstr:["Select entry"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Select the row for {nodename}"]},Size:{msgid:"Size",msgstr:["Size"]},Undo:{msgid:"Undo",msgstr:["Undo"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload some content or sync with your devices!"]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Malfari"]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta no válido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido dentro del nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elige %n archivo","Elige %n archivos","Seleccione %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudieron cargar los ajustes de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:[" Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nuevo nombre de carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidiesen con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Elegir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Elija {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elija %n archivo","Elija %n archivos","Elija %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de la carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleccionar %n archivo","Seleccionar %n archivos","Seleccionar %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear carpeta"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Suba algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Desegin"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"reza reza <forghan89@yahoo.com>, 2024","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAmir Shekoohi, 2024\nreza reza <forghan89@yahoo.com>, 2024\n"},msgstr:["Last-Translator: reza reza <forghan89@yahoo.com>, 2024\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} نام پوشه معتبر نیست"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} نام پوشه مجاز نیست"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" نمی‌تواند در نام پوشه استفاده شود.']},"All files":{msgid:"All files",msgstr:["همه فایل‌ها"]},Choose:{msgid:"Choose",msgstr:["انتخاب"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["انتخاب {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["انتخاب %n فایل","انتخاب %n فایل"]},Copy:{msgid:"Copy",msgstr:["رونوشت"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["رونوشت از {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["پوشه جدید ایجاد نشد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["تنظیمات فایل باز نشد"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["نمای فایل‌ها بارگیری نشد"]},"Create directory":{msgid:"Create directory",msgstr:["ایجاد فهرست"]},"Current view selector":{msgid:"Current view selector",msgstr:["انتخابگر نماگر فعلی"]},Favorites:{msgid:"Favorites",msgstr:["علایق"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند."]},"Filter file list":{msgid:"Filter file list",msgstr:["فیلتر لیست فایل"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["نام پوشه نمی تواند خالی باشد."]},Home:{msgid:"Home",msgstr:["خانه"]},Modified:{msgid:"Modified",msgstr:["اصلاح شده"]},Move:{msgid:"Move",msgstr:["انتقال"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["انتقال به {target}"]},Name:{msgid:"Name",msgstr:["نام"]},New:{msgid:"New",msgstr:["جدید"]},"New folder":{msgid:"New folder",msgstr:["پوشه جدید"]},"New folder name":{msgid:"New folder name",msgstr:["نام پوشه جدید"]},"No files in here":{msgid:"No files in here",msgstr:["فایلی اینجا نیست"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["هیچ فایلی مطابق با فیلتر شما یافت نشد."]},"No matching files":{msgid:"No matching files",msgstr:["فایل منطبقی وجود ندارد"]},Recent:{msgid:"Recent",msgstr:["اخیر"]},"Select all entries":{msgid:"Select all entries",msgstr:["انتخاب همه ورودی ها"]},"Select entry":{msgid:"Select entry",msgstr:["انتخاب ورودی"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["انتخاب ردیف برای {nodename}"]},Size:{msgid:"Size",msgstr:["اندازه"]},Undo:{msgid:"Undo",msgstr:["بازگردانی"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"thingumy, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\n"},msgstr:["Last-Translator: thingumy, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" on virheellinen kansion nimi.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ei ole sallittu kansion nimi']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ei ole sallittu kansion nimessä.']},"All files":{msgid:"All files",msgstr:["Kaikki tiedostot"]},Choose:{msgid:"Choose",msgstr:["Valitse"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Valitse {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Valitse %n tiedosto","Valitse %n tiedostoa"]},Copy:{msgid:"Copy",msgstr:["Kopioi"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopioi sijaintiin {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Uutta kansiota ei voitu luoda"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tiedoston asetuksia ei saa ladattua"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tiedoston näkymiä ei saa ladattua"]},"Create directory":{msgid:"Create directory",msgstr:["Luo kansio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nykyisen näkymän valinta"]},Favorites:{msgid:"Favorites",msgstr:["Suosikit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä."]},"Filter file list":{msgid:"Filter file list",msgstr:["Suodata tiedostolistaa"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Kansion nimi ei voi olla tyhjä."]},Home:{msgid:"Home",msgstr:["Koti"]},Modified:{msgid:"Modified",msgstr:["Muokattu"]},Move:{msgid:"Move",msgstr:["Siirrä"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Siirrä sijaintiin {target}"]},Name:{msgid:"Name",msgstr:["Nimi"]},New:{msgid:"New",msgstr:["Uusi"]},"New folder":{msgid:"New folder",msgstr:["Uusi kansio"]},"New folder name":{msgid:"New folder name",msgstr:["Uuden kansion nimi"]},"No files in here":{msgid:"No files in here",msgstr:["Täällä ei ole tiedostoja"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Suodatinta vastaavia tiedostoja ei löytynyt."]},"No matching files":{msgid:"No matching files",msgstr:["Ei vastaavia tiedostoja"]},Recent:{msgid:"Recent",msgstr:["Viimeisimmät"]},"Select all entries":{msgid:"Select all entries",msgstr:["Valitse kaikki tietueet"]},"Select entry":{msgid:"Select entry",msgstr:["Valitse tietue"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Valitse rivi {nodename}:lle"]},Size:{msgid:"Size",msgstr:["Koko"]},Undo:{msgid:"Undo",msgstr:["Kumoa"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"DEV314R, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nRémi LEBLOND, 2023\nMordecai, 2023\nfleopaulD, 2023\nFrançois Ch., 2024\nJérôme HERBINET, 2024\nBenoit Pruneau, 2024\nDEV314R, 2024\n"},msgstr:["Last-Translator: DEV314R, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" n\'est pas un nom de dossier valide.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" n\'est pas un nom de dossier autorisé.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Le caractère « / » n'est pas autorisé dans un nom de dossier."]},"All files":{msgid:"All files",msgstr:["Tous les fichiers"]},Choose:{msgid:"Choose",msgstr:["Choisir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choisir {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choisir %n fichier","Choisir %n fichiers","Choisir %n fichiers "]},Copy:{msgid:"Copy",msgstr:["Copier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copier vers {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossible de créer le nouveau dossier"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Les paramètres des fichiers n'ont pas pu être chargés"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Les aperçus des fichiers n'ont pas pu être chargés"]},"Create directory":{msgid:"Create directory",msgstr:["Créer un répertoire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Sélecteur de vue courante"]},Favorites:{msgid:"Favorites",msgstr:["Favoris"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Les fichiers et répertoires marqués en favoris apparaîtront ici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Les fichiers et répertoires modifiés récemment apparaîtront ici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer la liste des fichiers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Le nom du dossier ne peut pas être vide."]},Home:{msgid:"Home",msgstr:["Accueil"]},Modified:{msgid:"Modified",msgstr:["Modifié"]},Move:{msgid:"Move",msgstr:["Déplacer"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Déplacer vers {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Nouveau"]},"New folder":{msgid:"New folder",msgstr:["Nouveau répertoire"]},"New folder name":{msgid:"New folder name",msgstr:["Nom du nouveau répertoire"]},"No files in here":{msgid:"No files in here",msgstr:["Aucun fichier ici"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Aucun fichier trouvé correspondant à votre filtre."]},"No matching files":{msgid:"No matching files",msgstr:["Aucun fichier trouvé"]},Recent:{msgid:"Recent",msgstr:["Récents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tous sélectionner"]},"Select entry":{msgid:"Select entry",msgstr:["Sélectionner une entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Sélectionner l'enregistrement pour {nodename}"]},Size:{msgid:"Size",msgstr:["Taille"]},Undo:{msgid:"Undo",msgstr:["Rétablir"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Charger du contenu ou synchroniser avec vos équipements !"]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['Is ainm fillteáin neamhbhailí é "{name}".']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['Ní ainm fillteáin ceadaithe é "{name}".']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Ní cheadaítear "/" taobh istigh d\'ainm fillteáin.']},"All files":{msgid:"All files",msgstr:["Gach comhad"]},Choose:{msgid:"Choose",msgstr:["Roghnaigh"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Roghnaigh {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Roghnaigh %n comhad","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid"]},Copy:{msgid:"Copy",msgstr:["Cóip"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Cóipeáil chuig {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Níorbh fhéidir an fillteán nua a chruthú"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Níorbh fhéidir socruithe comhaid a lódáil"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Níorbh fhéidir radhairc comhad a lódáil"]},"Create directory":{msgid:"Create directory",msgstr:["Cruthaigh eolaire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Roghnóir amhairc reatha"]},Favorites:{msgid:"Favorites",msgstr:["Ceanáin"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo."]},"Filter file list":{msgid:"Filter file list",msgstr:["Scag liosta comhad"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ní féidir ainm fillteáin a bheith folamh."]},Home:{msgid:"Home",msgstr:["Baile"]},Modified:{msgid:"Modified",msgstr:["Athraithe"]},Move:{msgid:"Move",msgstr:["Bog"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Bog go{target}"]},Name:{msgid:"Name",msgstr:["Ainm"]},New:{msgid:"New",msgstr:["Nua"]},"New folder":{msgid:"New folder",msgstr:["Fillteán nua"]},"New folder name":{msgid:"New folder name",msgstr:["Ainm fillteáin nua"]},"No files in here":{msgid:"No files in here",msgstr:["Níl aon chomhaid istigh anseo"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Níor aimsíodh aon chomhad a tháinig le do scagaire."]},"No matching files":{msgid:"No matching files",msgstr:["Gan comhaid meaitseála"]},Recent:{msgid:"Recent",msgstr:["le déanaí"]},"Select all entries":{msgid:"Select all entries",msgstr:["Roghnaigh gach iontráil"]},"Select entry":{msgid:"Select entry",msgstr:["Roghnaigh iontráil"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Roghnaigh an ró do {nodename}"]},Size:{msgid:"Size",msgstr:["Méid"]},Undo:{msgid:"Undo",msgstr:["Cealaigh"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!"]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» non é un nome de cartafol válido."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» non é un nome de cartafol permitido"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["A «/» non está permitida no nome dun cartafol."]},"All files":{msgid:"All files",msgstr:["Todos os ficheiros"]},Choose:{msgid:"Choose",msgstr:["Escoller"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoller {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoller %n ficheiro","Escoller %n ficheiros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Non foi posíbel crear o novo cartafol"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Non foi posíbel cargar os axustes dos ficheiros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Non foi posíbel cargar as vistas dos ficheiros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os ficheiros e cartafoles que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Os ficheiros e cartafoles que modificou recentemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar a lista de ficheiros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome do cartafol non pode estar baleiro."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover cara a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novo cartafol"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome do cartafol"]},"No files in here":{msgid:"No files in here",msgstr:["Aquí non hai ficheiros"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Non se atopou ningún ficheiro que coincida co filtro."]},"No matching files":{msgid:"No matching files",msgstr:["Non hai ficheiros coincidentes"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccionar a fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Enviar algún contido ou sincronizalo cos seus dispositivos!"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["ביטול"]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFőnyedi Áron <sajtman@gmail.com>, 2023\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” érvénytelen mappanév."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” nem engedélyezett mappanév"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” jel nem szerepelhet mappa nevében."]},"All files":{msgid:"All files",msgstr:["Minden fájl"]},Choose:{msgid:"Choose",msgstr:["Kiválasztás"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} kiválasztása"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n fájl kiválasztása","%n fájl kiválasztása"]},Copy:{msgid:"Copy",msgstr:["Másolás"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Másolás ide: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Az új mappa létrehozása nem lehetséges"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Fájlbeállítások betöltése nem lehetséges"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Fájlnézetek betöltése nem lehetséges"]},"Create directory":{msgid:"Create directory",msgstr:["Mappa létrehozása"]},"Current view selector":{msgid:"Current view selector",msgstr:["Jelenlegi nézet választó"]},Favorites:{msgid:"Favorites",msgstr:["Kedvencek"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["A kedvencként megjelölt fájlok és mappák itt jelennek meg."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["A nemrég módosított fájlok és mappák itt jelennek meg."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fájl lista szűrése"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["A mappa neve nem lehet üres."]},Home:{msgid:"Home",msgstr:["Kezdőlap"]},Modified:{msgid:"Modified",msgstr:["Módosítva"]},Move:{msgid:"Move",msgstr:["Mozgatás"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mozgatás ide: {target}"]},Name:{msgid:"Name",msgstr:["Név"]},New:{msgid:"New",msgstr:["Új"]},"New folder":{msgid:"New folder",msgstr:["Új mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Új mappa név"]},"No files in here":{msgid:"No files in here",msgstr:["Itt nincsenek fájlok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nincs a szűrési feltételeknek megfelelő fájl."]},"No matching files":{msgid:"No matching files",msgstr:["Nincs ilyen fájl"]},Recent:{msgid:"Recent",msgstr:["Gyakori"]},"Select all entries":{msgid:"Select all entries",msgstr:["Minden bejegyzés kijelölése"]},"Select entry":{msgid:"Select entry",msgstr:["Bejegyzés kijelölése"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Válassz sort a következőnek: {nodename}"]},Size:{msgid:"Size",msgstr:["Méret"]},Undo:{msgid:"Undo",msgstr:["Visszavonás"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Lun May, 2024","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nLinerly <linerly@proton.me>, 2023\nLun May, 2024\n"},msgstr:["Last-Translator: Lun May, 2024\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" bukan nama folder yang valid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" merupakan nama folder yang tidak diperbolehkan']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" tidak diperbolehkan di dalam nama folder.']},"All files":{msgid:"All files",msgstr:["Semua berkas"]},Choose:{msgid:"Choose",msgstr:["Pilih"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Pilih {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Pilih %n file"]},Copy:{msgid:"Copy",msgstr:["Salin"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Salin ke {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Tidak dapat membuat folder baru"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tidak dapat memuat pengaturan file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tidak dapat memuat tampilan file"]},"Create directory":{msgid:"Create directory",msgstr:["Buat direktori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Pemilih tampilan saat ini"]},Favorites:{msgid:"Favorites",msgstr:["Favorit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini."]},"Filter file list":{msgid:"Filter file list",msgstr:["Saring daftar berkas"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Name berkas tidak boleh kosong."]},Home:{msgid:"Home",msgstr:["Beranda"]},Modified:{msgid:"Modified",msgstr:["Diubah"]},Move:{msgid:"Move",msgstr:["Pindahkan"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Pindahkan ke {target}"]},Name:{msgid:"Name",msgstr:["Nama"]},New:{msgid:"New",msgstr:["Baru"]},"New folder":{msgid:"New folder",msgstr:["Folder baru"]},"New folder name":{msgid:"New folder name",msgstr:["Nama folder baru"]},"No files in here":{msgid:"No files in here",msgstr:["Tidak ada berkas di sini"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Tidak ada berkas yang cocok dengan penyaringan Anda."]},"No matching files":{msgid:"No matching files",msgstr:["Tidak ada berkas yang cocok"]},Recent:{msgid:"Recent",msgstr:["Terkini"]},"Select all entries":{msgid:"Select all entries",msgstr:["Pilih semua entri"]},"Select entry":{msgid:"Select entry",msgstr:["Pilih entri"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Pilih baris untuk {nodename}"]},Size:{msgid:"Size",msgstr:["Ukuran"]},Undo:{msgid:"Undo",msgstr:["Tidak jadi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Unggah beberapa konten atau sinkronkan dengan perangkat Anda!"]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er ógilt möppuheiti.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ekki leyfilegt möppuheiti']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er er ekki leyfilegt innan í skráarheiti.']},"All files":{msgid:"All files",msgstr:["Allar skrár"]},Choose:{msgid:"Choose",msgstr:["Veldu"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Veldu {file}"]},Copy:{msgid:"Copy",msgstr:["Afrita"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Afrita í {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Get ekki búið til nýju möppuna"]},"Create directory":{msgid:"Create directory",msgstr:["Búa til möppu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Núverandi val sýnar"]},Favorites:{msgid:"Favorites",msgstr:["Eftirlæti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Skrár og möppur sem þú merkir sem eftirlæti birtast hér."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Skrár og möppur sem þú breyttir nýlega birtast hér."]},"Filter file list":{msgid:"Filter file list",msgstr:["Sía skráalista"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Möppuheiti má ekki vera tómt."]},Home:{msgid:"Home",msgstr:["Heim"]},Modified:{msgid:"Modified",msgstr:["Breytt"]},Move:{msgid:"Move",msgstr:["Færa"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Færa í {target}"]},Name:{msgid:"Name",msgstr:["Heiti"]},New:{msgid:"New",msgstr:["Nýtt"]},"New folder":{msgid:"New folder",msgstr:["Ný mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Heiti nýrrar möppu"]},"No files in here":{msgid:"No files in here",msgstr:["Engar skrár hér"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Engar skrár fundust sem passa við síuna."]},"No matching files":{msgid:"No matching files",msgstr:["Engar samsvarandi skrár"]},Recent:{msgid:"Recent",msgstr:["Nýlegt"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velja allar færslur"]},"Select entry":{msgid:"Select entry",msgstr:["Velja færslu"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Veldu röðina fyrir {nodename}"]},Size:{msgid:"Size",msgstr:["Stærð"]},Undo:{msgid:"Undo",msgstr:["Afturkalla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Sendu inn eitthvað efni eða samstilltu við tækin þín!"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Sebastiano Furlan, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nClaudio Scandella, 2023\nRaffaele Silano <raffaelone@gmail.com>, 2024\nSebastiano Furlan, 2024\n"},msgstr:["Last-Translator: Sebastiano Furlan, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" non è un nome di cartella valido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" non è un nome di cartella ammesso']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" non è ammesso all\'interno del nome di una cartella.']},"All files":{msgid:"All files",msgstr:["Tutti i file"]},Choose:{msgid:"Choose",msgstr:["Scegli"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Scegli {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleziona %n file","Seleziona %n file","Seleziona %n file"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia in {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossibile creare la nuova cartella"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Impossibile caricare le impostazioni dei file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Impossibile caricare le visualizzazioni dei file"]},"Create directory":{msgid:"Create directory",msgstr:["Crea directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selettore della vista corrente"]},Favorites:{msgid:"Favorites",msgstr:["Preferiti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["I file e le cartelle contrassegnate come preferite saranno mostrate qui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["I file e le cartelle che hai modificato di recente saranno mostrate qui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtra elenco file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Il nome della cartella non può essere vuoto."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificato"]},Move:{msgid:"Move",msgstr:["Sposta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Sposta in {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuovo"]},"New folder":{msgid:"New folder",msgstr:["Nuova cartella"]},"New folder name":{msgid:"New folder name",msgstr:["Nuovo nome cartella"]},"No files in here":{msgid:"No files in here",msgstr:["Nessun file qui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nessun file che corrisponde al tuo filtro è stato trovato."]},"No matching files":{msgid:"No matching files",msgstr:["Nessun file corrispondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Scegli tutte le voci"]},"Select entry":{msgid:"Select entry",msgstr:["Seleziona la voce"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleziona la riga per {nodename}"]},Size:{msgid:"Size",msgstr:["Taglia/dimensioni"]},Undo:{msgid:"Undo",msgstr:["Annulla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carica qualche contenuto o sincronizza con i tuoi dispositivi!"]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"devi, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\ntakehito kondo, 2023\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\n"},msgstr:["Last-Translator: devi, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" はフォルダー名に使用できません。']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}"は許可されたフォルダー名ではありません']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["フォルダー名に「/(スラッシュ)」は使用できません。"]},"All files":{msgid:"All files",msgstr:["すべてのファイル"]},Choose:{msgid:"Choose",msgstr:["選択"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} を選択"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n 個のファイルを選択"]},Copy:{msgid:"Copy",msgstr:["コピー"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} にコピー"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["新しいフォルダーを作成できませんでした"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["ファイル設定を読み込めませんでした"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["ファイルビューを読み込めませんでした"]},"Create directory":{msgid:"Create directory",msgstr:["ディレクトリを作成"]},"Current view selector":{msgid:"Current view selector",msgstr:["現在のビューセレクタ"]},Favorites:{msgid:"Favorites",msgstr:["お気に入り"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["お気に入りとしてマークしたファイルとフォルダがここに表示されます。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["最近変更したファイルとフォルダがここに表示されます。"]},"Filter file list":{msgid:"Filter file list",msgstr:["ファイルリストをフィルタ"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["フォルダ名は空にできません。"]},Home:{msgid:"Home",msgstr:["ホーム"]},Modified:{msgid:"Modified",msgstr:["変更済み"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} に移動"]},Name:{msgid:"Name",msgstr:["名前"]},New:{msgid:"New",msgstr:["新規作成"]},"New folder":{msgid:"New folder",msgstr:["新しいフォルダー"]},"New folder name":{msgid:"New folder name",msgstr:["新しいフォルダーの名前"]},"No files in here":{msgid:"No files in here",msgstr:["ファイルがありません"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["フィルタに一致するファイルは見つかりませんでした。"]},"No matching files":{msgid:"No matching files",msgstr:["一致するファイルはありません"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["すべてのエントリを選択"]},"Select entry":{msgid:"Select entry",msgstr:["エントリを選択"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} の行を選択"]},Size:{msgid:"Size",msgstr:["サイズ"]},Undo:{msgid:"Undo",msgstr:["元に戻す"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["コンテンツをアップロードするか、デバイスと同期してください!"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Sefsex"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["되돌리기"]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"VoXaN24ch, 2024","Language-Team":"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nVoXaN24ch, 2024\n"},msgstr:["Last-Translator: VoXaN24ch, 2024\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} ass en ongëlteg Dossier"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ass net en erlaabten Dossiernumm"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ass net an engem Dossier Numm erlaabt']},"All files":{msgid:"All files",msgstr:["All Dateien"]},Choose:{msgid:"Choose",msgstr:["Wielt"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wielt {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wielt %n Fichieren","Wielt %n Fichier"]},Copy:{msgid:"Copy",msgstr:["Kopie"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopie op {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Konnt den neien Dossier net erstellen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Konnt d'Dateienastellungen net lueden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Konnt d'Dateien net lueden"]},"Create directory":{msgid:"Create directory",msgstr:["Erstellt Verzeechnes"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell Vue selector"]},Favorites:{msgid:"Favorites",msgstr:["Favoritten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter Datei Lëscht"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Dossier Numm kann net eidel sinn"]},Home:{msgid:"Home",msgstr:["Wëllkomm"]},Modified:{msgid:"Modified",msgstr:["Geännert"]},Move:{msgid:"Move",msgstr:["Plënne"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Plënneren {target}"]},Name:{msgid:"Name",msgstr:["Numm"]},New:{msgid:"New",msgstr:["Nei"]},"New folder":{msgid:"New folder",msgstr:["Neien dossier"]},"New folder name":{msgid:"New folder name",msgstr:["Neien dossier numm"]},"No files in here":{msgid:"No files in here",msgstr:["Kee fichier hei"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Kee fichier deen äre filter passt gouf fonnt"]},"No matching files":{msgid:"No matching files",msgstr:["Keng passende dateien"]},Recent:{msgid:"Recent",msgstr:["Rezent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wielt all entréen"]},"Select entry":{msgid:"Select entry",msgstr:["Wielt entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wielt d'zeil fir {nodename}"]},Size:{msgid:"Size",msgstr:["Gréisst"]},Undo:{msgid:"Undo",msgstr:["Undoen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Luet en inhalt erop oder synchroniséiert mat ären apparater"]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Atšaukti"]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Врати"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Буцаах"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["पूर्ववत करा"]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["နဂိုအတိုင်းပြန်ထားရန်"]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"armandg <geirawsm@pm.me>, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nD PE, 2023\nSyvert Fossdal, 2024\narmandg <geirawsm@pm.me>, 2024\n"},msgstr:["Last-Translator: armandg <geirawsm@pm.me>, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldig mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tillatt mappenavn.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tillatt inne i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Velg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Velg {fil}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Velg %n fil","Velg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {destinasjon}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke opprette den nye mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunne ikke laste filinnstillinger"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke laste filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opprett mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nåværende visningsvelger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper du markerer som favoritter vil vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper du nylig har endret, vil vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer filliste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavn kan ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Modifisert"]},Move:{msgid:"Move",msgstr:["Flytt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytt til {destinasjon}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappenavn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer her"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ingen filer funnet med ditt filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen treffende filer"]},Recent:{msgid:"Recent",msgstr:["Nylig"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velg alle oppføringer"]},"Select entry":{msgid:"Select entry",msgstr:["Velg oppføring"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Velg raden for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størrelse"]},Undo:{msgid:"Undo",msgstr:["Angre"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Last opp innhold eller synkroniser med enhetene dine!"]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Casper <casper@vrije-mens.org>, 2024","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJoost <joho500@hotmail.com>, 2023\nJeroen Gui, 2023\nCasper <casper@vrije-mens.org>, 2024\n"},msgstr:["Last-Translator: Casper <casper@vrije-mens.org>, 2024\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is een ongeldige mapnaam.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is geen toegestane mapnaam']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is niet toegestaan binnen een bestandsnaam']},"All files":{msgid:"All files",msgstr:["Alle bestanden"]},Choose:{msgid:"Choose",msgstr:["Kies"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Kies {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Kies %n bestand","Kies %n bestanden"]},Copy:{msgid:"Copy",msgstr:["Kopieer"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopieer naar {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kon de nieuwe map niet maken"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kon de bestandsinstellingen niet laden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kon de bestandsweergaves niet laden"]},"Create directory":{msgid:"Create directory",msgstr:["Maak map"]},"Current view selector":{msgid:"Current view selector",msgstr:["Huidige weergave keuze"]},Favorites:{msgid:"Favorites",msgstr:["Favorieten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Bestanden en mappen die je favoriet maakt, worden hier getoond."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter bestandslijst"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mapnaam mag niet leeg zijn."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Gewijzigd"]},Move:{msgid:"Move",msgstr:["Verplaatsen"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Verplaats naar {target}"]},Name:{msgid:"Name",msgstr:["Naam"]},New:{msgid:"New",msgstr:["Nieuw"]},"New folder":{msgid:"New folder",msgstr:["Nieuwe map"]},"New folder name":{msgid:"New folder name",msgstr:["Nieuwe mapnaam"]},"No files in here":{msgid:"No files in here",msgstr:["Geen bestanden hier"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Geen bestanden gevonden die voldoen aan je filter."]},"No matching files":{msgid:"No matching files",msgstr:["Geen gevonden bestanden"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecteer alle invoer"]},"Select entry":{msgid:"Select entry",msgstr:["Selecteer invoer"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecteer de rij voor {nodename}"]},Size:{msgid:"Size",msgstr:["Grootte"]},Undo:{msgid:"Undo",msgstr:["Ongedaan maken"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload inhoud of synchroniseer met je apparaten!"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anullar"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJUJER wtf, 2023\nM H <haincu@o2.pl>, 2023\nValdnet, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" jest nieprawidłową nazwą folderu']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie jest dozwoloną nazwą folderu']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Znak "/" nie jest dozwolony w nazwie folderu']},"All files":{msgid:"All files",msgstr:["Wszystkie pliki"]},Choose:{msgid:"Choose",msgstr:["Wybierz"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wybierz {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wybierz %n plik","Wybierz %n pliki","Wybierz %n plików","Wybierz %n plików"]},Copy:{msgid:"Copy",msgstr:["Kopiuj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Skopiuj do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nie można utworzyć nowego folderu"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nie można wczytać ustawień plików"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nie można wczytać widoków plików"]},"Create directory":{msgid:"Create directory",msgstr:["Utwórz katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Bieżący selektor widoku"]},Favorites:{msgid:"Favorites",msgstr:["Ulubione"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtruj listę plików"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Nazwa folderu nie może być pusta"]},Home:{msgid:"Home",msgstr:["Strona główna"]},Modified:{msgid:"Modified",msgstr:["Zmodyfikowano"]},Move:{msgid:"Move",msgstr:["Przenieś"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Przejdź do {target}"]},Name:{msgid:"Name",msgstr:["Nazwa"]},New:{msgid:"New",msgstr:["Nowy"]},"New folder":{msgid:"New folder",msgstr:["Nowy folder"]},"New folder name":{msgid:"New folder name",msgstr:["Nowa nazwa folderu"]},"No files in here":{msgid:"No files in here",msgstr:["Brak plików"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nie znaleziono plików spełniających warunki filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Brak pasujących plików"]},Recent:{msgid:"Recent",msgstr:["Ostatni"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wybierz wszystkie wpisy"]},"Select entry":{msgid:"Select entry",msgstr:["Wybierz wpis"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wybierz wiersz dla {nodename}"]},Size:{msgid:"Size",msgstr:["Rozmiar"]},Undo:{msgid:"Undo",msgstr:["Cofnij"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!"]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFlávio Veras <flaviove@gmail.com>, 2023\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\n"},msgstr:["Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" é um nome de pasta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" não é um nome de pasta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" não é permitido dentro de um nome de pasta.']},"All files":{msgid:"All files",msgstr:["Todos os arquivos"]},Choose:{msgid:"Choose",msgstr:["Escolher"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escolher arquivo}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escolher %n arquivo","Escolher %n arquivos","Escolher %n arquivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar para {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Não foi possível criar a nova pasta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Não foi possível carregar configurações de arquivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Não foi possível carregar exibições de arquivos"]},"Create directory":{msgid:"Create directory",msgstr:["Criar diretório"]},"Current view selector":{msgid:"Current view selector",msgstr:["Seletor de visualização atual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os arquivos e pastas marcados como favoritos aparecerão aqui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Arquivos e pastas que você modificou recentemente aparecerão aqui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de arquivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome da pasta não pode ficar vazio."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover para {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Nova pasta"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome de pasta"]},"No files in here":{msgid:"No files in here",msgstr:["Nenhum arquivo aqui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenhum arquivo correspondente ao seu filtro foi encontrado."]},"No matching files":{msgid:"No matching files",msgstr:["Nenhum arquivo correspondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecione todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Selecione a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecione a linha para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamanho"]},Undo:{msgid:"Undo",msgstr:["Desfazer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carregue algum conteúdo ou sincronize com seus dispositivos!"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anular"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Daniel MD <dmihaidumitru@gmail.com>, 2023","Language-Team":"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nDaniel MD <dmihaidumitru@gmail.com>, 2023\n"},msgstr:["Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" este un nume de director invalid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nu este un nume de director permis']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nu este permis în numele unui director.']},"All files":{msgid:"All files",msgstr:["Toate fișierele"]},Choose:{msgid:"Choose",msgstr:["Alege"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Alege {file}"]},Copy:{msgid:"Copy",msgstr:["Copiază"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiază în {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nu s-a putut crea noul director"]},"Create directory":{msgid:"Create directory",msgstr:["Creează director"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selectorul curent al vizualizării"]},Favorites:{msgid:"Favorites",msgstr:["Favorite"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Fișiere și directoare pe care le marcați ca favorite vor apărea aici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Fișiere și directoare pe care le-ați modificat recent vor apărea aici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrează lista de fișiere"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Numele de director nu poate fi necompletat."]},Home:{msgid:"Home",msgstr:["Acasă"]},Modified:{msgid:"Modified",msgstr:["Modificat"]},Move:{msgid:"Move",msgstr:["Mută"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mută către {target}"]},Name:{msgid:"Name",msgstr:["Nume"]},New:{msgid:"New",msgstr:["Nou"]},"New folder":{msgid:"New folder",msgstr:["Director nou"]},"New folder name":{msgid:"New folder name",msgstr:["Numele noului director"]},"No files in here":{msgid:"No files in here",msgstr:["Nu există fișiere"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nu există fișiere potrivite pentru filtrul selectat"]},"No matching files":{msgid:"No matching files",msgstr:["Nu există fișiere potrivite"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selectează toate înregistrările"]},"Select entry":{msgid:"Select entry",msgstr:["Selectează înregistrarea"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selectează rândul pentru {nodename}"]},Size:{msgid:"Size",msgstr:["Mărime"]},Undo:{msgid:"Undo",msgstr:["Anulează"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Kitsune R, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMax Smith <sevinfolds@gmail.com>, 2023\nashed <craysy@gmail.com>, 2023\nAlex <kekcuha@gmail.com>, 2024\nR4SAS, 2024\nВлад, 2024\nKitsune R, 2024\n"},msgstr:["Last-Translator: Kitsune R, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» — недопустимое имя папки."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» не является разрешенным именем папки"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Символ «/» не допускается внутри имени папки."]},"All files":{msgid:"All files",msgstr:["Все файлы"]},Choose:{msgid:"Choose",msgstr:["Выбрать"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Выбрать {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Выбрать %n файл","Выбрать %n файла","Выбрать %n файлов","Выбрать %n файлов"]},Copy:{msgid:"Copy",msgstr:["Копировать"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копировать в «{target}»"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не удалось создать новую папку"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не удалось загрузить настройки файлов"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не удалось загрузить файлы просмотров"]},"Create directory":{msgid:"Create directory",msgstr:["Создать папку"]},"Current view selector":{msgid:"Current view selector",msgstr:["Переключатель текущего вида"]},Favorites:{msgid:"Favorites",msgstr:["Избранное"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Здесь появятся файлы и папки, которые вы пометили как избранные."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Здесь будут отображаться файлы и папки, которые вы недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фильтровать список файлов"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Имя папки не может быть пустым."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Изменен"]},Move:{msgid:"Move",msgstr:["Переместить"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перейти к {target}"]},Name:{msgid:"Name",msgstr:["Имя"]},New:{msgid:"New",msgstr:["Новый"]},"New folder":{msgid:"New folder",msgstr:["Новая папка"]},"New folder name":{msgid:"New folder name",msgstr:["Имя новой папки"]},"No files in here":{msgid:"No files in here",msgstr:["Здесь нет файлов"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Файлы, соответствующие вашему фильтру, не найдены."]},"No matching files":{msgid:"No matching files",msgstr:["Нет подходящих файлов"]},Recent:{msgid:"Recent",msgstr:["Недавний"]},"Select all entries":{msgid:"Select all entries",msgstr:["Выбрать все записи"]},"Select entry":{msgid:"Select entry",msgstr:["Выберите запись"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Выберите строку для {nodename}"]},Size:{msgid:"Size",msgstr:["Размер"]},Undo:{msgid:"Undo",msgstr:["Отменить"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Загрузите контент или синхронизируйте его со своими устройствами!"]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["පෙරසේ"]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nStanislav Prekop <prekop3@gmail.com>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" je neplatný názov pričinka.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie je povolený názov priečinka.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nie je povolené v názve priečinka.']},"All files":{msgid:"All files",msgstr:["Všetky súbory"]},Choose:{msgid:"Choose",msgstr:["Vybrať"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vybrať {súbor}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vybraný %n súbor","Vybrané %n súbory","Vybraných %n súborov","Vybraných %n súborov"]},Copy:{msgid:"Copy",msgstr:["Kopírovať"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopírovať do {umiestnenia}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nepodarilo sa vytvoriť nový priečinok"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodarilo sa načítať nastavenia súborov"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodarilo sa načítať pohľady súborov"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvoriť adresár"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výber aktuálneho zobrazenia"]},Favorites:{msgid:"Favorites",msgstr:["Obľúbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovať zoznam súborov"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Názov priečinka nemôže byť prázdny."]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Upravené"]},Move:{msgid:"Move",msgstr:["Prejsť"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Prejsť na {umiestnenie}"]},Name:{msgid:"Name",msgstr:["Názov"]},New:{msgid:"New",msgstr:["Pridať"]},"New folder":{msgid:"New folder",msgstr:["Pridať priečinok"]},"New folder name":{msgid:"New folder name",msgstr:["Pridať názov priečinka"]},"No files in here":{msgid:"No files in here",msgstr:["Nie sú tu žiadne súbory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenašli sa žiadne súbory zodpovedajúce vášmu filtru."]},"No matching files":{msgid:"No matching files",msgstr:["Žiadne zodpovedajúce súbory"]},Recent:{msgid:"Recent",msgstr:["Nedávne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrať všetky položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrať položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vyberte riadok pre {názov uzla}"]},Size:{msgid:"Size",msgstr:["Veľkosť"]},Undo:{msgid:"Undo",msgstr:["Späť"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!"]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} je neveljavno ime mape."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ni dovoljeno ime mape"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ni dovoljen v imenu mape.']},"All files":{msgid:"All files",msgstr:["Vse datoteke"]},Choose:{msgid:"Choose",msgstr:["Izberi"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izberi {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izberi %n datoteko","Izberi %n datoteki","Izberi %n datotek","Izberi %n datotek"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj v {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nisem mogel ustvariti nove mape"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["NIsem mogel naložiti nastavitev datotek"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nisem mogel naložiti pogledov datotek"]},"Create directory":{msgid:"Create directory",msgstr:["Ustvari mapo"]},"Current view selector":{msgid:"Current view selector",msgstr:["Izbirnik trenutnega pogleda"]},Favorites:{msgid:"Favorites",msgstr:["Priljubljene"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtriraj seznam datotek"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ime mape ne more biti prazno"]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Spremenjeno"]},Move:{msgid:"Move",msgstr:["Premakni"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premakni v {target}"]},Name:{msgid:"Name",msgstr:["Ime"]},New:{msgid:"New",msgstr:["Nov"]},"New folder":{msgid:"New folder",msgstr:["Nova mapa"]},"New folder name":{msgid:"New folder name",msgstr:["Novo ime mape"]},"No files in here":{msgid:"No files in here",msgstr:["Tukaj ni datotek"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ni bilo najdenih ujemajočih datotek glede na vaš filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ni ujemajočih datotek"]},Recent:{msgid:"Recent",msgstr:["Nedavne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izberi vse vnose"]},"Select entry":{msgid:"Select entry",msgstr:["Izberi vnos"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izberi vrstico za {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Razveljavi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!"]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” није исправно име фолдера."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” није дозвољено име за фолдер."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” није дозвољено унутар имена фолдера."]},"All files":{msgid:"All files",msgstr:["Сви фајлови"]},Choose:{msgid:"Choose",msgstr:["Изаберите"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Изаберите {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Изаберите %n фајл","Изаберите %n фајла","Изаберите %n фајлова"]},Copy:{msgid:"Copy",msgstr:["Копирај"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копирај у {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Није могао да се креира нови фолдер"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не могу да се учитају подешавања фајлова"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не могу да се учитају прикази фајлова"]},"Create directory":{msgid:"Create directory",msgstr:["Креирај директоријум"]},"Current view selector":{msgid:"Current view selector",msgstr:["Бирач тренутног приказа"]},Favorites:{msgid:"Favorites",msgstr:["Омиљено"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери које сте означили као омиљене."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери који се се недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фитрирање листе фајлова"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Име фолдера не може бити празно."]},Home:{msgid:"Home",msgstr:["Почетак"]},Modified:{msgid:"Modified",msgstr:["Измењено"]},Move:{msgid:"Move",msgstr:["Премести"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Премести у {target}"]},Name:{msgid:"Name",msgstr:["Име"]},New:{msgid:"New",msgstr:["Ново"]},"New folder":{msgid:"New folder",msgstr:["Нови фолдер"]},"New folder name":{msgid:"New folder name",msgstr:["Име новог фолдера"]},"No files in here":{msgid:"No files in here",msgstr:["Овде нема фајлова"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Није пронађен ниједан фајл који задовољава ваш филтер."]},"No matching files":{msgid:"No matching files",msgstr:["Нема таквих фајлова"]},Recent:{msgid:"Recent",msgstr:["Скорашње"]},"Select all entries":{msgid:"Select all entries",msgstr:["Изаберите све ставке"]},"Select entry":{msgid:"Select entry",msgstr:["Изаберите ставку"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Изаберите ред за {nodename}"]},Size:{msgid:"Size",msgstr:["Величина"]},Undo:{msgid:"Undo",msgstr:["Поништи"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Отпремите нешто или синхронизујте са својим уређајима!"]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Bogdan Vuković, 2024","Language-Team":"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBogdan Vuković, 2024\n"},msgstr:["Last-Translator: Bogdan Vuković, 2024\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” je neispravan naziv foldera."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” je nedozvoljen naziv foldera."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” se ne može koristiti unutar naziva foldera."]},"All files":{msgid:"All files",msgstr:["Svi fajlovi"]},Choose:{msgid:"Choose",msgstr:["Izaberite"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izaberite {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izaberite %n fajl","Izaberite %n fajla","Izaberite %n fajlova"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj u {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Neuspešno kreiranje novog foldera"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Neuspešno učitavanje podešavanja fajlova"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Neuspešno učitavanje prikaza fajlova"]},"Create directory":{msgid:"Create directory",msgstr:["Kreiraj direktorijum"]},"Current view selector":{msgid:"Current view selector",msgstr:["Birač trenutnog prikaza"]},Favorites:{msgid:"Favorites",msgstr:["Omiljeno"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Lista omiljenih fajlova i foldera."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Lista fajlova i foldera sa skorašnjim izmenama."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fitriranje liste fajlova"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Naziv foldera ne može biti prazan."]},Home:{msgid:"Home",msgstr:["Početak"]},Modified:{msgid:"Modified",msgstr:["Izmenjeno"]},Move:{msgid:"Move",msgstr:["Premesti"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premesti u {target}"]},Name:{msgid:"Name",msgstr:["Naziv"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novi folder"]},"New folder name":{msgid:"New folder name",msgstr:["Naziv novog foldera"]},"No files in here":{msgid:"No files in here",msgstr:["Bez fajlova"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nema fajlova koji zadovoljavaju uslove filtera."]},"No matching files":{msgid:"No matching files",msgstr:["Nema takvih fajlova"]},Recent:{msgid:"Recent",msgstr:["Skorašnje"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izaberite sve stavke"]},"Select entry":{msgid:"Select entry",msgstr:["Izaberite stavku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izaberite red za {nodename}"]},Size:{msgid:"Size",msgstr:["Veličina"]},Undo:{msgid:"Undo",msgstr:["Vrati"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Otpremite sadržaj ili sinhronizujte sa svojim uređajima!"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" är ett ogiltigt mappnamn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" är inte ett tillåtet mappnamn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" är inte tillåtet i ett mappnamn.']},"All files":{msgid:"All files",msgstr:["Alla filer"]},Choose:{msgid:"Choose",msgstr:["Välj"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Välj {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Välj %n fil","Välj %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopiera"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiera till {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunde inte skapa den nya mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunde inte ladda filinställningar"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunde inte ladda läsa in filvyer"]},"Create directory":{msgid:"Create directory",msgstr:["Skapa katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell vyväljare"]},Favorites:{msgid:"Favorites",msgstr:["Favoriter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer och mappar som du markerar som favorit kommer att visas här."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer och mappar som du nyligen ändrat kommer att visas här."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrera fillistan"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappnamnet får inte vara tomt."]},Home:{msgid:"Home",msgstr:["Hem"]},Modified:{msgid:"Modified",msgstr:["Ändrad"]},Move:{msgid:"Move",msgstr:["Flytta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytta till {target}"]},Name:{msgid:"Name",msgstr:["Namn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mapp"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappnamn"]},"No files in here":{msgid:"No files in here",msgstr:["Inga filer här"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Inga filer som matchar ditt filter hittades."]},"No matching files":{msgid:"No matching files",msgstr:["Inga matchande filer"]},Recent:{msgid:"Recent",msgstr:["Nyligen"]},"Select all entries":{msgid:"Select all entries",msgstr:["Välj alla poster"]},"Select entry":{msgid:"Select entry",msgstr:["Välj post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Välj raden för {nodename}"]},Size:{msgid:"Size",msgstr:["Storlek"]},Undo:{msgid:"Undo",msgstr:["Ångra"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Ladda upp lite innehåll eller synkronisera med dina enheter!"]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["செயல்தவிர்"]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["เลิกทำ"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" geçersiz bir klasör adı.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" izin verilen bir klasör adı değil']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" karakteri klasör adında kullanılamaz.']},"All files":{msgid:"All files",msgstr:["Tüm dosyalar"]},Choose:{msgid:"Choose",msgstr:["Seçin"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} seçin"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n dosya seçin","%n dosya seçin"]},Copy:{msgid:"Copy",msgstr:["Kopyala"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} üzerine kopyala"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Yeni klasör oluşturulamadı"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dosyalar uygulamasının ayarları yüklenemedi"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dosyalar uygulamasının görünümleri yüklenemedi"]},"Create directory":{msgid:"Create directory",msgstr:["Klasör oluştur"]},"Current view selector":{msgid:"Current view selector",msgstr:["Geçerli görünüm seçici"]},Favorites:{msgid:"Favorites",msgstr:["Sık kullanılanlar"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dosya listesini süz"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Klasör adı boş olamaz."]},Home:{msgid:"Home",msgstr:["Giriş"]},Modified:{msgid:"Modified",msgstr:["Değiştirilme"]},Move:{msgid:"Move",msgstr:["Taşı"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} üzerine taşı"]},Name:{msgid:"Name",msgstr:["Ad"]},New:{msgid:"New",msgstr:["Yeni"]},"New folder":{msgid:"New folder",msgstr:["Yeni klasör"]},"New folder name":{msgid:"New folder name",msgstr:["Yeni klasör adı"]},"No files in here":{msgid:"No files in here",msgstr:["Burada herhangi bir dosya yok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Süzgece uyan bir dosya bulunamadı."]},"No matching files":{msgid:"No matching files",msgstr:["Eşleşen bir dosya yok"]},Recent:{msgid:"Recent",msgstr:["Son kullanılanlar"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tüm kayıtları seç"]},"Select entry":{msgid:"Select entry",msgstr:["Kaydı seç"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} satırını seçin"]},Size:{msgid:"Size",msgstr:["Boyut"]},Undo:{msgid:"Undo",msgstr:["Geri al"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!"]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" є недійсною назвою для каталогу.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" не є дозволеною назвою для каталогу.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" не дозволено у назві каталогу.']},"All files":{msgid:"All files",msgstr:["Всі файли"]},Choose:{msgid:"Choose",msgstr:["Вибрати"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Вибрати {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Вибрати %n файл","Вибрати %n файли","Вибрати %n файлів","Вибрати %n файлів"]},Copy:{msgid:"Copy",msgstr:["Копіювати"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копіювати до {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не вдалося створити новий каталог"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не вдалося завантажити налаштування файлів"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не вдалося завантажити подання файлів"]},"Create directory":{msgid:"Create directory",msgstr:["Створити каталог"]},"Current view selector":{msgid:"Current view selector",msgstr:["Вибір подання"]},Favorites:{msgid:"Favorites",msgstr:["Із зірочкою"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які ви позначите зірочкою."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які було нещодавно змінено."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фільтрувати список файлів"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ім'я каталогу не може бути порожнім."]},Home:{msgid:"Home",msgstr:["Домівка"]},Modified:{msgid:"Modified",msgstr:["Змінено"]},Move:{msgid:"Move",msgstr:["Перемістити"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перемістити до {target}"]},Name:{msgid:"Name",msgstr:["Ім'я"]},New:{msgid:"New",msgstr:["Новий"]},"New folder":{msgid:"New folder",msgstr:["Новий каталог"]},"New folder name":{msgid:"New folder name",msgstr:["Ім'я нового каталогу"]},"No files in here":{msgid:"No files in here",msgstr:["Тут відсутні файли"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Відсутні збіги за фільтром."]},"No matching files":{msgid:"No matching files",msgstr:["Відсутні збіги файлів."]},Recent:{msgid:"Recent",msgstr:["Останні"]},"Select all entries":{msgid:"Select all entries",msgstr:["Вибрати всі записи"]},"Select entry":{msgid:"Select entry",msgstr:["Вибрати запис"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Вибрати рядок для {nodename}"]},Size:{msgid:"Size",msgstr:["Розмір"]},Undo:{msgid:"Undo",msgstr:["Повернути"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Завантажте вміст або синхронізуйте з вашим пристроєм!"]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Trần Đình Tuyển, 2024","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTran Duc, 2024\nTrần Đình Tuyển, 2024\n"},msgstr:["Last-Translator: Trần Đình Tuyển, 2024\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" là tên thư mục không hợp lệ.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"1{name}"không phải là tên thư mục được cho phép']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/"không được phép đặt trong tên thư mục.']},"All files":{msgid:"All files",msgstr:["Tất cả tệp"]},Choose:{msgid:"Choose",msgstr:["Chọn"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Chọn {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Chọn %n tệp"]},Copy:{msgid:"Copy",msgstr:["Sao chép"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Sao chép đến {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Không thể tạo thư mục mới"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Không thể tải tập tin cài đặt"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Không thể tải xuống tệp xem"]},"Create directory":{msgid:"Create directory",msgstr:["Tạo thư mục"]},"Current view selector":{msgid:"Current view selector",msgstr:["Hiện tại chế độ xem của bộ chọn"]},Favorites:{msgid:"Favorites",msgstr:["Yêu cầu thích"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter list file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Thư mục tên không được để trống."]},Home:{msgid:"Home",msgstr:["Trang chủ"]},Modified:{msgid:"Modified",msgstr:["Đã sửa đổi"]},Move:{msgid:"Move",msgstr:["Di chuyển"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Di chuyển đến{target}"]},Name:{msgid:"Name",msgstr:["Tên"]},New:{msgid:"New",msgstr:["Mới"]},"New folder":{msgid:"New folder",msgstr:["New thư mục"]},"New folder name":{msgid:"New folder name",msgstr:["New thư mục tên"]},"No files in here":{msgid:"No files in here",msgstr:["No file at here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Không tìm thấy tệp nào phù hợp với bộ lọc của bạn."]},"No matching files":{msgid:"No matching files",msgstr:["No file phù hợp"]},Recent:{msgid:"Recent",msgstr:["Gần đây"]},"Select all entries":{msgid:"Select all entries",msgstr:["Choose all items"]},"Select entry":{msgid:"Select entry",msgstr:["Chọn mục nhập"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Choose hang cho{nodename}"]},Size:{msgid:"Size",msgstr:["Kích cỡ"]},Undo:{msgid:"Undo",msgstr:["Hoàn tác"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Ruijian Deng, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nken, 2023\nEric, 2023\nPhonebook3599, 2024\nRuijian Deng, 2024\n"},msgstr:["Last-Translator: Ruijian Deng, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["“{name}”是无效的文件夹名称。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["“{name}”不是允许的文件夹名称"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["文件夹名称中不允许包含“/”。"]},"All files":{msgid:"All files",msgstr:["所有文件"]},Choose:{msgid:"Choose",msgstr:["选择"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["选择 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["选择 %n 个文件"]},Copy:{msgid:"Copy",msgstr:["复制"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["复制到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["无法创建新文件夹"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["无法加载文件设置"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["无法加载文件视图"]},"Create directory":{msgid:"Create directory",msgstr:["创建目录"]},"Current view selector":{msgid:"Current view selector",msgstr:["当前视图选择器"]},Favorites:{msgid:"Favorites",msgstr:["最爱"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您标记为最爱的文件与文件夹会显示在这里"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的文件与文件夹会显示在这里"]},"Filter file list":{msgid:"Filter file list",msgstr:["过滤文件列表"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["文件夹名称不能为空。"]},Home:{msgid:"Home",msgstr:["主目录"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移动"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移动至 {target}"]},Name:{msgid:"Name",msgstr:["名称"]},New:{msgid:"New",msgstr:["新建"]},"New folder":{msgid:"New folder",msgstr:["新文件夹"]},"New folder name":{msgid:"New folder name",msgstr:["新文件夹名称"]},"No files in here":{msgid:"No files in here",msgstr:["此处无文件"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您过滤条件的文件"]},"No matching files":{msgid:"No matching files",msgstr:["无符合的文件"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["选择所有条目"]},"Select entry":{msgid:"Select entry",msgstr:["选择条目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["选择 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:[" 撤消"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上传一些项目或与您的设备同步!"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["「{name}」是無效的資料夾名稱。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["「{name}」是無效的資料夾名稱。"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['資料夾名稱中不允許使用 "/"。']},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["選擇 %n 個檔案"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["無法載入檔案設定"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["無法載入文件視圖"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["資料夾名稱不能為空。"]},Home:{msgid:"Home",msgstr:["首頁"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["還原"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2023","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\n黃柏諺 <s8321414@gmail.com>, 2023\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid file name.':{msgid:'"{name}" is an invalid file name.',msgstr:["「{name}」是無效的檔案名稱。"]},'"{name}" is not an allowed filetype':{msgid:'"{name}" is not an allowed filetype',msgstr:["「{name}」並非允許的檔案類型"]},'"/" is not allowed inside a file name.':{msgid:'"/" is not allowed inside a file name.',msgstr:["檔案名稱中不允許使用「/」。"]},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"File name cannot be empty.":{msgid:"File name cannot be empty.",msgstr:["檔案名稱不能為空。"]},"Filepicker sections":{msgid:"Filepicker sections",msgstr:["檔案挑選器選取"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},Home:{msgid:"Home",msgstr:["家"]},"Mime type {mime}":{msgid:"Mime type {mime}",msgstr:["Mime type {mime}"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["復原"]},unknown:{msgid:"unknown",msgstr:["未知"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zu_ZA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)","Content-Type":"text/plain; charset=UTF-8",Language:"zu_ZA","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zu_ZA\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}}].map((e=>i.addTranslation(e.locale,e.json)));const a=i.build(),r=(a.ngettext.bind(a),a.gettext.bind(a));var o=(e=>(e[e.OFF="off"]="OFF",e[e.POLITE="polite"]="POLITE",e[e.ASSERTIVE="assertive"]="ASSERTIVE",e))(o||{});const l=7e3;function d(e,t){var s;if(t=Object.assign({timeout:l,isHTML:!1,type:void 0,selector:void 0,onRemove:()=>{},onClick:void 0,close:!0},t),"string"==typeof e&&!t.isHTML){const t=document.createElement("div");t.innerHTML=e,e=t.innerText}let i=null!=(s=t.type)?s:"";"function"==typeof t.onClick&&(i+=" toast-with-click ");const a=e instanceof Node;let r=o.POLITE;t.ariaLive?r=t.ariaLive:"toast-error"!==t.type&&"toast-undo"!==t.type||(r=o.ASSERTIVE);const d=n({[a?"node":"text"]:e,duration:t.timeout,callback:t.onRemove,onClick:t.onClick,close:t.close,gravity:"top",selector:t.selector,position:"right",backgroundColor:"",className:"dialogs "+i,escapeMarkup:!t.isHTML,ariaLive:r});return d.showToast(),d}function m(e,t){return d(e,{...t,type:"toast-error"})}function c(e,t){return d(e,{...t,type:"toast-warning"})}function g(e,t){return d(e,{...t,type:"toast-info"})}function u(e,t,s,n,i,a,r,o){var l="function"==typeof e?e.options:e;return t&&(l.render=t,l.staticRenderFns=s,l._compiled=!0),a&&(l._scopeId="data-v-"+a),{exports:e,options:l}}},95674:(e,t,s)=>{"use strict";s.d(t,{I9:()=>i.j,Qg:()=>i.l,Ss:()=>o,cf:()=>i.k}),s(43627);var n=s(85471),i=s(85136),a=s(94219),r=s(80910);s(96763);const o=(e,t,s=(()=>{}))=>{const i=document.createElement("div");(document.querySelector(null==t?void 0:t.container)||document.body).appendChild(i);const a=new n.Ay({el:i,name:"VueDialogHelper",render:i=>i(e,{props:t,on:{close:(...e)=>{s(...e.map((e=>(0,n.ux)(e)))),a.$destroy()}}})});return a};Object.defineProperty;const l=(0,n.pM)({__name:"GenericDialog",props:{name:null,text:null,html:null,buttons:null,severity:null},setup(e){const t=e,s=()=>"".concat(t.name,": ").concat(t.text);return(0,n.sV)((()=>window.addEventListener("unload",s))),(0,n.hi)((()=>window.removeEventListener("unload",s))),{__sfc:!0,props:t,handleUnload:s,NcDialog:a.A,NcNoteCard:r.A}}});var d=function(){var e=this,t=e._self._c,s=e._self._setupProxy;return t(s.NcDialog,{attrs:{"dialog-classes":"nc-generic-dialog",buttons:e.buttons,name:e.name,message:e.text},on:{"update:open":function(t){return e.$emit("close")}}},[e.severity?t(s.NcNoteCard,{attrs:{type:e.severity}},[t("p",{domProps:{textContent:e._s(e.text)}})]):e._e(),e.html?t("div",{domProps:{innerHTML:e._s(e.html)}}):e._e()],1)},m=[];(0,i.a)(l,d,m,!1,null,null).exports},57485:(e,t,s)=>{"use strict";s.d(t,{A:()=>d});var n=s(9052);class i extends Error{constructor(e){super(e),this.name="TimeoutError"}}class a extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const r=e=>void 0===globalThis.DOMException?new a(e):new DOMException(e),o=e=>{const t=void 0===e.reason?r("This operation was aborted."):e.reason;return t instanceof Error?t:r(t)};class l{#r=[];enqueue(e,t){const s={priority:(t={priority:0,...t}).priority,run:e};if(this.size&&this.#r[this.size-1].priority>=t.priority)return void this.#r.push(s);const n=function(e,t,s){let n=0,i=e.length;for(;i>0;){const s=Math.trunc(i/2);let r=n+s;a=e[r],t.priority-a.priority<=0?(n=++r,i-=s+1):i=s}var a;return n}(this.#r,s);this.#r.splice(n,0,s)}dequeue(){const e=this.#r.shift();return e?.run}filter(e){return this.#r.filter((t=>t.priority===e.priority)).map((e=>e.run))}get size(){return this.#r.length}}class d extends n{#o;#l;#d=0;#m;#c;#g=0;#u;#p;#r;#f;#h=0;#v;#w;#y;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:l,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#o=e.carryoverConcurrencyCount,this.#l=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#m=e.intervalCap,this.#c=e.interval,this.#r=new e.queueClass,this.#f=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=!0===e.throwOnTimeout,this.#w=!1===e.autoStart}get#C(){return this.#l||this.#d<this.#m}get#T(){return this.#h<this.#v}#A(){this.#h--,this.#b(),this.emit("next")}#x(){this.#k(),this.#_(),this.#p=void 0}get#S(){const e=Date.now();if(void 0===this.#u){const t=this.#g-e;if(!(t<0))return void 0===this.#p&&(this.#p=setTimeout((()=>{this.#x()}),t)),!0;this.#d=this.#o?this.#h:0}return!1}#b(){if(0===this.#r.size)return this.#u&&clearInterval(this.#u),this.#u=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#w){const e=!this.#S;if(this.#C&&this.#T){const t=this.#r.dequeue();return!!t&&(this.emit("active"),t(),e&&this.#_(),!0)}}return!1}#_(){this.#l||void 0!==this.#u||(this.#u=setInterval((()=>{this.#k()}),this.#c),this.#g=Date.now()+this.#c)}#k(){0===this.#d&&0===this.#h&&this.#u&&(clearInterval(this.#u),this.#u=void 0),this.#d=this.#o?this.#h:0,this.#F()}#F(){for(;this.#b(););}get concurrency(){return this.#v}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#v=e,this.#F()}async#N(e){return new Promise(((t,s)=>{e.addEventListener("abort",(()=>{s(e.reason)}),{once:!0})}))}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise(((s,n)=>{this.#r.enqueue((async()=>{this.#h++,this.#d++;try{t.signal?.throwIfAborted();let n=e({signal:t.signal});t.timeout&&(n=function(e,t){const{milliseconds:s,fallback:n,message:a,customTimers:r={setTimeout,clearTimeout}}=t;let l;const d=new Promise(((d,m)=>{if("number"!=typeof s||1!==Math.sign(s))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${s}\``);if(t.signal){const{signal:e}=t;e.aborted&&m(o(e)),e.addEventListener("abort",(()=>{m(o(e))}))}if(s===Number.POSITIVE_INFINITY)return void e.then(d,m);const c=new i;l=r.setTimeout.call(void 0,(()=>{if(n)try{d(n())}catch(e){m(e)}else"function"==typeof e.cancel&&e.cancel(),!1===a?d():a instanceof Error?m(a):(c.message=a??`Promise timed out after ${s} milliseconds`,m(c))}),s),(async()=>{try{d(await e)}catch(e){m(e)}})()})).finally((()=>{d.clear()}));return d.clear=()=>{r.clearTimeout.call(void 0,l),l=void 0},d}(Promise.resolve(n),{milliseconds:t.timeout})),t.signal&&(n=Promise.race([n,this.#N(t.signal)]));const a=await n;s(a),this.emit("completed",a)}catch(e){if(e instanceof i&&!t.throwOnTimeout)return void s();n(e),this.emit("error",e)}finally{this.#A()}}),t),this.emit("add"),this.#b()}))}async addAll(e,t){return Promise.all(e.map((async e=>this.add(e,t))))}start(){return this.#w?(this.#w=!1,this.#F(),this):this}pause(){this.#w=!0}clear(){this.#r=new this.#f}async onEmpty(){0!==this.#r.size&&await this.#L("empty")}async onSizeLessThan(e){this.#r.size<e||await this.#L("next",(()=>this.#r.size<e))}async onIdle(){0===this.#h&&0===this.#r.size||await this.#L("idle")}async#L(e,t){return new Promise((s=>{const n=()=>{t&&!t()||(this.off(e,n),s())};this.on(e,n)}))}get size(){return this.#r.size}sizeBy(e){return this.#r.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#w}}},53110:(e,t,s)=>{"use strict";s.d(t,{F0:()=>g,FZ:()=>o,pe:()=>a});var n=s(33319);const{Axios:i,AxiosError:a,CanceledError:r,isCancel:o,CancelToken:l,VERSION:d,all:m,Cancel:c,isAxiosError:g,spread:u,toFormData:p,AxiosHeaders:f,HttpStatusCode:h,formToJSON:v,getAdapter:w,mergeConfig:y}=n.A}},a={};function r(e){var t=a[e];if(void 0!==t)return t.exports;var s=a[e]={id:e,loaded:!1,exports:{}};return i[e].call(s.exports,s,s.exports,r),s.loaded=!0,s.exports}r.m=i,e=[],r.O=(t,s,n,i)=>{if(!s){var a=1/0;for(m=0;m<e.length;m++){s=e[m][0],n=e[m][1],i=e[m][2];for(var o=!0,l=0;l<s.length;l++)(!1&i||a>=i)&&Object.keys(r.O).every((e=>r.O[e](s[l])))?s.splice(l--,1):(o=!1,i<a&&(a=i));if(o){e.splice(m--,1);var d=n();void 0!==d&&(t=d)}}return t}i=i||0;for(var m=e.length;m>0&&e[m-1][2]>i;m--)e[m]=e[m-1];e[m]=[s,n,i]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var s in t)r.o(t,s)&&!r.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,s)=>(r.f[s](e,t),t)),[])),r.u=e=>e+"-"+e+".js?v="+{918:"42dc18350820a2df996f",1902:"15c69743cf3911d7117d",2400:"e05bb23ce5cd8e8e3b27",6429:"89166d2636e7cbd574e0",6880:"367ddfc725b6ef2ee02b",8066:"f1f0a3884f0b92377e6a"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s={},n="nextcloud:",r.l=(e,t,i,a)=>{if(s[e])s[e].push(t);else{var o,l;if(void 0!==i)for(var d=document.getElementsByTagName("script"),m=0;m<d.length;m++){var c=d[m];if(c.getAttribute("src")==e||c.getAttribute("data-webpack")==n+i){o=c;break}}o||(l=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",n+i),o.src=e),s[e]=[t];var g=(t,n)=>{o.onerror=o.onload=null,clearTimeout(u);var i=s[e];if(delete s[e],o.parentNode&&o.parentNode.removeChild(o),i&&i.forEach((e=>e(n))),t)return t(n)},u=setTimeout(g.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=g.bind(null,o.onerror),o.onload=g.bind(null,o.onload),l&&document.head.appendChild(o)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.j=2882,(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var s=t.getElementsByTagName("script");if(s.length)for(var n=s.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=s[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{r.b=document.baseURI||self.location.href;var e={2882:0};r.f.j=(t,s)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)s.push(n[2]);else{var i=new Promise(((s,i)=>n=e[t]=[s,i]));s.push(n[2]=i);var a=r.p+r.u(t),o=new Error;r.l(a,(s=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var i=s&&("load"===s.type?"missing":s.type),a=s&&s.target&&s.target.src;o.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",o.name="ChunkLoadError",o.type=i,o.request=a,n[1](o)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,s)=>{var n,i,a=s[0],o=s[1],l=s[2],d=0;if(a.some((t=>0!==e[t]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var m=l(r)}for(t&&t(s);d<a.length;d++)i=a[d],r.o(e,i)&&e[i]&&e[i][0](),e[i]=0;return r.O(m)},s=self.webpackChunknextcloud=self.webpackChunknextcloud||[];s.forEach(t.bind(null,0)),s.push=t.bind(null,s.push.bind(s))})(),r.nc=void 0;var o=r.O(void 0,[4208],(()=>r(38536)));o=r.O(o)})();
-//# sourceMappingURL=files-main.js.map?v=d93cf6610595e184e48d \ No newline at end of file
+(()=>{var e,s,n,i={9052:e=>{"use strict";var t=Object.prototype.hasOwnProperty,s="~";function n(){}function i(e,t,s){this.fn=e,this.context=t,this.once=s||!1}function a(e,t,n,a,r){if("function"!=typeof n)throw new TypeError("The listener must be a function");var o=new i(n,a||e,r),l=s?s+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function r(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function o(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(s=!1)),o.prototype.eventNames=function(){var e,n,i=[];if(0===this._eventsCount)return i;for(n in e=this._events)t.call(e,n)&&i.push(s?n.slice(1):n);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(e)):i},o.prototype.listeners=function(e){var t=s?s+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,r=new Array(a);i<a;i++)r[i]=n[i].fn;return r},o.prototype.listenerCount=function(e){var t=s?s+e:e,n=this._events[t];return n?n.fn?1:n.length:0},o.prototype.emit=function(e,t,n,i,a,r){var o=s?s+e:e;if(!this._events[o])return!1;var l,d,m=this._events[o],c=arguments.length;if(m.fn){switch(m.once&&this.removeListener(e,m.fn,void 0,!0),c){case 1:return m.fn.call(m.context),!0;case 2:return m.fn.call(m.context,t),!0;case 3:return m.fn.call(m.context,t,n),!0;case 4:return m.fn.call(m.context,t,n,i),!0;case 5:return m.fn.call(m.context,t,n,i,a),!0;case 6:return m.fn.call(m.context,t,n,i,a,r),!0}for(d=1,l=new Array(c-1);d<c;d++)l[d-1]=arguments[d];m.fn.apply(m.context,l)}else{var g,u=m.length;for(d=0;d<u;d++)switch(m[d].once&&this.removeListener(e,m[d].fn,void 0,!0),c){case 1:m[d].fn.call(m[d].context);break;case 2:m[d].fn.call(m[d].context,t);break;case 3:m[d].fn.call(m[d].context,t,n);break;case 4:m[d].fn.call(m[d].context,t,n,i);break;default:if(!l)for(g=1,l=new Array(c-1);g<c;g++)l[g-1]=arguments[g];m[d].fn.apply(m[d].context,l)}}return!0},o.prototype.on=function(e,t,s){return a(this,e,t,s,!1)},o.prototype.once=function(e,t,s){return a(this,e,t,s,!0)},o.prototype.removeListener=function(e,t,n,i){var a=s?s+e:e;if(!this._events[a])return this;if(!t)return r(this,a),this;var o=this._events[a];if(o.fn)o.fn!==t||i&&!o.once||n&&o.context!==n||r(this,a);else{for(var l=0,d=[],m=o.length;l<m;l++)(o[l].fn!==t||i&&!o[l].once||n&&o[l].context!==n)&&d.push(o[l]);d.length?this._events[a]=1===d.length?d[0]:d:r(this,a)}return this},o.prototype.removeAllListeners=function(e){var t;return e?(t=s?s+e:e,this._events[t]&&r(this,t)):(this._events=new n,this._eventsCount=0),this},o.prototype.off=o.prototype.removeListener,o.prototype.addListener=o.prototype.on,o.prefixed=s,o.EventEmitter=o,e.exports=o},38536:(e,s,n)=>{"use strict";var i={};n.r(i),n.d(i,{exclude:()=>P,extract:()=>_,parse:()=>S,parseUrl:()=>N,pick:()=>U,stringify:()=>F,stringifyUrl:()=>L});var a=n(65899),r=n(21777),o=n(85471);const l=(0,a.Ey)();var d=n(63814);const m="%[a-f0-9]{2}",c=new RegExp("("+m+")|([^%]+?)","gi"),g=new RegExp("("+m+")+","gi");function u(e,t){try{return[decodeURIComponent(e.join(""))]}catch{}if(1===e.length)return e;t=t||1;const s=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],u(s),u(n))}function p(e){try{return decodeURIComponent(e)}catch{let t=e.match(c)||[];for(let s=1;s<t.length;s++)t=(e=u(t,s).join("")).match(c)||[];return e}}function f(e,t){if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===e||""===t)return[];const s=e.indexOf(t);return-1===s?[]:[e.slice(0,s),e.slice(s+t.length)]}function h(e,t){const s={};if(Array.isArray(t))for(const n of t){const t=Object.getOwnPropertyDescriptor(e,n);t?.enumerable&&Object.defineProperty(s,n,t)}else for(const n of Reflect.ownKeys(e)){const i=Object.getOwnPropertyDescriptor(e,n);i.enumerable&&t(n,e[n],e)&&Object.defineProperty(s,n,i)}return s}const v=e=>null==e,w=e=>encodeURIComponent(e).replaceAll(/[!'()*]/g,(e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)),y=Symbol("encodeFragmentIdentifier");function C(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function T(e,t){return t.encode?t.strict?w(e):encodeURIComponent(e):e}function A(e,t){return t.decode?function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return decodeURIComponent(e)}catch{return function(e){const t={"%FE%FF":"��","%FF%FE":"��"};let s=g.exec(e);for(;s;){try{t[s[0]]=decodeURIComponent(s[0])}catch{const e=p(s[0]);e!==s[0]&&(t[s[0]]=e)}s=g.exec(e)}t["%C2"]="�";const n=Object.keys(t);for(const s of n)e=e.replace(new RegExp(s,"g"),t[s]);return e}(e)}}(e):e}function b(e){return Array.isArray(e)?e.sort():"object"==typeof e?b(Object.keys(e)).sort(((e,t)=>Number(e)-Number(t))).map((t=>e[t])):e}function x(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function k(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function _(e){const t=(e=x(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function S(e,t){C((t={decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1,...t}).arrayFormatSeparator);const s=function(e){let t;switch(e.arrayFormat){case"index":return(e,s,n)=>{t=/\[(\d*)]$/.exec(e),e=e.replace(/\[\d*]$/,""),t?(void 0===n[e]&&(n[e]={}),n[e][t[1]]=s):n[e]=s};case"bracket":return(e,s,n)=>{t=/(\[])$/.exec(e),e=e.replace(/\[]$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"colon-list-separator":return(e,s,n)=>{t=/(:list)$/.exec(e),e=e.replace(/:list$/,""),t?void 0!==n[e]?n[e]=[...n[e],s]:n[e]=[s]:n[e]=s};case"comma":case"separator":return(t,s,n)=>{const i="string"==typeof s&&s.includes(e.arrayFormatSeparator),a="string"==typeof s&&!i&&A(s,e).includes(e.arrayFormatSeparator);s=a?A(s,e):s;const r=i||a?s.split(e.arrayFormatSeparator).map((t=>A(t,e))):null===s?s:A(s,e);n[t]=r};case"bracket-separator":return(t,s,n)=>{const i=/(\[])$/.test(t);if(t=t.replace(/\[]$/,""),!i)return void(n[t]=s?A(s,e):s);const a=null===s?[]:s.split(e.arrayFormatSeparator).map((t=>A(t,e)));void 0!==n[t]?n[t]=[...n[t],...a]:n[t]=a};default:return(e,t,s)=>{void 0!==s[e]?s[e]=[...[s[e]].flat(),t]:s[e]=t}}}(t),n=Object.create(null);if("string"!=typeof e)return n;if(!(e=e.trim().replace(/^[?#&]/,"")))return n;for(const i of e.split("&")){if(""===i)continue;const e=t.decode?i.replaceAll("+"," "):i;let[a,r]=f(e,"=");void 0===a&&(a=e),r=void 0===r?null:["comma","separator","bracket-separator"].includes(t.arrayFormat)?r:A(r,t),s(A(a,t),r,n)}for(const[e,s]of Object.entries(n))if("object"==typeof s&&null!==s)for(const[e,n]of Object.entries(s))s[e]=k(n,t);else n[e]=k(s,t);return!1===t.sort?n:(!0===t.sort?Object.keys(n).sort():Object.keys(n).sort(t.sort)).reduce(((e,t)=>{const s=n[t];return e[t]=Boolean(s)&&"object"==typeof s&&!Array.isArray(s)?b(s):s,e}),Object.create(null))}function F(e,t){if(!e)return"";C((t={encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:",",...t}).arrayFormatSeparator);const s=s=>t.skipNull&&v(e[s])||t.skipEmptyString&&""===e[s],n=function(e){switch(e.arrayFormat){case"index":return t=>(s,n)=>{const i=s.length;return void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[T(t,e),"[",i,"]"].join("")]:[...s,[T(t,e),"[",T(i,e),"]=",T(n,e)].join("")]};case"bracket":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[T(t,e),"[]"].join("")]:[...s,[T(t,e),"[]=",T(n,e)].join("")];case"colon-list-separator":return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,[T(t,e),":list="].join("")]:[...s,[T(t,e),":list=",T(n,e)].join("")];case"comma":case"separator":case"bracket-separator":{const t="bracket-separator"===e.arrayFormat?"[]=":"=";return s=>(n,i)=>void 0===i||e.skipNull&&null===i||e.skipEmptyString&&""===i?n:(i=null===i?"":i,0===n.length?[[T(s,e),t,T(i,e)].join("")]:[[n,T(i,e)].join(e.arrayFormatSeparator)])}default:return t=>(s,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?s:null===n?[...s,T(t,e)]:[...s,[T(t,e),"=",T(n,e)].join("")]}}(t),i={};for(const[t,n]of Object.entries(e))s(t)||(i[t]=n);const a=Object.keys(i);return!1!==t.sort&&a.sort(t.sort),a.map((s=>{const i=e[s];return void 0===i?"":null===i?T(s,t):Array.isArray(i)?0===i.length&&"bracket-separator"===t.arrayFormat?T(s,t)+"[]":i.reduce(n(s),[]).join("&"):T(s,t)+"="+T(i,t)})).filter((e=>e.length>0)).join("&")}function N(e,t){t={decode:!0,...t};let[s,n]=f(e,"#");return void 0===s&&(s=e),{url:s?.split("?")?.[0]??"",query:S(_(e),t),...t&&t.parseFragmentIdentifier&&n?{fragmentIdentifier:A(n,t)}:{}}}function L(e,t){t={encode:!0,strict:!0,[y]:!0,...t};const s=x(e.url).split("?")[0]||"";let n=F({...S(_(e.url),{sort:!1}),...e.query},t);n&&=`?${n}`;let i=function(e){let t="";const s=e.indexOf("#");return-1!==s&&(t=e.slice(s)),t}(e.url);if("string"==typeof e.fragmentIdentifier){const n=new URL(s);n.hash=e.fragmentIdentifier,i=t[y]?n.hash:`#${e.fragmentIdentifier}`}return`${s}${n}${i}`}function U(e,t,s){s={parseFragmentIdentifier:!0,[y]:!1,...s};const{url:n,query:i,fragmentIdentifier:a}=N(e,s);return L({url:n,query:h(i,t),fragmentIdentifier:a},s)}function P(e,t,s){return U(e,Array.isArray(t)?e=>!t.includes(e):(e,s)=>!t(e,s),s)}const E=i;var I=n(40173);o.Ay.use(I.Ay);const D=I.Ay.prototype.push;I.Ay.prototype.push=function(e,t,s){return t||s?D.call(this,e,t,s):D.call(this,e).catch((e=>e))};const z=new I.Ay({mode:"history",base:(0,d.Jv)("/apps/files"),linkActiveClass:"active",routes:[{path:"/",redirect:{name:"filelist",params:{view:"files"}}},{path:"/:view/:fileid(\\d+)?",name:"filelist",props:!0}],stringifyQuery(e){const t=E.stringify(e).replace(/%2F/gim,"/");return t?"?"+t:""}});function B(e,t,s){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}var j=n(96763);var M=n(22378),O=n(34297),R=n(61338),V=n(53334);const H={name:"CogIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};var q=n(14486);const W=(0,q.A)(H,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cog-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var G=n(42530),Y=n(52439),$=n(6695);function K(e,t,s){var n,i=s||{},a=i.noTrailing,r=void 0!==a&&a,o=i.noLeading,l=void 0!==o&&o,d=i.debounceMode,m=void 0===d?void 0:d,c=!1,g=0;function u(){n&&clearTimeout(n)}function p(){for(var s=arguments.length,i=new Array(s),a=0;a<s;a++)i[a]=arguments[a];var o=this,d=Date.now()-g;function p(){g=Date.now(),t.apply(o,i)}function f(){n=void 0}c||(l||!m||n||p(),u(),void 0===m&&d>e?l?(g=Date.now(),r||(n=setTimeout(m?f:p,e))):p():!0!==r&&(n=setTimeout(m?f:p,void 0===m?e-d:e)))}return p.cancel=function(e){var t=(e||{}).upcomingOnly,s=void 0!==t&&t;u(),c=!s},p}var J=n(32981),Q=n(85168),Z=n(65043);const X={name:"ChartPieIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ee=(0,q.A)(X,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon chart-pie-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var te=n(95101);const se=(0,n(35947).YK)().setApp("files").detectUser().build(),ne={name:"NavigationQuota",components:{ChartPie:ee,NcAppNavigationItem:Y.A,NcProgressBar:te.A},data:()=>({loadingStorageStats:!1,storageStats:(0,J.C)("files","storageStats",null)}),computed:{storageStatsTitle(){var e,t,s;const n=(0,O.v7)(null===(e=this.storageStats)||void 0===e?void 0:e.used,!1,!1),i=(0,O.v7)(null===(t=this.storageStats)||void 0===t?void 0:t.quota,!1,!1);return(null===(s=this.storageStats)||void 0===s?void 0:s.quota)<0?this.t("files","{usedQuotaByte} used",{usedQuotaByte:n}):this.t("files","{used} of {quota} used",{used:n,quota:i})},storageStatsTooltip(){return this.storageStats.relative?this.t("files","{relative}% used",this.storageStats):""}},beforeMount(){setInterval(this.throttleUpdateStorageStats,6e4),(0,R.B1)("files:node:created",this.throttleUpdateStorageStats),(0,R.B1)("files:node:deleted",this.throttleUpdateStorageStats),(0,R.B1)("files:node:moved",this.throttleUpdateStorageStats),(0,R.B1)("files:node:updated",this.throttleUpdateStorageStats)},mounted(){var e,t;(null===(e=this.storageStats)||void 0===e?void 0:e.quota)>0&&0===(null===(t=this.storageStats)||void 0===t?void 0:t.free)&&this.showStorageFullWarning()},methods:{debounceUpdateStorageStats:(ie={}.atBegin,K(200,(function(e){this.updateStorageStats(e)}),{debounceMode:!1!==(void 0!==ie&&ie)})),throttleUpdateStorageStats:K(1e3,(function(e){this.updateStorageStats(e)})),async updateStorageStats(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(!this.loadingStorageStats){this.loadingStorageStats=!0;try{var s,n,i,a;const e=await Z.Ay.get((0,d.Jv)("/apps/files/api/v1/stats"));if(null==e||null===(s=e.data)||void 0===s||!s.data)throw new Error("Invalid storage stats");(null===(n=this.storageStats)||void 0===n?void 0:n.free)>0&&0===(null===(i=e.data.data)||void 0===i?void 0:i.free)&&(null===(a=e.data.data)||void 0===a?void 0:a.quota)>0&&this.showStorageFullWarning(),this.storageStats=e.data.data}catch(s){se.error("Could not refresh storage stats",{error:s}),e&&(0,Q.Qg)(t("files","Could not refresh storage stats"))}finally{this.loadingStorageStats=!1}}},showStorageFullWarning(){(0,Q.Qg)(this.t("files","Your storage is full, files can not be updated or synced anymore!"))},t:V.Tl}};var ie,ae=n(85072),re=n.n(ae),oe=n(97825),le=n.n(oe),de=n(77659),me=n.n(de),ce=n(55056),ge=n.n(ce),ue=n(10540),pe=n.n(ue),fe=n(41113),he=n.n(fe),ve=n(47747),we={};we.styleTagTransform=he(),we.setAttributes=ge(),we.insert=me().bind(null,"head"),we.domAPI=le(),we.insertStyleElement=pe(),re()(ve.A,we),ve.A&&ve.A.locals&&ve.A.locals;const ye=(0,q.A)(ne,(function(){var e=this,t=e._self._c;return e.storageStats?t("NcAppNavigationItem",{staticClass:"app-navigation-entry__settings-quota",class:{"app-navigation-entry__settings-quota--not-unlimited":e.storageStats.quota>=0},attrs:{"aria-label":e.t("files","Storage informations"),loading:e.loadingStorageStats,name:e.storageStatsTitle,title:e.storageStatsTooltip,"data-cy-files-navigation-settings-quota":""},on:{click:function(t){return t.stopPropagation(),t.preventDefault(),e.debounceUpdateStorageStats.apply(null,arguments)}}},[t("ChartPie",{attrs:{slot:"icon",size:20},slot:"icon"}),e._v(" "),e.storageStats.quota>=0?t("NcProgressBar",{attrs:{slot:"extra",error:e.storageStats.relative>80,value:Math.min(e.storageStats.relative,100)},slot:"extra"}):e._e()],1):e._e()}),[],!1,null,"400127b6",null).exports;var Ce=n(69996),Te=n(85948),Ae=n(32073);const be={name:"ClipboardIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},xe=(0,q.A)(be,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon clipboard-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var ke=n(63407);const _e={name:"Setting",props:{el:{type:Function,required:!0}},mounted(){this.$el.appendChild(this.el())}},Se=(0,q.A)(_e,(function(){return(0,this._self._c)("div")}),[],!1,null,null,null).exports,Fe=(0,J.C)("files","config",{show_hidden:!1,crop_image_previews:!0,sort_favorites_first:!0,sort_folders_first:!0,grid_view:!1}),Ne=function(){const e=(0,a.nY)("userconfig",{state:()=>({userConfig:Fe}),actions:{onUpdate(e,t){o.Ay.set(this.userConfig,e,t)},async update(e,t){await Z.Ay.put((0,d.Jv)("/apps/files/api/v1/config/"+e),{value:t}),(0,R.Ic)("files:config:updated",{key:e,value:t})}}})(...arguments);return e._initialized||((0,R.B1)("files:config:updated",(function(t){let{key:s,value:n}=t;e.onUpdate(s,n)})),e._initialized=!0),e},Le={name:"Settings",components:{Clipboard:xe,NcAppSettingsDialog:Ce.N,NcAppSettingsSection:Te.A,NcCheckboxRadioSwitch:Ae.A,NcInputField:ke.A,Setting:Se},props:{open:{type:Boolean,default:!1}},setup:()=>({userConfigStore:Ne()}),data(){var e,t,s;return{settings:(null===(e=window.OCA)||void 0===e||null===(e=e.Files)||void 0===e||null===(e=e.Settings)||void 0===e?void 0:e.settings)||[],webdavUrl:(0,d.dC)("dav/files/"+encodeURIComponent(null===(t=(0,r.HW)())||void 0===t?void 0:t.uid)),webdavDocs:"https://docs.nextcloud.com/server/stable/go.php?to=user-webdav",appPasswordUrl:(0,d.Jv)("/settings/user/security#generate-app-token-section"),webdavUrlCopied:!1,enableGridView:null===(s=(0,J.C)("core","config",[])["enable_non-accessible_features"])||void 0===s||s}},computed:{userConfig(){return this.userConfigStore.userConfig}},beforeMount(){this.settings.forEach((e=>e.open()))},beforeDestroy(){this.settings.forEach((e=>e.close()))},methods:{onClose(){this.$emit("close")},setConfig(e,t){this.userConfigStore.update(e,t)},async copyCloudId(){document.querySelector("input#webdav-url-input").select(),navigator.clipboard?(await navigator.clipboard.writeText(this.webdavUrl),this.webdavUrlCopied=!0,(0,Q.Te)(t("files","WebDAV URL copied to clipboard")),setTimeout((()=>{this.webdavUrlCopied=!1}),5e3)):(0,Q.Qg)(t("files","Clipboard is not available"))},t:V.Tl}},Ue=Le;var Pe=n(60335),Ee={};Ee.styleTagTransform=he(),Ee.setAttributes=ge(),Ee.insert=me().bind(null,"head"),Ee.domAPI=le(),Ee.insertStyleElement=pe(),re()(Pe.A,Ee),Pe.A&&Pe.A.locals&&Pe.A.locals;const Ie=(0,q.A)(Ue,(function(){var e=this,t=e._self._c;return t("NcAppSettingsDialog",{attrs:{open:e.open,"show-navigation":!0,name:e.t("files","Files settings")},on:{"update:open":e.onClose}},[t("NcAppSettingsSection",{attrs:{id:"settings",name:e.t("files","Files settings")}},[t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_favorites_first",checked:e.userConfig.sort_favorites_first},on:{"update:checked":function(t){return e.setConfig("sort_favorites_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort favorites first"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"sort_folders_first",checked:e.userConfig.sort_folders_first},on:{"update:checked":function(t){return e.setConfig("sort_folders_first",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Sort folders before files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"show_hidden",checked:e.userConfig.show_hidden},on:{"update:checked":function(t){return e.setConfig("show_hidden",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Show hidden files"))+"\n\t\t")]),e._v(" "),t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"crop_image_previews",checked:e.userConfig.crop_image_previews},on:{"update:checked":function(t){return e.setConfig("crop_image_previews",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Crop image previews"))+"\n\t\t")]),e._v(" "),e.enableGridView?t("NcCheckboxRadioSwitch",{attrs:{"data-cy-files-settings-setting":"grid_view",checked:e.userConfig.grid_view},on:{"update:checked":function(t){return e.setConfig("grid_view",t)}}},[e._v("\n\t\t\t"+e._s(e.t("files","Enable the grid view"))+"\n\t\t")]):e._e()],1),e._v(" "),0!==e.settings.length?t("NcAppSettingsSection",{attrs:{id:"more-settings",name:e.t("files","Additional settings")}},[e._l(e.settings,(function(e){return[t("Setting",{key:e.name,attrs:{el:e.el}})]}))],2):e._e(),e._v(" "),t("NcAppSettingsSection",{attrs:{id:"webdav",name:e.t("files","WebDAV")}},[t("NcInputField",{attrs:{id:"webdav-url-input",label:e.t("files","WebDAV URL"),"show-trailing-button":!0,success:e.webdavUrlCopied,"trailing-button-label":e.t("files","Copy to clipboard"),value:e.webdavUrl,readonly:"readonly",type:"url"},on:{focus:function(e){return e.target.select()},"trailing-button-click":e.copyCloudId},scopedSlots:e._u([{key:"trailing-button-icon",fn:function(){return[t("Clipboard",{attrs:{size:20}})]},proxy:!0}])}),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.webdavDocs,target:"_blank",rel:"noreferrer noopener"}},[e._v("\n\t\t\t\t"+e._s(e.t("files","Use this address to access your Files via WebDAV"))+" ↗\n\t\t\t")])]),e._v(" "),t("br"),e._v(" "),t("em",[t("a",{staticClass:"setting-link",attrs:{href:e.appPasswordUrl}},[e._v("\n\t\t\t\t"+e._s(e.t("files","If you have enabled 2FA, you must create and use a new app password by clicking here."))+" ↗\n\t\t\t")])])],1)],1)}),[],!1,null,"00f09e69",null).exports;function De(){const e=(0,O.bh)(),t=(0,o.IJ)(e.views),s=(0,o.IJ)(e.active);function n(e){s.value=e.detail}function i(){t.value=e.views}return(0,o.sV)((()=>{e.addEventListener("update",i),e.addEventListener("updateActive",n)})),(0,o.hi)((()=>{e.removeEventListener("update",i),e.removeEventListener("updateActive",n)})),{currentView:s,views:t}}const ze=(0,J.C)("files","viewConfigs",{}),Be=function(){const e=(0,a.nY)("viewconfig",{state:()=>({viewConfig:ze}),getters:{getConfig:e=>t=>e.viewConfig[t]||{}},actions:{onUpdate(e,t,s){this.viewConfig[e]||o.Ay.set(this.viewConfig,e,{}),o.Ay.set(this.viewConfig[e],t,s)},async update(e,t,s){Z.Ay.put((0,d.Jv)("/apps/files/api/v1/views/".concat(e,"/").concat(t)),{value:s}),(0,R.Ic)("files:viewconfig:updated",{view:e,key:t,value:s})},setSortingBy(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"basename",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"files";this.update(t,"sorting_mode",e),this.update(t,"sorting_direction","asc")},toggleSortingDirection(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"files";const t="asc"===(this.getConfig(e)||{sorting_direction:"asc"}).sorting_direction?"desc":"asc";this.update(e,"sorting_direction",t)}}}),t=e(...arguments);return t._initialized||((0,R.B1)("files:viewconfig:updated",(function(e){let{view:s,key:n,value:i}=e;t.onUpdate(s,n,i)})),t._initialized=!0),t},je=(0,o.pM)({name:"Navigation",components:{IconCog:W,NavigationQuota:ye,NcAppNavigation:G.A,NcAppNavigationItem:Y.A,NcIconSvgWrapper:$.A,SettingsModal:Ie},setup(){const e=Be(),{currentView:t,views:s}=De();return{currentView:t,views:s,viewConfigStore:e}},data:()=>({settingsOpened:!1}),computed:{currentViewId(){var e;return(null===(e=this.$route)||void 0===e||null===(e=e.params)||void 0===e?void 0:e.view)||"files"},parentViews(){return this.views.filter((e=>!e.parent)).sort(((e,t)=>e.order-t.order))},childViews(){return this.views.filter((e=>!!e.parent)).reduce(((e,t)=>(e[t.parent]=[...e[t.parent]||[],t],e[t.parent].sort(((e,t)=>e.order-t.order)),e)),{})}},watch:{currentViewId(e,t){var s;if(this.currentViewId!==(null===(s=this.currentView)||void 0===s?void 0:s.id)){const s=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(s),se.debug("Navigation changed from ".concat(t," to ").concat(e),{to:s})}}},beforeMount(){const e=this.views.find((e=>{let{id:t}=e;return t===this.currentViewId}));this.showView(e),se.debug("Navigation mounted. Showing requested view",{view:e})},methods:{t:V.Tl,useExactRouteMatching(e){var t;return(null===(t=this.childViews[e.id])||void 0===t?void 0:t.length)>0},showView(e){var t,s;null===(t=window.OCA)||void 0===t||null===(t=t.Files)||void 0===t||null===(t=t.Sidebar)||void 0===t||null===(s=t.close)||void 0===s||s.call(t),(0,O.bh)().setActive(e),(0,R.Ic)("files:navigation:changed",e)},onToggleExpand(e){const t=this.isExpanded(e);e.expanded=!t,this.viewConfigStore.update(e.id,"expanded",!t)},isExpanded(e){var t;return"boolean"==typeof(null===(t=this.viewConfigStore.getConfig(e.id))||void 0===t?void 0:t.expanded)?!0===this.viewConfigStore.getConfig(e.id).expanded:!0===e.expanded},generateToNavigation(e){if(e.params){const{dir:t}=e.params;return{name:"filelist",params:e.params,query:{dir:t}}}return{name:"filelist",params:{view:e.id}}},openSettings(){this.settingsOpened=!0},onSettingsClose(){this.settingsOpened=!1}}});var Me=n(46845),Oe={};Oe.styleTagTransform=he(),Oe.setAttributes=ge(),Oe.insert=me().bind(null,"head"),Oe.domAPI=le(),Oe.insertStyleElement=pe(),re()(Me.A,Oe),Me.A&&Me.A.locals&&Me.A.locals;const Re=(0,q.A)(je,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcAppNavigation",{attrs:{"data-cy-files-navigation":"","aria-label":e.t("files","Files")},scopedSlots:e._u([{key:"list",fn:function(){return e._l(e.parentViews,(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"allow-collapse":!0,"data-cy-files-navigation-item":s.id,exact:e.useExactRouteMatching(s),icon:s.iconClass,name:s.name,open:e.isExpanded(s),pinned:s.sticky,to:e.generateToNavigation(s)},on:{"update:open":function(t){return e.onToggleExpand(s)}}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e(),e._v(" "),e._l(e.childViews[s.id],(function(s){return t("NcAppNavigationItem",{key:s.id,attrs:{"data-cy-files-navigation-item":s.id,"exact-path":!0,icon:s.iconClass,name:s.name,to:e.generateToNavigation(s)}},[s.icon?t("NcIconSvgWrapper",{attrs:{slot:"icon",svg:s.icon},slot:"icon"}):e._e()],1)}))],2)}))},proxy:!0},{key:"footer",fn:function(){return[t("ul",{staticClass:"app-navigation-entry__settings"},[t("NavigationQuota"),e._v(" "),t("NcAppNavigationItem",{attrs:{"aria-label":e.t("files","Open the files app settings"),name:e.t("files","Files settings"),"data-cy-files-navigation-settings-button":""},on:{click:function(t){return t.preventDefault(),t.stopPropagation(),e.openSettings.apply(null,arguments)}}},[t("IconCog",{attrs:{slot:"icon",size:20},slot:"icon"})],1)],1)]},proxy:!0}])},[e._v(" "),e._v(" "),t("SettingsModal",{attrs:{open:e.settingsOpened,"data-cy-files-navigation-settings":""},on:{close:e.onSettingsClose}})],1)}),[],!1,null,"d0738916",null).exports;var Ve=n(87485),He=n(77905),qe=n(94997),We=n(43627),Ge=n(38805),Ye=n(57578);const $e={name:"ReloadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ke=(0,q.A)($e,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon reload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M2 12C2 16.97 6.03 21 11 21C13.39 21 15.68 20.06 17.4 18.4L15.9 16.9C14.63 18.25 12.86 19 11 19C4.76 19 1.64 11.46 6.05 7.05C10.46 2.64 18 5.77 18 12H15L19 16H19.1L23 12H20C20 7.03 15.97 3 11 3C6.03 3 2 7.03 2 12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Je=n(36600);const Qe={name:"FormatListBulletedSquareIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ze=(0,q.A)(Qe,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon format-list-bulleted-square-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var Xe=n(18195),et=n(18740),tt=n(34196),st=n(84237),nt=n(96078);const it={name:"AccountPlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},at=(0,q.A)(it,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon account-plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,rt={name:"ViewGridIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ot=(0,q.A)(rt,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon view-grid-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var lt=n(49981);const dt=new O.hY({id:"details",displayName:()=>(0,V.Tl)("files","Open details"),iconSvgInline:()=>lt,enabled:e=>{var t,s,n;return 1===e.length&&!!e[0]&&!(null===(t=window)||void 0===t||null===(t=t.OCA)||void 0===t||null===(t=t.Files)||void 0===t||!t.Sidebar)&&null!==(s=(null===(n=e[0].root)||void 0===n?void 0:n.startsWith("/files/"))&&e[0].permissions!==O.aX.NONE)&&void 0!==s&&s},async exec(e,t,s){try{return window.OCA.Files.Sidebar.setActiveTab("sharing"),await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:s},!0),null}catch(e){return se.error("Error while opening sidebar",{error:e}),!1}},order:-50});var mt;const ct="/files/".concat(null===(mt=(0,r.HW)())||void 0===mt?void 0:mt.uid),gt=(0,d.dC)("dav"+ct),ut=((0,O.H4)(),function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:gt;return(0,O.H4)(e)}()),pt=async e=>{const t=(0,O.VL)(),s=await ut.stat("".concat(O.lJ).concat(e.path),{details:!0,data:t});return(0,O.Al)(s.data)},ft=function(){const e=(0,a.nY)("files",{state:()=>({files:{},roots:{},_initialized:!1}),getters:{getNode:e=>t=>e.files[t],getNodes:e=>t=>t.map((t=>e.files[t])).filter(Boolean),getNodesById:e=>t=>Object.values(e.files).filter((e=>e.fileid===t)),getRoot:e=>t=>e.roots[t]},actions:{updateNodes(e){const t=e.reduce(((e,t)=>t.fileid?(e[t.source]=t,e):(se.error("Trying to update/set a node without fileid",{node:t}),e)),{});o.Ay.set(this,"files",{...this.files,...t})},deleteNodes(e){e.forEach((e=>{e.source&&o.Ay.delete(this.files,e.source)}))},setRoot(e){let{service:t,root:s}=e;o.Ay.set(this.roots,t,s)},onDeletedNode(e){this.deleteNodes([e])},onCreatedNode(e){this.updateNodes([e])},onMovedNode(e){let{node:t,oldSource:s}=e;t.fileid?(o.Ay.delete(this.files,s),this.updateNodes([t])):se.error("Trying to update/set a node without fileid",{node:t})},async onUpdatedNode(e){if(!e.fileid)return void se.error("Trying to update/set a node without fileid",{node:e});const t=this.getNodesById(e.fileid);if(t.length>1)return await Promise.all(t.map(pt)).then(this.updateNodes),void se.debug(t.length+" nodes updated in store",{fileid:e.fileid});e.source!==t[0].source?pt(e).then((e=>this.updateNodes([e]))):this.updateNodes([e])}}})(...arguments);return e._initialized||((0,R.B1)("files:node:created",e.onCreatedNode),(0,R.B1)("files:node:deleted",e.onDeletedNode),(0,R.B1)("files:node:updated",e.onUpdatedNode),(0,R.B1)("files:node:moved",e.onMovedNode),e._initialized=!0),e};var ht=n(71225);const vt=function(){const e=ft(...arguments),t=(0,a.nY)("paths",{state:()=>({paths:{},_initialized:!1}),getters:{getPath:e=>(t,s)=>{if(e.paths[t])return e.paths[t][s]}},actions:{addPath(e){this.paths[e.service]||o.Ay.set(this.paths,e.service,{}),o.Ay.set(this.paths[e.service],e.path,e.source)},deletePath(e,t){this.paths[e]&&o.Ay.delete(this.paths[e],t)},onCreatedNode(e){var t;const s=(null===(t=(0,O.bh)())||void 0===t||null===(t=t.active)||void 0===t?void 0:t.id)||"files";e.fileid?(e.type===O.pt.Folder&&this.addPath({service:s,path:e.path,source:e.source}),this.addNodeToParentChildren(e)):se.error("Node has no fileid",{node:e})},onDeletedNode(e){var t;const s=(null===(t=(0,O.bh)())||void 0===t||null===(t=t.active)||void 0===t?void 0:t.id)||"files";e.type===O.pt.Folder&&this.deletePath(s,e.path),this.deleteNodeFromParentChildren(e)},onMovedNode(e){var t;let{node:s,oldSource:n}=e;const i=(null===(t=(0,O.bh)())||void 0===t||null===(t=t.active)||void 0===t?void 0:t.id)||"files";if(s.type===O.pt.Folder){const e=Object.entries(this.paths[i]).find((e=>{let[,t]=e;return t===n}));null!=e&&e[0]&&this.deletePath(i,e[0]),this.addPath({service:i,path:s.path,source:s.source})}const a=new O.ZH({source:n,owner:s.owner,mime:s.mime});this.deleteNodeFromParentChildren(a),this.addNodeToParentChildren(s)},deleteNodeFromParentChildren(t){var s;const n=(null===(s=(0,O.bh)())||void 0===s||null===(s=s.active)||void 0===s?void 0:s.id)||"files",i=(0,ht.pD)(t.source),a="/"===t.dirname?e.getRoot(n):e.getNode(i);if(a){var r;const e=new Set(null!==(r=a._children)&&void 0!==r?r:[]);return e.delete(t.source),o.Ay.set(a,"_children",[...e.values()]),void se.debug("Children updated",{parent:a,node:t,children:a._children})}se.debug("Parent path does not exists, skipping children update",{node:t})},addNodeToParentChildren(t){var s;const n=(null===(s=(0,O.bh)())||void 0===s||null===(s=s.active)||void 0===s?void 0:s.id)||"files",i=(0,ht.pD)(t.source),a="/"===t.dirname?e.getRoot(n):e.getNode(i);if(a){var r;const e=new Set(null!==(r=a._children)&&void 0!==r?r:[]);return e.add(t.source),o.Ay.set(a,"_children",[...e.values()]),void se.debug("Children updated",{parent:a,node:t,children:a._children})}se.debug("Parent path does not exists, skipping children update",{node:t})}}})(...arguments);return t._initialized||((0,R.B1)("files:node:created",t.onCreatedNode),(0,R.B1)("files:node:deleted",t.onDeletedNode),(0,R.B1)("files:node:moved",t.onMovedNode),t._initialized=!0),t},wt=(0,a.nY)("selection",{state:()=>({selected:[],lastSelection:[],lastSelectedIndex:null}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];o.Ay.set(this,"selected",[...new Set(e)])},setLastIndex(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;o.Ay.set(this,"lastSelection",e?this.selected:[]),o.Ay.set(this,"lastSelectedIndex",e)},reset(){o.Ay.set(this,"selected",[]),o.Ay.set(this,"lastSelection",[]),o.Ay.set(this,"lastSelectedIndex",null)}}});let yt;const Ct=function(){return yt=(0,qe.g)(),(0,a.nY)("uploader",{state:()=>({queue:yt.queue})})(...arguments)};var Tt=n(62081),At=n(75556),bt=n(96763);class xt extends File{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];var s,n,i;super([],e,{type:"httpd/unix-directory"}),s=this,i=void 0,(n=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(n="_contents"))in s?Object.defineProperty(s,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):s[n]=i,this._contents=t}set contents(e){this._contents=e}get contents(){return this._contents}get size(){return this._computeDirectorySize(this)}get lastModified(){return 0===this._contents.length?Date.now():this._computeDirectoryMtime(this)}_computeDirectoryMtime(e){return e.contents.reduce(((e,t)=>t.lastModified>e?t.lastModified:e),0)}_computeDirectorySize(e){return e.contents.reduce(((e,t)=>e+t.size),0)}}const kt=async e=>{if(e.isFile)return new Promise(((t,s)=>{e.file(t,s)}));se.debug("Handling recursive file tree",{entry:e.name});const t=e,s=await _t(t),n=(await Promise.all(s.map(kt))).flat();return new xt(t.name,n)},_t=e=>{const t=e.createReader();return new Promise(((e,s)=>{const n=[],i=()=>{t.readEntries((t=>{t.length?(n.push(...t),i()):e(n)}),(e=>{s(e)}))};i()}))},St=async e=>{const t=(0,O.H4)();if(!await t.exists(e)){se.debug("Directory does not exist, creating it",{absolutePath:e}),await t.createDirectory(e,{recursive:!0});const s=await t.stat(e,{details:!0,data:(0,O.VL)()});(0,R.Ic)("files:node:created",(0,O.Al)(s.data))}},Ft=async(e,t,s)=>{try{const n=e.filter((e=>s.find((t=>t.basename===(e instanceof File?e.name:e.basename))))).filter(Boolean),i=e.filter((e=>!n.includes(e))),{selected:a,renamed:r}=await(0,qe.o)(t.path,n,s);return se.debug("Conflict resolution",{uploads:i,selected:a,renamed:r}),0===a.length&&0===r.length?((0,Q.cf)((0,V.Tl)("files","Conflicts resolution skipped")),se.info("User skipped the conflict resolution"),[]):[...i,...a,...r]}catch(e){bt.error(e),(0,Q.Qg)((0,V.Tl)("files","Upload cancelled")),se.error("User cancelled the upload")}return[]};n(18205);var Nt=n(53110),Lt=n(36882),Ut=n(39285),Pt=n(49264);let Et;const It=()=>(Et||(Et=new Pt.A({concurrency:5})),Et);var Dt;!function(e){e.MOVE="Move",e.COPY="Copy",e.MOVE_OR_COPY="move-or-copy"}(Dt||(Dt={}));const zt=e=>0!=(e.reduce(((e,t)=>Math.min(e,t.permissions)),O.aX.ALL)&O.aX.UPDATE),Bt=e=>(e=>e.every((e=>{var t,s;return!JSON.parse(null!==(t=null===(s=e.attributes)||void 0===s?void 0:s["share-attributes"])&&void 0!==t?t:"[]").some((e=>"permissions"===e.scope&&!1===e.enabled&&"download"===e.key))})))(e)&&!e.some((e=>e.permissions===O.aX.NONE));var jt=n(36117);const Mt=e=>(0,O.Al)(e),Ot=(0,O.H4)(),Rt=e=>zt(e)?Bt(e)?Dt.MOVE_OR_COPY:Dt.MOVE:Dt.COPY,Vt=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!t)return;if(t.type!==O.pt.Folder)throw new Error((0,V.Tl)("files","Destination is not a folder"));if(s===Dt.MOVE&&e.dirname===t.path)throw new Error((0,V.Tl)("files","This file/folder is already in that directory"));if("".concat(t.path,"/").startsWith("".concat(e.path,"/")))throw new Error((0,V.Tl)("files","You cannot move a file/folder onto itself or into a subfolder of itself"));o.Ay.set(e,"status",O.zI.LOADING);const i=function(e,t,s){const n=e===Dt.MOVE?(0,V.Tl)("files",'Moving "{source}" to "{destination}" …',{source:t,destination:s}):(0,V.Tl)("files",'Copying "{source}" to "{destination}" …',{source:t,destination:s});let i;return i=(0,Q.cf)('<span class="icon icon-loading-small toast-loading-icon"></span> '.concat(n),{isHTML:!0,timeout:Q.DH,onRemove:()=>{var e;null===(e=i)||void 0===e||e.hideToast(),i=void 0}}),()=>i&&i.hideToast()}(s,e.basename,t.path),a=It();return await a.add((async()=>{const a=e=>1===e?(0,V.Tl)("files","(copy)"):(0,V.Tl)("files","(copy %n)",void 0,e);try{const i=(0,O.H4)(),o=(0,We.join)(O.lJ,e.path),d=(0,We.join)(O.lJ,t.path);if(s===Dt.COPY){let s=e.basename;if(!n){const t=await i.getDirectoryContents(d);s=(0,O.E6)(e.basename,t.map((e=>e.basename)),{suffix:a,ignoreFileExtension:e.type===O.pt.Folder})}if(await i.copyFile(o,(0,We.join)(d,s)),e.dirname===t.path){const{data:e}=await i.stat((0,We.join)(d,s),{details:!0,data:(0,O.VL)()});(0,R.Ic)("files:node:created",(0,O.Al)(e))}}else{if(!n){const s=await function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";e="".concat(O.lJ).concat(e);const t=new AbortController,s=(0,O.VL)();return new jt.CancelablePromise((async(n,i,a)=>{a((()=>t.abort()));try{const i=await Ot.getDirectoryContents(e,{details:!0,data:s,includeSelf:!0,signal:t.signal}),a=i.data[0],r=i.data.slice(1);if(a.filename!==e&&"".concat(a.filename,"/")!==e)throw new Error("Root node does not match requested path");n({folder:Mt(a),contents:r.map((e=>{try{return Mt(e)}catch(t){return se.error("Invalid node detected '".concat(e.basename,"'"),{error:t}),null}})).filter(Boolean)})}catch(e){i(e)}}))}(t.path);if((0,qe.h)([e],s.contents))try{const{selected:n,renamed:i}=await(0,qe.o)(t.path,[e],s.contents);if(!n.length&&!i.length)return}catch(e){return void(0,Q.Qg)((0,V.Tl)("files","Move cancelled"))}}try{await i.moveFile(o,(0,We.join)(d,e.basename))}catch(e){var r,l;const t=new DOMParser,s=await(null===(r=e.response)||void 0===r?void 0:r.text()),n=null===(l=t.parseFromString(null!=s?s:"","text/xml").querySelector("message"))||void 0===l?void 0:l.textContent;throw n&&(0,Q.Qg)(n),e}(0,R.Ic)("files:node:deleted",e)}}catch(e){if(e instanceof Nt.pe){var d,m,c;if(412===(null==e||null===(d=e.response)||void 0===d?void 0:d.status))throw new Error((0,V.Tl)("files","A file or folder with that name already exists in this folder"));if(423===(null==e||null===(m=e.response)||void 0===m?void 0:m.status))throw new Error((0,V.Tl)("files","The files are locked"));if(404===(null==e||null===(c=e.response)||void 0===c?void 0:c.status))throw new Error((0,V.Tl)("files","The file does not exist anymore"));if(e.message)throw new Error(e.message)}throw se.debug(e),new Error}finally{o.Ay.set(e,"status",""),i()}}))};async function Ht(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",s=arguments.length>2?arguments[2]:void 0;const{resolve:n,reject:i,promise:a}=Promise.withResolvers(),r=s.map((e=>e.fileid)).filter(Boolean);return(0,Q.a1)((0,V.Tl)("files","Choose destination")).allowDirectories(!0).setFilter((e=>!r.includes(e.fileid))).setMimeTypeFilter([]).setMultiSelect(!1).startAt(t).setButtonFactory(((t,i)=>{const a=[],r=(0,We.basename)(i),o=s.map((e=>e.dirname)),l=s.map((e=>e.path));return e!==Dt.COPY&&e!==Dt.MOVE_OR_COPY||a.push({label:r?(0,V.Tl)("files","Copy to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,V.Tl)("files","Copy"),type:"primary",icon:Lt,async callback(e){n({destination:e[0],action:Dt.COPY})}}),o.includes(i)||l.includes(i)||e!==Dt.MOVE&&e!==Dt.MOVE_OR_COPY||a.push({label:r?(0,V.Tl)("files","Move to {target}",{target:r},void 0,{escape:!1,sanitize:!1}):(0,V.Tl)("files","Move"),type:e===Dt.MOVE?"primary":"secondary",icon:Ut,async callback(e){n({destination:e[0],action:Dt.MOVE})}}),a})).build().pick().catch((e=>{se.debug(e),e instanceof Q.vT?n(!1):i(new Error((0,V.Tl)("files","Move or copy operation failed")))})),a}new O.hY({id:"move-copy",displayName(e){switch(Rt(e)){case Dt.MOVE:return(0,V.Tl)("files","Move");case Dt.COPY:return(0,V.Tl)("files","Copy");case Dt.MOVE_OR_COPY:return(0,V.Tl)("files","Move or copy")}},iconSvgInline:()=>Ut,enabled:e=>!!e.every((e=>{var t;return null===(t=e.root)||void 0===t?void 0:t.startsWith("/files/")}))&&e.length>0&&(zt(e)||Bt(e)),async exec(e,t,s){const n=Rt([e]);let i;try{i=await Ht(n,s,[e])}catch(e){return se.error(e),!1}if(!1===i)return(0,Q.cf)((0,V.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e.displayname})),null;try{return await Vt(e,i.destination,i.action),!0}catch(e){return!!(e instanceof Error&&e.message)&&((0,Q.Qg)(e.message),null)}},async execBatch(e,t,s){const n=Rt(e),i=await Ht(n,s,e);if(!1===i)return(0,Q.cf)(1===e.length?(0,V.Tl)("files",'Cancelled move or copy of "{filename}".',{filename:e[0].displayname}):(0,V.Tl)("files","Cancelled move or copy operation")),e.map((()=>null));const a=e.map((async e=>{try{return await Vt(e,i.destination,i.action),!0}catch(t){return se.error("Failed to ".concat(i.action," node"),{node:e,error:t}),!1}}));return await Promise.all(a)},order:15});var qt=n(96763);const Wt=async e=>{const t=e.filter((e=>"file"===e.kind||(se.debug("Skipping dropped item",{kind:e.kind,type:e.type}),!1))).map((e=>{var t,s,n,i;return null!==(t=null!==(s=null==e||null===(n=e.getAsEntry)||void 0===n?void 0:n.call(e))&&void 0!==s?s:null==e||null===(i=e.webkitGetAsEntry)||void 0===i?void 0:i.call(e))&&void 0!==t?t:e}));let s=!1;const n=new xt("root");for(const e of t)if(e instanceof DataTransferItem){se.warn("Could not get FilesystemEntry of item, falling back to file");const t=e.getAsFile();if(null===t){se.warn("Could not process DataTransferItem",{type:e.type,kind:e.kind}),(0,Q.Qg)((0,V.Tl)("files","One of the dropped files could not be processed"));continue}if("httpd/unix-directory"===t.type||!t.type){s||(se.warn("Browser does not support Filesystem API. Directories will not be uploaded"),(0,Q.I9)((0,V.Tl)("files","Your browser does not support the Filesystem API. Directories will not be uploaded")),s=!0);continue}n.contents.push(t)}else try{n.contents.push(await kt(e))}catch(e){se.error("Error while traversing file tree",{error:e})}return n},Gt=async(e,t,s)=>{const n=(0,qe.g)();if(await(0,qe.h)(e.contents,s)&&(e.contents=await Ft(e.contents,t,s)),0===e.contents.length)return se.info("No files to upload",{root:e}),(0,Q.cf)((0,V.Tl)("files","No files to upload")),[];se.debug("Uploading files to ".concat(t.path),{root:e,contents:e.contents});const i=[],a=async(e,s)=>{for(const r of e.contents){const e=(0,We.join)(s,r.name);if(r instanceof xt){const s=(0,ht.HS)(O.lJ,t.path,e);try{qt.debug("Processing directory",{relativePath:e}),await St(s),await a(r,e)}catch(e){(0,Q.Qg)((0,V.Tl)("files","Unable to create the directory {directory}",{directory:r.name})),se.error("",{error:e,absolutePath:s,directory:r})}}else se.debug("Uploading file to "+(0,We.join)(t.path,e),{file:r}),i.push(n.upload(e,r,t.source))}};n.pause(),await a(e,"/"),n.start();const r=(await Promise.allSettled(i)).filter((e=>"rejected"===e.status));return r.length>0?(se.error("Error while uploading files",{errors:r}),(0,Q.Qg)((0,V.Tl)("files","Some files could not be uploaded")),[]):(se.debug("Files uploaded successfully"),(0,Q.Te)((0,V.Tl)("files","Files uploaded successfully")),Promise.all(i))},Yt=async function(e,t,s){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const i=[];if(await(0,qe.h)(e,s)&&(e=await Ft(e,t,s)),0===e.length)return se.info("No files to process",{nodes:e}),void(0,Q.cf)((0,V.Tl)("files","No files to process"));for(const s of e)o.Ay.set(s,"status",O.zI.LOADING),i.push(Vt(s,t,n?Dt.COPY:Dt.MOVE,!0));const a=await Promise.allSettled(i);e.forEach((e=>o.Ay.set(e,"status",void 0)));const r=a.filter((e=>"rejected"===e.status));if(r.length>0)return se.error("Error while copying or moving files",{errors:r}),void(0,Q.Qg)(n?(0,V.Tl)("files","Some files could not be copied"):(0,V.Tl)("files","Some files could not be moved"));se.debug("Files copy/move successful"),(0,Q.Te)(n?(0,V.Tl)("files","Files copied successfully"):(0,V.Tl)("files","Files moved successfully"))},$t=(0,a.nY)("dragging",{state:()=>({dragging:[]}),actions:{set(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];o.Ay.set(this,"dragging",e)},reset(){o.Ay.set(this,"dragging",[])}}}),Kt=o.Ay.extend({data:()=>({filesListWidth:null}),mounted(){var e;const t=document.querySelector("#app-content-vue");this.filesListWidth=null!==(e=null==t?void 0:t.clientWidth)&&void 0!==e?e:null,this.$resizeObserver=new ResizeObserver((e=>{e.length>0&&e[0].target===t&&(this.filesListWidth=e[0].contentRect.width)})),this.$resizeObserver.observe(t)},beforeDestroy(){this.$resizeObserver.disconnect()}}),Jt=(0,o.pM)({name:"BreadCrumbs",components:{NcBreadcrumbs:At.N,NcBreadcrumb:Tt.N,NcIconSvgWrapper:$.A},mixins:[Kt],props:{path:{type:String,default:"/"}},setup(){const e=$t(),t=ft(),s=vt(),n=wt(),i=Ct(),{currentView:a}=De();return{draggingStore:e,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,currentView:a}},computed:{dirs(){var e;return["/",...this.path.split("/").filter(Boolean).map((e="/",t=>e+="".concat(t,"/"))).map((e=>e.replace(/^(.+)\/$/,"$1")))]},sections(){return this.dirs.map(((e,t)=>{const s=this.getFileSourceFromPath(e),n=s?this.getNodeFromSource(s):void 0,i={...this.$route,params:{node:null==n?void 0:n.fileid},query:{dir:e}};return{dir:e,exact:!0,name:this.getDirDisplayName(e),to:i,disableDrop:t===this.dirs.length-1}}))},isUploadInProgress(){return 0!==this.uploaderStore.queue.length},wrapUploadProgressBar(){return this.isUploadInProgress&&this.filesListWidth<512},viewIcon(){var e,t;return null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.icon)&&void 0!==e?e:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-home" viewBox="0 0 24 24"><path d="M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z" /></svg>'},selectedFiles(){return this.selectionStore.selected},draggingFiles(){return this.draggingStore.dragging}},methods:{getNodeFromSource(e){return this.filesStore.getNode(e)},getFileSourceFromPath(e){var t;return null!==(t=this.currentView&&this.pathsStore.getPath(this.currentView.id,e))&&void 0!==t?t:null},getDirDisplayName(e){var t;if("/"===e)return(null===(t=this.currentView)||void 0===t?void 0:t.name)||(0,V.Tl)("files","Home");const s=this.getFileSourceFromPath(e),n=s?this.getNodeFromSource(s):void 0;return(null==n?void 0:n.displayname)||(0,We.basename)(e)},onClick(e){var t;(null==e||null===(t=e.query)||void 0===t?void 0:t.dir)===this.$route.query.dir&&this.$emit("reload")},onDragOver(e,t){e.dataTransfer&&(t!==this.dirs[this.dirs.length-1]?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none")},async onDrop(e,t){var s,n,i;if(!(this.draggingFiles||null!==(s=e.dataTransfer)&&void 0!==s&&null!==(s=s.items)&&void 0!==s&&s.length))return;e.preventDefault();const a=this.draggingFiles,r=[...(null===(n=e.dataTransfer)||void 0===n?void 0:n.items)||[]],o=await Wt(r),l=await(null===(i=this.currentView)||void 0===i?void 0:i.getContents(t)),d=null==l?void 0:l.folder;if(!d)return void(0,Q.Qg)(this.t("files","Target folder does not exist any more"));const m=0!=(d.permissions&O.aX.CREATE),c=e.ctrlKey;if(!m||0!==e.button)return;if(se.debug("Dropped",{event:e,folder:d,selection:a,fileTree:o}),o.contents.length>0)return void await Gt(o,d,l.contents);const g=a.map((e=>this.filesStore.getNode(e)));await Yt(g,d,l.contents,c),a.some((e=>this.selectedFiles.includes(e)))&&(se.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},titleForSection(e,t){var s;return(null==t||null===(s=t.to)||void 0===s||null===(s=s.query)||void 0===s?void 0:s.dir)===this.$route.query.dir?(0,V.Tl)("files","Reload current directory"):0===e?(0,V.Tl)("files",'Go to the "{dir}" directory',t):null},ariaForSection(e){var t;return(null==e||null===(t=e.to)||void 0===t||null===(t=t.query)||void 0===t?void 0:t.dir)===this.$route.query.dir?(0,V.Tl)("files","Reload current directory"):null},t:V.Tl}});var Qt=n(32773),Zt={};Zt.styleTagTransform=he(),Zt.setAttributes=ge(),Zt.insert=me().bind(null,"head"),Zt.domAPI=le(),Zt.insertStyleElement=pe(),re()(Qt.A,Zt),Qt.A&&Qt.A.locals&&Qt.A.locals;const Xt=(0,q.A)(Jt,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcBreadcrumbs",{staticClass:"files-list__breadcrumbs",class:{"files-list__breadcrumbs--with-progress":e.wrapUploadProgressBar},attrs:{"data-cy-files-content-breadcrumbs":"","aria-label":e.t("files","Current directory path")},scopedSlots:e._u([{key:"actions",fn:function(){return[e._t("actions")]},proxy:!0}],null,!0)},e._l(e.sections,(function(s,n){return t("NcBreadcrumb",e._b({key:s.dir,attrs:{dir:"auto",to:s.to,"force-icon-text":0===n&&e.filesListWidth>=486,title:e.titleForSection(n,s),"aria-description":e.ariaForSection(s)},on:{drop:function(t){return e.onDrop(t,s.dir)}},nativeOn:{click:function(t){return e.onClick(s.to)},dragover:function(t){return e.onDragOver(t,s.dir)}},scopedSlots:e._u([0===n?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{size:20,svg:e.viewIcon}})]},proxy:!0}:null],null,!0)},"NcBreadcrumb",s,!1))})),1)}),[],!1,null,"20858d70",null).exports,es=e=>{const t=e.filter((e=>e.type===O.pt.File)).length,s=e.filter((e=>e.type===O.pt.Folder)).length;return 0===t?(0,V.zw)("files","{folderCount} folder","{folderCount} folders",s,{folderCount:s}):0===s?(0,V.zw)("files","{fileCount} file","{fileCount} files",t,{fileCount:t}):1===t?(0,V.zw)("files","1 file and {folderCount} folder","1 file and {folderCount} folders",s,{folderCount:s}):1===s?(0,V.zw)("files","{fileCount} file and 1 folder","{fileCount} files and 1 folder",t,{fileCount:t}):(0,V.Tl)("files","{fileCount} files and {folderCount} folders",{fileCount:t,folderCount:s})};var ts=n(19231);const ss=(0,a.nY)("actionsmenu",{state:()=>({opened:null})}),ns=function(){const e=(0,a.nY)("renaming",{state:()=>({renamingNode:void 0,newName:""}),actions:{async rename(){var e,t;if(void 0===this.renamingNode)throw new Error("No node is currently being renamed");const s=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"",n=this.renamingNode.basename,i=this.renamingNode.encodedSource;if(n===s)return!1;const a=this.renamingNode;o.Ay.set(a,"status",O.zI.LOADING);try{return this.renamingNode.rename(s),se.debug("Moving file to",{destination:this.renamingNode.encodedSource,oldEncodedSource:i}),await(0,Z.Ay)({method:"MOVE",url:i,headers:{Destination:this.renamingNode.encodedSource,Overwrite:"F"}}),(0,R.Ic)("files:node:updated",this.renamingNode),(0,R.Ic)("files:node:renamed",this.renamingNode),(0,R.Ic)("files:node:moved",{node:this.renamingNode,oldSource:"".concat((0,We.dirname)(this.renamingNode.source),"/").concat(n)}),this.$reset(),!0}catch(e){if(se.error("Error while renaming file",{error:e}),this.renamingNode.rename(n),(0,Z.F0)(e)){var r,l;if(404===(null==e||null===(r=e.response)||void 0===r?void 0:r.status))throw new Error((0,V.t)("files",'Could not rename "{oldName}", it does not exist any more',{oldName:n}));if(412===(null==e||null===(l=e.response)||void 0===l?void 0:l.status))throw new Error((0,V.t)("files",'The name "{newName}" is already used in the folder "{dir}". Please choose a different name.',{newName:s,dir:(0,We.basename)(this.renamingNode.dirname)}))}throw new Error((0,V.t)("files",'Could not rename "{oldName}"',{oldName:n}))}finally{o.Ay.set(a,"status",void 0)}}}})(...arguments);return e._initialized||((0,R.B1)("files:node:rename",(function(t){e.renamingNode=t,e.newName=t.basename})),e._initialized=!0),e};o.Ay.util.warn,n(13073);var is=n(59271);n(96763);function as(e){var t;const s=(0,is.BA)(e);return null!=(t=null==s?void 0:s.$el)?t:s}const rs=is.oc?window:void 0;function os(...e){let t,s,n,i;if("string"==typeof e[0]||Array.isArray(e[0])?([s,n,i]=e,t=rs):[t,s,n,i]=e,!t)return is.lQ;Array.isArray(s)||(s=[s]),Array.isArray(n)||(n=[n]);const a=[],r=()=>{a.forEach((e=>e())),a.length=0},l=(0,o.wB)((()=>[as(t),(0,is.BA)(i)]),(([e,t])=>{if(r(),!e)return;const i=(0,is.Gv)(t)?{...t}:t;a.push(...s.flatMap((t=>n.map((s=>((e,t,s,n)=>(e.addEventListener(t,s,n),()=>e.removeEventListener(t,s,n)))(e,t,s,i))))))}),{immediate:!0,flush:"post"}),d=()=>{l(),r()};return(0,is.Uo)(d),d}let ls=!1;function ds(e,t,s={}){const{window:n=rs,ignore:i=[],capture:a=!0,detectIframe:r=!1}=s;if(!n)return is.lQ;is.un&&!ls&&(ls=!0,Array.from(n.document.body.children).forEach((e=>e.addEventListener("click",is.lQ))),n.document.documentElement.addEventListener("click",is.lQ));let o=!0;const l=e=>i.some((t=>{if("string"==typeof t)return Array.from(n.document.querySelectorAll(t)).some((t=>t===e.target||e.composedPath().includes(t)));{const s=as(t);return s&&(e.target===s||e.composedPath().includes(s))}})),d=[os(n,"click",(s=>{const n=as(e);n&&n!==s.target&&!s.composedPath().includes(n)&&(0===s.detail&&(o=!l(s)),o?t(s):o=!0)}),{passive:!0,capture:a}),os(n,"pointerdown",(t=>{const s=as(e);o=!l(t)&&!(!s||t.composedPath().includes(s))}),{passive:!0}),r&&os(n,"blur",(s=>{setTimeout((()=>{var i;const a=as(e);"IFRAME"!==(null==(i=n.document.activeElement)?void 0:i.tagName)||(null==a?void 0:a.contains(n.document.activeElement))||t(s)}),0)}))].filter(Boolean);return()=>d.forEach((e=>e()))}const ms={[is.C$.mounted](e,t){const s=!t.modifiers.bubble;if("function"==typeof t.value)e.__onClickOutside_stop=ds(e,t.value,{capture:s});else{const[n,i]=t.value;e.__onClickOutside_stop=ds(e,n,Object.assign({capture:s},i))}},[is.C$.unmounted](e){e.__onClickOutside_stop()}};is.C$.mounted,is.C$.mounted,"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self,is.C$.mounted,is.C$.mounted,is.C$.mounted;is.C$.mounted,is.C$.mounted;Boolean,Boolean,Boolean,Boolean,is.C$.mounted;(0,o.KR)(!1);const cs={name:"FileMultipleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},gs=(0,q.A)(cs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-multiple-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports;var us=n(25866);const ps=o.Ay.extend({name:"DragAndDropPreview",components:{FileMultipleIcon:gs,FolderIcon:us.A},data:()=>({nodes:[]}),computed:{isSingleNode(){return 1===this.nodes.length},isSingleFolder(){return this.isSingleNode&&this.nodes[0].type===O.pt.Folder},name(){return this.size?"".concat(this.summary," – ").concat(this.size):this.summary},size(){const e=this.nodes.reduce(((e,t)=>e+t.size||0),0),t=parseInt(e,10)||0;return"number"!=typeof t||t<0?null:(0,O.v7)(t,!0)},summary(){if(this.isSingleNode){var e;const t=this.nodes[0];return(null===(e=t.attributes)||void 0===e?void 0:e.displayname)||t.basename}return es(this.nodes)}},methods:{update(e){this.nodes=e,this.$refs.previewImg.replaceChildren(),e.slice(0,3).forEach((e=>{const t=document.querySelector('[data-cy-files-list-row-fileid="'.concat(e.fileid,'"] .files-list__row-icon img'));t&&this.$refs.previewImg.appendChild(t.parentNode.cloneNode(!0))})),this.$nextTick((()=>{this.$emit("loaded",this.$el)}))}}}),fs=ps;var hs=n(76810),vs={};vs.styleTagTransform=he(),vs.setAttributes=ge(),vs.insert=me().bind(null,"head"),vs.domAPI=le(),vs.insertStyleElement=pe(),re()(hs.A,vs),hs.A&&hs.A.locals&&hs.A.locals;const ws=(0,q.A)(fs,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list-drag-image"},[t("span",{staticClass:"files-list-drag-image__icon"},[t("span",{ref:"previewImg"}),e._v(" "),e.isSingleFolder?t("FolderIcon"):t("FileMultipleIcon")],1),e._v(" "),t("span",{staticClass:"files-list-drag-image__name"},[e._v(e._s(e.name))])])}),[],!1,null,null,null).exports,ys=o.Ay.extend(ws);let Cs;o.Ay.directive("onClickOutside",ms);const Ts=(0,O.qK)(),As=(0,o.pM)({props:{source:{type:[O.vd,O.ZH,O.bP],required:!0},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},provide(){return{defaultFileAction:(0,o.EW)((()=>this.defaultFileAction)),enabledFileActions:(0,o.EW)((()=>this.enabledFileActions))}},data:()=>({loading:"",dragover:!1,gridMode:!1}),computed:{currentDir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},currentFileId(){var e,t;return(null===(e=this.$route.params)||void 0===e?void 0:e.fileid)||(null===(t=this.$route.query)||void 0===t?void 0:t.fileid)||null},fileid(){var e;return null===(e=this.source)||void 0===e?void 0:e.fileid},uniqueId(){return function(e){let t=0;for(let s=0;s<e.length;s++)t=(t<<5)-t+e.charCodeAt(s)|0;return t>>>0}(this.source.source)},isLoading(){return this.source.status===O.zI.LOADING||""!==this.loading},displayName(){return this.source.displayname||this.source.basename},basename(){return""===this.extension?this.displayName:this.displayName.slice(0,0-this.extension.length)},extension(){return this.source.type===O.pt.Folder?"":(0,We.extname)(this.displayName)},draggingFiles(){return this.draggingStore.dragging},selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},isActive(){return String(this.fileid)===String(this.currentFileId)},canDrag(){if(this.isRenaming)return!1;const e=e=>0!=((null==e?void 0:e.permissions)&O.aX.UPDATE);return this.selectedFiles.length>0?this.selectedFiles.map((e=>this.filesStore.getNode(e))).every(e):e(this.source)},canDrop(){return this.source.type===O.pt.Folder&&!this.draggingFiles.includes(this.source.source)&&0!=(this.source.permissions&O.aX.CREATE)},openedMenu:{get(){return this.actionsMenuStore.opened===this.uniqueId.toString()},set(e){this.actionsMenuStore.opened=e?this.uniqueId.toString():null}},isRenaming(){return this.renamingStore.renamingNode===this.source},enabledFileActions(){return this.source.status===O.zI.FAILED?[]:Ts.filter((e=>{if(!e.enabled)return!0;try{return e.enabled([this.source],this.currentView)}catch(t){return se.error("Error while checking action",{action:e,error:t}),!1}})).sort(((e,t)=>(e.order||0)-(t.order||0)))},defaultFileAction(){return this.enabledFileActions.find((e=>void 0!==e.default))}},watch:{source(e,t){e.source!==t.source&&this.resetState()},openedMenu(){!1===this.openedMenu&&window.setTimeout((()=>{if(this.openedMenu)return;const e=document.getElementById("app-content-vue");null!==e&&(e.style.removeProperty("--mouse-pos-x"),e.style.removeProperty("--mouse-pos-y"))}),300)}},beforeDestroy(){this.resetState()},methods:{resetState(){var e,t;this.loading="",null===(e=this.$refs)||void 0===e||null===(e=e.preview)||void 0===e||null===(t=e.reset)||void 0===t||t.call(e),this.openedMenu=!1},onRightClick(e){if(this.openedMenu)return;if(this.gridMode){var t;const e=null===(t=this.$el)||void 0===t?void 0:t.closest("main.app-content");e.style.removeProperty("--mouse-pos-x"),e.style.removeProperty("--mouse-pos-y")}else{var s;const t=null===(s=this.$el)||void 0===s?void 0:s.closest("main.app-content"),n=t.getBoundingClientRect();t.style.setProperty("--mouse-pos-x",Math.max(0,e.clientX-n.left-200)+"px"),t.style.setProperty("--mouse-pos-y",Math.max(0,e.clientY-n.top)+"px")}const n=this.selectedFiles.length>1;this.actionsMenuStore.opened=this.isSelected&&n?"global":this.uniqueId.toString(),e.preventDefault(),e.stopPropagation()},execDefaultAction(e){if(!(this.isRenaming||e.button>1))return e.ctrlKey||e.metaKey||1===e.button?(e.preventDefault(),window.open((0,d.Jv)("/f/{fileId}",{fileId:this.fileid})),!1):void(this.defaultFileAction?(e.preventDefault(),e.stopPropagation(),this.defaultFileAction.exec(this.source,this.currentView,this.currentDir)):window.open((0,d.Jv)("/f/{fileId}",{fileId:this.fileid}),"_self"))},openDetailsIfAvailable(e){var t;e.preventDefault(),e.stopPropagation(),null!=dt&&null!==(t=dt.enabled)&&void 0!==t&&t.call(dt,[this.source],this.currentView)&&dt.exec(this.source,this.currentView,this.currentDir)},onDragOver(e){this.dragover=this.canDrop,this.canDrop?e.ctrlKey?e.dataTransfer.dropEffect="copy":e.dataTransfer.dropEffect="move":e.dataTransfer.dropEffect="none"},onDragLeave(e){const t=e.currentTarget;null!=t&&t.contains(e.relatedTarget)||(this.dragover=!1)},async onDragStart(e){var t,s,n;if(e.stopPropagation(),!this.canDrag||!this.fileid)return e.preventDefault(),void e.stopPropagation();se.debug("Drag started",{event:e}),null===(t=e.dataTransfer)||void 0===t||null===(s=t.clearData)||void 0===s||s.call(t),this.renamingStore.$reset(),this.selectedFiles.includes(this.source.source)?this.draggingStore.set(this.selectedFiles):this.draggingStore.set([this.source.source]);const i=this.draggingStore.dragging.map((e=>this.filesStore.getNode(e))),a=await(async e=>new Promise((t=>{Cs||(Cs=(new ys).$mount(),document.body.appendChild(Cs.$el)),Cs.update(e),Cs.$on("loaded",(()=>{t(Cs.$el),Cs.$off("loaded")}))})))(i);null===(n=e.dataTransfer)||void 0===n||n.setDragImage(a,-10,-10)},onDragEnd(){this.draggingStore.reset(),this.dragover=!1,se.debug("Drag ended")},async onDrop(e){var t,s,n;if(!(this.draggingFiles||null!==(t=e.dataTransfer)&&void 0!==t&&null!==(t=t.items)&&void 0!==t&&t.length))return;e.preventDefault(),e.stopPropagation();const i=this.draggingFiles,a=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],r=await Wt(a),o=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.source.path)),l=null==o?void 0:o.folder;if(!l)return void(0,Q.Qg)(this.t("files","Target folder does not exist any more"));if(!this.canDrop||e.button)return;const d=e.ctrlKey;if(this.dragover=!1,se.debug("Dropped",{event:e,folder:l,selection:i,fileTree:r}),r.contents.length>0)return void await Gt(r,l,o.contents);const m=i.map((e=>this.filesStore.getNode(e)));await Yt(m,l,o.contents,d),i.some((e=>this.selectedFiles.includes(e)))&&(se.debug("Dropped selection, resetting select store..."),this.selectionStore.reset())},t:V.Tl}});var bs=n(4604);const xs={name:"CustomElementRender",props:{source:{type:Object,required:!0},currentView:{type:Object,required:!0},render:{type:Function,required:!0}},watch:{source(){this.updateRootElement()},currentView(){this.updateRootElement()}},mounted(){this.updateRootElement()},methods:{async updateRootElement(){const e=await this.render(this.source,this.currentView);e?this.$el.replaceChildren(e):this.$el.replaceChildren()}}},ks=(0,q.A)(xs,(function(){return(0,this._self._c)("span")}),[],!1,null,null,null).exports;var _s=n(89257),Ss=n(24764),Fs=n(80114);const Ns={name:"ArrowLeftIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Ls=(0,q.A)(Ns,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon arrow-left-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Us=(0,o.pM)({name:"FileEntryActions",components:{ArrowLeftIcon:Ls,CustomElementRender:ks,NcActionButton:_s.A,NcActions:Ss.A,NcActionSeparator:Fs.A,NcIconSvgWrapper:$.A,NcLoadingIcon:st.A},props:{filesListWidth:{type:Number,required:!0},loading:{type:String,required:!0},opened:{type:Boolean,default:!1},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=De();return{currentView:e,enabledFileActions:(0,o.WQ)("enabledFileActions",[])}},data:()=>({openedSubmenu:null}),computed:{currentDir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},isLoading(){return this.source.status===O.zI.LOADING},enabledInlineActions(){return this.filesListWidth<768||this.gridMode?[]:this.enabledFileActions.filter((e=>{try{var t;return null==e||null===(t=e.inline)||void 0===t?void 0:t.call(e,this.source,this.currentView)}catch(t){return se.error("Error while checking if action is inline",{action:e,error:t}),!1}}))},enabledRenderActions(){return this.gridMode?[]:this.enabledFileActions.filter((e=>"function"==typeof e.renderInline))},enabledMenuActions(){if(this.openedSubmenu)return this.enabledInlineActions;const e=[...this.enabledInlineActions,...this.enabledFileActions.filter((e=>e.default!==O.m9.HIDDEN&&"function"!=typeof e.renderInline))].filter(((e,t,s)=>t===s.findIndex((t=>t.id===e.id)))),t=e.filter((e=>!e.parent)).map((e=>e.id));return e.filter((e=>!(e.parent&&t.includes(e.parent))))},enabledSubmenuActions(){return this.enabledFileActions.filter((e=>e.parent)).reduce(((e,t)=>(e[t.parent]||(e[t.parent]=[]),e[t.parent].push(t),e)),{})},openedMenu:{get(){return this.opened},set(e){this.$emit("update:opened",e)}},getBoundariesElement:()=>document.querySelector(".app-content > .files-list"),mountType(){return this.source.attributes["mount-type"]}},watch:{openedMenu(){this.openedSubmenu=null}},methods:{actionDisplayName(e){try{if((this.gridMode||this.filesListWidth<768&&e.inline)&&"function"==typeof e.title){const t=e.title([this.source],this.currentView);if(t)return t}return e.displayName([this.source],this.currentView)}catch(t){return se.error("Error while getting action display name",{action:e,error:t}),e.id}},async onActionClick(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.isLoading||""!==this.loading)return;if(this.enabledSubmenuActions[e.id])return void(this.openedSubmenu=e);let s=e.id;try{s=e.displayName([this.source],this.currentView)}catch(t){se.error("Error while getting action display name",{action:e,error:t})}try{this.$emit("update:loading",e.id),this.$set(this.source,"status",O.zI.LOADING);const t=await e.exec(this.source,this.currentView,this.currentDir);if(null==t)return;if(t)return void(0,Q.Te)((0,V.Tl)("files",'"{displayName}" action executed successfully',{displayName:s}));(0,Q.Qg)((0,V.Tl)("files",'"{displayName}" action failed',{displayName:s}))}catch(t){se.error("Error while executing action",{action:e,error:t}),(0,Q.Qg)((0,V.Tl)("files",'"{displayName}" action failed',{displayName:s}))}finally{this.$emit("update:loading",""),this.$set(this.source,"status",void 0),t&&(this.openedSubmenu=null)}},isMenu(e){var t;return(null===(t=this.enabledSubmenuActions[e])||void 0===t?void 0:t.length)>0},async onBackToMenuClick(e){this.openedSubmenu=null,await this.$nextTick(),this.$nextTick((()=>{var t;const s=null===(t=this.$refs["action-".concat(e.id)])||void 0===t?void 0:t[0];var n;s&&(null===(n=s.$el.querySelector("button"))||void 0===n||n.focus())}))},t:V.Tl}}),Ps=Us;var Es=n(11298),Is={};Is.styleTagTransform=he(),Is.setAttributes=ge(),Is.insert=me().bind(null,"head"),Is.domAPI=le(),Is.insertStyleElement=pe(),re()(Es.A,Is),Es.A&&Es.A.locals&&Es.A.locals;var Ds=n(85722),zs={};zs.styleTagTransform=he(),zs.setAttributes=ge(),zs.insert=me().bind(null,"head"),zs.domAPI=le(),zs.insertStyleElement=pe(),re()(Ds.A,zs),Ds.A&&Ds.A.locals&&Ds.A.locals;var Bs=(0,q.A)(Ps,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("td",{staticClass:"files-list__row-actions",attrs:{"data-cy-files-list-row-actions":""}},[s._l(s.enabledRenderActions,(function(e){return n("CustomElementRender",{key:e.id,staticClass:"files-list__row-action--inline",class:"files-list__row-action-"+e.id,attrs:{"current-view":s.currentView,render:e.renderInline,source:s.source}})})),s._v(" "),n("NcActions",{ref:"actionsMenu",attrs:{"boundaries-element":s.getBoundariesElement,container:s.getBoundariesElement,"force-name":!0,type:"tertiary","force-menu":0===s.enabledInlineActions.length,inline:s.enabledInlineActions.length,open:s.openedMenu},on:{"update:open":function(e){s.openedMenu=e},close:function(e){s.openedSubmenu=null}}},[s._l(s.enabledMenuActions,(function(e){var t;return n("NcActionButton",{key:e.id,ref:"action-".concat(e.id),refInFor:!0,class:{["files-list__row-action-".concat(e.id)]:!0,"files-list__row-action--menu":s.isMenu(e.id)},attrs:{"close-after-click":!s.isMenu(e.id),"data-cy-files-list-row-action":e.id,"is-menu":s.isMenu(e.id),title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t"+s._s("shared"===s.mountType&&"sharing-status"===e.id?"":s.actionDisplayName(e))+"\n\t\t")])})),s._v(" "),s.openedSubmenu&&s.enabledSubmenuActions[null===(e=s.openedSubmenu)||void 0===e?void 0:e.id]?[n("NcActionButton",{staticClass:"files-list__row-action-back",on:{click:function(e){return s.onBackToMenuClick(s.openedSubmenu)}},scopedSlots:s._u([{key:"icon",fn:function(){return[n("ArrowLeftIcon")]},proxy:!0}],null,!1,3001860362)},[s._v("\n\t\t\t\t"+s._s(s.t("files","Back"))+"\n\t\t\t")]),s._v(" "),n("NcActionSeparator"),s._v(" "),s._l(s.enabledSubmenuActions[null===(t=s.openedSubmenu)||void 0===t?void 0:t.id],(function(e){var t;return n("NcActionButton",{key:e.id,staticClass:"files-list__row-action--submenu",class:"files-list__row-action-".concat(e.id),attrs:{"close-after-click":"","data-cy-files-list-row-action":e.id,title:null===(t=e.title)||void 0===t?void 0:t.call(e,[s.source],s.currentView)},on:{click:function(t){return s.onActionClick(e)}},scopedSlots:s._u([{key:"icon",fn:function(){return[s.loading===e.id?n("NcLoadingIcon",{attrs:{size:18}}):n("NcIconSvgWrapper",{attrs:{svg:e.iconSvgInline([s.source],s.currentView)}})]},proxy:!0}],null,!0)},[s._v("\n\t\t\t\t"+s._s(s.actionDisplayName(e))+"\n\t\t\t")])}))]:s._e()],2)],2)}),[],!1,null,"7a49ca87",null);const js=Bs.exports,Ms=(0,o.pM)({name:"FileEntryCheckbox",components:{NcCheckboxRadioSwitch:Ae.A,NcLoadingIcon:st.A},props:{fileid:{type:Number,required:!0},isLoading:{type:Boolean,default:!1},nodes:{type:Array,required:!0},source:{type:Object,required:!0}},setup(){const e=wt(),t=function(){const e=(0,a.nY)("keyboard",{state:()=>({altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1}),actions:{onEvent(e){e||(e=window.event),o.Ay.set(this,"altKey",!!e.altKey),o.Ay.set(this,"ctrlKey",!!e.ctrlKey),o.Ay.set(this,"metaKey",!!e.metaKey),o.Ay.set(this,"shiftKey",!!e.shiftKey)}}})(...arguments);return e._initialized||(window.addEventListener("keydown",e.onEvent),window.addEventListener("keyup",e.onEvent),window.addEventListener("mousemove",e.onEvent),e._initialized=!0),e}();return{keyboardStore:t,selectionStore:e}},computed:{selectedFiles(){return this.selectionStore.selected},isSelected(){return this.selectedFiles.includes(this.source.source)},index(){return this.nodes.findIndex((e=>e.source===this.source.source))},isFile(){return this.source.type===O.pt.File},loadingLabel(){return this.isFile?(0,V.Tl)("files","File is loading"):(0,V.Tl)("files","Folder is loading")},ariaLabel(){return this.isFile?(0,V.Tl)("files",'Toggle selection for file "{displayName}"',{displayName:this.source.basename}):(0,V.Tl)("files",'Toggle selection for folder "{displayName}"',{displayName:this.source.basename})}},methods:{onSelectionChange(e){var t;const s=this.index,n=this.selectionStore.lastSelectedIndex;if(null!==(t=this.keyboardStore)&&void 0!==t&&t.shiftKey&&null!==n){const e=this.selectedFiles.includes(this.source.source),t=Math.min(s,n),i=Math.max(n,s),a=this.selectionStore.lastSelection,r=this.nodes.map((e=>e.source)).slice(t,i+1).filter(Boolean),o=[...a,...r].filter((t=>!e||t!==this.source.source));return se.debug("Shift key pressed, selecting all files in between",{start:t,end:i,filesToSelect:r,isAlreadySelected:e}),void this.selectionStore.set(o)}const i=e?[...this.selectedFiles,this.source.source]:this.selectedFiles.filter((e=>e!==this.source.source));se.debug("Updating selection",{selection:i}),this.selectionStore.set(i),this.selectionStore.setLastIndex(s)},resetSelection(){this.selectionStore.reset()},t:V.Tl}}),Os=(0,q.A)(Ms,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("td",{staticClass:"files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[e.isLoading?t("NcLoadingIcon",{attrs:{name:e.loadingLabel}}):t("NcCheckboxRadioSwitch",{attrs:{"aria-label":e.ariaLabel,checked:e.isSelected},on:{"update:checked":e.onSelectionChange}})],1)}),[],!1,null,null,null).exports;var Rs=n(82182);function Vs(){const e=function(){var e=(0,o.nI)().proxy.$root;if(!e._$route){var t=(0,o.uY)(!0).run((function(){return(0,o.Gc)(Object.assign({},e.$router.currentRoute))}));e._$route=t,e.$router.afterEach((function(e){Object.assign(t,e)}))}return e._$route}();return{directory:(0,o.EW)((()=>String(e.query.dir||"/").replace(/^(.+)\/$/,"$1"))),fileId:(0,o.EW)((()=>{var t;const s=Number.parseInt(null!==(t=e.params.fileid)&&void 0!==t?t:"0")||null;return Number.isNaN(s)?null:s})),openFile:(0,o.EW)((()=>"openfile"in e.query&&("string"!=typeof e.query.openfile||"false"!==e.query.openfile.toLocaleLowerCase())))}}function Hs(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(""===e.trim())return(0,V.t)("files","Filename must not be empty.");try{return(0,O.KT)(e),""}catch(e){if(!(e instanceof O.di))throw e;switch(e.reason){case O.nF.Character:return(0,V.t)("files",'"{char}" is not allowed inside a filename.',{char:e.segment},void 0,{escape:t});case O.nF.ReservedName:return(0,V.t)("files",'"{segment}" is a reserved name and not allowed for filenames.',{segment:e.segment},void 0,{escape:!1});case O.nF.Extension:return e.segment.match(/\.[a-z]/i)?(0,V.t)("files",'"{extension}" is not an allowed filetype.',{extension:e.segment},void 0,{escape:!1}):(0,V.t)("files",'Filenames must not end with "{extension}".',{extension:e.segment},void 0,{escape:!1});default:return(0,V.t)("files","Invalid filename.")}}}const qs=(0,o.pM)({name:"FileEntryName",components:{NcTextField:Rs.A},props:{basename:{type:String,required:!0},extension:{type:String,required:!0},filesListWidth:{type:Number,required:!0},nodes:{type:Array,required:!0},source:{type:Object,required:!0},gridMode:{type:Boolean,default:!1}},setup(){const{currentView:e}=De(),{directory:t}=Vs(),s=ns();return{currentView:e,defaultFileAction:(0,o.WQ)("defaultFileAction"),directory:t,renamingStore:s}},computed:{isRenaming(){return this.renamingStore.renamingNode===this.source},isRenamingSmallScreen(){return this.isRenaming&&this.filesListWidth<512},newName:{get(){return this.renamingStore.newName},set(e){this.renamingStore.newName=e}},renameLabel(){return{[O.pt.File]:(0,V.Tl)("files","Filename"),[O.pt.Folder]:(0,V.Tl)("files","Folder name")}[this.source.type]},linkTo(){if(this.source.attributes.failed)return{is:"span",params:{title:(0,V.Tl)("files","This node is unavailable")}};if(this.defaultFileAction&&this.currentView){const e=this.defaultFileAction.displayName([this.source],this.currentView);return{is:"button",params:{"aria-label":e,title:e,tabindex:"0"}}}return{is:"span"}}},watch:{isRenaming:{immediate:!0,handler(e){e&&this.startRenaming()}},newName(){var e,t,s;const n=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"",i=null===(s=this.$refs.renameInput)||void 0===s?void 0:s.$el.querySelector("input");if(!i)return;let a=Hs(n);""===a&&this.checkIfNodeExists(n)&&(a=(0,V.Tl)("files","Another entry with the same name already exists.")),this.$nextTick((()=>{this.isRenaming&&(i.setCustomValidity(a),i.reportValidity())}))}},methods:{checkIfNodeExists(e){return this.nodes.find((t=>t.basename===e&&t!==this.source))},startRenaming(){this.$nextTick((()=>{var e,t;const s=null===(e=this.$refs.renameInput)||void 0===e?void 0:e.$el.querySelector("input");if(!s)return void se.error("Could not find the rename input");s.focus();const n=this.source.basename.length-(null!==(t=this.source.extension)&&void 0!==t?t:"").length;s.setSelectionRange(0,n),s.dispatchEvent(new Event("keyup"))}))},stopRenaming(){this.isRenaming&&this.renamingStore.$reset()},async onRename(){var e,t;const s=(null===(e=(t=this.newName).trim)||void 0===e?void 0:e.call(t))||"";if(!this.$refs.renameForm.checkValidity())return void(0,Q.Qg)((0,V.Tl)("files","Invalid filename.")+" "+Hs(s));const n=this.source.basename;if(s!==n)try{await this.renamingStore.rename()&&((0,Q.Te)((0,V.Tl)("files",'Renamed "{oldName}" to "{newName}"',{oldName:n,newName:s})),this.$nextTick((()=>{const e=this.$refs.basename;null==e||e.focus()})))}catch(e){se.error(e),(0,Q.Qg)(e.message),this.startRenaming()}else this.stopRenaming()},t:V.Tl}});var Ws=n(81038),Gs={};Gs.styleTagTransform=he(),Gs.setAttributes=ge(),Gs.insert=me().bind(null,"head"),Gs.domAPI=le(),Gs.insertStyleElement=pe(),re()(Ws.A,Gs),Ws.A&&Ws.A.locals&&Ws.A.locals;const Ys=(0,q.A)(qs,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.isRenaming?t("form",{directives:[{name:"on-click-outside",rawName:"v-on-click-outside",value:e.onRename,expression:"onRename"}],ref:"renameForm",staticClass:"files-list__row-rename",attrs:{"aria-label":e.t("files","Rename file")},on:{submit:function(t){return t.preventDefault(),t.stopPropagation(),e.onRename.apply(null,arguments)}}},[t("NcTextField",{ref:"renameInput",attrs:{label:e.renameLabel,autofocus:!0,minlength:1,required:!0,value:e.newName,enterkeyhint:"done"},on:{"update:value":function(t){e.newName=t},keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.stopRenaming.apply(null,arguments)}}})],1):t(e.linkTo.is,e._b({ref:"basename",tag:"component",staticClass:"files-list__row-name-link",attrs:{"aria-hidden":e.isRenaming,"data-cy-files-list-row-name-link":""}},"component",e.linkTo.params,!1),[t("span",{staticClass:"files-list__row-name-text"},[t("span",{staticClass:"files-list__row-name-",domProps:{textContent:e._s(e.basename)}}),e._v(" "),t("span",{staticClass:"files-list__row-name-ext",domProps:{textContent:e._s(e.extension)}})])])}),[],!1,null,"1b7d6a24",null).exports;var $s=n(43261);const Ks={name:"FileIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Js=(0,q.A)(Ks,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon file-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Qs={name:"FolderOpenIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},Zs=(0,q.A)(Qs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-open-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,Xs={name:"KeyIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},en=(0,q.A)(Xs,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon key-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,tn={name:"NetworkIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},sn=(0,q.A)(tn,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon network-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,nn={name:"TagIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},an=(0,q.A)(nn,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tag-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,rn={name:"PlayCircleIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},on=(0,q.A)(rn,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon play-circle-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,ln={name:"CollectivesIcon",props:{title:{type:String,default:""},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},dn=(0,q.A)(ln,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon collectives-icon",attrs:{"aria-hidden":!e.title,"aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 16 16"}},[t("path",{attrs:{d:"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z"}}),e._v(" "),t("path",{attrs:{d:"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z"}}),e._v(" "),t("path",{attrs:{d:"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z"}}),e._v(" "),t("path",{attrs:{d:"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z"}}),e._v(" "),t("path",{attrs:{d:"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z"}})])])}),[],!1,null,null,null).exports,mn=(0,o.pM)({name:"FavoriteIcon",components:{NcIconSvgWrapper:$.A},data:()=>({StarSvg:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-star" viewBox="0 0 24 24"><path d="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z" /></svg>'}),async mounted(){var e;await this.$nextTick();const t=this.$el.querySelector("svg");null==t||null===(e=t.setAttribute)||void 0===e||e.call(t,"viewBox","-4 -4 30 30")},methods:{t:V.Tl}});var cn=n(14781),gn={};gn.styleTagTransform=he(),gn.setAttributes=ge(),gn.insert=me().bind(null,"head"),gn.domAPI=le(),gn.insertStyleElement=pe(),re()(cn.A,gn),cn.A&&cn.A.locals&&cn.A.locals;const un=(0,q.A)(mn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcIconSvgWrapper",{staticClass:"favorite-marker-icon",attrs:{name:e.t("files","Favorite"),svg:e.StarSvg}})}),[],!1,null,"42ea6dd4",null).exports,pn=o.Ay.extend({name:"FileEntryPreview",components:{AccountGroupIcon:$s.A,AccountPlusIcon:at,CollectivesIcon:dn,FavoriteIcon:un,FileIcon:Js,FolderIcon:us.A,FolderOpenIcon:Zs,KeyIcon:en,LinkIcon:Je.A,NetworkIcon:sn,TagIcon:an},props:{source:{type:Object,required:!0},dragover:{type:Boolean,default:!1},gridMode:{type:Boolean,default:!1}},setup:()=>({userConfigStore:Ne()}),data:()=>({backgroundFailed:void 0}),computed:{fileid(){var e,t;return null===(e=this.source)||void 0===e||null===(e=e.fileid)||void 0===e||null===(t=e.toString)||void 0===t?void 0:t.call(e)},isFavorite(){return 1===this.source.attributes.favorite},userConfig(){return this.userConfigStore.userConfig},cropPreviews(){return!0===this.userConfig.crop_image_previews},previewUrl(){if(this.source.type===O.pt.Folder)return null;if(!0===this.backgroundFailed)return null;try{const e=this.source.attributes.previewUrl||(0,d.Jv)("/core/preview?fileId={fileid}",{fileid:this.fileid}),t=new URL(window.location.origin+e);return t.searchParams.set("x",this.gridMode?"128":"32"),t.searchParams.set("y",this.gridMode?"128":"32"),t.searchParams.set("mimeFallback","true"),t.searchParams.set("a",!0===this.cropPreviews?"0":"1"),t.href}catch(e){return null}},fileOverlay(){return void 0!==this.source.attributes["metadata-files-live-photo"]?on:null},folderOverlay(){var e,t,s,n;if(this.source.type!==O.pt.Folder)return null;if(1===(null===(e=this.source)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["is-encrypted"]))return en;if(null!==(t=this.source)&&void 0!==t&&null!==(t=t.attributes)&&void 0!==t&&t["is-tag"])return an;const i=Object.values((null===(s=this.source)||void 0===s||null===(s=s.attributes)||void 0===s?void 0:s["share-types"])||{}).flat();if(i.some((e=>e===He.Z.SHARE_TYPE_LINK||e===He.Z.SHARE_TYPE_EMAIL)))return Je.A;if(i.length>0)return at;switch(null===(n=this.source)||void 0===n||null===(n=n.attributes)||void 0===n?void 0:n["mount-type"]){case"external":case"external-session":return sn;case"group":return $s.A;case"collective":return dn;case"shared":return at}return null}},methods:{reset(){this.backgroundFailed=void 0,this.$refs.previewImg&&(this.$refs.previewImg.src="")},onBackgroundError(e){var t;""!==(null===(t=e.target)||void 0===t?void 0:t.src)&&(this.backgroundFailed=!0)},t:V.Tl}}),fn=(0,q.A)(pn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("span",{staticClass:"files-list__row-icon"},["folder"===e.source.type?[e.dragover?e._m(0):[e._m(1),e._v(" "),e.folderOverlay?t(e.folderOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay"}):e._e()]]:e.previewUrl&&!0!==e.backgroundFailed?t("img",{ref:"previewImg",staticClass:"files-list__row-icon-preview",class:{"files-list__row-icon-preview--loaded":!1===e.backgroundFailed},attrs:{alt:"",loading:"lazy",src:e.previewUrl},on:{error:e.onBackgroundError,load:function(t){e.backgroundFailed=!1}}}):e._m(2),e._v(" "),e.isFavorite?t("span",{staticClass:"files-list__row-icon-favorite"},[e._m(3)],1):e._e(),e._v(" "),e.fileOverlay?t(e.fileOverlay,{tag:"OverlayIcon",staticClass:"files-list__row-icon-overlay files-list__row-icon-overlay--file"}):e._e()],2)}),[function(){var e=this._self._c;return this._self._setupProxy,e("FolderOpenIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FolderIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FileIcon")},function(){var e=this._self._c;return this._self._setupProxy,e("FavoriteIcon")}],!1,null,null,null).exports,hn=(0,o.pM)({name:"FileEntry",components:{CustomElementRender:ks,FileEntryActions:js,FileEntryCheckbox:Os,FileEntryName:Ys,FileEntryPreview:fn,NcDateTime:bs.A},mixins:[As],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},compact:{type:Boolean,default:!1}},setup(){const e=ss(),t=$t(),s=ft(),n=ns(),i=wt(),{currentView:a}=De();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},computed:{rowListeners(){return{...this.isRenaming?{}:{dragstart:this.onDragStart,dragover:this.onDragOver},contextmenu:this.onRightClick,dragleave:this.onDragLeave,dragend:this.onDragEnd,drop:this.onDrop}},columns(){var e;return this.filesListWidth<512||this.compact?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},size(){const e=this.source.size;return void 0===e||isNaN(e)||e<0?this.t("files","Pending"):(0,O.v7)(e,!0)},sizeOpacity(){const e=this.source.size;if(void 0===e||isNaN(e)||e<0)return{};const t=Math.round(Math.min(100,100*Math.pow(e/10485760,2)));return{color:"color-mix(in srgb, var(--color-main-text) ".concat(t,"%, var(--color-text-maxcontrast))")}},mtimeOpacity(){var e,t;const s=26784e5,n=null===(e=this.source.mtime)||void 0===e||null===(t=e.getTime)||void 0===t?void 0:t.call(e);if(!n)return{};const i=Math.round(Math.min(100,100*(s-(Date.now()-n))/s));return i<0?{}:{color:"color-mix(in srgb, var(--color-main-text) ".concat(i,"%, var(--color-text-maxcontrast))")}},mtime(){return this.source.mtime&&!isNaN(this.source.mtime.getDate())?this.source.mtime:this.source.crtime&&!isNaN(this.source.crtime.getDate())?this.source.crtime:null},mtimeTitle(){return this.source.mtime?(0,ts.A)(this.source.mtime).format("LLL"):""}},methods:{formatFileSize:O.v7}}),vn=(0,q.A)(hn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",e._g({staticClass:"files-list__row",class:{"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading,"files-list__row--active":e.isActive},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag}},e.rowListeners),[e.source.attributes.failed?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{source:e.source,dragover:e.dragover},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{basename:e.basename,extension:e.extension,"files-list-width":e.filesListWidth,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{directives:[{name:"show",rawName:"v-show",value:!e.isRenamingSmallScreen,expression:"!isRenamingSmallScreen"}],ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}}),e._v(" "),!e.compact&&e.isSizeAvailable?t("td",{staticClass:"files-list__row-size",style:e.sizeOpacity,attrs:{"data-cy-files-list-row-size":""},on:{click:e.openDetailsIfAvailable}},[t("span",[e._v(e._s(e.size))])]):e._e(),e._v(" "),!e.compact&&e.isMtimeAvailable?t("td",{staticClass:"files-list__row-mtime",style:e.mtimeOpacity,attrs:{"data-cy-files-list-row-mtime":""},on:{click:e.openDetailsIfAvailable}},[e.mtime?t("NcDateTime",{attrs:{timestamp:e.mtime,"ignore-seconds":!0}}):t("span",[e._v(e._s(e.t("files","Unknown date")))])],1):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("td",{key:s.id,staticClass:"files-list__row-column-custom",class:"files-list__row-".concat(null===(n=e.currentView)||void 0===n?void 0:n.id,"-").concat(s.id),attrs:{"data-cy-files-list-row-column-custom":s.id},on:{click:e.openDetailsIfAvailable}},[t("CustomElementRender",{attrs:{"current-view":e.currentView,render:s.render,source:e.source}})],1)}))],2)}),[],!1,null,null,null).exports,wn=(0,o.pM)({name:"FileEntryGrid",components:{FileEntryActions:js,FileEntryCheckbox:Os,FileEntryName:Ys,FileEntryPreview:fn},mixins:[As],inheritAttrs:!1,setup(){const e=ss(),t=$t(),s=ft(),n=ns(),i=wt(),{currentView:a}=De();return{actionsMenuStore:e,draggingStore:t,filesStore:s,renamingStore:n,selectionStore:i,currentView:a}},data:()=>({gridMode:!0})}),yn=(0,q.A)(wn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row",class:{"files-list__row--active":e.isActive,"files-list__row--dragover":e.dragover,"files-list__row--loading":e.isLoading},attrs:{"data-cy-files-list-row":"","data-cy-files-list-row-fileid":e.fileid,"data-cy-files-list-row-name":e.source.basename,draggable:e.canDrag},on:{contextmenu:e.onRightClick,dragover:e.onDragOver,dragleave:e.onDragLeave,dragstart:e.onDragStart,dragend:e.onDragEnd,drop:e.onDrop}},[e.source.attributes.failed?t("span",{staticClass:"files-list__row--failed"}):e._e(),e._v(" "),t("FileEntryCheckbox",{attrs:{fileid:e.fileid,"is-loading":e.isLoading,nodes:e.nodes,source:e.source}}),e._v(" "),t("td",{staticClass:"files-list__row-name",attrs:{"data-cy-files-list-row-name":""}},[t("FileEntryPreview",{ref:"preview",attrs:{dragover:e.dragover,"grid-mode":!0,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}}),e._v(" "),t("FileEntryName",{ref:"name",attrs:{basename:e.basename,extension:e.extension,"files-list-width":e.filesListWidth,"grid-mode":!0,nodes:e.nodes,source:e.source},nativeOn:{auxclick:function(t){return e.execDefaultAction.apply(null,arguments)},click:function(t){return e.execDefaultAction.apply(null,arguments)}}})],1),e._v(" "),t("FileEntryActions",{ref:"actions",class:"files-list__row-actions-".concat(e.uniqueId),attrs:{"files-list-width":e.filesListWidth,"grid-mode":!0,loading:e.loading,opened:e.openedMenu,source:e.source},on:{"update:loading":function(t){e.loading=t},"update:opened":function(t){e.openedMenu=t}}})],1)}),[],!1,null,null,null).exports;var Cn=n(96763);const Tn={name:"FilesListHeader",props:{header:{type:Object,required:!0},currentFolder:{type:Object,required:!0},currentView:{type:Object,required:!0}},computed:{enabled(){return this.header.enabled(this.currentFolder,this.currentView)}},watch:{enabled(e){e&&this.header.updated(this.currentFolder,this.currentView)},currentFolder(){this.header.updated(this.currentFolder,this.currentView)}},mounted(){Cn.debug("Mounted",this.header.id),this.header.render(this.$refs.mount,this.currentFolder,this.currentView)}},An=(0,q.A)(Tn,(function(){var e=this,t=e._self._c;return t("div",{directives:[{name:"show",rawName:"v-show",value:e.enabled,expression:"enabled"}],class:"files-list__header-".concat(e.header.id)},[t("span",{ref:"mount"})])}),[],!1,null,null,null).exports,bn=o.Ay.extend({name:"FilesListTableFooter",components:{},props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},summary:{type:String,default:""},filesListWidth:{type:Number,default:0}},setup(){const e=vt(),t=ft(),{directory:s}=Vs(),{currentView:n}=De();return{filesStore:t,pathsStore:e,directory:s,currentView:n}},computed:{currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.directory)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.directory);return this.filesStore.getNode(t)},columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},totalSize(){var e;return null!==(e=this.currentFolder)&&void 0!==e&&e.size?(0,O.v7)(this.currentFolder.size,!0):(0,O.v7)(this.nodes.reduce(((e,t)=>e+t.size||0),0),!0)}},methods:{classForColumn(e){return{"files-list__row-column-custom":!0,["files-list__row-".concat(this.currentView.id,"-").concat(e.id)]:!0}},t:V.Tl}});var xn=n(16163),kn={};kn.styleTagTransform=he(),kn.setAttributes=ge(),kn.insert=me().bind(null,"head"),kn.domAPI=le(),kn.insertStyleElement=pe(),re()(xn.A,kn),xn.A&&xn.A.locals&&xn.A.locals;const _n=(0,q.A)(bn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",[t("th",{staticClass:"files-list__row-checkbox"},[t("span",{staticClass:"hidden-visually"},[e._v(e._s(e.t("files","Total rows summary")))])]),e._v(" "),t("td",{staticClass:"files-list__row-name"},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("span",[e._v(e._s(e.summary))])]),e._v(" "),t("td",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("td",{staticClass:"files-list__column files-list__row-size"},[t("span",[e._v(e._s(e.totalSize))])]):e._e(),e._v(" "),e.isMtimeAvailable?t("td",{staticClass:"files-list__column files-list__row-mtime"}):e._e(),e._v(" "),e._l(e.columns,(function(s){var n;return t("th",{key:s.id,class:e.classForColumn(s)},[t("span",[e._v(e._s(null===(n=s.summary)||void 0===n?void 0:n.call(s,e.nodes,e.currentView)))])])}))],2)}),[],!1,null,"23b7c4eb",null).exports;var Sn=n(25384),Fn=n(33388);const Nn=o.Ay.extend({setup(){const{currentView:e}=De();return{currentView:e}},computed:{...(0,a.aH)(Be,["getConfig","setSortingBy","toggleSortingDirection"]),sortingMode(){var e,t;return(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_mode)||(null===(t=this.currentView)||void 0===t?void 0:t.defaultSortKey)||"basename"},isAscSorting(){var e;return"desc"!==(null===(e=this.getConfig(this.currentView.id))||void 0===e?void 0:e.sorting_direction)}},methods:{toggleSortBy(e){this.sortingMode!==e?this.setSortingBy(e,this.currentView.id):this.toggleSortingDirection(this.currentView.id)}}}),Ln=(0,o.pM)({name:"FilesListTableHeaderButton",components:{MenuDown:Sn.A,MenuUp:Fn.A,NcButton:et.A},mixins:[Nn],props:{name:{type:String,required:!0},mode:{type:String,required:!0}},methods:{t:V.Tl}});var Un=n(21446),Pn={};Pn.styleTagTransform=he(),Pn.setAttributes=ge(),Pn.insert=me().bind(null,"head"),Pn.domAPI=le(),Pn.insertStyleElement=pe(),re()(Un.A,Pn),Un.A&&Un.A.locals&&Un.A.locals;const En=(0,q.A)(Ln,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcButton",{class:["files-list__column-sort-button",{"files-list__column-sort-button--active":e.sortingMode===e.mode,"files-list__column-sort-button--size":"size"===e.sortingMode}],attrs:{alignment:"size"===e.mode?"end":"start-reverse",type:"tertiary",title:e.name},on:{click:function(t){return e.toggleSortBy(e.mode)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.sortingMode!==e.mode||e.isAscSorting?t("MenuUp",{staticClass:"files-list__column-sort-button-icon"}):t("MenuDown",{staticClass:"files-list__column-sort-button-icon"})]},proxy:!0}])},[e._v(" "),t("span",{staticClass:"files-list__column-sort-button-text"},[e._v(e._s(e.name))])])}),[],!1,null,"db2d1330",null).exports,In=(0,o.pM)({name:"FilesListTableHeader",components:{FilesListTableHeaderButton:En,NcCheckboxRadioSwitch:Ae.A},mixins:[Nn],props:{isMtimeAvailable:{type:Boolean,default:!1},isSizeAvailable:{type:Boolean,default:!1},nodes:{type:Array,required:!0},filesListWidth:{type:Number,default:0}},setup(){const e=ft(),t=wt(),{currentView:s}=De();return{filesStore:e,selectionStore:t,currentView:s}},computed:{columns(){var e;return this.filesListWidth<512?[]:(null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},selectAllBind(){const e=(0,V.Tl)("files","Toggle selection for all files and folders");return{"aria-label":e,checked:this.isAllSelected,indeterminate:this.isSomeSelected,title:e}},selectedNodes(){return this.selectionStore.selected},isAllSelected(){return this.selectedNodes.length===this.nodes.length},isNoneSelected(){return 0===this.selectedNodes.length},isSomeSelected(){return!this.isAllSelected&&!this.isNoneSelected}},methods:{ariaSortForMode(e){return this.sortingMode===e?this.isAscSorting?"ascending":"descending":null},classForColumn(e){var t;return{"files-list__column":!0,"files-list__column--sortable":!!e.sort,"files-list__row-column-custom":!0,["files-list__row-".concat(null===(t=this.currentView)||void 0===t?void 0:t.id,"-").concat(e.id)]:!0}},onToggleAll(e){if(e){const e=this.nodes.map((e=>e.source)).filter(Boolean);se.debug("Added all nodes to selection",{selection:e}),this.selectionStore.setLastIndex(null),this.selectionStore.set(e)}else se.debug("Cleared selection"),this.selectionStore.reset()},resetSelection(){this.selectionStore.reset()},t:V.Tl}});var Dn=n(75458),zn={};zn.styleTagTransform=he(),zn.setAttributes=ge(),zn.insert=me().bind(null,"head"),zn.domAPI=le(),zn.insertStyleElement=pe(),re()(Dn.A,zn),Dn.A&&Dn.A.locals&&Dn.A.locals;const Bn=(0,q.A)(In,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("tr",{staticClass:"files-list__row-head"},[t("th",{staticClass:"files-list__column files-list__row-checkbox",on:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.resetSelection.apply(null,arguments)}}},[t("NcCheckboxRadioSwitch",e._b({on:{"update:checked":e.onToggleAll}},"NcCheckboxRadioSwitch",e.selectAllBind,!1))],1),e._v(" "),t("th",{staticClass:"files-list__column files-list__row-name files-list__column--sortable",attrs:{"aria-sort":e.ariaSortForMode("basename")}},[t("span",{staticClass:"files-list__row-icon"}),e._v(" "),t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Name"),mode:"basename"}})],1),e._v(" "),t("th",{staticClass:"files-list__row-actions"}),e._v(" "),e.isSizeAvailable?t("th",{staticClass:"files-list__column files-list__row-size",class:{"files-list__column--sortable":e.isSizeAvailable},attrs:{"aria-sort":e.ariaSortForMode("size")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Size"),mode:"size"}})],1):e._e(),e._v(" "),e.isMtimeAvailable?t("th",{staticClass:"files-list__column files-list__row-mtime",class:{"files-list__column--sortable":e.isMtimeAvailable},attrs:{"aria-sort":e.ariaSortForMode("mtime")}},[t("FilesListTableHeaderButton",{attrs:{name:e.t("files","Modified"),mode:"mtime"}})],1):e._e(),e._v(" "),e._l(e.columns,(function(s){return t("th",{key:s.id,class:e.classForColumn(s),attrs:{"aria-sort":e.ariaSortForMode(s.id)}},[s.sort?t("FilesListTableHeaderButton",{attrs:{name:s.title,mode:s.id}}):t("span",[e._v("\n\t\t\t"+e._s(s.title)+"\n\t\t")])],1)}))],2)}),[],!1,null,"68d3de81",null).exports;var jn=n(17334),Mn=n.n(jn),On=n(96763);const Rn=o.Ay.extend({name:"VirtualList",mixins:[Kt],props:{dataComponent:{type:[Object,Function],required:!0},dataKey:{type:String,required:!0},dataSources:{type:Array,required:!0},extraProps:{type:Object,default:()=>({})},scrollToIndex:{type:Number,default:0},gridMode:{type:Boolean,default:!1},caption:{type:String,default:""}},data(){return{index:this.scrollToIndex,beforeHeight:0,headerHeight:0,tableHeight:0,resizeObserver:null}},computed:{isReady(){return this.tableHeight>0},bufferItems(){return this.gridMode?this.columnCount:3},itemHeight(){return this.gridMode?197:55},itemWidth:()=>175,rowCount(){return Math.ceil((this.tableHeight-this.headerHeight)/this.itemHeight)+this.bufferItems/this.columnCount*2+1},columnCount(){return this.gridMode?Math.floor(this.filesListWidth/this.itemWidth):1},startIndex(){return Math.max(0,this.index-this.bufferItems)},shownItems(){return this.gridMode?this.rowCount*this.columnCount:this.rowCount},renderedItems(){if(!this.isReady)return[];const e=this.dataSources.slice(this.startIndex,this.startIndex+this.shownItems),t=e.filter((e=>Object.values(this.$_recycledPool).includes(e[this.dataKey]))).map((e=>e[this.dataKey])),s=Object.keys(this.$_recycledPool).filter((e=>!t.includes(this.$_recycledPool[e])));return e.map((e=>{const t=Object.values(this.$_recycledPool).indexOf(e[this.dataKey]);if(-1!==t)return{key:Object.keys(this.$_recycledPool)[t],item:e};const n=s.pop()||Math.random().toString(36).substr(2);return this.$_recycledPool[n]=e[this.dataKey],{key:n,item:e}}))},totalRowCount(){return Math.floor(this.dataSources.length/this.columnCount)},tbodyStyle(){const e=this.startIndex+this.rowCount>this.dataSources.length,t=this.dataSources.length-this.startIndex-this.shownItems,s=Math.floor(Math.min(this.dataSources.length-this.startIndex,t)/this.columnCount);return{paddingTop:"".concat(Math.floor(this.startIndex/this.columnCount)*this.itemHeight,"px"),paddingBottom:e?0:"".concat(s*this.itemHeight,"px"),minHeight:"".concat(this.totalRowCount*this.itemHeight,"px")}}},watch:{scrollToIndex(e){this.scrollTo(e)},totalRowCount(){this.scrollToIndex&&this.$nextTick((()=>this.scrollTo(this.scrollToIndex)))},columnCount(e,t){0!==t?this.scrollTo(this.index):On.debug("VirtualList: columnCount is 0, skipping scroll")}},mounted(){var e,t;const s=null===(e=this.$refs)||void 0===e?void 0:e.before,n=this.$el,i=null===(t=this.$refs)||void 0===t?void 0:t.thead;this.resizeObserver=new ResizeObserver(Mn()((()=>{var e,t,a;this.beforeHeight=null!==(e=null==s?void 0:s.clientHeight)&&void 0!==e?e:0,this.headerHeight=null!==(t=null==i?void 0:i.clientHeight)&&void 0!==t?t:0,this.tableHeight=null!==(a=null==n?void 0:n.clientHeight)&&void 0!==a?a:0,se.debug("VirtualList: resizeObserver updated"),this.onScroll()}),100,!1)),this.resizeObserver.observe(s),this.resizeObserver.observe(n),this.resizeObserver.observe(i),this.scrollToIndex&&this.scrollTo(this.scrollToIndex),this.$el.addEventListener("scroll",this.onScroll,{passive:!0}),this.$_recycledPool={}},beforeDestroy(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{scrollTo(e){const t=Math.ceil(this.dataSources.length/this.columnCount);if(t<this.rowCount)return void se.debug("VirtualList: Skip scrolling. nothing to scroll",{index:e,targetRow:t,rowCount:this.rowCount});this.index=e;const s=(Math.floor(e/this.columnCount)-.5)*this.itemHeight+this.beforeHeight;se.debug("VirtualList: scrolling to index "+e,{scrollTop:s,columnCount:this.columnCount}),this.$el.scrollTop=s},onScroll(){var e;null!==(e=this._onScrollHandle)&&void 0!==e||(this._onScrollHandle=requestAnimationFrame((()=>{this._onScrollHandle=null;const e=this.$el.scrollTop-this.beforeHeight,t=Math.floor(e/this.itemHeight)*this.columnCount;this.index=Math.max(0,t),this.$emit("scroll")})))}}}),Vn=(0,q.A)(Rn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list",attrs:{"data-cy-files-list":""}},[t("div",{ref:"before",staticClass:"files-list__before"},[e._t("before")],2),e._v(" "),e.$scopedSlots["header-overlay"]?t("div",{staticClass:"files-list__thead-overlay"},[e._t("header-overlay")],2):e._e(),e._v(" "),t("table",{staticClass:"files-list__table",class:{"files-list__table--with-thead-overlay":!!e.$scopedSlots["header-overlay"]}},[e.caption?t("caption",{staticClass:"hidden-visually"},[e._v("\n\t\t\t"+e._s(e.caption)+"\n\t\t")]):e._e(),e._v(" "),t("thead",{ref:"thead",staticClass:"files-list__thead",attrs:{"data-cy-files-list-thead":""}},[e._t("header")],2),e._v(" "),t("tbody",{staticClass:"files-list__tbody",class:e.gridMode?"files-list__tbody--grid":"files-list__tbody--list",style:e.tbodyStyle,attrs:{"data-cy-files-list-tbody":""}},e._l(e.renderedItems,(function(s,n){let{key:i,item:a}=s;return t(e.dataComponent,e._b({key:i,tag:"component",attrs:{source:a,index:n}},"component",e.extraProps,!1))})),1),e._v(" "),t("tfoot",{directives:[{name:"show",rawName:"v-show",value:e.isReady,expression:"isReady"}],staticClass:"files-list__tfoot",attrs:{"data-cy-files-list-tfoot":""}},[e._t("footer")],2)])])}),[],!1,null,null,null).exports,Hn=(0,O.qK)(),qn=(0,o.pM)({name:"FilesListTableHeaderActions",components:{NcActions:Ss.A,NcActionButton:_s.A,NcIconSvgWrapper:$.A,NcLoadingIcon:st.A},mixins:[Kt],props:{currentView:{type:Object,required:!0},selectedNodes:{type:Array,default:()=>[]}},setup:()=>({actionsMenuStore:ss(),filesStore:ft(),selectionStore:wt()}),data:()=>({loading:null}),computed:{dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e?void 0:e.dir)||"/").replace(/^(.+)\/$/,"$1")},enabledActions(){return Hn.filter((e=>e.execBatch)).filter((e=>!e.enabled||e.enabled(this.nodes,this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0)))},nodes(){return this.selectedNodes.map((e=>this.getNode(e))).filter(Boolean)},areSomeNodesLoading(){return this.nodes.some((e=>e.status===O.zI.LOADING))},openedMenu:{get(){return"global"===this.actionsMenuStore.opened},set(e){this.actionsMenuStore.opened=e?"global":null}},inlineActions(){return this.filesListWidth<512?0:this.filesListWidth<768?1:this.filesListWidth<1024?2:3}},methods:{getNode(e){return this.filesStore.getNode(e)},async onActionClick(e){const t=e.displayName(this.nodes,this.currentView),s=this.selectedNodes;try{this.loading=e.id,this.nodes.forEach((e=>{o.Ay.set(e,"status",O.zI.LOADING)}));const n=await e.execBatch(this.nodes,this.currentView,this.dir);if(!n.some((e=>null!==e)))return void this.selectionStore.reset();if(n.some((e=>!1===e))){const e=s.filter(((e,t)=>!1===n[t]));if(this.selectionStore.set(e),n.some((e=>null===e)))return;return void(0,Q.Qg)(this.t("files",'"{displayName}" failed on some elements ',{displayName:t}))}(0,Q.Te)(this.t("files",'"{displayName}" batch action executed successfully',{displayName:t})),this.selectionStore.reset()}catch(s){se.error("Error while executing action",{action:e,e:s}),(0,Q.Qg)(this.t("files",'"{displayName}" action failed',{displayName:t}))}finally{this.loading=null,this.nodes.forEach((e=>{o.Ay.set(e,"status",void 0)}))}},t:V.Tl}}),Wn=qn;var Gn=n(30651),Yn={};Yn.styleTagTransform=he(),Yn.setAttributes=ge(),Yn.insert=me().bind(null,"head"),Yn.domAPI=le(),Yn.insertStyleElement=pe(),re()(Gn.A,Yn),Gn.A&&Gn.A.locals&&Gn.A.locals;var $n=(0,q.A)(Wn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{staticClass:"files-list__column files-list__row-actions-batch"},[t("NcActions",{ref:"actionsMenu",attrs:{disabled:!!e.loading||e.areSomeNodesLoading,"force-name":!0,inline:e.inlineActions,"menu-name":e.inlineActions<=1?e.t("files","Actions"):null,open:e.openedMenu},on:{"update:open":function(t){e.openedMenu=t}}},e._l(e.enabledActions,(function(s){return t("NcActionButton",{key:s.id,class:"files-list__row-actions-batch-"+s.id,on:{click:function(t){return e.onActionClick(s)}},scopedSlots:e._u([{key:"icon",fn:function(){return[e.loading===s.id?t("NcLoadingIcon",{attrs:{size:18}}):t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline(e.nodes,e.currentView)}})]},proxy:!0}],null,!0)},[e._v("\n\t\t\t"+e._s(s.displayName(e.nodes,e.currentView))+"\n\t\t")])})),1)],1)}),[],!1,null,"91476734",null);const Kn=$n.exports,Jn=(0,o.pM)({name:"FilesListVirtual",components:{FilesListHeader:An,FilesListTableFooter:_n,FilesListTableHeader:Bn,VirtualList:Vn,FilesListTableHeaderActions:Kn},mixins:[Kt],props:{currentView:{type:O.Ss,required:!0},currentFolder:{type:O.vd,required:!0},nodes:{type:Array,required:!0}},setup:()=>({userConfigStore:Ne(),selectionStore:wt()}),data:()=>({FileEntry:vn,FileEntryGrid:yn,headers:(0,O.By)(),scrollToIndex:0,openFileId:null}),computed:{userConfig(){return this.userConfigStore.userConfig},fileId(){return parseInt(this.$route.params.fileid)||null},openFile(){return!!this.$route.query.openfile},summary(){return es(this.nodes)},isMtimeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.mtime))},isSizeAvailable(){return!(this.filesListWidth<768)&&this.nodes.some((e=>void 0!==e.size))},sortedHeaders(){return this.currentFolder&&this.currentView?[...this.headers].sort(((e,t)=>e.order-t.order)):[]},caption(){const e=(0,V.Tl)("files","List of files and folders."),t=this.currentView.caption||e,s=(0,V.Tl)("files","Column headers with buttons are sortable."),n=(0,V.Tl)("files","This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list.");return"".concat(t,"\n").concat(s,"\n").concat(n)},selectedNodes(){return this.selectionStore.selected},isNoneSelected(){return 0===this.selectedNodes.length}},watch:{fileId:{handler(e){this.scrollToFile(e,!1)},immediate:!0},openFile:{handler(){this.$nextTick((()=>{this.fileId&&(this.openFile?this.handleOpenFile(this.fileId):this.unselectFile())}))},immediate:!0}},mounted(){window.document.querySelector("main.app-content").addEventListener("dragover",this.onDragOver),(0,R.B1)("files:sidebar:closed",this.unselectFile),this.fileId&&this.openSidebarForFile(this.fileId)},beforeDestroy(){window.document.querySelector("main.app-content").removeEventListener("dragover",this.onDragOver),(0,R.al)("files:sidebar:closed",this.unselectFile)},methods:{openSidebarForFile(e){if(document.documentElement.clientWidth>1024&&this.currentFolder.fileid!==e){var t;const s=this.nodes.find((t=>t.fileid===e));s&&null!=dt&&null!==(t=dt.enabled)&&void 0!==t&&t.call(dt,[s],this.currentView)&&(se.debug("Opening sidebar on file "+s.path,{node:s}),dt.exec(s,this.currentView,this.currentFolder.path))}},scrollToFile(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(e){if(e===this.currentFolder.fileid)return;const s=this.nodes.findIndex((t=>t.fileid===e));t&&-1===s&&e!==this.currentFolder.fileid&&(0,Q.Qg)(this.t("files","File not found")),this.scrollToIndex=Math.max(0,s)}},unselectFile(){var e;this.openFile||""!==OCA.Files.Sidebar.file||window.OCP.Files.Router.goToRoute(null,{...this.$route.params,fileid:String(null!==(e=this.currentFolder.fileid)&&void 0!==e?e:"")},this.$route.query)},handleOpenFile(e){if(null===e)return;const t=this.nodes.find((t=>t.fileid===e));if(void 0===t||t.type===O.pt.Folder)return;se.debug("Opening file "+t.path,{node:t}),this.openFileId=e;const s=(0,O.qK)().filter((e=>!(null==e||!e.default))).filter((e=>!e.enabled||e.enabled([t],this.currentView))).sort(((e,t)=>(e.order||0)-(t.order||0))).at(0);null==s||s.exec(t,this.currentView,this.currentFolder.path)},onDragOver(e){var t;if(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))return;e.preventDefault(),e.stopPropagation();const s=this.$refs.table.$el.getBoundingClientRect().top,n=s+this.$refs.table.$el.getBoundingClientRect().height;e.clientY<s+100?this.$refs.table.$el.scrollTop=this.$refs.table.$el.scrollTop-25:e.clientY>n-50&&(this.$refs.table.$el.scrollTop=this.$refs.table.$el.scrollTop+25)},t:V.Tl}});var Qn=n(16855),Zn={};Zn.styleTagTransform=he(),Zn.setAttributes=ge(),Zn.insert=me().bind(null,"head"),Zn.domAPI=le(),Zn.insertStyleElement=pe(),re()(Qn.A,Zn),Qn.A&&Qn.A.locals&&Qn.A.locals;var Xn=n(42067),ei={};ei.styleTagTransform=he(),ei.setAttributes=ge(),ei.insert=me().bind(null,"head"),ei.domAPI=le(),ei.insertStyleElement=pe(),re()(Xn.A,ei),Xn.A&&Xn.A.locals&&Xn.A.locals;const ti=(0,q.A)(Jn,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("VirtualList",{ref:"table",attrs:{"data-component":e.userConfig.grid_view?e.FileEntryGrid:e.FileEntry,"data-key":"source","data-sources":e.nodes,"grid-mode":e.userConfig.grid_view,"extra-props":{isMtimeAvailable:e.isMtimeAvailable,isSizeAvailable:e.isSizeAvailable,nodes:e.nodes,filesListWidth:e.filesListWidth},"scroll-to-index":e.scrollToIndex,caption:e.caption},scopedSlots:e._u([e.isNoneSelected?null:{key:"header-overlay",fn:function(){return[t("span",{staticClass:"files-list__selected"},[e._v(e._s(e.t("files","{count} selected",{count:e.selectedNodes.length})))]),e._v(" "),t("FilesListTableHeaderActions",{attrs:{"current-view":e.currentView,"selected-nodes":e.selectedNodes}})]},proxy:!0},{key:"before",fn:function(){return e._l(e.sortedHeaders,(function(s){return t("FilesListHeader",{key:s.id,attrs:{"current-folder":e.currentFolder,"current-view":e.currentView,header:s}})}))},proxy:!0},{key:"header",fn:function(){return[t("FilesListTableHeader",{ref:"thead",attrs:{"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes}})]},proxy:!0},{key:"footer",fn:function(){return[t("FilesListTableFooter",{attrs:{"files-list-width":e.filesListWidth,"is-mtime-available":e.isMtimeAvailable,"is-size-available":e.isSizeAvailable,nodes:e.nodes,summary:e.summary}})]},proxy:!0}],null,!0)})}),[],!1,null,"91ee9762",null).exports,si={name:"TrayArrowDownIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ni=(0,q.A)(si,(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon tray-arrow-down-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],!1,null,null,null).exports,ii=(0,o.pM)({name:"DragAndDropNotice",components:{TrayArrowDownIcon:ni},props:{currentFolder:{type:Object,required:!0}},setup(){const{currentView:e}=De();return{currentView:e}},data:()=>({dragover:!1}),computed:{canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&O.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?this.t("files","Your have used your space quota and cannot upload files anymore"):this.canUpload?null:this.t("files","You don’t have permission to upload or create files here")},resetDragOver(){return Mn()((()=>{this.dragover=!1}),3e3)}},mounted(){const e=window.document.getElementById("app-content-vue");e.addEventListener("dragover",this.onDragOver),e.addEventListener("dragleave",this.onDragLeave),e.addEventListener("drop",this.onContentDrop)},beforeDestroy(){const e=window.document.getElementById("app-content-vue");e.removeEventListener("dragover",this.onDragOver),e.removeEventListener("dragleave",this.onDragLeave),e.removeEventListener("drop",this.onContentDrop)},methods:{onDragOver(e){var t;e.preventDefault(),(null===(t=e.dataTransfer)||void 0===t?void 0:t.types.includes("Files"))&&(this.dragover=!0,this.resetDragOver())},onDragLeave(e){var t;const s=e.currentTarget;null!=s&&s.contains(null!==(t=e.relatedTarget)&&void 0!==t?t:e.target)||this.dragover&&(this.dragover=!1,this.resetDragOver.clear())},onContentDrop(e){se.debug("Drag and drop cancelled, dropped on empty space",{event:e}),e.preventDefault(),this.dragover&&(this.dragover=!1,this.resetDragOver.clear())},async onDrop(e){var t,s,n;if(this.cantUploadLabel)return void(0,Q.Qg)(this.cantUploadLabel);if(null!==(t=this.$el.querySelector("tbody"))&&void 0!==t&&t.contains(e.target))return;e.preventDefault(),e.stopPropagation();const i=[...(null===(s=e.dataTransfer)||void 0===s?void 0:s.items)||[]],a=await Wt(i),r=await(null===(n=this.currentView)||void 0===n?void 0:n.getContents(this.currentFolder.path)),o=null==r?void 0:r.folder;if(!o)return void(0,Q.Qg)(this.t("files","Target folder does not exist any more"));if(e.button)return;se.debug("Dropped",{event:e,folder:o,fileTree:a});const l=(await Gt(a,o,r.contents)).findLast((e=>{var t;return e.status!==qe.S.FAILED&&!e.file.webkitRelativePath.includes("/")&&(null===(t=e.response)||void 0===t||null===(t=t.headers)||void 0===t?void 0:t["oc-fileid"])&&2===e.source.replace(o.source,"").split("/").length}));if(void 0!==l){se.debug("Scrolling to last upload in current folder",{lastUpload:l});const e={path:this.$route.path,params:{...this.$route.params,fileid:String(l.response.headers["oc-fileid"])},query:{...this.$route.query}};delete e.query.openfile,this.$router.push(e)}this.dragover=!1,this.resetDragOver.clear()},t:V.Tl}});var ai=n(94932),ri={};ri.styleTagTransform=he(),ri.setAttributes=ge(),ri.insert=me().bind(null,"head"),ri.domAPI=le(),ri.insertStyleElement=pe(),re()(ai.A,ri),ai.A&&ai.A.locals&&ai.A.locals;const oi=(0,q.A)(ii,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("div",{directives:[{name:"show",rawName:"v-show",value:e.dragover,expression:"dragover"}],staticClass:"files-list__drag-drop-notice",attrs:{"data-cy-files-drag-drop-area":""},on:{drop:e.onDrop}},[t("div",{staticClass:"files-list__drag-drop-notice-wrapper"},[e.canUpload&&!e.isQuotaExceeded?[t("TrayArrowDownIcon",{attrs:{size:48}}),e._v(" "),t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.t("files","Drag and drop files here to upload"))+"\n\t\t\t")])]:[t("h3",{staticClass:"files-list-drag-drop-notice__title"},[e._v("\n\t\t\t\t"+e._s(e.cantUploadLabel)+"\n\t\t\t")])]],2)])}),[],!1,null,"06f3ea08",null).exports;var li,di=n(96763);const mi=void 0!==(null===(li=(0,Ve.F)())||void 0===li?void 0:li.files_sharing),ci=(0,o.pM)({name:"FilesList",components:{BreadCrumbs:Xt,DragAndDropNotice:oi,FilesListVirtual:ti,LinkIcon:Je.A,ListViewIcon:Ze,NcAppContent:Xe.A,NcButton:et.A,NcEmptyContent:tt.A,NcIconSvgWrapper:$.A,NcLoadingIcon:st.A,PlusIcon:nt.A,AccountPlusIcon:at,UploadPicker:qe.U,ViewGridIcon:ot,IconAlertCircleOutline:Ye.A,IconReload:Ke},mixins:[Kt,Nn],setup(){var e;const t=ft(),s=vt(),n=wt(),i=Ct(),a=Ne(),r=Be(),{currentView:o}=De(),l=null===(e=(0,J.C)("core","config",[])["enable_non-accessible_features"])||void 0===e||e;return{currentView:o,n:V.n,t:V.t,filesStore:t,pathsStore:s,selectionStore:n,uploaderStore:i,userConfigStore:a,viewConfigStore:r,enableGridView:l,ShareType:He.I}},data:()=>({filterText:"",loading:!0,error:null,promise:null,unsubscribeStoreCallback:()=>{}}),computed:{userConfig(){return this.userConfigStore.userConfig},pageHeading(){var e,t;const s=null!==(e=null===(t=this.currentView)||void 0===t?void 0:t.name)&&void 0!==e?e:(0,V.t)("files","Files");return void 0===this.currentFolder||"/"===this.dir?s:"".concat(this.currentFolder.displayname," - ").concat(s)},dir(){var e;return((null===(e=this.$route)||void 0===e||null===(e=e.query)||void 0===e||null===(e=e.dir)||void 0===e?void 0:e.toString())||"/").replace(/^(.+)\/$/,"$1")},fileId(){var e,t;const s=Number.parseInt(null!==(e=null===(t=this.$route)||void 0===t?void 0:t.params.fileid)&&void 0!==e?e:"");return Number.isNaN(s)?null:s},currentFolder(){var e;if(null===(e=this.currentView)||void 0===e||!e.id)return;if("/"===this.dir)return this.filesStore.getRoot(this.currentView.id);const t=this.pathsStore.getPath(this.currentView.id,this.dir);return void 0!==t?this.filesStore.getNode(t):void 0},dirContentsSorted(){var e;if(!this.currentView)return[];let t=[...this.dirContents];this.filterText&&(t=t.filter((e=>e.basename.toLowerCase().includes(this.filterText.toLowerCase()))),di.debug("Files view filtered",t));const s=((null===(e=this.currentView)||void 0===e?void 0:e.columns)||[]).find((e=>e.id===this.sortingMode));if(null!=s&&s.sort&&"function"==typeof s.sort){const e=[...this.dirContents].sort(s.sort);return this.isAscSorting?e:e.reverse()}return(0,O.ur)(t,{sortFavoritesFirst:this.userConfig.sort_favorites_first,sortFoldersFirst:this.userConfig.sort_folders_first,sortingMode:this.sortingMode,sortingOrder:this.isAscSorting?"asc":"desc"})},dirContents(){var e,t;const s=null===(e=this.userConfigStore)||void 0===e?void 0:e.userConfig.show_hidden;return((null===(t=this.currentFolder)||void 0===t?void 0:t._children)||[]).map(this.getNode).filter((e=>{var t;return s?!!e:e&&!0!==(null==e||null===(t=e.attributes)||void 0===t?void 0:t.hidden)&&!(null!=e&&e.basename.startsWith("."))}))},isEmptyDir(){return 0===this.dirContents.length},isRefreshing(){return void 0!==this.currentFolder&&!this.isEmptyDir&&this.loading},toPreviousDir(){const e=this.dir.split("/").slice(0,-1).join("/")||"/";return{...this.$route,query:{dir:e}}},shareAttributes(){var e,t;if(null!==(e=this.currentFolder)&&void 0!==e&&null!==(e=e.attributes)&&void 0!==e&&e["share-types"])return Object.values((null===(t=this.currentFolder)||void 0===t||null===(t=t.attributes)||void 0===t?void 0:t["share-types"])||{}).flat()},shareButtonLabel(){return this.shareAttributes?this.shareButtonType===He.I.Link?this.t("files","Shared by link"):this.t("files","Shared"):this.t("files","Share")},shareButtonType(){return this.shareAttributes?this.shareAttributes.some((e=>e===He.I.Link))?He.I.Link:He.I.User:null},gridViewButtonLabel(){return this.userConfig.grid_view?this.t("files","Switch to list view"):this.t("files","Switch to grid view")},canUpload(){return this.currentFolder&&0!=(this.currentFolder.permissions&O.aX.CREATE)},isQuotaExceeded(){var e;return 0===(null===(e=this.currentFolder)||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e["quota-available-bytes"])},cantUploadLabel(){return this.isQuotaExceeded?this.t("files","Your have used your space quota and cannot upload files anymore"):this.t("files","You don’t have permission to upload or create files here")},canShare(){return mi&&this.currentFolder&&0!=(this.currentFolder.permissions&O.aX.SHARE)},onSearch(){return Mn()((e=>{di.debug("Files app handling search event from unified search...",e),this.filterText=e.query}),500)}},watch:{pageHeading(){var e,t;document.title="".concat(this.pageHeading," - ").concat(null!==(e=null===(t=(0,Ve.F)().theming)||void 0===t?void 0:t.productName)&&void 0!==e?e:"Nextcloud")},currentView(e,t){(null==e?void 0:e.id)!==(null==t?void 0:t.id)&&(se.debug("View changed",{newView:e,oldView:t}),this.selectionStore.reset(),this.resetSearch(),this.fetchContent())},dir(e,t){var s,n;se.debug("Directory changed",{newDir:e,oldDir:t}),this.selectionStore.reset(),this.resetSearch(),null!==(s=window.OCA.Files.Sidebar)&&void 0!==s&&s.close&&window.OCA.Files.Sidebar.close(),this.fetchContent();const i=null===(n=this.$refs)||void 0===n?void 0:n.filesListVirtual;null!=i&&i.$el&&(i.$el.scrollTop=0)},dirContents(e){se.debug("Directory contents changed",{view:this.currentView,folder:this.currentFolder,contents:e}),(0,R.Ic)("files:list:updated",{view:this.currentView,folder:this.currentFolder,contents:e})}},mounted(){this.fetchContent(),(0,R.B1)("files:node:deleted",this.onNodeDeleted),(0,R.B1)("files:node:updated",this.onUpdatedNode),(0,R.B1)("nextcloud:unified-search.search",this.onSearch),(0,R.B1)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback=this.userConfigStore.$subscribe((()=>this.fetchContent()),{deep:!0})},unmounted(){(0,R.al)("files:node:deleted",this.onNodeDeleted),(0,R.al)("files:node:updated",this.onUpdatedNode),(0,R.al)("nextcloud:unified-search.search",this.onSearch),(0,R.al)("nextcloud:unified-search.reset",this.resetSearch),this.unsubscribeStoreCallback()},methods:{async fetchContent(){this.loading=!0,this.error=null;const e=this.dir,t=this.currentView;if(t){this.promise&&"cancel"in this.promise&&(this.promise.cancel(),se.debug("Cancelled previous ongoing fetch")),this.promise=t.getContents(e);try{const{folder:s,contents:n}=await this.promise;se.debug("Fetched contents",{dir:e,folder:s,contents:n}),this.filesStore.updateNodes(n),this.$set(s,"_children",n.map((e=>e.source))),"/"===e?this.filesStore.setRoot({service:t.id,root:s}):s.fileid?(this.filesStore.updateNodes([s]),this.pathsStore.addPath({service:t.id,source:s.source,path:e})):se.error("Invalid root folder returned",{dir:e,folder:s,currentView:t}),n.filter((e=>"folder"===e.type)).forEach((s=>{this.pathsStore.addPath({service:t.id,source:s.source,path:(0,We.join)(e,s.basename)})}))}catch(e){se.error("Error while fetching content",{error:e}),this.error=function(e){if(e instanceof Error){if(function(e){return e instanceof Error&&"status"in e&&"response"in e}(e)){var t;const s=e.status||(null===(t=e.response)||void 0===t?void 0:t.status)||0;if([400,404,405].includes(s))return(0,V.t)("files","Folder not found");if(403===s)return(0,V.t)("files","This operation is forbidden");if(500===s)return(0,V.t)("files","This directory is unavailable, please check the logs or contact the administrator");if(503===s)return(0,V.t)("files","Storage is temporarily not available")}return(0,V.t)("files","Unexpected error: {error}",{error:e.message})}return(0,V.t)("files","Unknown error")}(e)}finally{this.loading=!1}}else se.debug("The current view doesn't exists or is not ready.",{currentView:t})},getNode(e){return this.filesStore.getNode(e)},onNodeDeleted(e){var t,s,n;e.fileid&&e.fileid===this.fileId&&(e.fileid===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)?window.OCP.Files.Router.goToRoute(null,{view:this.$route.params.view},{dir:null!==(s=null===(n=this.currentFolder)||void 0===n?void 0:n.dirname)&&void 0!==s?s:"/"}):window.OCP.Files.Router.goToRoute(null,{...this.$route.params,fileid:void 0},{...this.$route.query,openfile:void 0}))},onUpload(e){var t;(0,We.dirname)(e.source)===(null===(t=this.currentFolder)||void 0===t?void 0:t.source)&&this.fetchContent()},async onUploadFail(e){var t;const s=(null===(t=e.response)||void 0===t?void 0:t.status)||0;if(507!==s)if(404!==s&&409!==s)if(403!==s){try{var n;const t=new Ge.Parser({trim:!0,explicitRoot:!1}),s=(await t.parseStringPromise(null===(n=e.response)||void 0===n?void 0:n.data))["s:message"][0];if("string"==typeof s&&""!==s.trim())return void(0,Q.Qg)(this.t("files","Error during upload: {message}",{message:s}))}catch(e){se.error("Error while parsing",{error:e})}0===s?(0,Q.Qg)(this.t("files","Unknown error during upload")):(0,Q.Qg)(this.t("files","Error during upload, status code {status}",{status:s}))}else(0,Q.Qg)(this.t("files","Operation is blocked by access control"));else(0,Q.Qg)(this.t("files","Target folder does not exist any more"));else(0,Q.Qg)(this.t("files","Not enough free space"))},onUpdatedNode(e){var t;(null==e?void 0:e.fileid)===(null===(t=this.currentFolder)||void 0===t?void 0:t.fileid)&&this.fetchContent()},resetSearch(){this.onSearch.clear(),this.filterText=""},openSharingSidebar(){var e;this.currentFolder?(null!==(e=window)&&void 0!==e&&null!==(e=e.OCA)&&void 0!==e&&null!==(e=e.Files)&&void 0!==e&&null!==(e=e.Sidebar)&&void 0!==e&&e.setActiveTab&&window.OCA.Files.Sidebar.setActiveTab("sharing"),dt.exec(this.currentFolder,this.currentView,this.currentFolder.path)):se.debug("No current folder found for opening sharing sidebar")},toggleGridView(){this.userConfigStore.update("grid_view",!this.userConfig.grid_view)}}});var gi=n(4195),ui={};ui.styleTagTransform=he(),ui.setAttributes=ge(),ui.insert=me().bind(null,"head"),ui.domAPI=le(),ui.insertStyleElement=pe(),re()(gi.A,ui),gi.A&&gi.A.locals&&gi.A.locals;const pi=(0,q.A)(ci,(function(){var e,t,s=this,n=s._self._c;return s._self._setupProxy,n("NcAppContent",{attrs:{"page-heading":s.pageHeading,"data-cy-files-content":""}},[n("div",{staticClass:"files-list__header"},[n("BreadCrumbs",{attrs:{path:s.dir},on:{reload:s.fetchContent},scopedSlots:s._u([{key:"actions",fn:function(){return[s.canShare&&s.filesListWidth>=512?n("NcButton",{staticClass:"files-list__header-share-button",class:{"files-list__header-share-button--shared":s.shareButtonType},attrs:{"aria-label":s.shareButtonLabel,title:s.shareButtonLabel,type:"tertiary"},on:{click:s.openSharingSidebar},scopedSlots:s._u([{key:"icon",fn:function(){return[s.shareButtonType===s.ShareType.Link?n("LinkIcon"):n("AccountPlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,4106306959)}):s._e(),s._v(" "),!s.canUpload||s.isQuotaExceeded?n("NcButton",{staticClass:"files-list__header-upload-button--disabled",attrs:{"aria-label":s.cantUploadLabel,title:s.cantUploadLabel,disabled:!0,type:"secondary"},scopedSlots:s._u([{key:"icon",fn:function(){return[n("PlusIcon",{attrs:{size:20}})]},proxy:!0}],null,!1,2953566425)},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","New"))+"\n\t\t\t\t")]):s.currentFolder?n("UploadPicker",{staticClass:"files-list__header-upload-button",attrs:{content:s.dirContents,destination:s.currentFolder,multiple:!0},on:{failed:s.onUploadFail,uploaded:s.onUpload}}):s._e()]},proxy:!0}])}),s._v(" "),s.filesListWidth>=512&&s.enableGridView?n("NcButton",{staticClass:"files-list__header-grid-button",attrs:{"aria-label":s.gridViewButtonLabel,title:s.gridViewButtonLabel,type:"tertiary"},on:{click:s.toggleGridView},scopedSlots:s._u([{key:"icon",fn:function(){return[s.userConfig.grid_view?n("ListViewIcon"):n("ViewGridIcon")]},proxy:!0}],null,!1,1682960703)}):s._e(),s._v(" "),s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__refresh-icon"}):s._e()],1),s._v(" "),!s.loading&&s.canUpload?n("DragAndDropNotice",{attrs:{"current-folder":s.currentFolder}}):s._e(),s._v(" "),s.loading&&!s.isRefreshing?n("NcLoadingIcon",{staticClass:"files-list__loading-icon",attrs:{size:38,name:s.t("files","Loading current folder")}}):!s.loading&&s.isEmptyDir?[s.error?n("NcEmptyContent",{attrs:{name:s.error,"data-cy-files-content-error":""},scopedSlots:s._u([{key:"action",fn:function(){return[n("NcButton",{attrs:{type:"secondary"},on:{click:s.fetchContent},scopedSlots:s._u([{key:"icon",fn:function(){return[n("IconReload",{attrs:{size:20}})]},proxy:!0}],null,!1,3448385010)},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","Retry"))+"\n\t\t\t\t")])]},proxy:!0},{key:"icon",fn:function(){return[n("IconAlertCircleOutline")]},proxy:!0}],null,!1,2673163798)}):n("NcEmptyContent",{attrs:{name:(null===(e=s.currentView)||void 0===e?void 0:e.emptyTitle)||s.t("files","No files in here"),description:(null===(t=s.currentView)||void 0===t?void 0:t.emptyCaption)||s.t("files","Upload some content or sync with your devices!"),"data-cy-files-content-empty":""},scopedSlots:s._u(["/"!==s.dir?{key:"action",fn:function(){return[n("NcButton",{attrs:{"aria-label":s.t("files","Go to the previous folder"),type:"primary",to:s.toPreviousDir}},[s._v("\n\t\t\t\t\t"+s._s(s.t("files","Go back"))+"\n\t\t\t\t")])]},proxy:!0}:null,{key:"icon",fn:function(){return[n("NcIconSvgWrapper",{attrs:{svg:s.currentView.icon}})]},proxy:!0}],null,!0)})]:n("FilesListVirtual",{ref:"filesListVirtual",attrs:{"current-folder":s.currentFolder,"current-view":s.currentView,nodes:s.dirContentsSorted}})],2)}),[],!1,null,"575ac9fe",null).exports,fi=(0,o.pM)({name:"FilesApp",components:{NcContent:M.A,FilesList:pi,Navigation:Re}}),hi=(0,q.A)(fi,(function(){var e=this,t=e._self._c;return e._self._setupProxy,t("NcContent",{attrs:{"app-name":"files"}},[t("Navigation"),e._v(" "),t("FilesList")],1)}),[],!1,null,null,null).exports;var vi,wi;n.nc=btoa((0,r.do)()),window.OCA.Files=null!==(vi=window.OCA.Files)&&void 0!==vi?vi:{},window.OCP.Files=null!==(wi=window.OCP.Files)&&void 0!==wi?wi:{};const yi=new class{constructor(e){var t,s,n;t=this,n=void 0,(s=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(s="_router"))in t?Object.defineProperty(t,s,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[s]=n,this._router=e}get name(){return this._router.currentRoute.name}get query(){return this._router.currentRoute.query||{}}get params(){return this._router.currentRoute.params||{}}goTo(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this._router.push({path:e,replace:t})}goToRoute(e,t,s,n){return this._router.push({name:e,query:s,params:t,replace:n})}}(z);Object.assign(window.OCP.Files,{Router:yi}),o.Ay.use(a.R2);const Ci=new class{constructor(){var e,t,s;e=this,s=void 0,(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var s=e[Symbol.toPrimitive];if(void 0!==s){var n=s.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t="_settings"))in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,this._settings=[],j.debug("OCA.Files.Settings initialized")}register(e){return this._settings.filter((t=>t.name===e.name)).length>0?(j.error("A setting with the same name is already registered"),!1):(this._settings.push(e),!0)}get settings(){return this._settings}};Object.assign(window.OCA.Files,{Settings:Ci}),Object.assign(window.OCA.Files.Settings,{Setting:class{constructor(e,t){let{el:s,open:n,close:i}=t;B(this,"_close",void 0),B(this,"_el",void 0),B(this,"_name",void 0),B(this,"_open",void 0),this._name=e,this._el=s,this._open=n,this._close=i,"function"!=typeof this._open&&(this._open=()=>{}),"function"!=typeof this._close&&(this._close=()=>{})}get name(){return this._name}get el(){return this._el}get open(){return this._open}get close(){return this._close}}}),new(o.Ay.extend(hi))({router:z,pinia:l}).$mount("#content")},96667:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}","",{version:3,sources:["webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css"],names:[],mappings:"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA",sourcesContent:[".upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}"],sourceRoot:""}]);const o=r},32773:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__breadcrumbs[data-v-20858d70]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px;min-width:0}.files-list__breadcrumbs[data-v-20858d70] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-20858d70]{flex-direction:column !important;align-items:flex-start !important}","",{version:3,sources:["webpack://./apps/files/src/components/BreadCrumbs.vue"],names:[],mappings:"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,WAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA",sourcesContent:["\n.files-list__breadcrumbs {\n\t// Take as much space as possible\n\tflex: 1 1 100% !important;\n\twidth: 100%;\n\theight: 100%;\n\tmargin-block: 0;\n\tmargin-inline: 10px;\n\tmin-width: 0;\n\n\t:deep() {\n\t\ta {\n\t\t\tcursor: pointer !important;\n\t\t}\n\t}\n\n\t&--with-progress {\n\t\tflex-direction: column !important;\n\t\talign-items: flex-start !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},94932:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__drag-drop-notice[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-06f3ea08]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropNotice.vue"],names:[],mappings:"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA",sourcesContent:["\n.files-list__drag-drop-notice {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\t// Breadcrumbs height + row thead height\n\tmin-height: calc(58px + 55px);\n\tmargin: 0;\n\tuser-select: none;\n\tcolor: var(--color-text-maxcontrast);\n\tbackground-color: var(--color-main-background);\n\tborder-color: black;\n\n\th3 {\n\t\tmargin-left: 16px;\n\t\tcolor: inherit;\n\t}\n\n\t&-wrapper {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\theight: 15vh;\n\t\tmax-height: 70%;\n\t\tpadding: 0 5vw;\n\t\tborder: 2px var(--color-border-dark) dashed;\n\t\tborder-radius: var(--border-radius-large);\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},76810:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}","",{version:3,sources:["webpack://./apps/files/src/components/DragAndDropPreview.vue"],names:[],mappings:"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA",sourcesContent:["\n$size: 32px;\n$stack-shift: 6px;\n\n.files-list-drag-image {\n\tposition: absolute;\n\ttop: -9999px;\n\tleft: -9999px;\n\tdisplay: flex;\n\toverflow: hidden;\n\talign-items: center;\n\theight: 44px;\n\tpadding: 6px 12px;\n\tbackground: var(--color-main-background);\n\n\t&__icon,\n\t.files-list__row-icon {\n\t\tdisplay: flex;\n\t\toverflow: hidden;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 32px;\n\t\theight: 32px;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t&__icon {\n\t\toverflow: visible;\n\t\tmargin-right: 12px;\n\n\t\timg {\n\t\t\tmax-width: 100%;\n\t\t\tmax-height: 100%;\n\t\t}\n\n\t\t.material-design-icon {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t&.folder-icon {\n\t\t\t\tcolor: var(--color-primary-element);\n\t\t\t}\n\t\t}\n\n\t\t// Previews container\n\t\t> span {\n\t\t\tdisplay: flex;\n\n\t\t\t// Stack effect if more than one element\n\t\t\t.files-list__row-icon + .files-list__row-icon {\n\t\t\t\tmargin-top: $stack-shift;\n\t\t\t\tmargin-left: $stack-shift - $size;\n\t\t\t\t& + .files-list__row-icon {\n\t\t\t\t\tmargin-top: $stack-shift * 2;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// If we have manually clone the preview,\n\t\t\t// let's hide any fallback icons\n\t\t\t&:not(:empty) + * {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__name {\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},14781:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".favorite-marker-icon[data-v-42ea6dd4]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue"],names:[],mappings:"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA",sourcesContent:["\n.favorite-marker-icon {\n\tcolor: var(--color-favorite);\n\t// Override NcIconSvgWrapper defaults (clickable area)\n\tmin-width: unset !important;\n min-height: unset !important;\n\n\t:deep() {\n\t\tsvg {\n\t\t\t// We added a stroke for a11y so we must increase the size to include the stroke\n\t\t\twidth: 26px !important;\n\t\t\theight: 26px !important;\n\n\t\t\t// Override NcIconSvgWrapper defaults of 20px\n\t\t\tmax-width: unset !important;\n\t\t\tmax-height: unset !important;\n\n\t\t\t// Sow a border around the icon for better contrast\n\t\t\tpath {\n\t\t\t\tstroke: var(--color-main-background);\n\t\t\t\tstroke-width: 8px;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t\tpaint-order: stroke;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},11298:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA",sourcesContent:['\n// Allow right click to define the position of the menu\n// only if defined\nmain.app-content[style*="mouse-pos-x"] .v-popper__popper {\n\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\n\n\t// If the menu is too close to the bottom, we move it up\n\t&[data-popper-placement="top"] {\n\t\t// 34px added to align with the top of the cursor\n\t\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\n\t}\n\t// Hide arrow if floating\n\t.v-popper__arrow-container {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const o=r},85722:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue"],names:[],mappings:"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA",sourcesContent:["\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\n\t.button-vue__text {\n\t\tcolor: var(--color-primary-element);\n\t}\n\t.button-vue__icon {\n\t\tcolor: var(--color-primary-element);\n\t}\n}\n"],sourceRoot:""}]);const o=r},81038:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"button.files-list__row-name-link[data-v-1b7d6a24]{background-color:unset;border:none;font-weight:normal}button.files-list__row-name-link[data-v-1b7d6a24]:active{background-color:unset !important}","",{version:3,sources:["webpack://./apps/files/src/components/FileEntry/FileEntryName.vue"],names:[],mappings:"AACA,kDACC,sBAAA,CACA,WAAA,CACA,kBAAA,CAEA,yDAEC,iCAAA",sourcesContent:["\nbutton.files-list__row-name-link {\n\tbackground-color: unset;\n\tborder: none;\n\tfont-weight: normal;\n\n\t&:active {\n\t\t// No active styles - handled by the row entry\n\t\tbackground-color: unset !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},16163:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tr[data-v-23b7c4eb]{margin-bottom:max(25vh,var(--body-container-margin));border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-23b7c4eb]{user-select:none;color:var(--color-text-maxcontrast) !important}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableFooter.vue"],names:[],mappings:"AAEA,oBACC,oDAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA",sourcesContent:["\n// Scoped row\ntr {\n\tmargin-bottom: max(25vh, var(--body-container-margin));\n\tborder-top: 1px solid var(--color-border);\n\t// Prevent hover effect on the whole row\n\tbackground-color: transparent !important;\n\tborder-bottom: none !important;\n\n\ttd {\n\t\tuser-select: none;\n\t\t// Make sure the cell colors don't apply to column headers\n\t\tcolor: var(--color-text-maxcontrast) !important;\n\t}\n}\n"],sourceRoot:""}]);const o=r},75458:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column[data-v-68d3de81]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-68d3de81]{cursor:pointer}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeader.vue"],names:[],mappings:"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA",sourcesContent:["\n.files-list__column {\n\tuser-select: none;\n\t// Make sure the cell colors don't apply to column headers\n\tcolor: var(--color-text-maxcontrast) !important;\n\n\t&--sortable {\n\t\tcursor: pointer;\n\t}\n}\n\n"],sourceRoot:""}]);const o=r},30651:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__row-actions-batch[data-v-91476734]{flex:1 1 100% !important;max-width:100%}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderActions.vue"],names:[],mappings:"AACA,gDACC,wBAAA,CACA,cAAA",sourcesContent:["\n.files-list__row-actions-batch {\n\tflex: 1 1 100% !important;\n\tmax-width: 100%;\n}\n"],sourceRoot:""}]);const o=r},21446:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list__column-sort-button[data-v-db2d1330]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-db2d1330]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-db2d1330]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-db2d1330]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-db2d1330]{opacity:1}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListTableHeaderButton.vue"],names:[],mappings:"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA",sourcesContent:["\n.files-list__column-sort-button {\n\t// Compensate for cells margin\n\tmargin: 0 calc(var(--cell-margin) * -1);\n\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\n\n\t&-text {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\tfont-weight: normal;\n\t}\n\n\t&-icon {\n\t\tcolor: var(--color-text-maxcontrast);\n\t\topacity: 0;\n\t\ttransition: opacity var(--animation-quick);\n\t\tinset-inline-start: -10px;\n\t}\n\n\t&--size &-icon {\n\t\tinset-inline-start: 10px;\n\t}\n\n\t&--active &-icon,\n\t&:hover &-icon,\n\t&:focus &-icon,\n\t&:active &-icon {\n\t\topacity: 1;\n\t}\n}\n"],sourceRoot:""}]);const o=r},16855:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".files-list[data-v-91ee9762]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-91ee9762] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-91ee9762] tbody tr{contain:strict}.files-list[data-v-91ee9762] tbody tr:hover,.files-list[data-v-91ee9762] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-91ee9762] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-91ee9762] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-91ee9762] .files-list__table{display:block}.files-list[data-v-91ee9762] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-91ee9762] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-91ee9762] .files-list__thead,.files-list[data-v-91ee9762] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-91ee9762] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-91ee9762] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-91ee9762] td,.files-list[data-v-91ee9762] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-91ee9762] td span,.files-list[data-v-91ee9762] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-91ee9762] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-91ee9762] .files-list__row-checkbox{justify-content:center}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-91ee9762] .files-list__row:hover,.files-list[data-v-91ee9762] .files-list__row:focus,.files-list[data-v-91ee9762] .files-list__row:active,.files-list[data-v-91ee9762] .files-list__row--active,.files-list[data-v-91ee9762] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-91ee9762] .files-list__row:hover>*,.files-list[data-v-91ee9762] .files-list__row:focus>*,.files-list[data-v-91ee9762] .files-list__row:active>*,.files-list[data-v-91ee9762] .files-list__row--active>*,.files-list[data-v-91ee9762] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-91ee9762] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-91ee9762] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-91ee9762] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-91ee9762] .files-list__row-icon *{cursor:pointer}.files-list[data-v-91ee9762] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-91ee9762] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-91ee9762] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-91ee9762] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-91ee9762] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-91ee9762] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link{display:flex;align-items:center;text-align:start;width:100%;height:100%;min-width:0;margin:0}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus-visible{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus .files-list__row-name-text{outline:var(--border-width-input-focused) solid var(--color-main-text) !important;border-radius:var(--border-radius-element)}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:var(--default-grid-baseline) calc(2*var(--default-grid-baseline));margin-left:-10px;display:inline-flex}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-91ee9762] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-91ee9762] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-91ee9762] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-91ee9762] .files-list__row-actions{width:auto}.files-list[data-v-91ee9762] .files-list__row-actions~td,.files-list[data-v-91ee9762] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-91ee9762] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-91ee9762] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-91ee9762] .files-list__row-mtime,.files-list[data-v-91ee9762] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-91ee9762] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-91ee9762] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-91ee9762] .files-list__row-column-custom{width:calc(var(--row-height)*2)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,qFACC,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CACA,QAAA,CAGA,mGACC,uBAAA,CAID,sHACC,iFAAA,CACA,0CAAA,CAED,0IACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,yEAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA",sourcesContent:["\n.files-list {\n\t--row-height: 55px;\n\t--cell-margin: 14px;\n\n\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\n\t--checkbox-size: 24px;\n\t--clickable-area: 44px;\n\t--icon-preview-size: 32px;\n\n\toverflow: auto;\n\theight: 100%;\n\twill-change: scroll-position;\n\n\t& :deep() {\n\t\t// Table head, body and footer\n\t\ttbody {\n\t\t\twill-change: padding;\n\t\t\tcontain: layout paint style;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\t// Necessary for virtual scrolling absolute\n\t\t\tposition: relative;\n\n\t\t\t/* Hover effect on tbody lines only */\n\t\t\ttr {\n\t\t\t\tcontain: strict;\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\tbackground-color: var(--color-background-dark);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Before table and thead\n\t\t.files-list__before {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\n\t\t.files-list__selected {\n\t\t\tpadding-right: 12px;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t.files-list__table {\n\t\t\tdisplay: block;\n\n\t\t\t&.files-list__table--with-thead-overlay {\n\t\t\t\t// Hide the table header below the overlay\n\t\t\t\tmargin-top: calc(-1 * var(--row-height));\n\t\t\t}\n\t\t}\n\n\t\t.files-list__thead-overlay {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\ttop: 0;\n\t\t\t// Save space for a row checkbox\n\t\t\tmargin-left: var(--row-height);\n\t\t\t// More than .files-list__thead\n\t\t\tz-index: 20;\n\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\t// Reuse row styles\n\t\t\tbackground-color: var(--color-main-background);\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\t.files-list__thead,\n\t\t.files-list__tfoot {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\twidth: 100%;\n\t\t\tbackground-color: var(--color-main-background);\n\n\t\t}\n\n\t\t// Table header\n\t\t.files-list__thead {\n\t\t\t// Pinned on top when scrolling\n\t\t\tposition: sticky;\n\t\t\tz-index: 10;\n\t\t\ttop: 0;\n\t\t}\n\n\t\ttr {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\twidth: 100%;\n\t\t\tuser-select: none;\n\t\t\tborder-bottom: 1px solid var(--color-border);\n\t\t\tbox-sizing: border-box;\n\t\t\tuser-select: none;\n\t\t\theight: var(--row-height);\n\t\t}\n\n\t\ttd, th {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tflex: 0 0 auto;\n\t\t\tjustify-content: left;\n\t\t\twidth: var(--row-height);\n\t\t\theight: var(--row-height);\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\tborder: none;\n\n\t\t\t// Columns should try to add any text\n\t\t\t// node wrapped in a span. That should help\n\t\t\t// with the ellipsis on overflow.\n\t\t\tspan {\n\t\t\t\toverflow: hidden;\n\t\t\t\twhite-space: nowrap;\n\t\t\t\ttext-overflow: ellipsis;\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row--failed {\n\t\t\tposition: absolute;\n\t\t\tdisplay: block;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t\topacity: .1;\n\t\t\tz-index: -1;\n\t\t\tbackground: var(--color-error);\n\t\t}\n\n\t\t.files-list__row-checkbox {\n\t\t\tjustify-content: center;\n\n\t\t\t.checkbox-radio-switch {\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: center;\n\n\t\t\t\t--icon-size: var(--checkbox-size);\n\n\t\t\t\tlabel.checkbox-radio-switch__label {\n\t\t\t\t\twidth: var(--clickable-area);\n\t\t\t\t\theight: var(--clickable-area);\n\t\t\t\t\tmargin: 0;\n\t\t\t\t\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\n\t\t\t\t}\n\n\t\t\t\t.checkbox-radio-switch__icon {\n\t\t\t\t\tmargin: 0 !important;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row {\n\t\t\t&:hover, &:focus, &:active, &--active, &--dragover {\n\t\t\t\t// WCAG AA compliant\n\t\t\t\tbackground-color: var(--color-background-hover);\n\t\t\t\t// text-maxcontrast have been designed to pass WCAG AA over\n\t\t\t\t// a white background, we need to adjust then.\n\t\t\t\t--color-text-maxcontrast: var(--color-main-text);\n\t\t\t\t> * {\n\t\t\t\t\t--color-border: var(--color-border-dark);\n\t\t\t\t}\n\n\t\t\t\t// Hover state of the row should also change the favorite markers background\n\t\t\t\t.favorite-marker-icon svg path {\n\t\t\t\t\tstroke: var(--color-background-hover);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&--dragover * {\n\t\t\t\t// Prevent dropping on row children\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t}\n\n\t\t// Entry preview or mime icon\n\t\t.files-list__row-icon {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\toverflow: visible;\n\t\t\talign-items: center;\n\t\t\t// No shrinking or growing allowed\n\t\t\tflex: 0 0 var(--icon-preview-size);\n\t\t\tjustify-content: center;\n\t\t\twidth: var(--icon-preview-size);\n\t\t\theight: 100%;\n\t\t\t// Show same padding as the checkbox right padding for visual balance\n\t\t\tmargin-right: var(--checkbox-padding);\n\t\t\tcolor: var(--color-primary-element);\n\n\t\t\t// Icon is also clickable\n\t\t\t* {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\n\t\t\t& > span {\n\t\t\t\tjustify-content: flex-start;\n\n\t\t\t\t&:not(.files-list__row-icon-favorite) svg {\n\t\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\t}\n\n\t\t\t\t// Slightly increase the size of the folder icon\n\t\t\t\t&.folder-icon,\n\t\t\t\t&.folder-open-icon {\n\t\t\t\t\tmargin: -3px;\n\t\t\t\t\tsvg {\n\t\t\t\t\t\twidth: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t\theight: calc(var(--icon-preview-size) + 6px);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-preview {\n\t\t\t\toverflow: hidden;\n\t\t\t\twidth: var(--icon-preview-size);\n\t\t\t\theight: var(--icon-preview-size);\n\t\t\t\tborder-radius: var(--border-radius);\n\t\t\t\t// Center and contain the preview\n\t\t\t\tobject-fit: contain;\n\t\t\t\tobject-position: center;\n\n\t\t\t\t/* Preview not loaded animation effect */\n\t\t\t\t&:not(.files-list__row-icon-preview--loaded) {\n\t\t\t\t\tbackground: var(--color-loading-dark);\n\t\t\t\t\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&-favorite {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0px;\n\t\t\t\tright: -10px;\n\t\t\t}\n\n\t\t\t// File and folder overlay\n\t\t\t&-overlay {\n\t\t\t\tposition: absolute;\n\t\t\t\tmax-height: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tmax-width: calc(var(--icon-preview-size) * 0.5);\n\t\t\t\tcolor: var(--color-primary-element-text);\n\t\t\t\t// better alignment with the folder icon\n\t\t\t\tmargin-top: 2px;\n\n\t\t\t\t// Improve icon contrast with a background for files\n\t\t\t\t&--file {\n\t\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t\tbackground: var(--color-main-background);\n\t\t\t\t\tborder-radius: 100%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Entry link\n\t\t.files-list__row-name {\n\t\t\t// Prevent link from overflowing\n\t\t\toverflow: hidden;\n\t\t\t// Take as much space as possible\n\t\t\tflex: 1 1 auto;\n\n\t\t\tbutton.files-list__row-name-link {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\ttext-align: start;\n\t\t\t\t// Fill cell height and width\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\t// Necessary for flex grow to work\n\t\t\t\tmin-width: 0;\n\t\t\t\tmargin: 0;\n\n\t\t\t\t// Already added to the inner text, see rule below\n\t\t\t\t&:focus-visible {\n\t\t\t\t\toutline: none !important;\n\t\t\t\t}\n\n\t\t\t\t// Keyboard indicator a11y\n\t\t\t\t&:focus .files-list__row-name-text {\n\t\t\t\t\toutline: var(--border-width-input-focused) solid var(--color-main-text) !important;\n\t\t\t\t\tborder-radius: var(--border-radius-element);\n\t\t\t\t}\n\t\t\t\t&:focus:not(:focus-visible) .files-list__row-name-text {\n\t\t\t\t\toutline: none !important;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t.files-list__row-name-text {\n\t\t\t\tcolor: var(--color-main-text);\n\t\t\t\t// Make some space for the outline\n\t\t\t\tpadding: var(--default-grid-baseline) calc(2 * var(--default-grid-baseline));\n\t\t\t\tmargin-left: -10px;\n\t\t\t\t// Align two name and ext\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\n\t\t\t.files-list__row-name-ext {\n\t\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t\t\t// always show the extension\n\t\t\t\toverflow: visible;\n\t\t\t}\n\t\t}\n\n\t\t// Rename form\n\t\t.files-list__row-rename {\n\t\t\twidth: 100%;\n\t\t\tmax-width: 600px;\n\t\t\tinput {\n\t\t\t\twidth: 100%;\n\t\t\t\t// Align with text, 0 - padding - border\n\t\t\t\tmargin-left: -8px;\n\t\t\t\tpadding: 2px 6px;\n\t\t\t\tborder-width: 2px;\n\n\t\t\t\t&:invalid {\n\t\t\t\t\t// Show red border on invalid input\n\t\t\t\t\tborder-color: var(--color-error);\n\t\t\t\t\tcolor: red;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-actions {\n\t\t\t// take as much space as necessary\n\t\t\twidth: auto;\n\n\t\t\t// Add margin to all cells after the actions\n\t\t\t& ~ td,\n\t\t\t& ~ th {\n\t\t\t\tmargin: 0 var(--cell-margin);\n\t\t\t}\n\n\t\t\tbutton {\n\t\t\t\t.button-vue__text {\n\t\t\t\t\t// Remove bold from default button styling\n\t\t\t\t\tfont-weight: normal;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.files-list__row-action--inline {\n\t\t\tmargin-right: 7px;\n\t\t}\n\n\t\t.files-list__row-mtime,\n\t\t.files-list__row-size {\n\t\t\tcolor: var(--color-text-maxcontrast);\n\t\t}\n\t\t.files-list__row-size {\n\t\t\twidth: calc(var(--row-height) * 1.5);\n\t\t\t// Right align content/text\n\t\t\tjustify-content: flex-end;\n\t\t}\n\n\t\t.files-list__row-mtime {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\n\t\t.files-list__row-column-custom {\n\t\t\twidth: calc(var(--row-height) * 2);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const o=r},42067:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,"tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}","",{version:3,sources:["webpack://./apps/files/src/components/FilesListVirtual.vue"],names:[],mappings:"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA",sourcesContent:["\n// Grid mode\ntbody.files-list__tbody.files-list__tbody--grid {\n\t--half-clickable-area: calc(var(--clickable-area) / 2);\n\t--row-width: 160px;\n\t// We use half of the clickable area as visual balance margin\n\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\n\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\n\t--checkbox-padding: 0px;\n\n\tdisplay: grid;\n\tgrid-template-columns: repeat(auto-fill, var(--row-width));\n\tgrid-gap: 15px;\n\trow-gap: 15px;\n\n\talign-content: center;\n\talign-items: center;\n\tjustify-content: space-around;\n\tjustify-items: center;\n\n\ttr {\n\t\twidth: var(--row-width);\n\t\theight: calc(var(--row-height) + var(--clickable-area));\n\t\tborder: none;\n\t\tborder-radius: var(--border-radius);\n\t}\n\n\t// Checkbox in the top left\n\t.files-list__row-checkbox {\n\t\tposition: absolute;\n\t\tz-index: 9;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\toverflow: hidden;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t\tborder-radius: var(--half-clickable-area);\n\t}\n\n\t// Star icon in the top right\n\t.files-list__row-icon-favorite {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n\n\t.files-list__row-name {\n\t\tdisplay: grid;\n\t\tjustify-content: stretch;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tgrid-auto-rows: var(--row-height) var(--clickable-area);\n\n\t\tspan.files-list__row-icon {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\t// Visual balance, we use half of the clickable area\n\t\t\t// as a margin around the preview\n\t\t\tpadding-top: var(--half-clickable-area);\n\t\t}\n\n\t\t.files-list__row-name-text {\n\t\t\tmargin: 0;\n\t\t\tpadding-right: 0;\n\t\t}\n\t}\n\n\t.files-list__row-actions {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\twidth: var(--clickable-area);\n\t\theight: var(--clickable-area);\n\t}\n}\n"],sourceRoot:""}]);const o=r},47747:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation-entry__settings-quota--not-unlimited[data-v-400127b6] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-400127b6]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}","",{version:3,sources:["webpack://./apps/files/src/components/NavigationQuota.vue"],names:[],mappings:"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA",sourcesContent:["\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n"],sourceRoot:""}]);const o=r},4195:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".toast-loading-icon{margin-inline-start:-4px;min-width:26px}.app-content[data-v-575ac9fe]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-575ac9fe]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-575ac9fe]{flex:0 0}.files-list__header-share-button[data-v-575ac9fe]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-575ac9fe]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-575ac9fe]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-575ac9fe]{margin:auto}","",{version:3,sources:["webpack://./apps/files/src/views/FilesList.vue"],names:[],mappings:"AACA,oBAEC,wBAAA,CAEA,cAAA,CAGD,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA",sourcesContent:["\n:global(.toast-loading-icon) {\n\t// Reduce start margin (it was made for text but this is an icon)\n\tmargin-inline-start: -4px;\n\t// 16px icon + 5px on both sides\n\tmin-width: 26px;\n}\n\n.app-content {\n\t// Virtual list needs to be full height and is scrollable\n\tdisplay: flex;\n\toverflow: hidden;\n\tflex-direction: column;\n\tmax-height: 100%;\n\tposition: relative !important;\n}\n\n.files-list {\n\t&__header {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\t// Do not grow or shrink (vertically)\n\t\tflex: 0 0;\n\t\tmax-width: 100%;\n\t\t// Align with the navigation toggle icon\n\t\tmargin-block: var(--app-navigation-padding, 4px);\n\t\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\n\n\t\t>* {\n\t\t\t// Do not grow or shrink (horizontally)\n\t\t\t// Only the breadcrumbs shrinks\n\t\t\tflex: 0 0;\n\t\t}\n\n\t\t&-share-button {\n\t\t\tcolor: var(--color-text-maxcontrast) !important;\n\n\t\t\t&--shared {\n\t\t\t\tcolor: var(--color-main-text) !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&__refresh-icon {\n\t\tflex: 0 0 44px;\n\t\twidth: 44px;\n\t\theight: 44px;\n\t}\n\n\t&__loading-icon {\n\t\tmargin: auto;\n\t}\n}\n"],sourceRoot:""}]);const o=r},46845:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".app-navigation[data-v-d0738916] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-d0738916] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-d0738916]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-d0738916]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}","",{version:3,sources:["webpack://./apps/files/src/views/Navigation.vue"],names:[],mappings:"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA",sourcesContent:["\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\n.app-navigation::v-deep .app-navigation-entry-icon {\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n}\n\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\n\tcolor: var(--color-primary-element-text);\n}\n\n.app-navigation > ul.app-navigation__list {\n\t// Use flex gap value for more elegant spacing\n\tpadding-bottom: var(--default-grid-baseline, 4px);\n}\n\n.app-navigation-entry__settings {\n\theight: auto !important;\n\toverflow: hidden !important;\n\tpadding-top: 0 !important;\n\t// Prevent shrinking or growing\n\tflex: 0 0 auto;\n}\n"],sourceRoot:""}]);const o=r},60335:(e,t,s)=>{"use strict";s.d(t,{A:()=>o});var n=s(71354),i=s.n(n),a=s(76314),r=s.n(a)()(i());r.push([e.id,".setting-link[data-v-00f09e69]:hover{text-decoration:underline}","",{version:3,sources:["webpack://./apps/files/src/views/Settings.vue"],names:[],mappings:"AACA,qCACC,yBAAA",sourcesContent:["\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n"],sourceRoot:""}]);const o=r},51111:e=>{"use strict";const t=new Set(["ENOTFOUND","ENETUNREACH","UNABLE_TO_GET_ISSUER_CERT","UNABLE_TO_GET_CRL","UNABLE_TO_DECRYPT_CERT_SIGNATURE","UNABLE_TO_DECRYPT_CRL_SIGNATURE","UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY","CERT_SIGNATURE_FAILURE","CRL_SIGNATURE_FAILURE","CERT_NOT_YET_VALID","CERT_HAS_EXPIRED","CRL_NOT_YET_VALID","CRL_HAS_EXPIRED","ERROR_IN_CERT_NOT_BEFORE_FIELD","ERROR_IN_CERT_NOT_AFTER_FIELD","ERROR_IN_CRL_LAST_UPDATE_FIELD","ERROR_IN_CRL_NEXT_UPDATE_FIELD","OUT_OF_MEM","DEPTH_ZERO_SELF_SIGNED_CERT","SELF_SIGNED_CERT_IN_CHAIN","UNABLE_TO_GET_ISSUER_CERT_LOCALLY","UNABLE_TO_VERIFY_LEAF_SIGNATURE","CERT_CHAIN_TOO_LONG","CERT_REVOKED","INVALID_CA","PATH_LENGTH_EXCEEDED","INVALID_PURPOSE","CERT_UNTRUSTED","CERT_REJECTED","HOSTNAME_MISMATCH"]);e.exports=e=>!t.has(e&&e.code)},64043:(e,t,s)=>{var n=s(48287).Buffer;!function(e){e.parser=function(e,t){return new a(e,t)},e.SAXParser=a,e.SAXStream=o,e.createStream=function(e,t){return new o(e,t)},e.MAX_BUFFER_LENGTH=65536;var t,i=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];function a(t,s){if(!(this instanceof a))return new a(t,s);var n=this;!function(e){for(var t=0,s=i.length;t<s;t++)e[i[t]]=""}(n),n.q=n.c="",n.bufferCheckPosition=e.MAX_BUFFER_LENGTH,n.opt=s||{},n.opt.lowercase=n.opt.lowercase||n.opt.lowercasetags,n.looseCase=n.opt.lowercase?"toLowerCase":"toUpperCase",n.tags=[],n.closed=n.closedRoot=n.sawRoot=!1,n.tag=n.error=null,n.strict=!!t,n.noscript=!(!t&&!n.opt.noscript),n.state=k.BEGIN,n.strictEntities=n.opt.strictEntities,n.ENTITIES=n.strictEntities?Object.create(e.XML_ENTITIES):Object.create(e.ENTITIES),n.attribList=[],n.opt.xmlns&&(n.ns=Object.create(g)),n.trackPosition=!1!==n.opt.position,n.trackPosition&&(n.position=n.line=n.column=0),S(n,"onready")}e.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"],Object.create||(Object.create=function(e){function t(){}return t.prototype=e,new t}),Object.keys||(Object.keys=function(e){var t=[];for(var s in e)e.hasOwnProperty(s)&&t.push(s);return t}),a.prototype={end:function(){P(this)},write:function(t){var s=this;if(this.error)throw this.error;if(s.closed)return U(s,"Cannot write after close. Assign an onready handler.");if(null===t)return P(s);"object"==typeof t&&(t=t.toString());for(var n=0,a="";a=R(t,n++),s.c=a,a;)switch(s.trackPosition&&(s.position++,"\n"===a?(s.line++,s.column=0):s.column++),s.state){case k.BEGIN:if(s.state=k.BEGIN_WHITESPACE,"\ufeff"===a)continue;O(s,a);continue;case k.BEGIN_WHITESPACE:O(s,a);continue;case k.TEXT:if(s.sawRoot&&!s.closedRoot){for(var r=n-1;a&&"<"!==a&&"&"!==a;)(a=R(t,n++))&&s.trackPosition&&(s.position++,"\n"===a?(s.line++,s.column=0):s.column++);s.textNode+=t.substring(r,n-1)}"<"!==a||s.sawRoot&&s.closedRoot&&!s.strict?(v(a)||s.sawRoot&&!s.closedRoot||E(s,"Text data outside of root node."),"&"===a?s.state=k.TEXT_ENTITY:s.textNode+=a):(s.state=k.OPEN_WAKA,s.startTagPosition=s.position);continue;case k.SCRIPT:"<"===a?s.state=k.SCRIPT_ENDING:s.script+=a;continue;case k.SCRIPT_ENDING:"/"===a?s.state=k.CLOSE_TAG:(s.script+="<"+a,s.state=k.SCRIPT);continue;case k.OPEN_WAKA:if("!"===a)s.state=k.SGML_DECL,s.sgmlDecl="";else if(v(a));else if(C(u,a))s.state=k.OPEN_TAG,s.tagName=a;else if("/"===a)s.state=k.CLOSE_TAG,s.tagName="";else if("?"===a)s.state=k.PROC_INST,s.procInstName=s.procInstBody="";else{if(E(s,"Unencoded <"),s.startTagPosition+1<s.position){var o=s.position-s.startTagPosition;a=new Array(o).join(" ")+a}s.textNode+="<"+a,s.state=k.TEXT}continue;case k.SGML_DECL:(s.sgmlDecl+a).toUpperCase()===l?(F(s,"onopencdata"),s.state=k.CDATA,s.sgmlDecl="",s.cdata=""):s.sgmlDecl+a==="--"?(s.state=k.COMMENT,s.comment="",s.sgmlDecl=""):(s.sgmlDecl+a).toUpperCase()===d?(s.state=k.DOCTYPE,(s.doctype||s.sawRoot)&&E(s,"Inappropriately located doctype declaration"),s.doctype="",s.sgmlDecl=""):">"===a?(F(s,"onsgmldeclaration",s.sgmlDecl),s.sgmlDecl="",s.state=k.TEXT):w(a)?(s.state=k.SGML_DECL_QUOTED,s.sgmlDecl+=a):s.sgmlDecl+=a;continue;case k.SGML_DECL_QUOTED:a===s.q&&(s.state=k.SGML_DECL,s.q=""),s.sgmlDecl+=a;continue;case k.DOCTYPE:">"===a?(s.state=k.TEXT,F(s,"ondoctype",s.doctype),s.doctype=!0):(s.doctype+=a,"["===a?s.state=k.DOCTYPE_DTD:w(a)&&(s.state=k.DOCTYPE_QUOTED,s.q=a));continue;case k.DOCTYPE_QUOTED:s.doctype+=a,a===s.q&&(s.q="",s.state=k.DOCTYPE);continue;case k.DOCTYPE_DTD:s.doctype+=a,"]"===a?s.state=k.DOCTYPE:w(a)&&(s.state=k.DOCTYPE_DTD_QUOTED,s.q=a);continue;case k.DOCTYPE_DTD_QUOTED:s.doctype+=a,a===s.q&&(s.state=k.DOCTYPE_DTD,s.q="");continue;case k.COMMENT:"-"===a?s.state=k.COMMENT_ENDING:s.comment+=a;continue;case k.COMMENT_ENDING:"-"===a?(s.state=k.COMMENT_ENDED,s.comment=L(s.opt,s.comment),s.comment&&F(s,"oncomment",s.comment),s.comment=""):(s.comment+="-"+a,s.state=k.COMMENT);continue;case k.COMMENT_ENDED:">"!==a?(E(s,"Malformed comment"),s.comment+="--"+a,s.state=k.COMMENT):s.state=k.TEXT;continue;case k.CDATA:"]"===a?s.state=k.CDATA_ENDING:s.cdata+=a;continue;case k.CDATA_ENDING:"]"===a?s.state=k.CDATA_ENDING_2:(s.cdata+="]"+a,s.state=k.CDATA);continue;case k.CDATA_ENDING_2:">"===a?(s.cdata&&F(s,"oncdata",s.cdata),F(s,"onclosecdata"),s.cdata="",s.state=k.TEXT):"]"===a?s.cdata+="]":(s.cdata+="]]"+a,s.state=k.CDATA);continue;case k.PROC_INST:"?"===a?s.state=k.PROC_INST_ENDING:v(a)?s.state=k.PROC_INST_BODY:s.procInstName+=a;continue;case k.PROC_INST_BODY:if(!s.procInstBody&&v(a))continue;"?"===a?s.state=k.PROC_INST_ENDING:s.procInstBody+=a;continue;case k.PROC_INST_ENDING:">"===a?(F(s,"onprocessinginstruction",{name:s.procInstName,body:s.procInstBody}),s.procInstName=s.procInstBody="",s.state=k.TEXT):(s.procInstBody+="?"+a,s.state=k.PROC_INST_BODY);continue;case k.OPEN_TAG:C(p,a)?s.tagName+=a:(I(s),">"===a?B(s):"/"===a?s.state=k.OPEN_TAG_SLASH:(v(a)||E(s,"Invalid character in tag name"),s.state=k.ATTRIB));continue;case k.OPEN_TAG_SLASH:">"===a?(B(s,!0),j(s)):(E(s,"Forward-slash in opening tag not followed by >"),s.state=k.ATTRIB);continue;case k.ATTRIB:if(v(a))continue;">"===a?B(s):"/"===a?s.state=k.OPEN_TAG_SLASH:C(u,a)?(s.attribName=a,s.attribValue="",s.state=k.ATTRIB_NAME):E(s,"Invalid attribute name");continue;case k.ATTRIB_NAME:"="===a?s.state=k.ATTRIB_VALUE:">"===a?(E(s,"Attribute without value"),s.attribValue=s.attribName,z(s),B(s)):v(a)?s.state=k.ATTRIB_NAME_SAW_WHITE:C(p,a)?s.attribName+=a:E(s,"Invalid attribute name");continue;case k.ATTRIB_NAME_SAW_WHITE:if("="===a)s.state=k.ATTRIB_VALUE;else{if(v(a))continue;E(s,"Attribute without value"),s.tag.attributes[s.attribName]="",s.attribValue="",F(s,"onattribute",{name:s.attribName,value:""}),s.attribName="",">"===a?B(s):C(u,a)?(s.attribName=a,s.state=k.ATTRIB_NAME):(E(s,"Invalid attribute name"),s.state=k.ATTRIB)}continue;case k.ATTRIB_VALUE:if(v(a))continue;w(a)?(s.q=a,s.state=k.ATTRIB_VALUE_QUOTED):(E(s,"Unquoted attribute value"),s.state=k.ATTRIB_VALUE_UNQUOTED,s.attribValue=a);continue;case k.ATTRIB_VALUE_QUOTED:if(a!==s.q){"&"===a?s.state=k.ATTRIB_VALUE_ENTITY_Q:s.attribValue+=a;continue}z(s),s.q="",s.state=k.ATTRIB_VALUE_CLOSED;continue;case k.ATTRIB_VALUE_CLOSED:v(a)?s.state=k.ATTRIB:">"===a?B(s):"/"===a?s.state=k.OPEN_TAG_SLASH:C(u,a)?(E(s,"No whitespace between attributes"),s.attribName=a,s.attribValue="",s.state=k.ATTRIB_NAME):E(s,"Invalid attribute name");continue;case k.ATTRIB_VALUE_UNQUOTED:if(!y(a)){"&"===a?s.state=k.ATTRIB_VALUE_ENTITY_U:s.attribValue+=a;continue}z(s),">"===a?B(s):s.state=k.ATTRIB;continue;case k.CLOSE_TAG:if(s.tagName)">"===a?j(s):C(p,a)?s.tagName+=a:s.script?(s.script+="</"+s.tagName,s.tagName="",s.state=k.SCRIPT):(v(a)||E(s,"Invalid tagname in closing tag"),s.state=k.CLOSE_TAG_SAW_WHITE);else{if(v(a))continue;T(u,a)?s.script?(s.script+="</"+a,s.state=k.SCRIPT):E(s,"Invalid tagname in closing tag."):s.tagName=a}continue;case k.CLOSE_TAG_SAW_WHITE:if(v(a))continue;">"===a?j(s):E(s,"Invalid characters in closing tag");continue;case k.TEXT_ENTITY:case k.ATTRIB_VALUE_ENTITY_Q:case k.ATTRIB_VALUE_ENTITY_U:var m,c;switch(s.state){case k.TEXT_ENTITY:m=k.TEXT,c="textNode";break;case k.ATTRIB_VALUE_ENTITY_Q:m=k.ATTRIB_VALUE_QUOTED,c="attribValue";break;case k.ATTRIB_VALUE_ENTITY_U:m=k.ATTRIB_VALUE_UNQUOTED,c="attribValue"}if(";"===a)if(s.opt.unparsedEntities){var g=M(s);s.entity="",s.state=m,s.write(g)}else s[c]+=M(s),s.entity="",s.state=m;else C(s.entity.length?h:f,a)?s.entity+=a:(E(s,"Invalid character in entity name"),s[c]+="&"+s.entity+a,s.entity="",s.state=m);continue;default:throw new Error(s,"Unknown state: "+s.state)}return s.position>=s.bufferCheckPosition&&function(t){for(var s=Math.max(e.MAX_BUFFER_LENGTH,10),n=0,a=0,r=i.length;a<r;a++){var o=t[i[a]].length;if(o>s)switch(i[a]){case"textNode":N(t);break;case"cdata":F(t,"oncdata",t.cdata),t.cdata="";break;case"script":F(t,"onscript",t.script),t.script="";break;default:U(t,"Max buffer length exceeded: "+i[a])}n=Math.max(n,o)}var l=e.MAX_BUFFER_LENGTH-n;t.bufferCheckPosition=l+t.position}(s),s},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){var e;N(e=this),""!==e.cdata&&(F(e,"oncdata",e.cdata),e.cdata=""),""!==e.script&&(F(e,"onscript",e.script),e.script="")}};try{t=s(88310).Stream}catch(e){t=function(){}}t||(t=function(){});var r=e.EVENTS.filter((function(e){return"error"!==e&&"end"!==e}));function o(e,s){if(!(this instanceof o))return new o(e,s);t.apply(this),this._parser=new a(e,s),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(e){n.emit("error",e),n._parser.error=null},this._decoder=null,r.forEach((function(e){Object.defineProperty(n,"on"+e,{get:function(){return n._parser["on"+e]},set:function(t){if(!t)return n.removeAllListeners(e),n._parser["on"+e]=t,t;n.on(e,t)},enumerable:!0,configurable:!1})}))}o.prototype=Object.create(t.prototype,{constructor:{value:o}}),o.prototype.write=function(e){if("function"==typeof n&&"function"==typeof n.isBuffer&&n.isBuffer(e)){if(!this._decoder){var t=s(83141).I;this._decoder=new t("utf8")}e=this._decoder.write(e)}return this._parser.write(e.toString()),this.emit("data",e),!0},o.prototype.end=function(e){return e&&e.length&&this.write(e),this._parser.end(),!0},o.prototype.on=function(e,s){var n=this;return n._parser["on"+e]||-1===r.indexOf(e)||(n._parser["on"+e]=function(){var t=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);t.splice(0,0,e),n.emit.apply(n,t)}),t.prototype.on.call(n,e,s)};var l="[CDATA[",d="DOCTYPE",m="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",g={xml:m,xmlns:c},u=/[:_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]/,p=/[:_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\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,f=/[#:_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]/,h=/[#:_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\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function v(e){return" "===e||"\n"===e||"\r"===e||"\t"===e}function w(e){return'"'===e||"'"===e}function y(e){return">"===e||v(e)}function C(e,t){return e.test(t)}function T(e,t){return!C(e,t)}var A,b,x,k=0;for(var _ in e.STATE={BEGIN:k++,BEGIN_WHITESPACE:k++,TEXT:k++,TEXT_ENTITY:k++,OPEN_WAKA:k++,SGML_DECL:k++,SGML_DECL_QUOTED:k++,DOCTYPE:k++,DOCTYPE_QUOTED:k++,DOCTYPE_DTD:k++,DOCTYPE_DTD_QUOTED:k++,COMMENT_STARTING:k++,COMMENT:k++,COMMENT_ENDING:k++,COMMENT_ENDED:k++,CDATA:k++,CDATA_ENDING:k++,CDATA_ENDING_2:k++,PROC_INST:k++,PROC_INST_BODY:k++,PROC_INST_ENDING:k++,OPEN_TAG:k++,OPEN_TAG_SLASH:k++,ATTRIB:k++,ATTRIB_NAME:k++,ATTRIB_NAME_SAW_WHITE:k++,ATTRIB_VALUE:k++,ATTRIB_VALUE_QUOTED:k++,ATTRIB_VALUE_CLOSED:k++,ATTRIB_VALUE_UNQUOTED:k++,ATTRIB_VALUE_ENTITY_Q:k++,ATTRIB_VALUE_ENTITY_U:k++,CLOSE_TAG:k++,CLOSE_TAG_SAW_WHITE:k++,SCRIPT:k++,SCRIPT_ENDING:k++},e.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},e.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(e.ENTITIES).forEach((function(t){var s=e.ENTITIES[t],n="number"==typeof s?String.fromCharCode(s):s;e.ENTITIES[t]=n})),e.STATE)e.STATE[e.STATE[_]]=_;function S(e,t,s){e[t]&&e[t](s)}function F(e,t,s){e.textNode&&N(e),S(e,t,s)}function N(e){e.textNode=L(e.opt,e.textNode),e.textNode&&S(e,"ontext",e.textNode),e.textNode=""}function L(e,t){return e.trim&&(t=t.trim()),e.normalize&&(t=t.replace(/\s+/g," ")),t}function U(e,t){return N(e),e.trackPosition&&(t+="\nLine: "+e.line+"\nColumn: "+e.column+"\nChar: "+e.c),t=new Error(t),e.error=t,S(e,"onerror",t),e}function P(e){return e.sawRoot&&!e.closedRoot&&E(e,"Unclosed root tag"),e.state!==k.BEGIN&&e.state!==k.BEGIN_WHITESPACE&&e.state!==k.TEXT&&U(e,"Unexpected end"),N(e),e.c="",e.closed=!0,S(e,"onend"),a.call(e,e.strict,e.opt),e}function E(e,t){if("object"!=typeof e||!(e instanceof a))throw new Error("bad call to strictFail");e.strict&&U(e,t)}function I(e){e.strict||(e.tagName=e.tagName[e.looseCase]());var t=e.tags[e.tags.length-1]||e,s=e.tag={name:e.tagName,attributes:{}};e.opt.xmlns&&(s.ns=t.ns),e.attribList.length=0,F(e,"onopentagstart",s)}function D(e,t){var s=e.indexOf(":")<0?["",e]:e.split(":"),n=s[0],i=s[1];return t&&"xmlns"===e&&(n="xmlns",i=""),{prefix:n,local:i}}function z(e){if(e.strict||(e.attribName=e.attribName[e.looseCase]()),-1!==e.attribList.indexOf(e.attribName)||e.tag.attributes.hasOwnProperty(e.attribName))e.attribName=e.attribValue="";else{if(e.opt.xmlns){var t=D(e.attribName,!0),s=t.prefix,n=t.local;if("xmlns"===s)if("xml"===n&&e.attribValue!==m)E(e,"xml: prefix must be bound to "+m+"\nActual: "+e.attribValue);else if("xmlns"===n&&e.attribValue!==c)E(e,"xmlns: prefix must be bound to "+c+"\nActual: "+e.attribValue);else{var i=e.tag,a=e.tags[e.tags.length-1]||e;i.ns===a.ns&&(i.ns=Object.create(a.ns)),i.ns[n]=e.attribValue}e.attribList.push([e.attribName,e.attribValue])}else e.tag.attributes[e.attribName]=e.attribValue,F(e,"onattribute",{name:e.attribName,value:e.attribValue});e.attribName=e.attribValue=""}}function B(e,t){if(e.opt.xmlns){var s=e.tag,n=D(e.tagName);s.prefix=n.prefix,s.local=n.local,s.uri=s.ns[n.prefix]||"",s.prefix&&!s.uri&&(E(e,"Unbound namespace prefix: "+JSON.stringify(e.tagName)),s.uri=n.prefix);var i=e.tags[e.tags.length-1]||e;s.ns&&i.ns!==s.ns&&Object.keys(s.ns).forEach((function(t){F(e,"onopennamespace",{prefix:t,uri:s.ns[t]})}));for(var a=0,r=e.attribList.length;a<r;a++){var o=e.attribList[a],l=o[0],d=o[1],m=D(l,!0),c=m.prefix,g=m.local,u=""===c?"":s.ns[c]||"",p={name:l,value:d,prefix:c,local:g,uri:u};c&&"xmlns"!==c&&!u&&(E(e,"Unbound namespace prefix: "+JSON.stringify(c)),p.uri=c),e.tag.attributes[l]=p,F(e,"onattribute",p)}e.attribList.length=0}e.tag.isSelfClosing=!!t,e.sawRoot=!0,e.tags.push(e.tag),F(e,"onopentag",e.tag),t||(e.noscript||"script"!==e.tagName.toLowerCase()?e.state=k.TEXT:e.state=k.SCRIPT,e.tag=null,e.tagName=""),e.attribName=e.attribValue="",e.attribList.length=0}function j(e){if(!e.tagName)return E(e,"Weird empty close tag."),e.textNode+="</>",void(e.state=k.TEXT);if(e.script){if("script"!==e.tagName)return e.script+="</"+e.tagName+">",e.tagName="",void(e.state=k.SCRIPT);F(e,"onscript",e.script),e.script=""}var t=e.tags.length,s=e.tagName;e.strict||(s=s[e.looseCase]());for(var n=s;t--&&e.tags[t].name!==n;)E(e,"Unexpected close tag");if(t<0)return E(e,"Unmatched closing tag: "+e.tagName),e.textNode+="</"+e.tagName+">",void(e.state=k.TEXT);e.tagName=s;for(var i=e.tags.length;i-- >t;){var a=e.tag=e.tags.pop();e.tagName=e.tag.name,F(e,"onclosetag",e.tagName);var r={};for(var o in a.ns)r[o]=a.ns[o];var l=e.tags[e.tags.length-1]||e;e.opt.xmlns&&a.ns!==l.ns&&Object.keys(a.ns).forEach((function(t){var s=a.ns[t];F(e,"onclosenamespace",{prefix:t,uri:s})}))}0===t&&(e.closedRoot=!0),e.tagName=e.attribValue=e.attribName="",e.attribList.length=0,e.state=k.TEXT}function M(e){var t,s=e.entity,n=s.toLowerCase(),i="";return e.ENTITIES[s]?e.ENTITIES[s]:e.ENTITIES[n]?e.ENTITIES[n]:("#"===(s=n).charAt(0)&&("x"===s.charAt(1)?(s=s.slice(2),i=(t=parseInt(s,16)).toString(16)):(s=s.slice(1),i=(t=parseInt(s,10)).toString(10))),s=s.replace(/^0+/,""),isNaN(t)||i.toLowerCase()!==s?(E(e,"Invalid character entity"),"&"+e.entity+";"):String.fromCodePoint(t))}function O(e,t){"<"===t?(e.state=k.OPEN_WAKA,e.startTagPosition=e.position):v(t)||(E(e,"Non-whitespace before first tag."),e.textNode=t,e.state=k.TEXT)}function R(e,t){var s="";return t<e.length&&(s=e.charAt(t)),s}k=e.STATE,String.fromCodePoint||(A=String.fromCharCode,b=Math.floor,x=function(){var e,t,s=[],n=-1,i=arguments.length;if(!i)return"";for(var a="";++n<i;){var r=Number(arguments[n]);if(!isFinite(r)||r<0||r>1114111||b(r)!==r)throw RangeError("Invalid code point: "+r);r<=65535?s.push(r):(e=55296+((r-=65536)>>10),t=r%1024+56320,s.push(e,t)),(n+1===i||s.length>16384)&&(a+=A.apply(null,s),s.length=0)}return a},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:x,configurable:!0,writable:!0}):String.fromCodePoint=x)}(t)},42791:function(e,t,s){var n=s(65606);!function(e,t){"use strict";if(!e.setImmediate){var s,i,a,r,o,l=1,d={},m=!1,c=e.document,g=Object.getPrototypeOf&&Object.getPrototypeOf(e);g=g&&g.setTimeout?g:e,"[object process]"==={}.toString.call(e.process)?s=function(e){n.nextTick((function(){p(e)}))}:function(){if(e.postMessage&&!e.importScripts){var t=!0,s=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=s,t}}()?(r="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(r)&&p(+t.data.slice(r.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),s=function(t){e.postMessage(r+t,"*")}):e.MessageChannel?((a=new MessageChannel).port1.onmessage=function(e){p(e.data)},s=function(e){a.port2.postMessage(e)}):c&&"onreadystatechange"in c.createElement("script")?(i=c.documentElement,s=function(e){var t=c.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):s=function(e){setTimeout(p,0,e)},g.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return d[l]=i,s(l),l++},g.clearImmediate=u}function u(e){delete d[e]}function p(e){if(m)setTimeout(p,0,e);else{var t=d[e];if(t){m=!0;try{!function(e){var t=e.callback,s=e.args;switch(s.length){case 0:t();break;case 1:t(s[0]);break;case 2:t(s[0],s[1]);break;case 3:t(s[0],s[1],s[2]);break;default:t.apply(undefined,s)}}(t)}finally{u(e),m=!1}}}}}("undefined"==typeof self?void 0===s.g?this:s.g:self)},75270:e=>{function t(e,t){return null==e?t:e}e.exports=function(e){var s,n=t((e=e||{}).max,1),i=t(e.min,0),a=t(e.autostart,!0),r=t(e.ignoreSameProgress,!1),o=null,l=null,d=null,m=(s=t(e.historyTimeConstant,2.5),function(e,t,n){return e+n/(n+s)*(t-e)});function c(){g(i)}function g(e,t){if("number"!=typeof t&&(t=Date.now()),l!==t&&(!r||d!==e)){if(null===l||null===d)return d=e,void(l=t);var s=.001*(t-l),n=(e-d)/s;o=null===o?n:m(o,n,s),d=e,l=t}}return{start:c,reset:function(){o=null,l=null,d=null,a&&c()},report:g,estimate:function(e){if(null===d)return 1/0;if(d>=n)return 0;if(null===o)return 1/0;var t=(n-d)/o;return"number"==typeof e&&"number"==typeof l&&(t-=.001*(e-l)),Math.max(0,t)},rate:function(){return null===o?0:o}}}},97103:function(e,t,s){var n=void 0!==s.g&&s.g||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function a(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new a(i.call(setTimeout,n,arguments),clearTimeout)},t.setInterval=function(){return new a(i.call(setInterval,n,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},a.prototype.unref=a.prototype.ref=function(){},a.prototype.close=function(){this._clearFn.call(n,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},s(42791),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==s.g&&s.g.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==s.g&&s.g.clearImmediate||this&&this.clearImmediate},83177:function(e,t){(function(){"use strict";t.stripBOM=function(e){return"\ufeff"===e[0]?e.substring(1):e}}).call(this)},56712:function(e,t,s){(function(){"use strict";var e,n,i,a,r,o={}.hasOwnProperty;e=s(59665),n=s(66465).defaults,a=function(e){return"string"==typeof e&&(e.indexOf("&")>=0||e.indexOf(">")>=0||e.indexOf("<")>=0)},r=function(e){return"<![CDATA["+i(e)+"]]>"},i=function(e){return e.replace("]]>","]]]]><![CDATA[>")},t.Builder=function(){function t(e){var t,s,i;for(t in this.options={},s=n[.2])o.call(s,t)&&(i=s[t],this.options[t]=i);for(t in e)o.call(e,t)&&(i=e[t],this.options[t]=i)}return t.prototype.buildObject=function(t){var s,i,l,d,m,c;return s=this.options.attrkey,i=this.options.charkey,1===Object.keys(t).length&&this.options.rootName===n[.2].rootName?t=t[m=Object.keys(t)[0]]:m=this.options.rootName,c=this,l=function(e,t){var n,d,m,g,u,p;if("object"!=typeof t)c.options.cdata&&a(t)?e.raw(r(t)):e.txt(t);else if(Array.isArray(t)){for(g in t)if(o.call(t,g))for(u in d=t[g])m=d[u],e=l(e.ele(u),m).up()}else for(u in t)if(o.call(t,u))if(d=t[u],u===s){if("object"==typeof d)for(n in d)p=d[n],e=e.att(n,p)}else if(u===i)e=c.options.cdata&&a(d)?e.raw(r(d)):e.txt(d);else if(Array.isArray(d))for(g in d)o.call(d,g)&&(e="string"==typeof(m=d[g])?c.options.cdata&&a(m)?e.ele(u).raw(r(m)).up():e.ele(u,m).up():l(e.ele(u),m).up());else"object"==typeof d?e=l(e.ele(u),d).up():"string"==typeof d&&c.options.cdata&&a(d)?e=e.ele(u).raw(r(d)).up():(null==d&&(d=""),e=e.ele(u,d.toString()).up());return e},d=e.create(m,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),l(d,t).end(this.options.renderOpts)},t}()}).call(this)},66465:function(e,t){(function(){t.defaults={.1:{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},.2:{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:"\n"},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}}).call(this)},11912:function(e,t,s){(function(){"use strict";var e,n,i,a,r,o,l,d,m,c=function(e,t){return function(){return e.apply(t,arguments)}},g={}.hasOwnProperty;d=s(64043),a=s(37007),e=s(83177),l=s(92114),m=s(97103).setImmediate,n=s(66465).defaults,r=function(e){return"object"==typeof e&&null!=e&&0===Object.keys(e).length},o=function(e,t,s){var n,i;for(n=0,i=e.length;n<i;n++)t=(0,e[n])(t,s);return t},i=function(e,t,s){var n;return(n=Object.create(null)).value=s,n.writable=!0,n.enumerable=!0,n.configurable=!0,Object.defineProperty(e,t,n)},t.Parser=function(s){function a(e){var s,i,a;if(this.parseStringPromise=c(this.parseStringPromise,this),this.parseString=c(this.parseString,this),this.reset=c(this.reset,this),this.assignOrPush=c(this.assignOrPush,this),this.processAsync=c(this.processAsync,this),!(this instanceof t.Parser))return new t.Parser(e);for(s in this.options={},i=n[.2])g.call(i,s)&&(a=i[s],this.options[s]=a);for(s in e)g.call(e,s)&&(a=e[s],this.options[s]=a);this.options.xmlns&&(this.options.xmlnskey=this.options.attrkey+"ns"),this.options.normalizeTags&&(this.options.tagNameProcessors||(this.options.tagNameProcessors=[]),this.options.tagNameProcessors.unshift(l.normalize)),this.reset()}return function(e,t){for(var s in t)g.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(a,s),a.prototype.processAsync=function(){var e,t;try{return this.remaining.length<=this.options.chunkSize?(e=this.remaining,this.remaining="",this.saxParser=this.saxParser.write(e),this.saxParser.close()):(e=this.remaining.substr(0,this.options.chunkSize),this.remaining=this.remaining.substr(this.options.chunkSize,this.remaining.length),this.saxParser=this.saxParser.write(e),m(this.processAsync))}catch(e){if(t=e,!this.saxParser.errThrown)return this.saxParser.errThrown=!0,this.emit(t)}},a.prototype.assignOrPush=function(e,t,s){return t in e?(e[t]instanceof Array||i(e,t,[e[t]]),e[t].push(s)):this.options.explicitArray?i(e,t,[s]):i(e,t,s)},a.prototype.reset=function(){var e,t,s,n,a;return this.removeAllListeners(),this.saxParser=d.parser(this.options.strict,{trim:!1,normalize:!1,xmlns:this.options.xmlns}),this.saxParser.errThrown=!1,this.saxParser.onerror=(a=this,function(e){if(a.saxParser.resume(),!a.saxParser.errThrown)return a.saxParser.errThrown=!0,a.emit("error",e)}),this.saxParser.onend=function(e){return function(){if(!e.saxParser.ended)return e.saxParser.ended=!0,e.emit("end",e.resultObject)}}(this),this.saxParser.ended=!1,this.EXPLICIT_CHARKEY=this.options.explicitCharkey,this.resultObject=null,n=[],e=this.options.attrkey,t=this.options.charkey,this.saxParser.onopentag=function(s){return function(a){var r,l,d,m,c;if((d={})[t]="",!s.options.ignoreAttrs)for(r in c=a.attributes)g.call(c,r)&&(e in d||s.options.mergeAttrs||(d[e]={}),l=s.options.attrValueProcessors?o(s.options.attrValueProcessors,a.attributes[r],r):a.attributes[r],m=s.options.attrNameProcessors?o(s.options.attrNameProcessors,r):r,s.options.mergeAttrs?s.assignOrPush(d,m,l):i(d[e],m,l));return d["#name"]=s.options.tagNameProcessors?o(s.options.tagNameProcessors,a.name):a.name,s.options.xmlns&&(d[s.options.xmlnskey]={uri:a.uri,local:a.local}),n.push(d)}}(this),this.saxParser.onclosetag=function(e){return function(){var s,a,l,d,m,c,u,p,f,h;if(c=n.pop(),m=c["#name"],e.options.explicitChildren&&e.options.preserveChildrenOrder||delete c["#name"],!0===c.cdata&&(s=c.cdata,delete c.cdata),f=n[n.length-1],c[t].match(/^\s*$/)&&!s?(a=c[t],delete c[t]):(e.options.trim&&(c[t]=c[t].trim()),e.options.normalize&&(c[t]=c[t].replace(/\s{2,}/g," ").trim()),c[t]=e.options.valueProcessors?o(e.options.valueProcessors,c[t],m):c[t],1===Object.keys(c).length&&t in c&&!e.EXPLICIT_CHARKEY&&(c=c[t])),r(c)&&(c="function"==typeof e.options.emptyTag?e.options.emptyTag():""!==e.options.emptyTag?e.options.emptyTag:a),null!=e.options.validator&&(h="/"+function(){var e,t,s;for(s=[],e=0,t=n.length;e<t;e++)d=n[e],s.push(d["#name"]);return s}().concat(m).join("/"),function(){var t;try{return c=e.options.validator(h,f&&f[m],c)}catch(s){return t=s,e.emit("error",t)}}()),e.options.explicitChildren&&!e.options.mergeAttrs&&"object"==typeof c)if(e.options.preserveChildrenOrder){if(f){for(l in f[e.options.childkey]=f[e.options.childkey]||[],u={},c)g.call(c,l)&&i(u,l,c[l]);f[e.options.childkey].push(u),delete c["#name"],1===Object.keys(c).length&&t in c&&!e.EXPLICIT_CHARKEY&&(c=c[t])}}else d={},e.options.attrkey in c&&(d[e.options.attrkey]=c[e.options.attrkey],delete c[e.options.attrkey]),!e.options.charsAsChildren&&e.options.charkey in c&&(d[e.options.charkey]=c[e.options.charkey],delete c[e.options.charkey]),Object.getOwnPropertyNames(c).length>0&&(d[e.options.childkey]=c),c=d;return n.length>0?e.assignOrPush(f,m,c):(e.options.explicitRoot&&(p=c,i(c={},m,p)),e.resultObject=c,e.saxParser.ended=!0,e.emit("end",e.resultObject))}}(this),s=function(e){return function(s){var i,a;if(a=n[n.length-1])return a[t]+=s,e.options.explicitChildren&&e.options.preserveChildrenOrder&&e.options.charsAsChildren&&(e.options.includeWhiteChars||""!==s.replace(/\\n/g,"").trim())&&(a[e.options.childkey]=a[e.options.childkey]||[],(i={"#name":"__text__"})[t]=s,e.options.normalize&&(i[t]=i[t].replace(/\s{2,}/g," ").trim()),a[e.options.childkey].push(i)),a}}(this),this.saxParser.ontext=s,this.saxParser.oncdata=function(e){var t;if(t=s(e))return t.cdata=!0}},a.prototype.parseString=function(t,s){var n;null!=s&&"function"==typeof s&&(this.on("end",(function(e){return this.reset(),s(null,e)})),this.on("error",(function(e){return this.reset(),s(e)})));try{return""===(t=t.toString()).trim()?(this.emit("end",null),!0):(t=e.stripBOM(t),this.options.async?(this.remaining=t,m(this.processAsync),this.saxParser):this.saxParser.write(t).close())}catch(e){if(n=e,!this.saxParser.errThrown&&!this.saxParser.ended)return this.emit("error",n),this.saxParser.errThrown=!0;if(this.saxParser.ended)throw n}},a.prototype.parseStringPromise=function(e){return new Promise((t=this,function(s,n){return t.parseString(e,(function(e,t){return e?n(e):s(t)}))}));var t},a}(a),t.parseString=function(e,s,n){var i,a;return null!=n?("function"==typeof n&&(i=n),"object"==typeof s&&(a=s)):("function"==typeof s&&(i=s),a={}),new t.Parser(a).parseString(e,i)},t.parseStringPromise=function(e,s){var n;return"object"==typeof s&&(n=s),new t.Parser(n).parseStringPromise(e)}}).call(this)},92114:function(e,t){(function(){"use strict";var e;e=new RegExp(/(?!xmlns)^.*:/),t.normalize=function(e){return e.toLowerCase()},t.firstCharLowerCase=function(e){return e.charAt(0).toLowerCase()+e.slice(1)},t.stripPrefix=function(t){return t.replace(e,"")},t.parseNumbers=function(e){return isNaN(e)||(e=e%1==0?parseInt(e,10):parseFloat(e)),e},t.parseBooleans=function(e){return/^(?:true|false)$/i.test(e)&&(e="true"===e.toLowerCase()),e}}).call(this)},38805:function(e,t,s){(function(){"use strict";var e,n,i,a,r={}.hasOwnProperty;n=s(66465),e=s(56712),i=s(11912),a=s(92114),t.defaults=n.defaults,t.processors=a,t.ValidationError=function(e){function t(e){this.message=e}return function(e,t){for(var s in t)r.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(t,Error),t}(),t.Builder=e.Builder,t.Parser=i.Parser,t.parseString=i.parseString,t.parseStringPromise=i.parseStringPromise}).call(this)},34923:function(e){(function(){e.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(this)},71737:function(e){(function(){e.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(this)},49241:function(e){(function(){var t,s,n,i,a,r,o,l=[].slice,d={}.hasOwnProperty;t=function(){var e,t,s,n,i,r;if(r=arguments[0],i=2<=arguments.length?l.call(arguments,1):[],a(Object.assign))Object.assign.apply(null,arguments);else for(e=0,s=i.length;e<s;e++)if(null!=(n=i[e]))for(t in n)d.call(n,t)&&(r[t]=n[t]);return r},a=function(e){return!!e&&"[object Function]"===Object.prototype.toString.call(e)},r=function(e){var t;return!!e&&("function"==(t=typeof e)||"object"===t)},n=function(e){return a(Array.isArray)?Array.isArray(e):"[object Array]"===Object.prototype.toString.call(e)},i=function(e){var t;if(n(e))return!e.length;for(t in e)if(d.call(e,t))return!1;return!0},o=function(e){var t,s;return r(e)&&(s=Object.getPrototypeOf(e))&&(t=s.constructor)&&"function"==typeof t&&t instanceof t&&Function.prototype.toString.call(t)===Function.prototype.toString.call(Object)},s=function(e){return a(e.valueOf)?e.valueOf():e},e.exports.assign=t,e.exports.isFunction=a,e.exports.isObject=r,e.exports.isArray=n,e.exports.isEmpty=i,e.exports.isPlainObject=o,e.exports.getValue=s}).call(this)},88753:function(e){(function(){e.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(this)},54238:function(e,t,s){(function(){var t;t=s(71737),s(10468),e.exports=function(){function e(e,s,n){if(this.parent=e,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),null==s)throw new Error("Missing attribute name. "+this.debugInfo(s));this.name=this.stringify.name(s),this.value=this.stringify.attValue(n),this.type=t.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(e.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(e.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(e.prototype,"textContent",{get:function(){return this.value},set:function(e){return this.value=e||""}}),Object.defineProperty(e.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(e.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(e.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(e.prototype,"specified",{get:function(){return!0}}),e.prototype.clone=function(){return Object.create(this)},e.prototype.toString=function(e){return this.options.writer.attribute(this,this.options.writer.filterOptions(e))},e.prototype.debugInfo=function(e){return null==(e=e||this.name)?"parent: <"+this.parent.name+">":"attribute: {"+e+"}, parent: <"+this.parent.name+">"},e.prototype.isEqualNode=function(e){return e.namespaceURI===this.namespaceURI&&e.prefix===this.prefix&&e.localName===this.localName&&e.value===this.value},e}()}).call(this)},92691:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=t.CData,this.value=this.stringify.cdata(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.cdata(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},17457:function(e,t,s){(function(){var t,n={}.hasOwnProperty;t=s(10468),e.exports=function(e){function t(e){t.__super__.constructor.call(this,e),this.value=""}return function(e,t){for(var s in t)n.call(t,s)&&(e[s]=t[s]);function i(){this.constructor=e}i.prototype=t.prototype,e.prototype=new i,e.__super__=t.prototype}(t,e),Object.defineProperty(t.prototype,"data",{get:function(){return this.value},set:function(e){return this.value=e||""}}),Object.defineProperty(t.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(t.prototype,"textContent",{get:function(){return this.value},set:function(e){return this.value=e||""}}),t.prototype.clone=function(){return Object.create(this)},t.prototype.substringData=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.appendData=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.insertData=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.deleteData=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.replaceData=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isEqualNode=function(e){return!!t.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.data===this.data},t}(t)}).call(this)},32679:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=t.Comment,this.value=this.stringify.comment(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.comment(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},33074:function(e,t,s){(function(){var t,n;t=s(55660),n=s(92527),e.exports=function(){function e(){this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new t,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=Object.create(this.defaultParams)}return Object.defineProperty(e.prototype,"parameterNames",{get:function(){return new n(Object.keys(this.defaultParams))}}),e.prototype.getParameter=function(e){return this.params.hasOwnProperty(e)?this.params[e]:null},e.prototype.canSetParameter=function(e,t){return!0},e.prototype.setParameter=function(e,t){return null!=t?this.params[e]=t:delete this.params[e]},e}()}).call(this)},55660:function(e){(function(){e.exports=function(){function e(){}return e.prototype.handleError=function(e){throw new Error(e)},e}()}).call(this)},67260:function(e){(function(){e.exports=function(){function e(){}return e.prototype.hasFeature=function(e,t){return!0},e.prototype.createDocumentType=function(e,t,s){throw new Error("This DOM method is not implemented.")},e.prototype.createDocument=function(e,t,s){throw new Error("This DOM method is not implemented.")},e.prototype.createHTMLDocument=function(e){throw new Error("This DOM method is not implemented.")},e.prototype.getFeature=function(e,t){throw new Error("This DOM method is not implemented.")},e}()}).call(this)},92527:function(e){(function(){e.exports=function(){function e(e){this.arr=e||[]}return Object.defineProperty(e.prototype,"length",{get:function(){return this.arr.length}}),e.prototype.item=function(e){return this.arr[e]||null},e.prototype.contains=function(e){return-1!==this.arr.indexOf(e)},e}()}).call(this)},34111:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,i,a,r,o){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing DTD element name. "+this.debugInfo());if(null==i)throw new Error("Missing DTD attribute name. "+this.debugInfo(n));if(!a)throw new Error("Missing DTD attribute type. "+this.debugInfo(n));if(!r)throw new Error("Missing DTD attribute default. "+this.debugInfo(n));if(0!==r.indexOf("#")&&(r="#"+r),!r.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(n));if(o&&!r.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(n));this.elementName=this.stringify.name(n),this.type=t.AttributeDeclaration,this.attributeName=this.stringify.name(i),this.attributeType=this.stringify.dtdAttType(a),o&&(this.defaultValue=this.stringify.dtdAttDefault(o)),this.defaultValueType=r}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.toString=function(e){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},67696:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,i){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing DTD element name. "+this.debugInfo());i||(i="(#PCDATA)"),Array.isArray(i)&&(i="("+i.join(",")+")"),this.name=this.stringify.name(n),this.type=t.ElementDeclaration,this.value=this.stringify.dtdElementValue(i)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.toString=function(e){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},5529:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;i=s(49241).isObject,n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,a,r){if(s.__super__.constructor.call(this,e),null==a)throw new Error("Missing DTD entity name. "+this.debugInfo(a));if(null==r)throw new Error("Missing DTD entity value. "+this.debugInfo(a));if(this.pe=!!n,this.name=this.stringify.name(a),this.type=t.EntityDeclaration,i(r)){if(!r.pubID&&!r.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(a));if(r.pubID&&!r.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(a));if(this.internal=!1,null!=r.pubID&&(this.pubID=this.stringify.dtdPubID(r.pubID)),null!=r.sysID&&(this.sysID=this.stringify.dtdSysID(r.sysID)),null!=r.nData&&(this.nData=this.stringify.dtdNData(r.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(a))}else this.value=this.stringify.dtdEntityValue(r),this.internal=!0}return function(e,t){for(var s in t)a.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(s.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(s.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(s.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(s.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(s.prototype,"xmlVersion",{get:function(){return null}}),s.prototype.toString=function(e){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},28012:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,i){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing DTD notation name. "+this.debugInfo(n));if(!i.pubID&&!i.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(n));this.name=this.stringify.name(n),this.type=t.NotationDeclaration,null!=i.pubID&&(this.pubID=this.stringify.dtdPubID(i.pubID)),null!=i.sysID&&(this.sysID=this.stringify.dtdSysID(i.sysID))}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(s.prototype,"systemId",{get:function(){return this.sysID}}),s.prototype.toString=function(e){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},34130:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;i=s(49241).isObject,n=s(10468),t=s(71737),e.exports=function(e){function s(e,n,a,r){var o;s.__super__.constructor.call(this,e),i(n)&&(n=(o=n).version,a=o.encoding,r=o.standalone),n||(n="1.0"),this.type=t.Declaration,this.version=this.stringify.xmlVersion(n),null!=a&&(this.encoding=this.stringify.xmlEncoding(a)),null!=r&&(this.standalone=this.stringify.xmlStandalone(r))}return function(e,t){for(var s in t)a.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.toString=function(e){return this.options.writer.declaration(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},96376:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m={}.hasOwnProperty;d=s(49241).isObject,l=s(10468),t=s(71737),n=s(34111),a=s(5529),i=s(67696),r=s(28012),o=s(24797),e.exports=function(e){function s(e,n,i){var a,r,o,l,m,c;if(s.__super__.constructor.call(this,e),this.type=t.DocType,e.children)for(r=0,o=(l=e.children).length;r<o;r++)if((a=l[r]).type===t.Element){this.name=a.name;break}this.documentObject=e,d(n)&&(n=(m=n).pubID,i=m.sysID),null==i&&(i=(c=[n,i])[0],n=c[1]),null!=n&&(this.pubID=this.stringify.dtdPubID(n)),null!=i&&(this.sysID=this.stringify.dtdSysID(i))}return function(e,t){for(var s in t)m.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"entities",{get:function(){var e,s,n,i,a;for(i={},s=0,n=(a=this.children).length;s<n;s++)(e=a[s]).type!==t.EntityDeclaration||e.pe||(i[e.name]=e);return new o(i)}}),Object.defineProperty(s.prototype,"notations",{get:function(){var e,s,n,i,a;for(i={},s=0,n=(a=this.children).length;s<n;s++)(e=a[s]).type===t.NotationDeclaration&&(i[e.name]=e);return new o(i)}}),Object.defineProperty(s.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(s.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(s.prototype,"internalSubset",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),s.prototype.element=function(e,t){var s;return s=new i(this,e,t),this.children.push(s),this},s.prototype.attList=function(e,t,s,i,a){var r;return r=new n(this,e,t,s,i,a),this.children.push(r),this},s.prototype.entity=function(e,t){var s;return s=new a(this,!1,e,t),this.children.push(s),this},s.prototype.pEntity=function(e,t){var s;return s=new a(this,!0,e,t),this.children.push(s),this},s.prototype.notation=function(e,t){var s;return s=new r(this,e,t),this.children.push(s),this},s.prototype.toString=function(e){return this.options.writer.docType(this,this.options.writer.filterOptions(e))},s.prototype.ele=function(e,t){return this.element(e,t)},s.prototype.att=function(e,t,s,n,i){return this.attList(e,t,s,n,i)},s.prototype.ent=function(e,t){return this.entity(e,t)},s.prototype.pent=function(e,t){return this.pEntity(e,t)},s.prototype.not=function(e,t){return this.notation(e,t)},s.prototype.up=function(){return this.root()||this.documentObject},s.prototype.isEqualNode=function(e){return!!s.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.name===this.name&&e.publicId===this.publicId&&e.systemId===this.systemId},s}(l)}).call(this)},71933:function(e,t,s){(function(){var t,n,i,a,r,o,l,d={}.hasOwnProperty;l=s(49241).isPlainObject,i=s(67260),n=s(33074),a=s(10468),t=s(71737),o=s(43976),r=s(40382),e.exports=function(e){function s(e){s.__super__.constructor.call(this,null),this.name="#document",this.type=t.Document,this.documentURI=null,this.domConfig=new n,e||(e={}),e.writer||(e.writer=new r),this.options=e,this.stringify=new o(e)}return function(e,t){for(var s in t)d.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"implementation",{value:new i}),Object.defineProperty(s.prototype,"doctype",{get:function(){var e,s,n,i;for(s=0,n=(i=this.children).length;s<n;s++)if((e=i[s]).type===t.DocType)return e;return null}}),Object.defineProperty(s.prototype,"documentElement",{get:function(){return this.rootObject||null}}),Object.defineProperty(s.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(s.prototype,"strictErrorChecking",{get:function(){return!1}}),Object.defineProperty(s.prototype,"xmlEncoding",{get:function(){return 0!==this.children.length&&this.children[0].type===t.Declaration?this.children[0].encoding:null}}),Object.defineProperty(s.prototype,"xmlStandalone",{get:function(){return 0!==this.children.length&&this.children[0].type===t.Declaration&&"yes"===this.children[0].standalone}}),Object.defineProperty(s.prototype,"xmlVersion",{get:function(){return 0!==this.children.length&&this.children[0].type===t.Declaration?this.children[0].version:"1.0"}}),Object.defineProperty(s.prototype,"URL",{get:function(){return this.documentURI}}),Object.defineProperty(s.prototype,"origin",{get:function(){return null}}),Object.defineProperty(s.prototype,"compatMode",{get:function(){return null}}),Object.defineProperty(s.prototype,"characterSet",{get:function(){return null}}),Object.defineProperty(s.prototype,"contentType",{get:function(){return null}}),s.prototype.end=function(e){var t;return t={},e?l(e)&&(t=e,e=this.options.writer):e=this.options.writer,e.document(this,e.filterOptions(t))},s.prototype.toString=function(e){return this.options.writer.document(this,this.options.writer.filterOptions(e))},s.prototype.createElement=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createDocumentFragment=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createTextNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createComment=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createCDATASection=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createProcessingInstruction=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createAttribute=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createEntityReference=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.importNode=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createElementNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagNameNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementById=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.adoptNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.normalizeDocument=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.renameNode=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByClassName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createEvent=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createRange=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createNodeIterator=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.createTreeWalker=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s}(a)}).call(this)},80400:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m,c,g,u,p,f,h,v,w,y,C,T,A,b,x,k={}.hasOwnProperty;x=s(49241),A=x.isObject,T=x.isFunction,b=x.isPlainObject,C=x.getValue,t=s(71737),u=s(71933),p=s(33906),a=s(92691),r=s(32679),h=s(1268),y=s(82535),f=s(85915),c=s(34130),g=s(96376),o=s(34111),d=s(5529),l=s(67696),m=s(28012),i=s(54238),w=s(43976),v=s(40382),n=s(88753),e.exports=function(){function e(e,s,n){var i;this.name="?xml",this.type=t.Document,e||(e={}),i={},e.writer?b(e.writer)&&(i=e.writer,e.writer=new v):e.writer=new v,this.options=e,this.writer=e.writer,this.writerOptions=this.writer.filterOptions(i),this.stringify=new w(e),this.onDataCallback=s||function(){},this.onEndCallback=n||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return e.prototype.createChildNode=function(e){var s,n,i,a,r,o,l,d;switch(e.type){case t.CData:this.cdata(e.value);break;case t.Comment:this.comment(e.value);break;case t.Element:for(n in i={},l=e.attribs)k.call(l,n)&&(s=l[n],i[n]=s.value);this.node(e.name,i);break;case t.Dummy:this.dummy();break;case t.Raw:this.raw(e.value);break;case t.Text:this.text(e.value);break;case t.ProcessingInstruction:this.instruction(e.target,e.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+e.constructor.name)}for(r=0,o=(d=e.children).length;r<o;r++)a=d[r],this.createChildNode(a),a.type===t.Element&&this.up();return this},e.prototype.dummy=function(){return this},e.prototype.node=function(e,t,s){var n;if(null==e)throw new Error("Missing node name.");if(this.root&&-1===this.currentLevel)throw new Error("Document can only have one root node. "+this.debugInfo(e));return this.openCurrent(),e=C(e),null==t&&(t={}),t=C(t),A(t)||(s=(n=[t,s])[0],t=n[1]),this.currentNode=new p(this,e,t),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,null!=s&&this.text(s),this},e.prototype.element=function(e,s,n){var i,a,r,o,l,d;if(this.currentNode&&this.currentNode.type===t.DocType)this.dtdElement.apply(this,arguments);else if(Array.isArray(e)||A(e)||T(e))for(o=this.options.noValidation,this.options.noValidation=!0,(d=new u(this.options).element("TEMP_ROOT")).element(e),this.options.noValidation=o,a=0,r=(l=d.children).length;a<r;a++)i=l[a],this.createChildNode(i),i.type===t.Element&&this.up();else this.node(e,s,n);return this},e.prototype.attribute=function(e,t){var s,n;if(!this.currentNode||this.currentNode.children)throw new Error("att() can only be used immediately after an ele() call in callback mode. "+this.debugInfo(e));if(null!=e&&(e=C(e)),A(e))for(s in e)k.call(e,s)&&(n=e[s],this.attribute(s,n));else T(t)&&(t=t.apply()),this.options.keepNullAttributes&&null==t?this.currentNode.attribs[e]=new i(this,e,""):null!=t&&(this.currentNode.attribs[e]=new i(this,e,t));return this},e.prototype.text=function(e){var t;return this.openCurrent(),t=new y(this,e),this.onData(this.writer.text(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.cdata=function(e){var t;return this.openCurrent(),t=new a(this,e),this.onData(this.writer.cdata(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.comment=function(e){var t;return this.openCurrent(),t=new r(this,e),this.onData(this.writer.comment(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.raw=function(e){var t;return this.openCurrent(),t=new h(this,e),this.onData(this.writer.raw(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.instruction=function(e,t){var s,n,i,a,r;if(this.openCurrent(),null!=e&&(e=C(e)),null!=t&&(t=C(t)),Array.isArray(e))for(s=0,a=e.length;s<a;s++)n=e[s],this.instruction(n);else if(A(e))for(n in e)k.call(e,n)&&(i=e[n],this.instruction(n,i));else T(t)&&(t=t.apply()),r=new f(this,e,t),this.onData(this.writer.processingInstruction(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this},e.prototype.declaration=function(e,t,s){var n;if(this.openCurrent(),this.documentStarted)throw new Error("declaration() must be the first node.");return n=new c(this,e,t,s),this.onData(this.writer.declaration(n,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.doctype=function(e,t,s){if(this.openCurrent(),null==e)throw new Error("Missing root node name.");if(this.root)throw new Error("dtd() must come before the root node.");return this.currentNode=new g(this,t,s),this.currentNode.rootNodeName=e,this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,this},e.prototype.dtdElement=function(e,t){var s;return this.openCurrent(),s=new l(this,e,t),this.onData(this.writer.dtdElement(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.attList=function(e,t,s,n,i){var a;return this.openCurrent(),a=new o(this,e,t,s,n,i),this.onData(this.writer.dtdAttList(a,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.entity=function(e,t){var s;return this.openCurrent(),s=new d(this,!1,e,t),this.onData(this.writer.dtdEntity(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.pEntity=function(e,t){var s;return this.openCurrent(),s=new d(this,!0,e,t),this.onData(this.writer.dtdEntity(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.notation=function(e,t){var s;return this.openCurrent(),s=new m(this,e,t),this.onData(this.writer.dtdNotation(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.up=function(){if(this.currentLevel<0)throw new Error("The document node has no parent.");return this.currentNode?(this.currentNode.children?this.closeNode(this.currentNode):this.openNode(this.currentNode),this.currentNode=null):this.closeNode(this.openTags[this.currentLevel]),delete this.openTags[this.currentLevel],this.currentLevel--,this},e.prototype.end=function(){for(;this.currentLevel>=0;)this.up();return this.onEnd()},e.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},e.prototype.openNode=function(e){var s,i,a,r;if(!e.isOpen){if(this.root||0!==this.currentLevel||e.type!==t.Element||(this.root=e),i="",e.type===t.Element){for(a in this.writerOptions.state=n.OpenTag,i=this.writer.indent(e,this.writerOptions,this.currentLevel)+"<"+e.name,r=e.attribs)k.call(r,a)&&(s=r[a],i+=this.writer.attribute(s,this.writerOptions,this.currentLevel));i+=(e.children?">":"/>")+this.writer.endline(e,this.writerOptions,this.currentLevel),this.writerOptions.state=n.InsideTag}else this.writerOptions.state=n.OpenTag,i=this.writer.indent(e,this.writerOptions,this.currentLevel)+"<!DOCTYPE "+e.rootNodeName,e.pubID&&e.sysID?i+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.sysID&&(i+=' SYSTEM "'+e.sysID+'"'),e.children?(i+=" [",this.writerOptions.state=n.InsideTag):(this.writerOptions.state=n.CloseTag,i+=">"),i+=this.writer.endline(e,this.writerOptions,this.currentLevel);return this.onData(i,this.currentLevel),e.isOpen=!0}},e.prototype.closeNode=function(e){var s;if(!e.isClosed)return"",this.writerOptions.state=n.CloseTag,s=e.type===t.Element?this.writer.indent(e,this.writerOptions,this.currentLevel)+"</"+e.name+">"+this.writer.endline(e,this.writerOptions,this.currentLevel):this.writer.indent(e,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(e,this.writerOptions,this.currentLevel),this.writerOptions.state=n.None,this.onData(s,this.currentLevel),e.isClosed=!0},e.prototype.onData=function(e,t){return this.documentStarted=!0,this.onDataCallback(e,t+1)},e.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},e.prototype.debugInfo=function(e){return null==e?"":"node: <"+e+">"},e.prototype.ele=function(){return this.element.apply(this,arguments)},e.prototype.nod=function(e,t,s){return this.node(e,t,s)},e.prototype.txt=function(e){return this.text(e)},e.prototype.dat=function(e){return this.cdata(e)},e.prototype.com=function(e){return this.comment(e)},e.prototype.ins=function(e,t){return this.instruction(e,t)},e.prototype.dec=function(e,t,s){return this.declaration(e,t,s)},e.prototype.dtd=function(e,t,s){return this.doctype(e,t,s)},e.prototype.e=function(e,t,s){return this.element(e,t,s)},e.prototype.n=function(e,t,s){return this.node(e,t,s)},e.prototype.t=function(e){return this.text(e)},e.prototype.d=function(e){return this.cdata(e)},e.prototype.c=function(e){return this.comment(e)},e.prototype.r=function(e){return this.raw(e)},e.prototype.i=function(e,t){return this.instruction(e,t)},e.prototype.att=function(){return this.currentNode&&this.currentNode.type===t.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},e.prototype.a=function(){return this.currentNode&&this.currentNode.type===t.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},e.prototype.ent=function(e,t){return this.entity(e,t)},e.prototype.pent=function(e,t){return this.pEntity(e,t)},e.prototype.not=function(e,t){return this.notation(e,t)},e}()}).call(this)},21218:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;n=s(10468),t=s(71737),e.exports=function(e){function s(e){s.__super__.constructor.call(this,e),this.type=t.Dummy}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return""},s}(n)}).call(this)},33906:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m={}.hasOwnProperty;d=s(49241),l=d.isObject,o=d.isFunction,r=d.getValue,a=s(10468),t=s(71737),n=s(54238),i=s(24797),e.exports=function(e){function s(e,n,i){var a,r,o,l;if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(n),this.type=t.Element,this.attribs={},this.schemaTypeInfo=null,null!=i&&this.attribute(i),e.type===t.Document&&(this.isRoot=!0,this.documentObject=e,e.rootObject=this,e.children))for(r=0,o=(l=e.children).length;r<o;r++)if((a=l[r]).type===t.DocType){a.name=this.name;break}}return function(e,t){for(var s in t)m.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"tagName",{get:function(){return this.name}}),Object.defineProperty(s.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(s.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(s.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(s.prototype,"id",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"className",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"classList",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"attributes",{get:function(){return this.attributeMap&&this.attributeMap.nodes||(this.attributeMap=new i(this.attribs)),this.attributeMap}}),s.prototype.clone=function(){var e,t,s,n;for(t in(s=Object.create(this)).isRoot&&(s.documentObject=null),s.attribs={},n=this.attribs)m.call(n,t)&&(e=n[t],s.attribs[t]=e.clone());return s.children=[],this.children.forEach((function(e){var t;return(t=e.clone()).parent=s,s.children.push(t)})),s},s.prototype.attribute=function(e,t){var s,i;if(null!=e&&(e=r(e)),l(e))for(s in e)m.call(e,s)&&(i=e[s],this.attribute(s,i));else o(t)&&(t=t.apply()),this.options.keepNullAttributes&&null==t?this.attribs[e]=new n(this,e,""):null!=t&&(this.attribs[e]=new n(this,e,t));return this},s.prototype.removeAttribute=function(e){var t,s,n;if(null==e)throw new Error("Missing attribute name. "+this.debugInfo());if(e=r(e),Array.isArray(e))for(s=0,n=e.length;s<n;s++)t=e[s],delete this.attribs[t];else delete this.attribs[e];return this},s.prototype.toString=function(e){return this.options.writer.element(this,this.options.writer.filterOptions(e))},s.prototype.att=function(e,t){return this.attribute(e,t)},s.prototype.a=function(e,t){return this.attribute(e,t)},s.prototype.getAttribute=function(e){return this.attribs.hasOwnProperty(e)?this.attribs[e].value:null},s.prototype.setAttribute=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getAttributeNode=function(e){return this.attribs.hasOwnProperty(e)?this.attribs[e]:null},s.prototype.setAttributeNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.removeAttributeNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setAttributeNS=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.removeAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getAttributeNodeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setAttributeNodeNS=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagNameNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.hasAttribute=function(e){return this.attribs.hasOwnProperty(e)},s.prototype.hasAttributeNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setIdAttribute=function(e,t){return this.attribs.hasOwnProperty(e)?this.attribs[e].isId:t},s.prototype.setIdAttributeNS=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.setIdAttributeNode=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByTagNameNS=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.getElementsByClassName=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.isEqualNode=function(e){var t,n,i;if(!s.__super__.isEqualNode.apply(this,arguments).isEqualNode(e))return!1;if(e.namespaceURI!==this.namespaceURI)return!1;if(e.prefix!==this.prefix)return!1;if(e.localName!==this.localName)return!1;if(e.attribs.length!==this.attribs.length)return!1;for(t=n=0,i=this.attribs.length-1;0<=i?n<=i:n>=i;t=0<=i?++n:--n)if(!this.attribs[t].isEqualNode(e.attribs[t]))return!1;return!0},s}(a)}).call(this)},24797:function(e){(function(){e.exports=function(){function e(e){this.nodes=e}return Object.defineProperty(e.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),e.prototype.clone=function(){return this.nodes=null},e.prototype.getNamedItem=function(e){return this.nodes[e]},e.prototype.setNamedItem=function(e){var t;return t=this.nodes[e.nodeName],this.nodes[e.nodeName]=e,t||null},e.prototype.removeNamedItem=function(e){var t;return t=this.nodes[e],delete this.nodes[e],t||null},e.prototype.item=function(e){return this.nodes[Object.keys(this.nodes)[e]]||null},e.prototype.getNamedItemNS=function(e,t){throw new Error("This DOM method is not implemented.")},e.prototype.setNamedItemNS=function(e){throw new Error("This DOM method is not implemented.")},e.prototype.removeNamedItemNS=function(e,t){throw new Error("This DOM method is not implemented.")},e}()}).call(this)},10468:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m,c,g,u,p,f,h,v,w,y={}.hasOwnProperty;w=s(49241),v=w.isObject,h=w.isFunction,f=w.isEmpty,p=w.getValue,d=null,i=null,a=null,r=null,o=null,g=null,u=null,c=null,l=null,n=null,m=null,t=null,e.exports=function(){function e(e){this.parent=e,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,d||(d=s(33906),i=s(92691),a=s(32679),r=s(34130),o=s(96376),g=s(1268),u=s(82535),c=s(85915),l=s(21218),n=s(71737),m=s(16684),s(24797),t=s(34923))}return Object.defineProperty(e.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(e.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(e.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(e.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(e.prototype,"childNodes",{get:function(){return this.childNodeList&&this.childNodeList.nodes||(this.childNodeList=new m(this.children)),this.childNodeList}}),Object.defineProperty(e.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(e.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(e.prototype,"previousSibling",{get:function(){var e;return e=this.parent.children.indexOf(this),this.parent.children[e-1]||null}}),Object.defineProperty(e.prototype,"nextSibling",{get:function(){var e;return e=this.parent.children.indexOf(this),this.parent.children[e+1]||null}}),Object.defineProperty(e.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(e.prototype,"textContent",{get:function(){var e,t,s,i,a;if(this.nodeType===n.Element||this.nodeType===n.DocumentFragment){for(a="",t=0,s=(i=this.children).length;t<s;t++)(e=i[t]).textContent&&(a+=e.textContent);return a}return null},set:function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),e.prototype.setParent=function(e){var t,s,n,i,a;for(this.parent=e,e&&(this.options=e.options,this.stringify=e.stringify),a=[],s=0,n=(i=this.children).length;s<n;s++)t=i[s],a.push(t.setParent(this));return a},e.prototype.element=function(e,t,s){var n,i,a,r,o,l,d,m,c,g,u;if(l=null,null===t&&null==s&&(t=(c=[{},null])[0],s=c[1]),null==t&&(t={}),t=p(t),v(t)||(s=(g=[t,s])[0],t=g[1]),null!=e&&(e=p(e)),Array.isArray(e))for(a=0,d=e.length;a<d;a++)i=e[a],l=this.element(i);else if(h(e))l=this.element(e.apply());else if(v(e)){for(o in e)if(y.call(e,o))if(u=e[o],h(u)&&(u=u.apply()),!this.options.ignoreDecorators&&this.stringify.convertAttKey&&0===o.indexOf(this.stringify.convertAttKey))l=this.attribute(o.substr(this.stringify.convertAttKey.length),u);else if(!this.options.separateArrayItems&&Array.isArray(u)&&f(u))l=this.dummy();else if(v(u)&&f(u))l=this.element(o);else if(this.options.keepNullNodes||null!=u)if(!this.options.separateArrayItems&&Array.isArray(u))for(r=0,m=u.length;r<m;r++)i=u[r],(n={})[o]=i,l=this.element(n);else v(u)?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===o.indexOf(this.stringify.convertTextKey)?l=this.element(u):(l=this.element(o)).element(u):l=this.element(o,u);else l=this.dummy()}else l=this.options.keepNullNodes||null!==s?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===e.indexOf(this.stringify.convertTextKey)?this.text(s):!this.options.ignoreDecorators&&this.stringify.convertCDataKey&&0===e.indexOf(this.stringify.convertCDataKey)?this.cdata(s):!this.options.ignoreDecorators&&this.stringify.convertCommentKey&&0===e.indexOf(this.stringify.convertCommentKey)?this.comment(s):!this.options.ignoreDecorators&&this.stringify.convertRawKey&&0===e.indexOf(this.stringify.convertRawKey)?this.raw(s):!this.options.ignoreDecorators&&this.stringify.convertPIKey&&0===e.indexOf(this.stringify.convertPIKey)?this.instruction(e.substr(this.stringify.convertPIKey.length),s):this.node(e,t,s):this.dummy();if(null==l)throw new Error("Could not create any elements with: "+e+". "+this.debugInfo());return l},e.prototype.insertBefore=function(e,t,s){var n,i,a,r,o;if(null!=e?e.type:void 0)return r=t,(a=e).setParent(this),r?(i=children.indexOf(r),o=children.splice(i),children.push(a),Array.prototype.push.apply(children,o)):children.push(a),a;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(e));return i=this.parent.children.indexOf(this),o=this.parent.children.splice(i),n=this.parent.element(e,t,s),Array.prototype.push.apply(this.parent.children,o),n},e.prototype.insertAfter=function(e,t,s){var n,i,a;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(e));return i=this.parent.children.indexOf(this),a=this.parent.children.splice(i+1),n=this.parent.element(e,t,s),Array.prototype.push.apply(this.parent.children,a),n},e.prototype.remove=function(){var e;if(this.isRoot)throw new Error("Cannot remove the root element. "+this.debugInfo());return e=this.parent.children.indexOf(this),[].splice.apply(this.parent.children,[e,e-e+1].concat([])),this.parent},e.prototype.node=function(e,t,s){var n,i;return null!=e&&(e=p(e)),t||(t={}),t=p(t),v(t)||(s=(i=[t,s])[0],t=i[1]),n=new d(this,e,t),null!=s&&n.text(s),this.children.push(n),n},e.prototype.text=function(e){var t;return v(e)&&this.element(e),t=new u(this,e),this.children.push(t),this},e.prototype.cdata=function(e){var t;return t=new i(this,e),this.children.push(t),this},e.prototype.comment=function(e){var t;return t=new a(this,e),this.children.push(t),this},e.prototype.commentBefore=function(e){var t,s;return t=this.parent.children.indexOf(this),s=this.parent.children.splice(t),this.parent.comment(e),Array.prototype.push.apply(this.parent.children,s),this},e.prototype.commentAfter=function(e){var t,s;return t=this.parent.children.indexOf(this),s=this.parent.children.splice(t+1),this.parent.comment(e),Array.prototype.push.apply(this.parent.children,s),this},e.prototype.raw=function(e){var t;return t=new g(this,e),this.children.push(t),this},e.prototype.dummy=function(){return new l(this)},e.prototype.instruction=function(e,t){var s,n,i,a,r;if(null!=e&&(e=p(e)),null!=t&&(t=p(t)),Array.isArray(e))for(a=0,r=e.length;a<r;a++)s=e[a],this.instruction(s);else if(v(e))for(s in e)y.call(e,s)&&(n=e[s],this.instruction(s,n));else h(t)&&(t=t.apply()),i=new c(this,e,t),this.children.push(i);return this},e.prototype.instructionBefore=function(e,t){var s,n;return s=this.parent.children.indexOf(this),n=this.parent.children.splice(s),this.parent.instruction(e,t),Array.prototype.push.apply(this.parent.children,n),this},e.prototype.instructionAfter=function(e,t){var s,n;return s=this.parent.children.indexOf(this),n=this.parent.children.splice(s+1),this.parent.instruction(e,t),Array.prototype.push.apply(this.parent.children,n),this},e.prototype.declaration=function(e,t,s){var i,a;return i=this.document(),a=new r(i,e,t,s),0===i.children.length?i.children.unshift(a):i.children[0].type===n.Declaration?i.children[0]=a:i.children.unshift(a),i.root()||i},e.prototype.dtd=function(e,t){var s,i,a,r,l,d,m,c,g;for(s=this.document(),i=new o(s,e,t),a=r=0,d=(c=s.children).length;r<d;a=++r)if(c[a].type===n.DocType)return s.children[a]=i,i;for(a=l=0,m=(g=s.children).length;l<m;a=++l)if(g[a].isRoot)return s.children.splice(a,0,i),i;return s.children.push(i),i},e.prototype.up=function(){if(this.isRoot)throw new Error("The root node has no parent. Use doc() if you need to get the document object.");return this.parent},e.prototype.root=function(){var e;for(e=this;e;){if(e.type===n.Document)return e.rootObject;if(e.isRoot)return e;e=e.parent}},e.prototype.document=function(){var e;for(e=this;e;){if(e.type===n.Document)return e;e=e.parent}},e.prototype.end=function(e){return this.document().end(e)},e.prototype.prev=function(){var e;if((e=this.parent.children.indexOf(this))<1)throw new Error("Already at the first node. "+this.debugInfo());return this.parent.children[e-1]},e.prototype.next=function(){var e;if(-1===(e=this.parent.children.indexOf(this))||e===this.parent.children.length-1)throw new Error("Already at the last node. "+this.debugInfo());return this.parent.children[e+1]},e.prototype.importDocument=function(e){var t;return(t=e.root().clone()).parent=this,t.isRoot=!1,this.children.push(t),this},e.prototype.debugInfo=function(e){var t,s;return null!=(e=e||this.name)||(null!=(t=this.parent)?t.name:void 0)?null==e?"parent: <"+this.parent.name+">":(null!=(s=this.parent)?s.name:void 0)?"node: <"+e+">, parent: <"+this.parent.name+">":"node: <"+e+">":""},e.prototype.ele=function(e,t,s){return this.element(e,t,s)},e.prototype.nod=function(e,t,s){return this.node(e,t,s)},e.prototype.txt=function(e){return this.text(e)},e.prototype.dat=function(e){return this.cdata(e)},e.prototype.com=function(e){return this.comment(e)},e.prototype.ins=function(e,t){return this.instruction(e,t)},e.prototype.doc=function(){return this.document()},e.prototype.dec=function(e,t,s){return this.declaration(e,t,s)},e.prototype.e=function(e,t,s){return this.element(e,t,s)},e.prototype.n=function(e,t,s){return this.node(e,t,s)},e.prototype.t=function(e){return this.text(e)},e.prototype.d=function(e){return this.cdata(e)},e.prototype.c=function(e){return this.comment(e)},e.prototype.r=function(e){return this.raw(e)},e.prototype.i=function(e,t){return this.instruction(e,t)},e.prototype.u=function(){return this.up()},e.prototype.importXMLBuilder=function(e){return this.importDocument(e)},e.prototype.replaceChild=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.removeChild=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.appendChild=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.hasChildNodes=function(){return 0!==this.children.length},e.prototype.cloneNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isSupported=function(e,t){return!0},e.prototype.hasAttributes=function(){return 0!==this.attribs.length},e.prototype.compareDocumentPosition=function(e){var s,n;return(s=this)===e?0:this.document()!==e.document()?(n=t.Disconnected|t.ImplementationSpecific,Math.random()<.5?n|=t.Preceding:n|=t.Following,n):s.isAncestor(e)?t.Contains|t.Preceding:s.isDescendant(e)?t.Contains|t.Following:s.isPreceding(e)?t.Preceding:t.Following},e.prototype.isSameNode=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.lookupPrefix=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isDefaultNamespace=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.lookupNamespaceURI=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isEqualNode=function(e){var t,s,n;if(e.nodeType!==this.nodeType)return!1;if(e.children.length!==this.children.length)return!1;for(t=s=0,n=this.children.length-1;0<=n?s<=n:s>=n;t=0<=n?++s:--s)if(!this.children[t].isEqualNode(e.children[t]))return!1;return!0},e.prototype.getFeature=function(e,t){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.setUserData=function(e,t,s){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.getUserData=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.contains=function(e){return!!e&&(e===this||this.isDescendant(e))},e.prototype.isDescendant=function(e){var t,s,n,i;for(s=0,n=(i=this.children).length;s<n;s++){if(e===(t=i[s]))return!0;if(t.isDescendant(e))return!0}return!1},e.prototype.isAncestor=function(e){return e.isDescendant(this)},e.prototype.isPreceding=function(e){var t,s;return t=this.treePosition(e),s=this.treePosition(this),-1!==t&&-1!==s&&t<s},e.prototype.isFollowing=function(e){var t,s;return t=this.treePosition(e),s=this.treePosition(this),-1!==t&&-1!==s&&t>s},e.prototype.treePosition=function(e){var t,s;return s=0,t=!1,this.foreachTreeNode(this.document(),(function(n){if(s++,!t&&n===e)return t=!0})),t?s:-1},e.prototype.foreachTreeNode=function(e,t){var s,n,i,a,r;for(e||(e=this.document()),n=0,i=(a=e.children).length;n<i;n++){if(r=t(s=a[n]))return r;if(r=this.foreachTreeNode(s,t))return r}},e}()}).call(this)},16684:function(e){(function(){e.exports=function(){function e(e){this.nodes=e}return Object.defineProperty(e.prototype,"length",{get:function(){return this.nodes.length||0}}),e.prototype.clone=function(){return this.nodes=null},e.prototype.item=function(e){return this.nodes[e]||null},e}()}).call(this)},85915:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n,i){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing instruction target. "+this.debugInfo());this.type=t.ProcessingInstruction,this.target=this.stringify.insTarget(n),this.name=this.target,i&&(this.value=this.stringify.insValue(i))}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(e))},s.prototype.isEqualNode=function(e){return!!s.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.target===this.target},s}(n)}).call(this)},1268:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(10468),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing raw text. "+this.debugInfo());this.type=t.Raw,this.value=this.stringify.raw(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.raw(this,this.options.writer.filterOptions(e))},s}(n)}).call(this)},96775:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;t=s(71737),i=s(6286),n=s(88753),e.exports=function(e){function s(e,t){this.stream=e,s.__super__.constructor.call(this,t)}return function(e,t){for(var s in t)a.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),s.prototype.endline=function(e,t,i){return e.isLastRootNode&&t.state===n.CloseTag?"":s.__super__.endline.call(this,e,t,i)},s.prototype.document=function(e,t){var s,n,i,a,r,o,l,d,m;for(n=i=0,r=(l=e.children).length;i<r;n=++i)(s=l[n]).isLastRootNode=n===e.children.length-1;for(t=this.filterOptions(t),m=[],a=0,o=(d=e.children).length;a<o;a++)s=d[a],m.push(this.writeChildNode(s,t,0));return m},s.prototype.attribute=function(e,t,n){return this.stream.write(s.__super__.attribute.call(this,e,t,n))},s.prototype.cdata=function(e,t,n){return this.stream.write(s.__super__.cdata.call(this,e,t,n))},s.prototype.comment=function(e,t,n){return this.stream.write(s.__super__.comment.call(this,e,t,n))},s.prototype.declaration=function(e,t,n){return this.stream.write(s.__super__.declaration.call(this,e,t,n))},s.prototype.docType=function(e,t,s){var i,a,r,o;if(s||(s=0),this.openNode(e,t,s),t.state=n.OpenTag,this.stream.write(this.indent(e,t,s)),this.stream.write("<!DOCTYPE "+e.root().name),e.pubID&&e.sysID?this.stream.write(' PUBLIC "'+e.pubID+'" "'+e.sysID+'"'):e.sysID&&this.stream.write(' SYSTEM "'+e.sysID+'"'),e.children.length>0){for(this.stream.write(" ["),this.stream.write(this.endline(e,t,s)),t.state=n.InsideTag,a=0,r=(o=e.children).length;a<r;a++)i=o[a],this.writeChildNode(i,t,s+1);t.state=n.CloseTag,this.stream.write("]")}return t.state=n.CloseTag,this.stream.write(t.spaceBeforeSlash+">"),this.stream.write(this.endline(e,t,s)),t.state=n.None,this.closeNode(e,t,s)},s.prototype.element=function(e,s,i){var r,o,l,d,m,c,g,u,p;for(g in i||(i=0),this.openNode(e,s,i),s.state=n.OpenTag,this.stream.write(this.indent(e,s,i)+"<"+e.name),u=e.attribs)a.call(u,g)&&(r=u[g],this.attribute(r,s,i));if(d=0===(l=e.children.length)?null:e.children[0],0===l||e.children.every((function(e){return(e.type===t.Text||e.type===t.Raw)&&""===e.value})))s.allowEmpty?(this.stream.write(">"),s.state=n.CloseTag,this.stream.write("</"+e.name+">")):(s.state=n.CloseTag,this.stream.write(s.spaceBeforeSlash+"/>"));else if(!s.pretty||1!==l||d.type!==t.Text&&d.type!==t.Raw||null==d.value){for(this.stream.write(">"+this.endline(e,s,i)),s.state=n.InsideTag,m=0,c=(p=e.children).length;m<c;m++)o=p[m],this.writeChildNode(o,s,i+1);s.state=n.CloseTag,this.stream.write(this.indent(e,s,i)+"</"+e.name+">")}else this.stream.write(">"),s.state=n.InsideTag,s.suppressPrettyCount++,this.writeChildNode(d,s,i+1),s.suppressPrettyCount--,s.state=n.CloseTag,this.stream.write("</"+e.name+">");return this.stream.write(this.endline(e,s,i)),s.state=n.None,this.closeNode(e,s,i)},s.prototype.processingInstruction=function(e,t,n){return this.stream.write(s.__super__.processingInstruction.call(this,e,t,n))},s.prototype.raw=function(e,t,n){return this.stream.write(s.__super__.raw.call(this,e,t,n))},s.prototype.text=function(e,t,n){return this.stream.write(s.__super__.text.call(this,e,t,n))},s.prototype.dtdAttList=function(e,t,n){return this.stream.write(s.__super__.dtdAttList.call(this,e,t,n))},s.prototype.dtdElement=function(e,t,n){return this.stream.write(s.__super__.dtdElement.call(this,e,t,n))},s.prototype.dtdEntity=function(e,t,n){return this.stream.write(s.__super__.dtdEntity.call(this,e,t,n))},s.prototype.dtdNotation=function(e,t,n){return this.stream.write(s.__super__.dtdNotation.call(this,e,t,n))},s}(i)}).call(this)},40382:function(e,t,s){(function(){var t,n={}.hasOwnProperty;t=s(6286),e.exports=function(e){function t(e){t.__super__.constructor.call(this,e)}return function(e,t){for(var s in t)n.call(t,s)&&(e[s]=t[s]);function i(){this.constructor=e}i.prototype=t.prototype,e.prototype=new i,e.__super__=t.prototype}(t,e),t.prototype.document=function(e,t){var s,n,i,a,r;for(t=this.filterOptions(t),a="",n=0,i=(r=e.children).length;n<i;n++)s=r[n],a+=this.writeChildNode(s,t,0);return t.pretty&&a.slice(-t.newline.length)===t.newline&&(a=a.slice(0,-t.newline.length)),a},t}(t)}).call(this)},43976:function(e){(function(){var t=function(e,t){return function(){return e.apply(t,arguments)}},s={}.hasOwnProperty;e.exports=function(){function e(e){var n,i,a;for(n in this.assertLegalName=t(this.assertLegalName,this),this.assertLegalChar=t(this.assertLegalChar,this),e||(e={}),this.options=e,this.options.version||(this.options.version="1.0"),i=e.stringify||{})s.call(i,n)&&(a=i[n],this[n]=a)}return e.prototype.name=function(e){return this.options.noValidation?e:this.assertLegalName(""+e||"")},e.prototype.text=function(e){return this.options.noValidation?e:this.assertLegalChar(this.textEscape(""+e||""))},e.prototype.cdata=function(e){return this.options.noValidation?e:(e=(e=""+e||"").replace("]]>","]]]]><![CDATA[>"),this.assertLegalChar(e))},e.prototype.comment=function(e){if(this.options.noValidation)return e;if((e=""+e||"").match(/--/))throw new Error("Comment text cannot contain double-hypen: "+e);return this.assertLegalChar(e)},e.prototype.raw=function(e){return this.options.noValidation?e:""+e||""},e.prototype.attValue=function(e){return this.options.noValidation?e:this.assertLegalChar(this.attEscape(e=""+e||""))},e.prototype.insTarget=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.insValue=function(e){if(this.options.noValidation)return e;if((e=""+e||"").match(/\?>/))throw new Error("Invalid processing instruction value: "+e);return this.assertLegalChar(e)},e.prototype.xmlVersion=function(e){if(this.options.noValidation)return e;if(!(e=""+e||"").match(/1\.[0-9]+/))throw new Error("Invalid version number: "+e);return e},e.prototype.xmlEncoding=function(e){if(this.options.noValidation)return e;if(!(e=""+e||"").match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+e);return this.assertLegalChar(e)},e.prototype.xmlStandalone=function(e){return this.options.noValidation?e:e?"yes":"no"},e.prototype.dtdPubID=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdSysID=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdElementValue=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdAttType=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdAttDefault=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdEntityValue=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdNData=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.convertAttKey="@",e.prototype.convertPIKey="?",e.prototype.convertTextKey="#text",e.prototype.convertCDataKey="#cdata",e.prototype.convertCommentKey="#comment",e.prototype.convertRawKey="#raw",e.prototype.assertLegalChar=function(e){var t,s;if(this.options.noValidation)return e;if(t="","1.0"===this.options.version){if(t=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,s=e.match(t))throw new Error("Invalid character in string: "+e+" at index "+s.index)}else if("1.1"===this.options.version&&(t=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,s=e.match(t)))throw new Error("Invalid character in string: "+e+" at index "+s.index);return e},e.prototype.assertLegalName=function(e){var t;if(this.options.noValidation)return e;if(this.assertLegalChar(e),t=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!e.match(t))throw new Error("Invalid character in name");return e},e.prototype.textEscape=function(e){var t;return this.options.noValidation?e:(t=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,e.replace(t,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r/g,"&#xD;"))},e.prototype.attEscape=function(e){var t;return this.options.noValidation?e:(t=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,e.replace(t,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;"))},e}()}).call(this)},82535:function(e,t,s){(function(){var t,n,i={}.hasOwnProperty;t=s(71737),n=s(17457),e.exports=function(e){function s(e,n){if(s.__super__.constructor.call(this,e),null==n)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=t.Text,this.value=this.stringify.text(n)}return function(e,t){for(var s in t)i.call(t,s)&&(e[s]=t[s]);function n(){this.constructor=e}n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype}(s,e),Object.defineProperty(s.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(s.prototype,"wholeText",{get:function(){var e,t,s;for(s="",t=this.previousSibling;t;)s=t.data+s,t=t.previousSibling;for(s+=this.data,e=this.nextSibling;e;)s+=e.data,e=e.nextSibling;return s}}),s.prototype.clone=function(){return Object.create(this)},s.prototype.toString=function(e){return this.options.writer.text(this,this.options.writer.filterOptions(e))},s.prototype.splitText=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.replaceWholeText=function(e){throw new Error("This DOM method is not implemented."+this.debugInfo())},s}(n)}).call(this)},6286:function(e,t,s){(function(){var t,n,i,a={}.hasOwnProperty;i=s(49241).assign,t=s(71737),s(34130),s(96376),s(92691),s(32679),s(33906),s(1268),s(82535),s(85915),s(21218),s(34111),s(67696),s(5529),s(28012),n=s(88753),e.exports=function(){function e(e){var t,s,n;for(t in e||(e={}),this.options=e,s=e.writer||{})a.call(s,t)&&(n=s[t],this["_"+t]=this[t],this[t]=n)}return e.prototype.filterOptions=function(e){var t,s,a,r,o,l,d,m;return e||(e={}),e=i({},this.options,e),(t={writer:this}).pretty=e.pretty||!1,t.allowEmpty=e.allowEmpty||!1,t.indent=null!=(s=e.indent)?s:" ",t.newline=null!=(a=e.newline)?a:"\n",t.offset=null!=(r=e.offset)?r:0,t.dontPrettyTextNodes=null!=(o=null!=(l=e.dontPrettyTextNodes)?l:e.dontprettytextnodes)?o:0,t.spaceBeforeSlash=null!=(d=null!=(m=e.spaceBeforeSlash)?m:e.spacebeforeslash)?d:"",!0===t.spaceBeforeSlash&&(t.spaceBeforeSlash=" "),t.suppressPrettyCount=0,t.user={},t.state=n.None,t},e.prototype.indent=function(e,t,s){var n;return!t.pretty||t.suppressPrettyCount?"":t.pretty&&(n=(s||0)+t.offset+1)>0?new Array(n).join(t.indent):""},e.prototype.endline=function(e,t,s){return!t.pretty||t.suppressPrettyCount?"":t.newline},e.prototype.attribute=function(e,t,s){var n;return this.openAttribute(e,t,s),n=" "+e.name+'="'+e.value+'"',this.closeAttribute(e,t,s),n},e.prototype.cdata=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<![CDATA[",t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+="]]>"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.comment=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"\x3c!-- ",t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+=" --\x3e"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.declaration=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<?xml",t.state=n.InsideTag,i+=' version="'+e.version+'"',null!=e.encoding&&(i+=' encoding="'+e.encoding+'"'),null!=e.standalone&&(i+=' standalone="'+e.standalone+'"'),t.state=n.CloseTag,i+=t.spaceBeforeSlash+"?>",i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.docType=function(e,t,s){var i,a,r,o,l;if(s||(s=0),this.openNode(e,t,s),t.state=n.OpenTag,o=this.indent(e,t,s),o+="<!DOCTYPE "+e.root().name,e.pubID&&e.sysID?o+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.sysID&&(o+=' SYSTEM "'+e.sysID+'"'),e.children.length>0){for(o+=" [",o+=this.endline(e,t,s),t.state=n.InsideTag,a=0,r=(l=e.children).length;a<r;a++)i=l[a],o+=this.writeChildNode(i,t,s+1);t.state=n.CloseTag,o+="]"}return t.state=n.CloseTag,o+=t.spaceBeforeSlash+">",o+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),o},e.prototype.element=function(e,s,i){var r,o,l,d,m,c,g,u,p,f,h,v,w,y;for(p in i||(i=0),f=!1,h="",this.openNode(e,s,i),s.state=n.OpenTag,h+=this.indent(e,s,i)+"<"+e.name,v=e.attribs)a.call(v,p)&&(r=v[p],h+=this.attribute(r,s,i));if(d=0===(l=e.children.length)?null:e.children[0],0===l||e.children.every((function(e){return(e.type===t.Text||e.type===t.Raw)&&""===e.value})))s.allowEmpty?(h+=">",s.state=n.CloseTag,h+="</"+e.name+">"+this.endline(e,s,i)):(s.state=n.CloseTag,h+=s.spaceBeforeSlash+"/>"+this.endline(e,s,i));else if(!s.pretty||1!==l||d.type!==t.Text&&d.type!==t.Raw||null==d.value){if(s.dontPrettyTextNodes)for(m=0,g=(w=e.children).length;m<g;m++)if(((o=w[m]).type===t.Text||o.type===t.Raw)&&null!=o.value){s.suppressPrettyCount++,f=!0;break}for(h+=">"+this.endline(e,s,i),s.state=n.InsideTag,c=0,u=(y=e.children).length;c<u;c++)o=y[c],h+=this.writeChildNode(o,s,i+1);s.state=n.CloseTag,h+=this.indent(e,s,i)+"</"+e.name+">",f&&s.suppressPrettyCount--,h+=this.endline(e,s,i),s.state=n.None}else h+=">",s.state=n.InsideTag,s.suppressPrettyCount++,f=!0,h+=this.writeChildNode(d,s,i+1),s.suppressPrettyCount--,f=!1,s.state=n.CloseTag,h+="</"+e.name+">"+this.endline(e,s,i);return this.closeNode(e,s,i),h},e.prototype.writeChildNode=function(e,s,n){switch(e.type){case t.CData:return this.cdata(e,s,n);case t.Comment:return this.comment(e,s,n);case t.Element:return this.element(e,s,n);case t.Raw:return this.raw(e,s,n);case t.Text:return this.text(e,s,n);case t.ProcessingInstruction:return this.processingInstruction(e,s,n);case t.Dummy:return"";case t.Declaration:return this.declaration(e,s,n);case t.DocType:return this.docType(e,s,n);case t.AttributeDeclaration:return this.dtdAttList(e,s,n);case t.ElementDeclaration:return this.dtdElement(e,s,n);case t.EntityDeclaration:return this.dtdEntity(e,s,n);case t.NotationDeclaration:return this.dtdNotation(e,s,n);default:throw new Error("Unknown XML node type: "+e.constructor.name)}},e.prototype.processingInstruction=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<?",t.state=n.InsideTag,i+=e.target,e.value&&(i+=" "+e.value),t.state=n.CloseTag,i+=t.spaceBeforeSlash+"?>",i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.raw=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s),t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.text=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s),t.state=n.InsideTag,i+=e.value,t.state=n.CloseTag,i+=this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdAttList=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!ATTLIST",t.state=n.InsideTag,i+=" "+e.elementName+" "+e.attributeName+" "+e.attributeType,"#DEFAULT"!==e.defaultValueType&&(i+=" "+e.defaultValueType),e.defaultValue&&(i+=' "'+e.defaultValue+'"'),t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdElement=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!ELEMENT",t.state=n.InsideTag,i+=" "+e.name+" "+e.value,t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdEntity=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!ENTITY",t.state=n.InsideTag,e.pe&&(i+=" %"),i+=" "+e.name,e.value?i+=' "'+e.value+'"':(e.pubID&&e.sysID?i+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.sysID&&(i+=' SYSTEM "'+e.sysID+'"'),e.nData&&(i+=" NDATA "+e.nData)),t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.dtdNotation=function(e,t,s){var i;return this.openNode(e,t,s),t.state=n.OpenTag,i=this.indent(e,t,s)+"<!NOTATION",t.state=n.InsideTag,i+=" "+e.name,e.pubID&&e.sysID?i+=' PUBLIC "'+e.pubID+'" "'+e.sysID+'"':e.pubID?i+=' PUBLIC "'+e.pubID+'"':e.sysID&&(i+=' SYSTEM "'+e.sysID+'"'),t.state=n.CloseTag,i+=t.spaceBeforeSlash+">"+this.endline(e,t,s),t.state=n.None,this.closeNode(e,t,s),i},e.prototype.openNode=function(e,t,s){},e.prototype.closeNode=function(e,t,s){},e.prototype.openAttribute=function(e,t,s){},e.prototype.closeAttribute=function(e,t,s){},e}()}).call(this)},59665:function(e,t,s){(function(){var t,n,i,a,r,o,l,d,m,c;c=s(49241),d=c.assign,m=c.isFunction,i=s(67260),a=s(71933),r=s(80400),l=s(40382),o=s(96775),t=s(71737),n=s(88753),e.exports.create=function(e,t,s,n){var i,r;if(null==e)throw new Error("Root element needs a name.");return n=d({},t,s,n),r=(i=new a(n)).element(e),n.headless||(i.declaration(n),null==n.pubID&&null==n.sysID||i.dtd(n)),r},e.exports.begin=function(e,t,s){var n;return m(e)&&(t=(n=[e,t])[0],s=n[1],e={}),t?new r(e,t,s):new a(e)},e.exports.stringWriter=function(e){return new l(e)},e.exports.streamWriter=function(e,t){return new o(e,t)},e.exports.implementation=new i,e.exports.nodeType=t,e.exports.writerState=n}).call(this)},98383:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},39075:e=>{"use strict";e.exports="data:image/svg+xml,%3csvg%20viewBox=%270%200%2016%2016%27%20height=%2716%27%20width=%2716%27%20xmlns=%27http://www.w3.org/2000/svg%27%20xml:space=%27preserve%27%20style=%27fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2%27%3e%3cpath%20d=%27M6.4%2019%205%2017.6l5.6-5.6L5%206.4%206.4%205l5.6%205.6L17.6%205%2019%206.4%2013.4%2012l5.6%205.6-1.4%201.4-5.6-5.6L6.4%2019Z%27%20style=%27fill:%23fff;fill-rule:nonzero%27%20transform=%27matrix%28.85714%200%200%20.85714%20-2.286%20-2.286%29%27/%3e%3c/svg%3e"},15340:()=>{},79838:()=>{},94997:(e,t,s)=>{"use strict";s.d(t,{S:()=>ae,U:()=>ke,a:()=>le,b:()=>ge,g:()=>_e,h:()=>Ae,i:()=>oe,l:()=>te,n:()=>he,o:()=>Se,t:()=>ue});var n=s(85072),i=s.n(n),a=s(97825),r=s.n(a),o=s(77659),l=s.n(o),d=s(55056),m=s.n(d),c=s(10540),g=s.n(c),u=s(41113),p=s.n(u),f=s(96667),h={};h.styleTagTransform=p(),h.setAttributes=m(),h.insert=l().bind(null,"head"),h.domAPI=r(),h.insertStyleElement=g(),i()(f.A,h),f.A&&f.A.locals&&f.A.locals;var v=s(82680),w=s(85471),y=s(21777),C=s(34297),T=s(71225),A=s(43627),b=s(65043);class x extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}const k=Object.freeze({pending:Symbol("pending"),canceled:Symbol("canceled"),resolved:Symbol("resolved"),rejected:Symbol("rejected")});class _{static fn(e){return(...t)=>new _(((s,n,i)=>{t.push(i),e(...t).then(s,n)}))}#e=[];#t=!0;#s=k.pending;#n;#i;constructor(e){this.#n=new Promise(((t,s)=>{this.#i=s;const n=e=>{if(this.#s!==k.pending)throw new Error(`The \`onCancel\` handler was attached after the promise ${this.#s.description}.`);this.#e.push(e)};Object.defineProperties(n,{shouldReject:{get:()=>this.#t,set:e=>{this.#t=e}}}),e((e=>{this.#s===k.canceled&&n.shouldReject||(t(e),this.#a(k.resolved))}),(e=>{this.#s===k.canceled&&n.shouldReject||(s(e),this.#a(k.rejected))}),n)}))}then(e,t){return this.#n.then(e,t)}catch(e){return this.#n.catch(e)}finally(e){return this.#n.finally(e)}cancel(e){if(this.#s===k.pending){if(this.#a(k.canceled),this.#e.length>0)try{for(const e of this.#e)e()}catch(e){return void this.#i(e)}this.#t&&this.#i(new x(e))}}get isCanceled(){return this.#s===k.canceled}#a(e){this.#s===k.pending&&(this.#s=e)}}Object.setPrototypeOf(_.prototype,Promise.prototype);var S=s(57485),F=s(63814),N=s(51111);const L="axios-retry";function U(e){return!e.response&&!!e.code&&!["ERR_CANCELED","ECONNABORTED"].includes(e.code)&&N(e)}const P=["get","head","options"],E=P.concat(["put","delete"]);function I(e){return"ECONNABORTED"!==e.code&&(!e.response||429===e.response.status||e.response.status>=500&&e.response.status<=599)}function D(e){return!!e.config?.method&&I(e)&&-1!==E.indexOf(e.config.method)}function z(e){return U(e)||D(e)}function B(e=void 0){const t=e?.response?.headers["retry-after"];if(!t)return 0;let s=1e3*(Number(t)||0);return 0===s&&(s=(new Date(t).valueOf()||0)-Date.now()),Math.max(0,s)}function j(e=0,t=void 0,s=100){const n=2**e*s,i=Math.max(n,B(t));return i+.2*i*Math.random()}const M={retries:3,retryCondition:z,retryDelay:function(e=0,t=void 0){return Math.max(0,B(t))},shouldResetTimeout:!1,onRetry:()=>{},onMaxRetryTimesExceeded:()=>{},validateResponse:null};function O(e,t,s=!1){const n=function(e,t){return{...M,...t,...e[L]}}(e,t||{});return n.retryCount=n.retryCount||0,n.lastRequestTime&&!s||(n.lastRequestTime=Date.now()),e[L]=n,n}const R=(e,t)=>{const s=e.interceptors.request.use((e=>(O(e,t,!0),e[L]?.validateResponse&&(e.validateStatus=()=>!1),e))),n=e.interceptors.response.use(null,(async s=>{const{config:n}=s;if(!n)return Promise.reject(s);const i=O(n,t);return s.response&&i.validateResponse?.(s.response)?s.response:await async function(e,t){const{retries:s,retryCondition:n}=e,i=(e.retryCount||0)<s&&n(t);if("object"==typeof i)try{return!1!==await i}catch(e){return!1}return i}(i,s)?async function(e,t,s,n){t.retryCount+=1;const{retryDelay:i,shouldResetTimeout:a,onRetry:r}=t,o=i(t.retryCount,s);if(function(e,t){e.defaults.agent===t.agent&&delete t.agent,e.defaults.httpAgent===t.httpAgent&&delete t.httpAgent,e.defaults.httpsAgent===t.httpsAgent&&delete t.httpsAgent}(e,n),!a&&n.timeout&&t.lastRequestTime){const e=Date.now()-t.lastRequestTime,i=n.timeout-e-o;if(i<=0)return Promise.reject(s);n.timeout=i}return n.transformRequest=[e=>e],await r(t.retryCount,s,n),n.signal?.aborted?Promise.resolve(e(n)):new Promise((t=>{const s=()=>{clearTimeout(i),t(e(n))},i=setTimeout((()=>{t(e(n)),n.signal?.removeEventListener&&n.signal.removeEventListener("abort",s)}),o);n.signal?.addEventListener&&n.signal.addEventListener("abort",s,{once:!0})}))}(e,i,s,n):(await async function(e,t){e.retryCount>=e.retries&&await e.onMaxRetryTimesExceeded(t,e.retryCount)}(i,s),Promise.reject(s))}));return{requestInterceptorId:s,responseInterceptorId:n}};R.isNetworkError=U,R.isSafeRequestError=function(e){return!!e.config?.method&&I(e)&&-1!==P.indexOf(e.config.method)},R.isIdempotentRequestError=D,R.isNetworkOrIdempotentRequestError=z,R.exponentialDelay=j,R.linearDelay=function(e=100){return(t=0,s=void 0)=>{const n=t*e;return Math.max(n,B(s))}},R.isRetryableError=I;const V=R;var H=s(35947),q=s(11195),W=s(87485),G=s(75270),Y=s(89257),$=s(30567),K=s(80114),J=s(24764),Q=s(18740),Z=s(6695),X=s(95101),ee=s(95674);const te=(0,H.YK)().setApp("@nextcloud/upload").detectUser().build();V(b.Ay,{retries:0});const se=async function(e,t,s,n=(()=>{}),i=void 0,a={},r=5){let o;return o=t instanceof Blob?t:await t(),i&&(a.Destination=i),a["Content-Type"]||(a["Content-Type"]="application/octet-stream"),await b.Ay.request({method:"PUT",url:e,data:o,signal:s,onUploadProgress:n,headers:a,"axios-retry":{retries:r,retryDelay:(e,t)=>j(e,t,1e3)}})},ne=function(e,t,s){return 0===t&&e.size<=s?Promise.resolve(new Blob([e],{type:e.type||"application/octet-stream"})):Promise.resolve(new Blob([e.slice(t,t+s)],{type:"application/octet-stream"}))},ie=function(e=void 0){const t=window.OC?.appConfig?.files?.max_chunk_size;if(t<=0)return 0;if(!Number(t))return 10485760;const s=Math.max(Number(t),5242880);return void 0===e?s:Math.max(s,Math.ceil(e/1e4))};var ae=(e=>(e[e.INITIALIZED=0]="INITIALIZED",e[e.UPLOADING=1]="UPLOADING",e[e.ASSEMBLING=2]="ASSEMBLING",e[e.FINISHED=3]="FINISHED",e[e.CANCELLED=4]="CANCELLED",e[e.FAILED=5]="FAILED",e))(ae||{});class re{_source;_file;_isChunked;_chunks;_size;_uploaded=0;_startTime=0;_status=0;_controller;_response=null;constructor(e,t=!1,s,n){const i=Math.min(ie()>0?Math.ceil(s/ie()):1,1e4);this._source=e,this._isChunked=t&&ie()>0&&i>1,this._chunks=this._isChunked?i:1,this._size=s,this._file=n,this._controller=new AbortController}get source(){return this._source}get file(){return this._file}get isChunked(){return this._isChunked}get chunks(){return this._chunks}get size(){return this._size}get startTime(){return this._startTime}set response(e){this._response=e}get response(){return this._response}get uploaded(){return this._uploaded}set uploaded(e){if(e>=this._size)return this._status=this._isChunked?2:3,void(this._uploaded=this._size);this._status=1,this._uploaded=e,0===this._startTime&&(this._startTime=(new Date).getTime())}get status(){return this._status}set status(e){this._status=e}get signal(){return this._controller.signal}cancel(){this._controller.abort(),this._status=4}}const oe=e=>"FileSystemFileEntry"in window&&e instanceof FileSystemFileEntry,le=e=>"FileSystemEntry"in window&&e instanceof FileSystemEntry;class de extends File{_originalName;_path;_children;constructor(e){super([],(0,T.P8)(e),{type:"httpd/unix-directory",lastModified:0}),this._children=new Map,this._originalName=(0,T.P8)(e),this._path=e}get size(){return this.children.reduce(((e,t)=>e+t.size),0)}get lastModified(){return this.children.reduce(((e,t)=>Math.max(e,t.lastModified)),0)}get originalName(){return this._originalName}get children(){return Array.from(this._children.values())}get webkitRelativePath(){return this._path}getChild(e){return this._children.get(e)??null}async addChildren(e){for(const t of e)await this.addChild(t)}async addChild(e){const t=this._path&&`${this._path}/`;if(oe(e))e=await new Promise(((t,s)=>e.file(t,s)));else if("FileSystemDirectoryEntry"in window&&e instanceof FileSystemDirectoryEntry){const s=e.createReader(),n=await new Promise(((e,t)=>s.readEntries(e,t))),i=new de(`${t}${e.name}`);return await i.addChildren(n),void this._children.set(e.name,i)}const s=e.webkitRelativePath??e.name;if(s.includes("/")){if(!s.startsWith(this._path))throw new Error(`File ${s} is not a child of ${this._path}`);const n=s.slice(t.length),i=(0,T.P8)(n);if(i===n)this._children.set(i,e);else{const s=n.slice(0,n.indexOf("/"));if(this._children.has(s))await this._children.get(s).addChild(e);else{const n=new de(`${t}${s}`);await n.addChild(e),this._children.set(s,n)}}}else this._children.set(e.name,e)}}const me=(0,q.$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"abusaud, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAli <alimahwer@yahoo.com>, 2024\nabusaud, 2024\n"},msgstr:["Last-Translator: abusaud, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" هو اسم ممنوع لملف أو مجلد.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" هو نوع ممنوع أن يكون لملف.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" هو غير مسموح به في اسم ملف أو مجلد.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ملف متعارض","{count} ملف متعارض","{count} ملفان متعارضان","{count} ملف متعارض","{count} ملفات متعارضة","{count} ملفات متعارضة"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ملف متعارض في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفان متعارضان في {dirname}","{count} ملف متعارض في {dirname}","{count} ملفات متعارضة في {dirname}","{count} ملفات متعارضة في {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} ثانية متبقية"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} متبقية"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["بضع ثوانٍ متبقية"]},Cancel:{msgid:"Cancel",msgstr:["إلغاء"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["إلغِ العملية بالكامل"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["إلغاء عمليات رفع الملفات"]},Continue:{msgid:"Continue",msgstr:["إستمر"]},"Create new":{msgid:"Create new",msgstr:["إنشاء جديد"]},"estimating time left":{msgid:"estimating time left",msgstr:["تقدير الوقت المتبقي"]},"Existing version":{msgid:"Existing version",msgstr:["الإصدار الحالي"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['غير مسموح ان ينتهي اسم الملف بـ "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["اسم ملف غير صحيح"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["تاريخ آخر تعديل غير معروف"]},New:{msgid:"New",msgstr:["جديد"]},"New filename":{msgid:"New filename",msgstr:["اسم ملف جديد"]},"New version":{msgid:"New version",msgstr:["نسخة جديدة"]},paused:{msgid:"paused",msgstr:["مُجمَّد"]},"Preview image":{msgid:"Preview image",msgstr:["معاينة الصورة"]},Rename:{msgid:"Rename",msgstr:["تغيير التسمية"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["حدِّد كل صناديق الخيارات"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["حدِّد كل الملفات الموجودة"]},"Select all new files":{msgid:"Select all new files",msgstr:["حدِّد كل الملفات الجديدة"]},Skip:{msgid:"Skip",msgstr:["تخطِّي"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف","تخطَّ {count} ملف"]},"Unknown size":{msgid:"Unknown size",msgstr:["حجم غير معلوم"]},Upload:{msgid:"Upload",msgstr:["رفع الملفات"]},"Upload files":{msgid:"Upload files",msgstr:["رفع ملفات"]},"Upload folders":{msgid:"Upload folders",msgstr:["رفع مجلدات"]},"Upload from device":{msgid:"Upload from device",msgstr:["الرفع من جهاز "]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["تمّ إلغاء عملية رفع الملفات"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["تمّ تجاوز الرفع"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['رفع "{folder}" تمّ تجاوزه']},"Upload progress":{msgid:"Upload progress",msgstr:["تقدُّم الرفع "]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["أيُّ الملفات ترغب في الإبقاء عليها؟"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار."]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2023","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nenolp <enolp@softastur.org>, 2023\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2023\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ficheru en coflictu","{count} ficheros en coflictu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} ficheru en coflictu en {dirname}","{count} ficheros en coflictu en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Tiempu que queda: {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["queden unos segundos"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Encaboxar les xubes"]},Continue:{msgid:"Continue",msgstr:["Siguir"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando'l tiempu que falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión esistente"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["La data de la última modificación ye desconocida"]},New:{msgid:"New",msgstr:["Nuevu"]},"New version":{msgid:"New version",msgstr:["Versión nueva"]},paused:{msgid:"paused",msgstr:["en posa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar la imaxe"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar toles caxelles"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleicionar tolos ficheros esistentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleicionar tolos ficheros nuevos"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar esti ficheru","Saltar {count} ficheros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamañu desconocíu"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Encaboxóse la xuba"]},"Upload files":{msgid:"Upload files",msgstr:["Xubir ficheros"]},"Upload progress":{msgid:"Upload progress",msgstr:["Xuba en cursu"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué ficheros quies caltener?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Tienes de seleicionar polo menos una versión de cada ficheru pa siguir."]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Rashad Aliyev <microphprashad@gmail.com>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRashad Aliyev <microphprashad@gmail.com>, 2023\n"},msgstr:["Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniyə qalıb"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} qalıb"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir neçə saniyə qalıb"]},Add:{msgid:"Add",msgstr:["Əlavə et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yükləməni imtina et"]},"estimating time left":{msgid:"estimating time left",msgstr:["Təxmini qalan vaxt"]},paused:{msgid:"paused",msgstr:["pauzadadır"]},"Upload files":{msgid:"Upload files",msgstr:["Faylları yüklə"]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bg",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022","Language-Team":"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMarc Riera <marcriera@softcatala.org>, 2022\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\n"},msgstr:["Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Queden {seconds} segons"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["Queden {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Queden uns segons"]},Add:{msgid:"Add",msgstr:["Afegeix"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel·la les pujades"]},"estimating time left":{msgid:"estimating time left",msgstr:["S'està estimant el temps restant"]},paused:{msgid:"paused",msgstr:["En pausa"]},"Upload files":{msgid:"Upload files",msgstr:["Puja els fitxers"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\nMartin Hankovec, 2024\nAppukonrad <appukonrad@gmail.com>, 2024\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ není povoleno použít jako název souboru či složky."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}“ není povoleného typu souboru."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}“ není povoleno použít v rámci názvu souboru či složky."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} kolize souborů","{count} kolize souborů","{count} kolizí souborů","{count} kolize souborů"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} kolize souboru v {dirname}","{count} kolize souboru v {dirname}","{count} kolizí souborů v {dirname}","{count} kolize souboru v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["zbývá {seconds}"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["zbývá {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zbývá několik sekund"]},Cancel:{msgid:"Cancel",msgstr:["Zrušit"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušit celou operaci"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušit nahrávání"]},Continue:{msgid:"Continue",msgstr:["Pokračovat"]},"Create new":{msgid:"Create new",msgstr:["Vytvořit nový"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhaduje se zbývající čas"]},"Existing version":{msgid:"Existing version",msgstr:["Existující verze"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Názvy souborů nemohou končit na „{segment}“."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný název souboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Neznámé datum poslední úpravy"]},New:{msgid:"New",msgstr:["Nové"]},"New filename":{msgid:"New filename",msgstr:["Nový název souboru"]},"New version":{msgid:"New version",msgstr:["Nová verze"]},paused:{msgid:"paused",msgstr:["pozastaveno"]},"Preview image":{msgid:"Preview image",msgstr:["Náhled obrázku"]},Rename:{msgid:"Rename",msgstr:["Přejmenovat"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označit všechny zaškrtávací kolonky"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrat veškeré stávající soubory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrat veškeré nové soubory"]},Skip:{msgid:"Skip",msgstr:["Přeskočit"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Přeskočit tento soubor","Přeskočit {count} soubory","Přeskočit {count} souborů","Přeskočit {count} soubory"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznámá velikost"]},Upload:{msgid:"Upload",msgstr:["Nahrát"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrát soubory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrát složky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrát ze zařízení"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávání bylo zrušeno"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrání bylo přeskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Nahrání „{folder}“ bylo přeskočeno"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postup v nahrávání"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Které soubory si přejete ponechat?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru."]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRasmus Rosendahl-Kaa, 2024\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tilladt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fil konflikt","{count} filer i konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fil konflikt i {dirname}","{count} filer i konflikt i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{sekunder} sekunder tilbage"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tilbage"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["et par sekunder tilbage"]},Cancel:{msgid:"Cancel",msgstr:["Annuller"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuller hele handlingen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuller uploads"]},Continue:{msgid:"Continue",msgstr:["Fortsæt"]},"Create new":{msgid:"Create new",msgstr:["Opret ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimering af resterende tid"]},"Existing version":{msgid:"Existing version",msgstr:["Eksisterende version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavne må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldigt filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Sidste modifikationsdato ukendt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nyt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvisning af billede"]},Rename:{msgid:"Rename",msgstr:["Omdøb"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Vælg alle felter"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vælg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vælg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Spring over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Spring denne fil over","Spring {count} filer over"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukendt størrelse"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload fra enhed"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload er blevet annulleret"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload er blevet sprunget over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload af "{folder}" er blevet sprunget over']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload fremskridt"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer ønsker du at beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du skal vælge mindst én version af hver fil for at fortsætte."]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Andy Scherzinger <info@andy-scherzinger.de>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMartin Wilichowski, 2024\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\n"},msgstr:["Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Geschätzte verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Diese Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchtest du behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMario Siegmann <mario_siegmann@web.de>, 2024\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\n"},msgstr:["Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" ist ein verbotener Datei- oder Ordnername.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" ist ein verbotener Dateityp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ist in einem Datei- oder Ordnernamen nicht zulässig.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Datei-Konflikt","{count} Datei-Konflikte"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} Datei-Konflikt in {dirname}","{count} Datei-Konflikte in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} Sekunden verbleiben"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} verbleibend"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["ein paar Sekunden verbleiben"]},Cancel:{msgid:"Cancel",msgstr:["Abbrechen"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Den gesamten Vorgang abbrechen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hochladen abbrechen"]},Continue:{msgid:"Continue",msgstr:["Fortsetzen"]},"Create new":{msgid:"Create new",msgstr:["Neu erstellen"]},"estimating time left":{msgid:"estimating time left",msgstr:["Berechne verbleibende Zeit"]},"Existing version":{msgid:"Existing version",msgstr:["Vorhandene Version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dateinamen dürfen nicht mit "{segment}" enden.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ungültiger Dateiname"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum der letzten Änderung unbekannt"]},New:{msgid:"New",msgstr:["Neu"]},"New filename":{msgid:"New filename",msgstr:["Neuer Dateiname"]},"New version":{msgid:"New version",msgstr:["Neue Version"]},paused:{msgid:"paused",msgstr:["Pausiert"]},"Preview image":{msgid:"Preview image",msgstr:["Vorschaubild"]},Rename:{msgid:"Rename",msgstr:["Umbenennen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Alle Kontrollkästchen aktivieren"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Alle vorhandenen Dateien auswählen"]},"Select all new files":{msgid:"Select all new files",msgstr:["Alle neuen Dateien auswählen"]},Skip:{msgid:"Skip",msgstr:["Überspringen"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} Datei überspringen","{count} Dateien überspringen"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unbekannte Größe"]},Upload:{msgid:"Upload",msgstr:["Hochladen"]},"Upload files":{msgid:"Upload files",msgstr:["Dateien hochladen"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ordner hochladen"]},"Upload from device":{msgid:"Upload from device",msgstr:["Vom Gerät hochladen"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Das Hochladen wurde abgebrochen"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Das Hochladen wurde übersprungen"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Das Hochladen von "{folder}" wurde übersprungen']},"Upload progress":{msgid:"Upload progress",msgstr:["Fortschritt beim Hochladen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Welche Dateien möchten Sie behalten?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren."]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Nik Pap, 2022","Language-Team":"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nNik Pap, 2022\n"},msgstr:["Last-Translator: Nik Pap, 2022\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["απομένουν {seconds} δευτερόλεπτα"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["απομένουν {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["απομένουν λίγα δευτερόλεπτα"]},Add:{msgid:"Add",msgstr:["Προσθήκη"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ακύρωση μεταφορτώσεων"]},"estimating time left":{msgid:"estimating time left",msgstr:["εκτίμηση του χρόνου που απομένει"]},paused:{msgid:"paused",msgstr:["σε παύση"]},"Upload files":{msgid:"Upload files",msgstr:["Μεταφόρτωση αρχείων"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" is a forbidden file or folder name.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" is a forbidden file type.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" is not allowed inside a file or folder name.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} files conflict"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} file conflicts in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} seconds left"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} left"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["a few seconds left"]},Cancel:{msgid:"Cancel",msgstr:["Cancel"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancel the entire operation"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancel uploads"]},Continue:{msgid:"Continue",msgstr:["Continue"]},"Create new":{msgid:"Create new",msgstr:["Create new"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimating time left"]},"Existing version":{msgid:"Existing version",msgstr:["Existing version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filenames must not end with "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["If you select both versions, the incoming file will have a number added to its name."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Invalid filename"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Last modified date unknown"]},New:{msgid:"New",msgstr:["New"]},"New filename":{msgid:"New filename",msgstr:["New filename"]},"New version":{msgid:"New version",msgstr:["New version"]},paused:{msgid:"paused",msgstr:["paused"]},"Preview image":{msgid:"Preview image",msgstr:["Preview image"]},Rename:{msgid:"Rename",msgstr:["Rename"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Select all checkboxes"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Select all existing files"]},"Select all new files":{msgid:"Select all new files",msgstr:["Select all new files"]},Skip:{msgid:"Skip",msgstr:["Skip"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Skip {count} files"]},"Unknown size":{msgid:"Unknown size",msgstr:["Unknown size"]},Upload:{msgid:"Upload",msgstr:["Upload"]},"Upload files":{msgid:"Upload files",msgstr:["Upload files"]},"Upload folders":{msgid:"Upload folders",msgstr:["Upload folders"]},"Upload from device":{msgid:"Upload from device",msgstr:["Upload from device"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Upload has been cancelled"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Upload has been skipped"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Upload of "{folder}" has been skipped']},"Upload progress":{msgid:"Upload progress",msgstr:["Upload progress"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["When an incoming folder is selected, any conflicting files within it will also be overwritten."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Which files do you want to keep?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["You can either rename the file, skip this file or cancel the whole operation."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["You need to select at least one version of each file to continue."]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Última fecha de modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Saltar"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Saltar este archivo","Saltar {count} archivos","Saltar {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"ALEJANDRO CASTRO, 2022","Language-Team":"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nALEJANDRO CASTRO, 2022\n"},msgstr:["Last-Translator: ALEJANDRO CASTRO, 2022\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Add:{msgid:"Add",msgstr:["agregar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} conflictos de archivo"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflicto de archivo en {dirname}","{count} conflictos de archivo en {dirname}","{count} conflictos de archivo en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan unos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa de imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Cargar archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Cargar carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Cargar desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Carga cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la carga"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Qué archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}" contiene caracteres inválidos, ¿Cómo desea continuar?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflicto de archivo","{count} conflictos de archivo","{count} archivos en conflicto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} archivo en conflicto en {dirname}","{count} archivos en conflicto en {dirname}","{count} archivo en conflicto en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{tiempo} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quedan pocos segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar toda la operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar subidas"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear nuevo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tiempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["Nombre de archivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Fecha de última modificación desconocida"]},New:{msgid:"New",msgstr:["Nuevo"]},"New version":{msgid:"New version",msgstr:["Nueva versión"]},paused:{msgid:"paused",msgstr:["en pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Previsualizar imagen"]},Rename:{msgid:"Rename",msgstr:["Renombrar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleccionar todas las casillas de verificación"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos los archivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos los archivos nuevos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omitir este archivo","Omitir {count} archivos","Omitir {count} archivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño desconocido"]},"Upload files":{msgid:"Upload files",msgstr:["Subir archivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Subir carpetas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Subir desde dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["La subida ha sido cancelada"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso de la subida"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["¿Cuáles archivos desea conservar?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar al menos una versión de cada archivo para continuar."]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Taavo Roos, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMait R, 2022\nTaavo Roos, 2023\n"},msgstr:["Last-Translator: Taavo Roos, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} jäänud sekundid"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} aega jäänud"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["jäänud mõni sekund"]},Add:{msgid:"Add",msgstr:["Lisa"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Tühista üleslaadimine"]},"estimating time left":{msgid:"estimating time left",msgstr:["hinnanguline järelejäänud aeg"]},paused:{msgid:"paused",msgstr:["pausil"]},"Upload files":{msgid:"Upload files",msgstr:["Lae failid üles"]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022","Language-Team":"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\n"},msgstr:["Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundo geratzen dira"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} geratzen da"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["segundo batzuk geratzen dira"]},Add:{msgid:"Add",msgstr:["Gehitu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Ezeztatu igoerak"]},"estimating time left":{msgid:"estimating time left",msgstr:["kalkulatutako geratzen den denbora"]},paused:{msgid:"paused",msgstr:["geldituta"]},"Upload files":{msgid:"Upload files",msgstr:["Igo fitxategiak"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"Fatemeh Komeily, 2023","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nFatemeh Komeily, 2023\n"},msgstr:["Last-Translator: Fatemeh Komeily, 2023\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["ثانیه های باقی مانده"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["باقی مانده"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["چند ثانیه مانده"]},Add:{msgid:"Add",msgstr:["اضافه کردن"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["کنسل کردن فایل های اپلود شده"]},"estimating time left":{msgid:"estimating time left",msgstr:["تخمین زمان باقی مانده"]},paused:{msgid:"paused",msgstr:["مکث کردن"]},"Upload files":{msgid:"Upload files",msgstr:["بارگذاری فایل ها"]}}}}},{locale:"fi",json:{charset:"utf-8",headers:{"Last-Translator":"teemue, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\nteemue, 2024\n"},msgstr:["Last-Translator: teemue, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" on kielletty tiedoston tai hakemiston nimi.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" on kielletty tiedostotyyppi.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ei ole sallittu tiedoston tai hakemiston nimessä.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} tiedoston ristiriita","{count} tiedoston ristiriita"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tiedoston ristiriita kansiossa {dirname}","{count} tiedoston ristiriita kansiossa {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekuntia jäljellä"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} jäljellä"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["muutama sekunti jäljellä"]},Cancel:{msgid:"Cancel",msgstr:["Peruuta"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Peruuta koko toimenpide"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Peruuta lähetykset"]},Continue:{msgid:"Continue",msgstr:["Jatka"]},"Create new":{msgid:"Create new",msgstr:["Luo uusi"]},"estimating time left":{msgid:"estimating time left",msgstr:["arvioidaan jäljellä olevaa aikaa"]},"Existing version":{msgid:"Existing version",msgstr:["Olemassa oleva versio"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Tiedoston nimi ei saa päättyä "{segment}"']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Kielletty/väärä tiedoston nimi"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Viimeisin muokkauspäivä on tuntematon"]},New:{msgid:"New",msgstr:["Uusi"]},"New filename":{msgid:"New filename",msgstr:["Uusi tiedostonimi"]},"New version":{msgid:"New version",msgstr:["Uusi versio"]},paused:{msgid:"paused",msgstr:["keskeytetty"]},"Preview image":{msgid:"Preview image",msgstr:["Esikatsele kuva"]},Rename:{msgid:"Rename",msgstr:["Nimeä uudelleen"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Valitse kaikki valintaruudut"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Valitse kaikki olemassa olevat tiedostot"]},"Select all new files":{msgid:"Select all new files",msgstr:["Valitse kaikki uudet tiedostot"]},Skip:{msgid:"Skip",msgstr:["Ohita"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ohita tämä tiedosto","Ohita {count} tiedostoa"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tuntematon koko"]},Upload:{msgid:"Upload",msgstr:["Lähetä"]},"Upload files":{msgid:"Upload files",msgstr:["Lähetä tiedostoja"]},"Upload folders":{msgid:"Upload folders",msgstr:["Lähetä kansioita"]},"Upload from device":{msgid:"Upload from device",msgstr:["Lähetä laitteelta"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Lähetys on peruttu"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Lähetys on ohitettu"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Hakemiston "{folder}" lähetys on ohitettu']},"Upload progress":{msgid:"Upload progress",msgstr:["Lähetyksen edistyminen"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mitkä tiedostot haluat säilyttää?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi."]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"Arnaud Cazenave, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nBenoit Pruneau, 2024\njed boulahya, 2024\nJérôme HERBINET, 2024\nArnaud Cazenave, 2024\n"},msgstr:["Last-Translator: Arnaud Cazenave, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" est un nom de fichier ou de dossier interdit.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" est un type de fichier interdit.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} fichier en conflit","{count} fichiers en conflit","{count} fichiers en conflit"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fichier en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}","{count} fichiers en conflit dans {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondes restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restant"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["quelques secondes restantes"]},Cancel:{msgid:"Cancel",msgstr:["Annuler"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annuler l'opération entière"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annuler les téléversements"]},Continue:{msgid:"Continue",msgstr:["Continuer"]},"Create new":{msgid:"Create new",msgstr:["Créer un nouveau"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimation du temps restant"]},"Existing version":{msgid:"Existing version",msgstr:["Version existante"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Le nom des fichiers ne doit pas finir par "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nom de fichier invalide"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Date de la dernière modification est inconnue"]},New:{msgid:"New",msgstr:["Nouveau"]},"New filename":{msgid:"New filename",msgstr:["Nouveau nom de fichier"]},"New version":{msgid:"New version",msgstr:["Nouvelle version"]},paused:{msgid:"paused",msgstr:["en pause"]},"Preview image":{msgid:"Preview image",msgstr:["Aperçu de l'image"]},Rename:{msgid:"Rename",msgstr:["Renommer"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Sélectionner toutes les cases à cocher"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Sélectionner tous les fichiers existants"]},"Select all new files":{msgid:"Select all new files",msgstr:["Sélectionner tous les nouveaux fichiers"]},Skip:{msgid:"Skip",msgstr:["Ignorer"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorer ce fichier","Ignorer {count} fichiers","Ignorer {count} fichiers"]},"Unknown size":{msgid:"Unknown size",msgstr:["Taille inconnue"]},Upload:{msgid:"Upload",msgstr:["Téléverser"]},"Upload files":{msgid:"Upload files",msgstr:["Téléverser des fichiers"]},"Upload folders":{msgid:"Upload folders",msgstr:["Téléverser des dossiers"]},"Upload from device":{msgid:"Upload from device",msgstr:["Téléverser depuis l'appareil"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Le téléversement a été annulé"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Le téléversement a été ignoré"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Le téléversement de "{folder}" a été ignoré']},"Upload progress":{msgid:"Upload progress",msgstr:["Progression du téléversement"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quels fichiers souhaitez-vous conserver ?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Vous devez sélectionner au moins une version de chaque fichier pour continuer."]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Is ainm toirmiscthe comhaid nó fillteáin é "{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Is cineál comhaid toirmiscthe é "{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Ní cheadaítear "{segment}" taobh istigh d\'ainm comhaid nó fillteáin.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} coimhlint comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid","{count} coimhlintí comhaid"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} coimhlint comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}","{count} coimhlintí comhaid i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} soicind fágtha"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} fágtha"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["cúpla soicind fágtha"]},Cancel:{msgid:"Cancel",msgstr:["Cealaigh"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cealaigh an oibríocht iomlán"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cealaigh uaslódálacha"]},Continue:{msgid:"Continue",msgstr:["Leanúint ar aghaidh"]},"Create new":{msgid:"Create new",msgstr:["Cruthaigh nua"]},"estimating time left":{msgid:"estimating time left",msgstr:["ag déanamh meastachán ar an am atá fágtha"]},"Existing version":{msgid:"Existing version",msgstr:["Leagan láithreach "]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Níor cheart go gcríochnaíonn comhaid chomhad le "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ainm comhaid neamhbhailí"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dáta modhnaithe is déanaí anaithnid"]},New:{msgid:"New",msgstr:["Nua"]},"New filename":{msgid:"New filename",msgstr:["Ainm comhaid nua"]},"New version":{msgid:"New version",msgstr:["Leagan nua"]},paused:{msgid:"paused",msgstr:["sos"]},"Preview image":{msgid:"Preview image",msgstr:["Íomhá réamhamharc"]},Rename:{msgid:"Rename",msgstr:["Athainmnigh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Roghnaigh gach ticbhosca"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Roghnaigh gach comhad atá ann cheana féin"]},"Select all new files":{msgid:"Select all new files",msgstr:["Roghnaigh gach comhad nua"]},Skip:{msgid:"Skip",msgstr:["Scipeáil"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Léim an comhad seo","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad","Léim ar {count} comhad"]},"Unknown size":{msgid:"Unknown size",msgstr:["Méid anaithnid"]},Upload:{msgid:"Upload",msgstr:["Uaslódáil"]},"Upload files":{msgid:"Upload files",msgstr:["Uaslódáil comhaid"]},"Upload folders":{msgid:"Upload folders",msgstr:["Uaslódáil fillteáin"]},"Upload from device":{msgid:"Upload from device",msgstr:["Íosluchtaigh ó ghléas"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Cuireadh an t-uaslódáil ar ceal"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Léiríodh an uaslódáil"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Léiríodh an uaslódáil "{folder}".']},"Upload progress":{msgid:"Upload progress",msgstr:["Uaslódáil dul chun cinn"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Cé na comhaid ar mhaith leat a choinneáil?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh."]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» é un nome vedado para un ficheiro ou cartafol."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» é un tipo de ficheiro vedado."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} conflito de ficheiros","{count} conflitos de ficheiros"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflito de ficheiros en {dirname}","{count} conflitos de ficheiros en {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltan {seconds} segundos"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["falta {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltan uns segundos"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancela toda a operación"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envíos"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Crear un novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calculando canto tempo falta"]},"Existing version":{msgid:"Existing version",msgstr:["Versión existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Os nomes de ficheiros non deben rematar con «{segment}»."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["O nome de ficheiro non é válido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificación descoñecida"]},New:{msgid:"New",msgstr:["Nova"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de ficheiro"]},"New version":{msgid:"New version",msgstr:["Nova versión"]},paused:{msgid:"paused",msgstr:["detido"]},"Preview image":{msgid:"Preview image",msgstr:["Vista previa da imaxe"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marcar todas as caixas de selección"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleccionar todos os ficheiros existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleccionar todos os ficheiros novos"]},Skip:{msgid:"Skip",msgstr:["Omitir"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Omita este ficheiro","Omitir {count} ficheiros"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamaño descoñecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar cartafoles"]},"Upload from device":{msgid:"Upload from device",msgstr:["Enviar dende o dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O envío foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O envío foi omitido"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["O envío de «{folder}» foi omitido"]},"Upload progress":{msgid:"Upload progress",msgstr:["Progreso do envío"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Que ficheiros quere conservar?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Debe seleccionar polo menos unha versión de cada ficheiro para continuar."]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"hu",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['Tiltott fájl- vagy mappanév: „{segment}".']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['Tiltott fájltípus: „{segment}".']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Nem megengedett egy fájl- vagy mappanévben: „{segment}".']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}fájlt érintő konfliktus","{count} fájlt érintő konfliktus"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} fájlt érintő konfliktus a mappában: {dirname}","{count}fájlt érintő konfliktus a mappában: {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{} másodperc van hátra"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} van hátra"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["pár másodperc van hátra"]},Cancel:{msgid:"Cancel",msgstr:["Mégse"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Teljes művelet megszakítása"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Feltöltések megszakítása"]},Continue:{msgid:"Continue",msgstr:["Tovább"]},"Create new":{msgid:"Create new",msgstr:["Új létrehozása"]},"estimating time left":{msgid:"estimating time left",msgstr:["hátralévő idő becslése"]},"Existing version":{msgid:"Existing version",msgstr:["Jelenlegi változat"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Fájlnevek nem végződhetnek erre: „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Érvénytelen fájlnév"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Utolsó módosítás dátuma ismeretlen"]},New:{msgid:"New",msgstr:["Új"]},"New filename":{msgid:"New filename",msgstr:["Új fájlnév"]},"New version":{msgid:"New version",msgstr:["Új verzió"]},paused:{msgid:"paused",msgstr:["szüneteltetve"]},"Preview image":{msgid:"Preview image",msgstr:["Kép előnézete"]},Rename:{msgid:"Rename",msgstr:["Átnevezés"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Minden jelölőnégyzet kijelölése"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Minden jelenlegi fájl kijelölése"]},"Select all new files":{msgid:"Select all new files",msgstr:["Minden új fájl kijelölése"]},Skip:{msgid:"Skip",msgstr:["Kihagyás"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ezen fájl kihagyása","{count}fájl kihagyása"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ismeretlen méret"]},Upload:{msgid:"Upload",msgstr:["Feltöltés"]},"Upload files":{msgid:"Upload files",msgstr:["Fájlok feltöltése"]},"Upload folders":{msgid:"Upload folders",msgstr:["Mappák feltöltése"]},"Upload from device":{msgid:"Upload from device",msgstr:["Feltöltés eszközről"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Feltöltés meg lett szakítva"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Feltöltés át lett ugorva"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["„{folder}” feltöltése át lett ugorva"]},"Upload progress":{msgid:"Upload progress",msgstr:["Feltöltési folyamat"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Mely fájlokat kívánja megtartani?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["A folytatáshoz minden fájlból legalább egy verziót ki kell választani."]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Linerly <linerly@proton.me>, 2023","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nEmpty Slot Filler, 2023\nLinerly <linerly@proton.me>, 2023\n"},msgstr:["Last-Translator: Linerly <linerly@proton.me>, 2023\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} berkas berkonflik"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} berkas berkonflik dalam {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} detik tersisa"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} tersisa"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["tinggal sebentar lagi"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Batalkan unggahan"]},Continue:{msgid:"Continue",msgstr:["Lanjutkan"]},"estimating time left":{msgid:"estimating time left",msgstr:["memperkirakan waktu yang tersisa"]},"Existing version":{msgid:"Existing version",msgstr:["Versi yang ada"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Tanggal perubahan terakhir tidak diketahui"]},New:{msgid:"New",msgstr:["Baru"]},"New version":{msgid:"New version",msgstr:["Versi baru"]},paused:{msgid:"paused",msgstr:["dijeda"]},"Preview image":{msgid:"Preview image",msgstr:["Gambar pratinjau"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Pilih semua kotak centang"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Pilih semua berkas yang ada"]},"Select all new files":{msgid:"Select all new files",msgstr:["Pilih semua berkas baru"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Lewati {count} berkas"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukuran tidak diketahui"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Unggahan dibatalkan"]},"Upload files":{msgid:"Upload files",msgstr:["Unggah berkas"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Berkas mana yang Anda ingin tetap simpan?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan."]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} árekstur skráa","{count} árekstrar skráa"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} árekstur skráa í {dirname}","{count} árekstrar skráa í {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúndur eftir"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} eftir"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["nokkrar sekúndur eftir"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Hætta við innsendingar"]},Continue:{msgid:"Continue",msgstr:["Halda áfram"]},"estimating time left":{msgid:"estimating time left",msgstr:["áætla tíma sem eftir er"]},"Existing version":{msgid:"Existing version",msgstr:["Fyrirliggjandi útgáfa"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Síðasta breytingadagsetning er óþekkt"]},New:{msgid:"New",msgstr:["Nýtt"]},"New version":{msgid:"New version",msgstr:["Ný útgáfa"]},paused:{msgid:"paused",msgstr:["í bið"]},"Preview image":{msgid:"Preview image",msgstr:["Forskoðun myndar"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velja gátreiti"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velja allar fyrirliggjandi skrár"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velja allar nýjar skrár"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Sleppa þessari skrá","Sleppa {count} skrám"]},"Unknown size":{msgid:"Unknown size",msgstr:["Óþekkt stærð"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Hætt við innsendingu"]},"Upload files":{msgid:"Upload files",msgstr:["Senda inn skrár"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvaða skrám vilt þú vilt halda eftir?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram."]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"albanobattistella <albanobattistella@gmail.com>, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nFrancesco Sercia, 2024\nalbanobattistella <albanobattistella@gmail.com>, 2024\n"},msgstr:["Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" è un nome di file o cartella proibito.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}"è un tipo di file proibito.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" non è consentito all\'interno di un nome di file o cartella.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file in conflitto","{count} file in conflitto","{count} file in conflitto"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}","{count} file in conflitto in {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secondi rimanenti "]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} rimanente"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alcuni secondi rimanenti"]},Cancel:{msgid:"Cancel",msgstr:["Annulla"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Annulla l'intera operazione"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Annulla i caricamenti"]},Continue:{msgid:"Continue",msgstr:["Continua"]},"Create new":{msgid:"Create new",msgstr:["Crea nuovo"]},"estimating time left":{msgid:"estimating time left",msgstr:["calcolo il tempo rimanente"]},"Existing version":{msgid:"Existing version",msgstr:["Versione esistente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['I nomi dei file non devono terminare con "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero "]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome file non valido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ultima modifica sconosciuta"]},New:{msgid:"New",msgstr:["Nuovo"]},"New filename":{msgid:"New filename",msgstr:["Nuovo nome file"]},"New version":{msgid:"New version",msgstr:["Nuova versione"]},paused:{msgid:"paused",msgstr:["pausa"]},"Preview image":{msgid:"Preview image",msgstr:["Anteprima immagine"]},Rename:{msgid:"Rename",msgstr:["Rinomina"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Seleziona tutte le caselle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Seleziona tutti i file esistenti"]},"Select all new files":{msgid:"Select all new files",msgstr:["Seleziona tutti i nuovi file"]},Skip:{msgid:"Skip",msgstr:["Salta"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Salta questo file","Salta {count} file","Salta {count} file"]},"Unknown size":{msgid:"Unknown size",msgstr:["Dimensione sconosciuta"]},Upload:{msgid:"Upload",msgstr:["Caricamento"]},"Upload files":{msgid:"Upload files",msgstr:["Carica i file"]},"Upload folders":{msgid:"Upload folders",msgstr:["Carica cartelle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carica dal dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Caricamento annullato"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Il caricamento è stato saltato"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Il caricamento di "{folder}" è stato saltato']},"Upload progress":{msgid:"Upload progress",msgstr:["Progresso del caricamento"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quali file vuoi mantenere?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["È possibile rinominare il file, ignorarlo o annullare l'intera operazione."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Devi selezionare almeno una versione di ogni file per continuare"]}}}}},{locale:"ja",json:{charset:"utf-8",headers:{"Last-Translator":"kshimohata, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\nkshimohata, 2024\n"},msgstr:["Last-Translator: kshimohata, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" は禁止されているファイルまたはフォルダ名です。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" は禁止されているファイルタイプです。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['ファイルまたはフォルダ名に "{segment}" を含めることはできません。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} ファイル数の競合"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} で {count} 個のファイルが競合しています"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["残り {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["残り {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["残り数秒"]},Cancel:{msgid:"Cancel",msgstr:["キャンセル"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["すべての操作をキャンセルする"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["アップロードをキャンセル"]},Continue:{msgid:"Continue",msgstr:["続ける"]},"Create new":{msgid:"Create new",msgstr:["新規作成"]},"estimating time left":{msgid:"estimating time left",msgstr:["概算残り時間"]},"Existing version":{msgid:"Existing version",msgstr:["既存バージョン"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['ファイル名の末尾に "{segment}" を付けることはできません。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無効なファイル名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最終更新日不明"]},New:{msgid:"New",msgstr:["新規作成"]},"New filename":{msgid:"New filename",msgstr:["新しいファイル名"]},"New version":{msgid:"New version",msgstr:["新しいバージョン"]},paused:{msgid:"paused",msgstr:["一時停止中"]},"Preview image":{msgid:"Preview image",msgstr:["プレビュー画像"]},Rename:{msgid:"Rename",msgstr:["名前を変更"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["すべて選択"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["すべての既存ファイルを選択"]},"Select all new files":{msgid:"Select all new files",msgstr:["すべての新規ファイルを選択"]},Skip:{msgid:"Skip",msgstr:["スキップ"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count} 個のファイルをスキップする"]},"Unknown size":{msgid:"Unknown size",msgstr:["サイズ不明"]},Upload:{msgid:"Upload",msgstr:["アップロード"]},"Upload files":{msgid:"Upload files",msgstr:["ファイルをアップロード"]},"Upload folders":{msgid:"Upload folders",msgstr:["フォルダのアップロード"]},"Upload from device":{msgid:"Upload from device",msgstr:["デバイスからのアップロード"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["アップロードはキャンセルされました"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["アップロードがスキップされました"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" のアップロードがスキップされました']},"Upload progress":{msgid:"Upload progress",msgstr:["アップロード進行状況"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["どのファイルを保持しますか?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"ZiriSut, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nZiriSut, 2023\n"},msgstr:["Last-Translator: ZiriSut, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} tesdatin i d-yeqqimen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} i d-yeqqimen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["qqiment-d kra n tesdatin kan"]},Add:{msgid:"Add",msgstr:["Rnu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Sefsex asali"]},"estimating time left":{msgid:"estimating time left",msgstr:["asizel n wakud i d-yeqqimen"]},paused:{msgid:"paused",msgstr:["yeḥbes"]},"Upload files":{msgid:"Upload files",msgstr:["Sali-d ifuyla"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"이상오, 2024","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n이상오, 2024\n"},msgstr:["Last-Translator: 이상오, 2024\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{filename}" contains invalid characters, how do you want to continue?':{msgid:'"{filename}" contains invalid characters, how do you want to continue?',msgstr:['"{filename}"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}개의 파일이 충돌함"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname}에서 {count}개의 파일이 충돌함"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds}초 남음"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} 남음"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["곧 완료"]},Cancel:{msgid:"Cancel",msgstr:["취소"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["전체 작업을 취소"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["업로드 취소"]},Continue:{msgid:"Continue",msgstr:["확인"]},"Create new":{msgid:"Create new",msgstr:["새로 만들기"]},"estimating time left":{msgid:"estimating time left",msgstr:["남은 시간 계산"]},"Existing version":{msgid:"Existing version",msgstr:["현재 버전"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다."]},"Invalid file name":{msgid:"Invalid file name",msgstr:["잘못된 파일 이름"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["최근 수정일 알 수 없음"]},New:{msgid:"New",msgstr:["새로 만들기"]},"New version":{msgid:"New version",msgstr:["새 버전"]},paused:{msgid:"paused",msgstr:["일시정지됨"]},"Preview image":{msgid:"Preview image",msgstr:["미리보기 이미지"]},Rename:{msgid:"Rename",msgstr:["이름 바꾸기"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["모든 체크박스 선택"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["기존 파일을 모두 선택"]},"Select all new files":{msgid:"Select all new files",msgstr:["새로운 파일을 모두 선택"]},Skip:{msgid:"Skip",msgstr:["건너뛰기"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["{count}개의 파일 넘기기"]},"Unknown size":{msgid:"Unknown size",msgstr:["크기를 알 수 없음"]},"Upload files":{msgid:"Upload files",msgstr:["파일 업로드"]},"Upload folders":{msgid:"Upload folders",msgstr:["폴더 업로드"]},"Upload from device":{msgid:"Upload from device",msgstr:["장치에서 업로드"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["업로드가 취소되었습니다."]},"Upload progress":{msgid:"Upload progress",msgstr:["업로드 진행도"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["어떤 파일을 보존하시겠습니까?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다."]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Сашко Тодоров <sasetodorov@gmail.com>, 2022","Language-Team":"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nСашко Тодоров <sasetodorov@gmail.com>, 2022\n"},msgstr:["Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостануваат {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["преостанува {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["уште неколку секунди"]},Add:{msgid:"Add",msgstr:["Додади"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Прекини прикачување"]},"estimating time left":{msgid:"estimating time left",msgstr:["приближно преостанато време"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Upload files":{msgid:"Upload files",msgstr:["Прикачување датотеки"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"BATKHUYAG Ganbold, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBATKHUYAG Ganbold, 2023\n"},msgstr:["Last-Translator: BATKHUYAG Ganbold, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} секунд үлдсэн"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} үлдсэн"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["хэдхэн секунд үлдсэн"]},Add:{msgid:"Add",msgstr:["Нэмэх"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Илгээлтийг цуцлах"]},"estimating time left":{msgid:"estimating time left",msgstr:["Үлдсэн хугацааг тооцоолж байна"]},paused:{msgid:"paused",msgstr:["түр зогсоосон"]},"Upload files":{msgid:"Upload files",msgstr:["Файл илгээх"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nb",json:{charset:"utf-8",headers:{"Last-Translator":"Roger Knutsen, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nRoger Knutsen, 2024\n"},msgstr:["Last-Translator: Roger Knutsen, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" er et forbudt fil- eller mappenavn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" er en forbudt filtype.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" er ikke tillatt i et fil- eller mappenavn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} file conflict","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} file conflict in {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder igjen"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} igjen"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["noen få sekunder igjen"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hele operasjonen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt opplastninger"]},Continue:{msgid:"Continue",msgstr:["Fortsett"]},"Create new":{msgid:"Create new",msgstr:["Opprett ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["Estimerer tid igjen"]},"Existing version":{msgid:"Existing version",msgstr:["Gjeldende versjon"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnavn må ikke slutte med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ugyldig filnavn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Siste gang redigert ukjent"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnavn"]},"New version":{msgid:"New version",msgstr:["Ny versjon"]},paused:{msgid:"paused",msgstr:["pauset"]},"Preview image":{msgid:"Preview image",msgstr:["Forhåndsvis bilde"]},Rename:{msgid:"Rename",msgstr:["Omdøp"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Velg alle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Velg alle eksisterende filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Velg alle nye filer"]},Skip:{msgid:"Skip",msgstr:["Hopp over"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Skip this file","Hopp over {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Ukjent størrelse"]},"Upload files":{msgid:"Upload files",msgstr:["Last opp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Last opp mapper"]},"Upload from device":{msgid:"Upload from device",msgstr:["Last opp fra enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Opplastingen er kansellert"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Opplastingen er hoppet over"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Opplasting av "{folder}" er hoppet over']},"Upload progress":{msgid:"Upload progress",msgstr:["Fremdrift, opplasting"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hvilke filer vil du beholde?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du må velge minst en versjon av hver fil for å fortsette."]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Rico <rico-schwab@hotmail.com>, 2023","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nRico <rico-schwab@hotmail.com>, 2023\n"},msgstr:["Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Nog {seconds} seconden"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{seconds} over"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Nog een paar seconden"]},Add:{msgid:"Add",msgstr:["Voeg toe"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Uploads annuleren"]},"estimating time left":{msgid:"estimating time left",msgstr:["Schatting van de resterende tijd"]},paused:{msgid:"paused",msgstr:["Gepauzeerd"]},"Upload files":{msgid:"Upload files",msgstr:["Upload bestanden"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” to zabroniona nazwa pliku lub folderu."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” jest zabronionym typem pliku."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["konflikt 1 pliku","{count} konfliktów plików","{count} konfliktów plików","{count} konfliktów plików"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} konfliktowy plik w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}","{count} konfliktowych plików w {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Pozostało {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Pozostało {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Pozostało kilka sekund"]},Cancel:{msgid:"Cancel",msgstr:["Anuluj"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Anuluj całą operację"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anuluj wysyłanie"]},Continue:{msgid:"Continue",msgstr:["Kontynuuj"]},"Create new":{msgid:"Create new",msgstr:["Utwórz nowe"]},"estimating time left":{msgid:"estimating time left",msgstr:["Szacowanie pozostałego czasu"]},"Existing version":{msgid:"Existing version",msgstr:["Istniejąca wersja"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Nazwy plików nie mogą kończyć się na „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nieprawidłowa nazwa pliku"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Nieznana data ostatniej modyfikacji"]},New:{msgid:"New",msgstr:["Nowy"]},"New filename":{msgid:"New filename",msgstr:["Nowa nazwa pliku"]},"New version":{msgid:"New version",msgstr:["Nowa wersja"]},paused:{msgid:"paused",msgstr:["Wstrzymane"]},"Preview image":{msgid:"Preview image",msgstr:["Podgląd obrazu"]},Rename:{msgid:"Rename",msgstr:["Zmiana nazwy"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Zaznacz wszystkie pola wyboru"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Zaznacz wszystkie istniejące pliki"]},"Select all new files":{msgid:"Select all new files",msgstr:["Zaznacz wszystkie nowe pliki"]},Skip:{msgid:"Skip",msgstr:["Pomiń"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Pomiń 1 plik","Pomiń {count} plików","Pomiń {count} plików","Pomiń {count} plików"]},"Unknown size":{msgid:"Unknown size",msgstr:["Nieznany rozmiar"]},Upload:{msgid:"Upload",msgstr:["Prześlij"]},"Upload files":{msgid:"Upload files",msgstr:["Wyślij pliki"]},"Upload folders":{msgid:"Upload folders",msgstr:["Prześlij foldery"]},"Upload from device":{msgid:"Upload from device",msgstr:["Prześlij z urządzenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Przesyłanie zostało anulowane"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Przesyłanie zostało pominięte"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Przesyłanie „{folder}” zostało pominięte"]},"Upload progress":{msgid:"Upload progress",msgstr:["Postęp wysyłania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Które pliki chcesz zachować?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku."]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Paulo Schopf, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\nPaulo Schopf, 2024\n"},msgstr:["Last-Translator: Paulo Schopf, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" é um nome de arquivo ou pasta proibido.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" é um tipo de arquivo proibido.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" não é permitido dentro de um nome de arquivo ou pasta.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} arquivos em conflito","{count} arquivos em conflito","{count} arquivos em conflito"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}","{count} conflitos de arquivo em {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} segundos restantes"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} restante"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["alguns segundos restantes"]},Cancel:{msgid:"Cancel",msgstr:["Cancelar"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Cancelar a operação inteira"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar uploads"]},Continue:{msgid:"Continue",msgstr:["Continuar"]},"Create new":{msgid:"Create new",msgstr:["Criar novo"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimando tempo restante"]},"Existing version":{msgid:"Existing version",msgstr:["Versão existente"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Os nomes dos arquivos não devem terminar com "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nome de arquivo inválido"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Data da última modificação desconhecida"]},New:{msgid:"New",msgstr:["Novo"]},"New filename":{msgid:"New filename",msgstr:["Novo nome de arquivo"]},"New version":{msgid:"New version",msgstr:["Nova versão"]},paused:{msgid:"paused",msgstr:["pausado"]},"Preview image":{msgid:"Preview image",msgstr:["Visualizar imagem"]},Rename:{msgid:"Rename",msgstr:["Renomear"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Marque todas as caixas de seleção"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Selecione todos os arquivos existentes"]},"Select all new files":{msgid:"Select all new files",msgstr:["Selecione todos os novos arquivos"]},Skip:{msgid:"Skip",msgstr:["Pular"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Ignorar {count} arquivos","Ignorar {count} arquivos","Ignorar {count} arquivos"]},"Unknown size":{msgid:"Unknown size",msgstr:["Tamanho desconhecido"]},Upload:{msgid:"Upload",msgstr:["Enviar"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar arquivos"]},"Upload folders":{msgid:"Upload folders",msgstr:["Enviar pastas"]},"Upload from device":{msgid:"Upload from device",msgstr:["Carregar do dispositivo"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["O upload foi cancelado"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["O upload foi pulado"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['O upload de "{folder}" foi ignorado']},"Upload progress":{msgid:"Upload progress",msgstr:["Envio em progresso"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Quais arquivos você deseja manter?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Você precisa selecionar pelo menos uma versão de cada arquivo para continuar."]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Manuela Silva <mmsrs@sky.com>, 2022","Language-Team":"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nManuela Silva <mmsrs@sky.com>, 2022\n"},msgstr:["Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["faltam {seconds} segundo(s)"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["faltam {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["faltam uns segundos"]},Add:{msgid:"Add",msgstr:["Adicionar"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Cancelar envios"]},"estimating time left":{msgid:"estimating time left",msgstr:["tempo em falta estimado"]},paused:{msgid:"paused",msgstr:["pausado"]},"Upload files":{msgid:"Upload files",msgstr:["Enviar ficheiros"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022","Language-Team":"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\n"},msgstr:["Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} secunde rămase"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["{time} rămas"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["câteva secunde rămase"]},Add:{msgid:"Add",msgstr:["Adaugă"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Anulați încărcările"]},"estimating time left":{msgid:"estimating time left",msgstr:["estimarea timpului rămas"]},paused:{msgid:"paused",msgstr:["pus pe pauză"]},"Upload files":{msgid:"Upload files",msgstr:["Încarcă fișiere"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Александр, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nВлад, 2024\nAlex <fedotov22091982@gmail.com>, 2024\nRoman Stepanov, 2024\nMaksim Sukharev, 2024\nАлександр, 2024\n"},msgstr:["Last-Translator: Александр, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["«{segment}» — это запрещенное имя файла или папки."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["«{segment}» — это запрещенный тип файла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["«{segment}» не допускается в имени файла или папки."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["конфликт {count} файла","конфликт {count} файлов","конфликт {count} файлов","конфликт {count} файлов"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["конфликт {count} файла в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»","конфликт {count} файлов в «{dirname}»"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["осталось {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["осталось {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["осталось несколько секунд"]},Cancel:{msgid:"Cancel",msgstr:["Отменить"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отменить операцию целиком"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Отменить загрузки"]},Continue:{msgid:"Continue",msgstr:["Продолжить"]},"Create new":{msgid:"Create new",msgstr:["Создать новое"]},"estimating time left":{msgid:"estimating time left",msgstr:["оценка оставшегося времени"]},"Existing version":{msgid:"Existing version",msgstr:["Текущая версия"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена файлов не должны заканчиваться на «{segment}»"]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Если вы выберете обе версии, к имени входящего файла будет добавлен номер."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неверное имя файла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата последнего изменения неизвестна"]},New:{msgid:"New",msgstr:["Новый"]},"New filename":{msgid:"New filename",msgstr:["Новое имя файла"]},"New version":{msgid:"New version",msgstr:["Новая версия"]},paused:{msgid:"paused",msgstr:["приостановлено"]},"Preview image":{msgid:"Preview image",msgstr:["Предварительный просмотр"]},Rename:{msgid:"Rename",msgstr:["Переименовать"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Выбрать все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Выбрать все существующие файлы"]},"Select all new files":{msgid:"Select all new files",msgstr:["Выбрать все новые файлы"]},Skip:{msgid:"Skip",msgstr:["Пропустить"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустить файл","Пропустить {count} файла","Пропустить {count} файлов","Пропустить {count} файлов"]},"Unknown size":{msgid:"Unknown size",msgstr:["Неизвестный размер"]},Upload:{msgid:"Upload",msgstr:["Загрузить"]},"Upload files":{msgid:"Upload files",msgstr:["Загрузить файлы"]},"Upload folders":{msgid:"Upload folders",msgstr:["Загрузить папки"]},"Upload from device":{msgid:"Upload from device",msgstr:["Загрузить с устройства"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Загрузка была отменена"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Загрузка была пропущена"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Загрузка «{folder}» была пропущена"]},"Upload progress":{msgid:"Upload progress",msgstr:["Прогресс загрузки"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Какие файлы вы хотите сохранить?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Вы можете переименовать файл, пропустить этот файл или отменить всю операцию."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла."]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sk",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJozef Gaal <preklady@mayday.sk>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}“ je zakázaný názov súboru alebo priečinka."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je zákazaný typ súboru.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}“ je zakázané v názve súboru alebo adresára.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} súbor má konflikt","{count} súbory majú konflikt","{count} súborov má konflikt","{count} súborov má konflikt"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} súborový konflikt v {dirname}","{count} súborové konflikty v {dirname}","{count} súborových konfliktov v {dirname}","{count} súborových konfliktov v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekúnd zostáva"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} zostáva"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["zostáva niekoľko sekúnd"]},Cancel:{msgid:"Cancel",msgstr:["Zrušiť"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Zrušiť celú operáciu"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Zrušiť nahrávanie"]},Continue:{msgid:"Continue",msgstr:["Pokračovať"]},"Create new":{msgid:"Create new",msgstr:["Vytvoriť nové"]},"estimating time left":{msgid:"estimating time left",msgstr:["odhadovanie zostávajúceho času"]},"Existing version":{msgid:"Existing version",msgstr:["Existujúca verzia"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Názvy súborov nesmú končiť znakom "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Neplatný názov súboru"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Dátum poslednej úpravy neznámy"]},New:{msgid:"New",msgstr:["Nový"]},"New filename":{msgid:"New filename",msgstr:["Nový názov súboru"]},"New version":{msgid:"New version",msgstr:["Nová verzia"]},paused:{msgid:"paused",msgstr:["pozastavené"]},"Preview image":{msgid:"Preview image",msgstr:["Náhľad obrázka"]},Rename:{msgid:"Rename",msgstr:["Premenovať"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Označiť všetky výberové políčka"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Vybrať všetky existujúce súbory"]},"Select all new files":{msgid:"Select all new files",msgstr:["Vybrať všetky nové súbory"]},Skip:{msgid:"Skip",msgstr:["Preskočiť"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskočiť tento súbor","Preskočiť {count} súbory","Preskočiť {count} súborov","Preskočiť {count} súborov"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznáma veľkosť"]},Upload:{msgid:"Upload",msgstr:["Nahrať"]},"Upload files":{msgid:"Upload files",msgstr:["Nahrať súbory"]},"Upload folders":{msgid:"Upload folders",msgstr:["Nahrať priečinky"]},"Upload from device":{msgid:"Upload from device",msgstr:["Nahrať zo zariadenia"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nahrávanie bolo zrušené"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nahrávanie bolo preskočené"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nahrávanie "{folder}" bolo preskočené']},"Upload progress":{msgid:"Upload progress",msgstr:["Priebeh nahrávania"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Ktoré súbory chcete ponechať?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru."]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nJan Kraljič <jan.kraljic@patware.eu>, 2024\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" je prepovedano ime datoteka ali mape.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" je prepovedan tip datoteke.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" ni dovoljeno v imenu datoteke ali mape.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["1{count} datoteka je v konfliktu","1{count} datoteki sta v konfiktu","1{count} datotek je v konfliktu","{count} datotek je v konfliktu"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} datoteka je v konfiktu v {dirname}","{count} datoteki sta v konfiktu v {dirname}","{count} datotek je v konfiktu v {dirname}","{count} konfliktov datotek v {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["še {seconds} sekund"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["še {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["še nekaj sekund"]},Cancel:{msgid:"Cancel",msgstr:["Prekliči"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Prekliči celotni postopek"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Prekliči pošiljanje"]},Continue:{msgid:"Continue",msgstr:["Nadaljuj"]},"Create new":{msgid:"Create new",msgstr:["Ustvari nov"]},"estimating time left":{msgid:"estimating time left",msgstr:["ocenjujem čas do konca"]},"Existing version":{msgid:"Existing version",msgstr:["Obstoječa različica"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Imena datotek se ne smejo končati s "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Nepravilno ime datoteke"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Datum zadnje spremembe neznan"]},New:{msgid:"New",msgstr:["Nov"]},"New filename":{msgid:"New filename",msgstr:["Novo ime datoteke"]},"New version":{msgid:"New version",msgstr:["Nova različica"]},paused:{msgid:"paused",msgstr:["v premoru"]},"Preview image":{msgid:"Preview image",msgstr:["Predogled slike"]},Rename:{msgid:"Rename",msgstr:["Preimenuj"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Izberi vsa potrditvena polja"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Označi vse obstoječe datoteke"]},"Select all new files":{msgid:"Select all new files",msgstr:["Označi vse nove datoteke"]},Skip:{msgid:"Skip",msgstr:["Preskoči"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Preskoči datoteko","Preskoči {count} datoteki","Preskoči {count} datotek","Preskoči {count} datotek"]},"Unknown size":{msgid:"Unknown size",msgstr:["Neznana velikost"]},Upload:{msgid:"Upload",msgstr:["Naloži"]},"Upload files":{msgid:"Upload files",msgstr:["Naloži datoteke"]},"Upload folders":{msgid:"Upload folders",msgstr:["Naloži mape"]},"Upload from device":{msgid:"Upload from device",msgstr:["Naloži iz naprave"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Nalaganje je bilo preklicano"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Nalaganje je bilo preskočeno"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Nalaganje "{folder}" je bilo preskočeno']},"Upload progress":{msgid:"Upload progress",msgstr:["Napredek nalaganja"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Katere datoteke želite obdržati?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Izbrati morate vsaj eno različico vsake datoteke da nadaljujete."]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:["„{segment}” је забрањено име фајла или фолдера."]},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:["„{segment}” је забрањен тип фајла."]},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:["„{segment}” није дозвољено унутар имена фајла или фолдера."]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} фајл конфликт","{count} фајл конфликта","{count} фајл конфликта"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} фајл конфликт у {dirname}","{count} фајл конфликта у {dirname}","{count} фајл конфликта у {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["преостало је {seconds} секунди"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} преостало"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["преостало је неколико секунди"]},Cancel:{msgid:"Cancel",msgstr:["Откажи"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Отказује комплетну операцију"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Обустави отпремања"]},Continue:{msgid:"Continue",msgstr:["Настави"]},"Create new":{msgid:"Create new",msgstr:["Креирај ново"]},"estimating time left":{msgid:"estimating time left",msgstr:["процена преосталог времена"]},"Existing version":{msgid:"Existing version",msgstr:["Постојећа верзија"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:["Имена фајлова не смеју да се завршавају на „{segment}”."]},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Ако изаберете обе верзије, на име долазног фајла ће се додати број."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Неисправно име фајла"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Није познат датум последње измене"]},New:{msgid:"New",msgstr:["Ново"]},"New filename":{msgid:"New filename",msgstr:["Ново име фајла"]},"New version":{msgid:"New version",msgstr:["Нова верзија"]},paused:{msgid:"paused",msgstr:["паузирано"]},"Preview image":{msgid:"Preview image",msgstr:["Слика прегледа"]},Rename:{msgid:"Rename",msgstr:["Промени име"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Штиклирај сва поља за штиклирање"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Изабери све постојеће фајлове"]},"Select all new files":{msgid:"Select all new files",msgstr:["Изабери све нове фајлове"]},Skip:{msgid:"Skip",msgstr:["Прескочи"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Прескочи овај фајл","Прескочи {count} фајла","Прескочи {count} фајлова"]},"Unknown size":{msgid:"Unknown size",msgstr:["Непозната величина"]},Upload:{msgid:"Upload",msgstr:["Отпреми"]},"Upload files":{msgid:"Upload files",msgstr:["Отпреми фајлове"]},"Upload folders":{msgid:"Upload folders",msgstr:["Отпреми фолдере"]},"Upload from device":{msgid:"Upload from device",msgstr:["Отпреми са уређаја"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Отпремање је отказано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Отпремање је прескочено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:["Отпремање „{folder}”је прескочено"]},"Upload progress":{msgid:"Upload progress",msgstr:["Напредак отпремања"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Које фајлове желите да задржите?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Морате да изаберете барем једну верзију сваког фајла да наставите."]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" är ett förbjudet fil- eller mappnamn.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" är en förbjuden filtyp.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" är inte tillåtet i ett fil- eller mappnamn.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} filkonflikt","{count} filkonflikter"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} filkonflikt i {dirname}","{count} filkonflikter i {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} sekunder kvarstår"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kvarstår"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["några sekunder kvar"]},Cancel:{msgid:"Cancel",msgstr:["Avbryt"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Avbryt hela operationen"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Avbryt uppladdningar"]},Continue:{msgid:"Continue",msgstr:["Fortsätt"]},"Create new":{msgid:"Create new",msgstr:["Skapa ny"]},"estimating time left":{msgid:"estimating time left",msgstr:["uppskattar kvarstående tid"]},"Existing version":{msgid:"Existing version",msgstr:["Nuvarande version"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Filnamn får inte sluta med "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Ogiltigt filnamn"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Senaste ändringsdatum okänt"]},New:{msgid:"New",msgstr:["Ny"]},"New filename":{msgid:"New filename",msgstr:["Nytt filnamn"]},"New version":{msgid:"New version",msgstr:["Ny version"]},paused:{msgid:"paused",msgstr:["pausad"]},"Preview image":{msgid:"Preview image",msgstr:["Förhandsgranska bild"]},Rename:{msgid:"Rename",msgstr:["Byt namn"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Markera alla kryssrutor"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Välj alla befintliga filer"]},"Select all new files":{msgid:"Select all new files",msgstr:["Välj alla nya filer"]},Skip:{msgid:"Skip",msgstr:["Hoppa över"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Hoppa över denna fil","Hoppa över {count} filer"]},"Unknown size":{msgid:"Unknown size",msgstr:["Okänd storlek"]},Upload:{msgid:"Upload",msgstr:["Ladda upp"]},"Upload files":{msgid:"Upload files",msgstr:["Ladda upp filer"]},"Upload folders":{msgid:"Upload folders",msgstr:["Ladda upp mappar"]},"Upload from device":{msgid:"Upload from device",msgstr:["Ladda upp från enhet"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Uppladdningen har avbrutits"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Uppladdningen har hoppats över"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Uppladdningen av "{folder}" har hoppats över']},"Upload progress":{msgid:"Upload progress",msgstr:["Uppladdningsförlopp"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["När en inkommande mapp väljs skrivs även alla konfliktande filer i den över."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Vilka filer vill du behålla?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Du måste välja minst en version av varje fil för att fortsätta."]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"th",json:{charset:"utf-8",headers:{"Last-Translator":"Phongpanot Phairat <ppnplus@protonmail.com>, 2022","Language-Team":"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\n"},msgstr:["Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["เหลืออีก {seconds} วินาที"]},"{time} left":{msgid:"{time} left",comments:{extracted:"time has the format 00:00:00"},msgstr:["เหลืออีก {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["เหลืออีกไม่กี่วินาที"]},Add:{msgid:"Add",msgstr:["เพิ่ม"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["ยกเลิกการอัปโหลด"]},"estimating time left":{msgid:"estimating time left",msgstr:["กำลังคำนวณเวลาที่เหลือ"]},paused:{msgid:"paused",msgstr:["หยุดชั่วคราว"]},"Upload files":{msgid:"Upload files",msgstr:["อัปโหลดไฟล์"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" dosya ya da klasör adına izin verilmiyor.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" dosya türüne izin verilmiyor.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['Bir dosya ya da klasör adında "{segment}" ifadesine izin verilmiyor.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} dosya çakışması var","{count} dosya çakışması var"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} klasöründe {count} dosya çakışması var","{dirname} klasöründe {count} dosya çakışması var"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["{seconds} saniye kaldı"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["{time} kaldı"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["bir kaç saniye kaldı"]},Cancel:{msgid:"Cancel",msgstr:["İptal"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Tüm işlemi iptal et"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Yüklemeleri iptal et"]},Continue:{msgid:"Continue",msgstr:["İlerle"]},"Create new":{msgid:"Create new",msgstr:["Yeni ekle"]},"estimating time left":{msgid:"estimating time left",msgstr:["öngörülen kalan süre"]},"Existing version":{msgid:"Existing version",msgstr:["Var olan sürüm"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Dosya adları "{segment}" ile bitmemeli.']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Dosya adı geçersiz"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Son değiştirilme tarihi bilinmiyor"]},New:{msgid:"New",msgstr:["Yeni"]},"New filename":{msgid:"New filename",msgstr:["Yeni dosya adı"]},"New version":{msgid:"New version",msgstr:["Yeni sürüm"]},paused:{msgid:"paused",msgstr:["duraklatıldı"]},"Preview image":{msgid:"Preview image",msgstr:["Görsel ön izlemesi"]},Rename:{msgid:"Rename",msgstr:["Yeniden adlandır"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Tüm kutuları işaretle"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Tüm var olan dosyaları seç"]},"Select all new files":{msgid:"Select all new files",msgstr:["Tüm yeni dosyaları seç"]},Skip:{msgid:"Skip",msgstr:["Atla"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bu dosyayı atla","{count} dosyayı atla"]},"Unknown size":{msgid:"Unknown size",msgstr:["Boyut bilinmiyor"]},Upload:{msgid:"Upload",msgstr:["Yükle"]},"Upload files":{msgid:"Upload files",msgstr:["Dosyaları yükle"]},"Upload folders":{msgid:"Upload folders",msgstr:["Klasörleri yükle"]},"Upload from device":{msgid:"Upload from device",msgstr:["Aygıttan yükle"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Yükleme iptal edildi"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Yükleme atlandı"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" klasörünün yüklenmesi atlandı']},"Upload progress":{msgid:"Upload progress",msgstr:["Yükleme ilerlemesi"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Hangi dosyaları tutmak istiyorsunuz?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz."]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" не є дозволеним ім\'ям файлу або каталогу.']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" не є дозволеним типом файлу.']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" не дозволене сполучення символів в назві файлу або каталогу.']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} конфліктний файл","{count} конфліктних файли","{count} конфліктних файлів","{count} конфліктних файлів"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} конфліктний файл у каталозі {dirname}","{count} конфліктних файли у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}","{count} конфліктних файлів у каталозі {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Залишилося {seconds} секунд"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Залишилося {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["залишилося кілька секунд"]},Cancel:{msgid:"Cancel",msgstr:["Скасувати"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["Скасувати операцію повністю"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Скасувати завантаження"]},Continue:{msgid:"Continue",msgstr:["Продовжити"]},"Create new":{msgid:"Create new",msgstr:["Створити новий"]},"estimating time left":{msgid:"estimating time left",msgstr:["оцінка часу, що залишився"]},"Existing version":{msgid:"Existing version",msgstr:["Присутня версія"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['Ім\'я файлів не можуть закінчуватися на "{segment}".']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру."]},"Invalid filename":{msgid:"Invalid filename",msgstr:["Недійсне ім'я файлу"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Дата останньої зміни невідома"]},New:{msgid:"New",msgstr:["Нове"]},"New filename":{msgid:"New filename",msgstr:["Нове ім'я файлу"]},"New version":{msgid:"New version",msgstr:["Нова версія"]},paused:{msgid:"paused",msgstr:["призупинено"]},"Preview image":{msgid:"Preview image",msgstr:["Попередній перегляд"]},Rename:{msgid:"Rename",msgstr:["Перейменувати"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Вибрати все"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Вибрати усі присутні файли"]},"Select all new files":{msgid:"Select all new files",msgstr:["Вибрати усі нові файли"]},Skip:{msgid:"Skip",msgstr:["Пропустити"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Пропустити файл","Пропустити {count} файли","Пропустити {count} файлів","Пропустити {count} файлів"]},"Unknown size":{msgid:"Unknown size",msgstr:["Невідомий розмір"]},Upload:{msgid:"Upload",msgstr:["Завантажити"]},"Upload files":{msgid:"Upload files",msgstr:["Завантажити файли"]},"Upload folders":{msgid:"Upload folders",msgstr:["Завантажити каталоги"]},"Upload from device":{msgid:"Upload from device",msgstr:["Завантажити з пристрою"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["Завантаження скасовано"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["Завантаження пропущено"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['Завантаження "{folder}" пропущено']},"Upload progress":{msgid:"Upload progress",msgstr:["Поступ завантаження"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх."]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів."]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Які файли залишити?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом."]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Для продовження потрібно вибрати принаймні одну версію для кожного файлу."]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2022","Language-Team":"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2022\n"},msgstr:["Last-Translator: Transifex Bot <>, 2022\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},"{estimate} seconds left":{msgid:"{estimate} seconds left",msgstr:[""]},"{hours} hours and {minutes} minutes left":{msgid:"{hours} hours and {minutes} minutes left",msgstr:[""]},"{minutes} minutes left":{msgid:"{minutes} minutes left",msgstr:[""]},"a few seconds left":{msgid:"a few seconds left",msgstr:[""]},Add:{msgid:"Add",msgstr:[""]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:[""]},"estimating time left":{msgid:"estimating time left",msgstr:[""]},paused:{msgid:"paused",msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Tung DangQuang, 2023","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTung DangQuang, 2023\n"},msgstr:["Last-Translator: Tung DangQuang, 2023\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} Tập tin xung đột"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{count} tập tin lỗi trong {dirname}"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["Còn {second} giây"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["Còn lại {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["Còn lại một vài giây"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["Huỷ tải lên"]},Continue:{msgid:"Continue",msgstr:["Tiếp Tục"]},"estimating time left":{msgid:"estimating time left",msgstr:["Thời gian còn lại dự kiến"]},"Existing version":{msgid:"Existing version",msgstr:["Phiên Bản Hiện Tại"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó."]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["Ngày sửa dổi lần cuối không xác định"]},New:{msgid:"New",msgstr:["Tạo Mới"]},"New version":{msgid:"New version",msgstr:["Phiên Bản Mới"]},paused:{msgid:"paused",msgstr:["đã tạm dừng"]},"Preview image":{msgid:"Preview image",msgstr:["Xem Trước Ảnh"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["Chọn tất cả hộp checkbox"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["Chọn tất cả các tập tin có sẵn"]},"Select all new files":{msgid:"Select all new files",msgstr:["Chọn tất cả các tập tin mới"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["Bỏ Qua {count} tập tin"]},"Unknown size":{msgid:"Unknown size",msgstr:["Không rõ dung lượng"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["Dừng Tải Lên"]},"Upload files":{msgid:"Upload files",msgstr:["Tập tin tải lên"]},"Upload progress":{msgid:"Upload progress",msgstr:["Đang Tải Lên"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["Bạn muốn giữ tập tin nào?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Gloryandel, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nGloryandel, 2024\n"},msgstr:["Last-Translator: Gloryandel, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是被禁止的文件名或文件夹名。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是被禁止的文件类型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允许包含在文件名或文件夹名中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count}文件冲突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["在{dirname}目录下有{count}个文件冲突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩余 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩余 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["还剩几秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整个操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上传"]},Continue:{msgid:"Continue",msgstr:["继续"]},"Create new":{msgid:"Create new",msgstr:["新建"]},"estimating time left":{msgid:"estimating time left",msgstr:["估计剩余时间"]},"Existing version":{msgid:"Existing version",msgstr:["服务端版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['文件名不得以 "{segment}" 结尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["如果同时选择两个版本,则上传文件的名称中将添加一个数字。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["无效文件名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["文件最后修改日期未知"]},New:{msgid:"New",msgstr:["新建"]},"New filename":{msgid:"New filename",msgstr:["新文件名"]},"New version":{msgid:"New version",msgstr:["上传版本"]},paused:{msgid:"paused",msgstr:["已暂停"]},"Preview image":{msgid:"Preview image",msgstr:["图片预览"]},Rename:{msgid:"Rename",msgstr:["重命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["选择所有的选择框"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["保留所有服务端版本"]},"Select all new files":{msgid:"Select all new files",msgstr:["保留所有上传版本"]},Skip:{msgid:"Skip",msgstr:["跳过"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["跳过{count}个文件"]},"Unknown size":{msgid:"Unknown size",msgstr:["文件大小未知"]},Upload:{msgid:"Upload",msgstr:["上传"]},"Upload files":{msgid:"Upload files",msgstr:["上传文件"]},"Upload folders":{msgid:"Upload folders",msgstr:["上传文件夹"]},"Upload from device":{msgid:"Upload from device",msgstr:["从设备上传"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上传已取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上传已跳过"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['已跳过上传"{folder}"']},"Upload progress":{msgid:"Upload progress",msgstr:["上传进度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["你要保留哪些文件?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以重命名文件、跳过此文件或取消整个操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["每个文件至少选择保留一个版本"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{segment}" is a forbidden file or folder name.':{msgid:'"{segment}" is a forbidden file or folder name.',msgstr:['"{segment}" 是禁止使用的檔案或資料夾名稱。']},'"{segment}" is a forbidden file type.':{msgid:'"{segment}" is a forbidden file type.',msgstr:['"{segment}" 是禁止使用的檔案類型。']},'"{segment}" is not allowed inside a file or folder name.':{msgid:'"{segment}" is not allowed inside a file or folder name.',msgstr:['"{segment}" 不允許出現在檔案或資料夾名稱中。']},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"Create new":{msgid:"Create new",msgstr:["創建新"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},'Filenames must not end with "{segment}".':{msgid:'Filenames must not end with "{segment}".',msgstr:['檔案名不得以 "{segment}" 結尾。']},"If you select both versions, the incoming file will have a number added to its name.":{msgid:"If you select both versions, the incoming file will have a number added to its name.",msgstr:["若您選取兩個版本,傳入檔案的名稱將會新增編號。"]},"Invalid filename":{msgid:"Invalid filename",msgstr:["無效的檔案名"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期不詳"]},New:{msgid:"New",msgstr:["新增"]},"New filename":{msgid:"New filename",msgstr:["新檔案名"]},"New version":{msgid:"New version",msgstr:["新版本 "]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},Rename:{msgid:"Rename",msgstr:["重新命名"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},Skip:{msgid:"Skip",msgstr:["跳過"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 個檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["大小不詳"]},Upload:{msgid:"Upload",msgstr:["上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload folders":{msgid:"Upload folders",msgstr:["上傳資料夾"]},"Upload from device":{msgid:"Upload from device",msgstr:["從裝置上傳"]},"Upload has been cancelled":{msgid:"Upload has been cancelled",msgstr:["上傳已被取消"]},"Upload has been skipped":{msgid:"Upload has been skipped",msgstr:["上傳已被跳過"]},'Upload of "{folder}" has been skipped':{msgid:'Upload of "{folder}" has been skipped',msgstr:['"{folder}" 的上傳已被跳過']},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.":{msgid:"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.",msgstr:["選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You can either rename the file, skip this file or cancel the whole operation.":{msgid:"You can either rename the file, skip this file or cancel the whole operation.",msgstr:["您可以選擇重新命名檔案、跳過此檔案或取消整個操作。"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2024","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2024\n黃柏諺 <s8321414@gmail.com>, 2024\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},"{count} file conflict":{msgid:"{count} file conflict",msgid_plural:"{count} files conflict",msgstr:["{count} 個檔案衝突"]},"{count} file conflict in {dirname}":{msgid:"{count} file conflict in {dirname}",msgid_plural:"{count} file conflicts in {dirname}",msgstr:["{dirname} 中有 {count} 個檔案衝突"]},"{seconds} seconds left":{msgid:"{seconds} seconds left",msgstr:["剩餘 {seconds} 秒"]},"{time} left":{msgid:"{time} left",comments:{extracted:"TRANSLATORS time has the format 00:00:00"},msgstr:["剩餘 {time}"]},"a few seconds left":{msgid:"a few seconds left",msgstr:["還剩幾秒"]},Cancel:{msgid:"Cancel",msgstr:["取消"]},"Cancel the entire operation":{msgid:"Cancel the entire operation",msgstr:["取消整個操作"]},"Cancel uploads":{msgid:"Cancel uploads",msgstr:["取消上傳"]},Continue:{msgid:"Continue",msgstr:["繼續"]},"estimating time left":{msgid:"estimating time left",msgstr:["估計剩餘時間"]},"Existing version":{msgid:"Existing version",msgstr:["既有版本"]},"If you select both versions, the copied file will have a number added to its name.":{msgid:"If you select both versions, the copied file will have a number added to its name.",msgstr:["若您選取兩個版本,複製的檔案的名稱將會新增編號。"]},"Last modified date unknown":{msgid:"Last modified date unknown",msgstr:["最後修改日期未知"]},New:{msgid:"New",msgstr:["新增"]},"New version":{msgid:"New version",msgstr:["新版本"]},paused:{msgid:"paused",msgstr:["已暫停"]},"Preview image":{msgid:"Preview image",msgstr:["預覽圖片"]},"Select all checkboxes":{msgid:"Select all checkboxes",msgstr:["選取所有核取方塊"]},"Select all existing files":{msgid:"Select all existing files",msgstr:["選取所有既有檔案"]},"Select all new files":{msgid:"Select all new files",msgstr:["選取所有新檔案"]},"Skip this file":{msgid:"Skip this file",msgid_plural:"Skip {count} files",msgstr:["略過 {count} 檔案"]},"Unknown size":{msgid:"Unknown size",msgstr:["未知大小"]},"Upload cancelled":{msgid:"Upload cancelled",msgstr:["已取消上傳"]},"Upload files":{msgid:"Upload files",msgstr:["上傳檔案"]},"Upload progress":{msgid:"Upload progress",msgstr:["上傳進度"]},"When an incoming folder is selected, any conflicting files within it will also be overwritten.":{msgid:"When an incoming folder is selected, any conflicting files within it will also be overwritten.",msgstr:["選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。"]},"Which files do you want to keep?":{msgid:"Which files do you want to keep?",msgstr:["您想保留哪些檔案?"]},"You need to select at least one version of each file to continue.":{msgid:"You need to select at least one version of each file to continue.",msgstr:["您必須為每個檔案都至少選取一個版本以繼續。"]}}}}}].map((e=>me.addTranslation(e.locale,e.json)));const ce=me.build(),ge=ce.ngettext.bind(ce),ue=ce.gettext.bind(ce);var pe=(e=>(e[e.IDLE=0]="IDLE",e[e.UPLOADING=1]="UPLOADING",e[e.PAUSED=2]="PAUSED",e))(pe||{});class fe{_destinationFolder;_isPublic;_customHeaders;_uploadQueue=[];_jobQueue=new S.A({concurrency:(0,W.F)().files?.chunked_upload?.max_parallel_count??5});_queueSize=0;_queueProgress=0;_queueStatus=0;_notifiers=[];constructor(e=!1,t){if(this._isPublic=e,this._customHeaders={},!t){const s=`${C.PY}${C.lJ}`;let n;if(e)n="anonymous";else{const e=(0,y.HW)()?.uid;if(!e)throw new Error("User is not logged in");n=e}t=new C.vd({id:0,owner:n,permissions:C.aX.ALL,root:C.lJ,source:s})}this.destination=t,te.debug("Upload workspace initialized",{destination:this.destination,root:this.root,isPublic:e,maxChunksSize:ie()})}get destination(){return this._destinationFolder}set destination(e){if(!e||e.type!==C.pt.Folder||!e.source)throw new Error("Invalid destination folder");te.debug("Destination set",{folder:e}),this._destinationFolder=e}get root(){return this._destinationFolder.source}get customHeaders(){return structuredClone(this._customHeaders)}setCustomHeader(e,t=""){this._customHeaders[e]=t}deleteCustomerHeader(e){delete this._customHeaders[e]}get queue(){return this._uploadQueue}reset(){0===this._uploadQueue.length&&0===this._jobQueue.size||(this._uploadQueue.splice(0,this._uploadQueue.length),this._jobQueue.clear(),this._queueSize=0,this._queueProgress=0,this._queueStatus=0,te.debug("Uploader state reset"))}pause(){this._jobQueue.pause(),this._queueStatus=2}start(){this._jobQueue.start(),this._queueStatus=1,this.updateStats()}get info(){return{size:this._queueSize,progress:this._queueProgress,status:this._queueStatus}}updateStats(){const e=this._uploadQueue.map((e=>e.size)).reduce(((e,t)=>e+t),0),t=this._uploadQueue.map((e=>e.uploaded)).reduce(((e,t)=>e+t),0);this._queueSize=e,this._queueProgress=t,2!==this._queueStatus&&(this._queueStatus=this._jobQueue.size>0?1:0)}addNotifier(e){this._notifiers.push(e)}_notifyAll(e){for(const t of this._notifiers)try{t(e)}catch(t){te.warn("Error in upload notifier",{error:t,source:e.source})}}batchUpload(e,t,s){return s||(s=async e=>e),new _((async(n,i,a)=>{const r=new de("");await r.addChildren(t);const o=`${this.root.replace(/\/$/,"")}/${e.replace(/^\//,"")}`,l=new re(o,!1,0,r);l.status=ae.UPLOADING,this._uploadQueue.push(l),te.debug("Starting new batch upload",{target:o});try{const t=(0,C.H4)(this.root,this._customHeaders),i=this.uploadDirectory(e,r,s,t);a((()=>i.cancel()));const o=await i;l.status=ae.FINISHED,n(o)}catch(e){te.error("Error in batch upload",{error:e}),l.status=ae.FAILED,i(ue("Upload has been cancelled"))}finally{this._notifyAll(l),this.updateStats()}}))}createDirectory(e,t,s){const n=(0,A.normalize)(`${e}/${t.name}`).replace(/\/$/,""),i=`${this.root.replace(/\/$/,"")}/${n.replace(/^\//,"")}`;if(!t.name)throw new Error("Can not create empty directory");const a=new re(i,!1,0,t);return this._uploadQueue.push(a),new _((async(e,i,r)=>{const o=new AbortController;r((()=>o.abort())),a.signal.addEventListener("abort",(()=>i(ue("Upload has been cancelled")))),await this._jobQueue.add((async()=>{a.status=ae.UPLOADING;try{await s.createDirectory(n,{signal:o.signal}),e(a)}catch(e){e&&"object"==typeof e&&"status"in e&&405===e.status?(a.status=ae.FINISHED,te.debug("Directory already exists, writing into it",{directory:t.name})):(a.status=ae.FAILED,i(e))}finally{this._notifyAll(a),this.updateStats()}}))}))}uploadDirectory(e,t,s,n){const i=(0,A.normalize)(`${e}/${t.name}`).replace(/\/$/,"");return new _((async(a,r,o)=>{const l=new AbortController;o((()=>l.abort()));const d=await s(t.children,i);if(!1===d)return te.debug("Upload canceled by user",{directory:t}),void r(ue("Upload has been cancelled"));if(0===d.length&&t.children.length>0)return te.debug("Skipping directory, as all files were skipped by user",{directory:t}),void a([]);const m=[],c=[];l.signal.addEventListener("abort",(()=>{m.forEach((e=>e.cancel())),c.forEach((e=>e.cancel()))})),te.debug("Start directory upload",{directory:t});try{t.name&&(c.push(this.createDirectory(e,t,n)),await c.at(-1));for(const e of d)e instanceof de?m.push(this.uploadDirectory(i,e,s,n)):c.push(this.upload(`${i}/${e.name}`,e));a([await Promise.all(c),...await Promise.all(m)].flat())}catch(e){l.abort(e),r(e)}}))}upload(e,t,s,n=5){const i=`${(s=s||this.root).replace(/\/$/,"")}/${e.replace(/^\//,"")}`,{origin:a}=new URL(i),r=a+(0,T.O0)(i.slice(a.length));return te.debug(`Uploading ${t.name} to ${r}`),new _((async(e,s,a)=>{oe(t)&&(t=await new Promise((e=>t.file(e,s))));const o=t,l=ie("size"in o?o.size:void 0),d=this._isPublic||0===l||"size"in o&&o.size<l,m=new re(i,!d,o.size,o);if(this._uploadQueue.push(m),this.updateStats(),a(m.cancel),d){te.debug("Initializing regular upload",{file:o,upload:m});const t=await ne(o,0,m.size),n=async()=>{try{m.response=await se(r,t,m.signal,(e=>{m.uploaded=m.uploaded+e.bytes,this.updateStats()}),void 0,{...this._customHeaders,"X-OC-Mtime":Math.floor(o.lastModified/1e3),"Content-Type":o.type}),m.uploaded=m.size,this.updateStats(),te.debug(`Successfully uploaded ${o.name}`,{file:o,upload:m}),e(m)}catch(e){if((0,b.FZ)(e))return m.status=ae.FAILED,void s(ue("Upload has been cancelled"));e?.response&&(m.response=e.response),m.status=ae.FAILED,te.error(`Failed uploading ${o.name}`,{error:e,file:o,upload:m}),s("Failed uploading the file")}this._notifyAll(m)};this._jobQueue.add(n),this.updateStats()}else{te.debug("Initializing chunked upload",{file:o,upload:m});const t=await async function(e,t=5){const s=`${(0,F.dC)(`dav/uploads/${(0,y.HW)()?.uid}`)}/web-file-upload-${[...Array(16)].map((()=>Math.floor(16*Math.random()).toString(16))).join("")}`,n=e?{Destination:e}:void 0;return await b.Ay.request({method:"MKCOL",url:s,headers:n,"axios-retry":{retries:t,retryDelay:(e,t)=>j(e,t,1e3)}}),te.debug("Created temporary upload workspace",{url:s}),s}(r,n),i=[];for(let e=0;e<m.chunks;e++){const s=e*l,a=Math.min(s+l,m.size),d=()=>ne(o,s,l),c=()=>se(`${t}/${e+1}`,d,m.signal,(()=>this.updateStats()),r,{...this._customHeaders,"X-OC-Mtime":Math.floor(o.lastModified/1e3),"OC-Total-Length":o.size,"Content-Type":"application/octet-stream"},n).then((()=>{m.uploaded=m.uploaded+l})).catch((t=>{if(507===t?.response?.status)throw te.error("Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks",{error:t,upload:m}),m.cancel(),m.status=ae.FAILED,t;throw(0,b.FZ)(t)||(te.error(`Chunk ${e+1} ${s} - ${a} uploading failed`,{error:t,upload:m}),m.cancel(),m.status=ae.FAILED),t}));i.push(this._jobQueue.add(c))}try{await Promise.all(i),this.updateStats(),m.response=await b.Ay.request({method:"MOVE",url:`${t}/.file`,headers:{...this._customHeaders,"X-OC-Mtime":Math.floor(o.lastModified/1e3),"OC-Total-Length":o.size,Destination:r}}),this.updateStats(),m.status=ae.FINISHED,te.debug(`Successfully uploaded ${o.name}`,{file:o,upload:m}),e(m)}catch(e){(0,b.FZ)(e)?(m.status=ae.FAILED,s(ue("Upload has been cancelled"))):(m.status=ae.FAILED,s("Failed assembling the chunks together")),b.Ay.request({method:"DELETE",url:`${t}`})}this._notifyAll(m)}return this._jobQueue.onIdle().then((()=>this.reset())),m}))}}function he(e,t,s,n,i,a,r,o){var l="function"==typeof e?e.options:e;return t&&(l.render=t,l.staticRenderFns=s,l._compiled=!0),a&&(l._scopeId="data-v-"+a),{exports:e,options:l}}const ve=he({name:"CancelIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon cancel-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,we=he({name:"FolderUploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon folder-upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,ye=he({name:"PlusIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon plus-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports,Ce=he({name:"UploadIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},(function(){var e=this,t=e._self._c;return t("span",e._b({staticClass:"material-design-icon upload-icon",attrs:{"aria-hidden":e.title?null:"true","aria-label":e.title,role:"img"},on:{click:function(t){return e.$emit("click",t)}}},"span",e.$attrs,!1),[t("svg",{staticClass:"material-design-icon__svg",attrs:{fill:e.fillColor,width:e.size,height:e.size,viewBox:"0 0 24 24"}},[t("path",{attrs:{d:"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z"}},[e.title?t("title",[e._v(e._s(e.title))]):e._e()])])])}),[],0,0,null).exports;function Te(e){const t=(0,w.$V)((()=>s.e(6429).then(s.bind(s,16429)))),{promise:n,reject:i,resolve:a}=Promise.withResolvers();return(0,ee.Ss)(t,{error:e,validateFilename:C.KT},((...e)=>{const[{skip:t,rename:s}]=e;t?a(!1):s?a(s):i()})),n}function Ae(e,t){return be(e,t).length>0}function be(e,t){const s=t.map((e=>e.basename));return e.filter((e=>{const t="basename"in e?e.basename:e.name;return-1!==s.indexOf(t)}))}const xe=w.Ay.extend({name:"UploadPicker",components:{IconCancel:ve,IconFolderUpload:we,IconPlus:ye,IconUpload:Ce,NcActionButton:Y.A,NcActionCaption:$.A,NcActionSeparator:K.A,NcActions:J.A,NcButton:Q.A,NcIconSvgWrapper:Z.A,NcProgressBar:X.A},props:{accept:{type:Array,default:null},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},noMenu:{type:Boolean,default:!1},destination:{type:C.vd,default:void 0},allowFolders:{type:Boolean,default:!1},content:{type:[Array,Function],default:()=>[]},forbiddenCharacters:{type:Array,default:()=>[]}},setup:()=>({t:ue,progressTimeId:`nc-uploader-progress-${Math.random().toString(36).slice(7)}`}),data:()=>({eta:null,timeLeft:"",newFileMenuEntries:[],uploadManager:_e()}),computed:{menuEntriesUpload(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.UploadFromDevice))},menuEntriesNew(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.CreateNew))},menuEntriesOther(){return this.newFileMenuEntries.filter((e=>e.category===C.a7.Other))},canUploadFolders(){return this.allowFolders&&"webkitdirectory"in document.createElement("input")},totalQueueSize(){return this.uploadManager.info?.size||0},uploadedQueueSize(){return this.uploadManager.info?.progress||0},progress(){return Math.round(this.uploadedQueueSize/this.totalQueueSize*100)||0},queue(){return this.uploadManager.queue},hasFailure(){return 0!==this.queue?.filter((e=>e.status===ae.FAILED)).length},isUploading(){return this.queue?.length>0},isAssembling(){return 0!==this.queue?.filter((e=>e.status===ae.ASSEMBLING)).length},isPaused(){return this.uploadManager.info?.status===pe.PAUSED},buttonLabel(){return this.noMenu?ue("Upload"):ue("New")},buttonName(){if(!this.isUploading)return this.buttonLabel}},watch:{allowFolders:{immediate:!0,handler(){"function"!=typeof this.content&&this.allowFolders&&te.error("[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function")}},destination(e){this.setDestination(e)},totalQueueSize(e){this.eta=G({min:0,max:e}),this.updateStatus()},uploadedQueueSize(e){this.eta?.report?.(e),this.updateStatus()},isPaused(e){e?this.$emit("paused",this.queue):this.$emit("resumed",this.queue)}},beforeMount(){this.destination&&this.setDestination(this.destination),this.uploadManager.addNotifier(this.onUploadCompletion),te.debug("UploadPicker initialised")},methods:{async onClick(e){e.handler(this.destination,await this.getContent().catch((()=>[])))},onTriggerPick(e=!1){const t=this.$refs.input;this.canUploadFolders&&(t.webkitdirectory=e),this.$nextTick((()=>t.click()))},async getContent(e){return Array.isArray(this.content)?this.content:await this.content(e)},onPick(){const e=this.$refs.input,t=e.files?Array.from(e.files):[];var s;this.uploadManager.batchUpload("",t,(s=this.getContent,async(e,t)=>{try{const n=await s(t).catch((()=>[])),i=be(e,n);if(i.length>0){const{selected:s,renamed:a}=await Se(t,i,n,{recursive:!0});e=[...s,...a]}const a=[];for(const t of e)try{(0,C.KT)(t.name),a.push(t)}catch(s){if(!(s instanceof C.di))throw te.error(`Unexpected error while validating ${t.name}`,{error:s}),s;let n=await Te(s);!1!==n&&(n=(0,C.E6)(n,e.map((e=>e.name))),Object.defineProperty(t,"name",{value:n}),a.push(t))}if(0===a.length&&e.length>0){const e=(0,T.P8)(t);(0,ee.cf)(e?ue('Upload of "{folder}" has been skipped',{folder:e}):ue("Upload has been skipped"))}return a}catch(e){return te.debug("Upload has been cancelled",{error:e}),(0,ee.I9)(ue("Upload has been cancelled")),!1}})).catch((e=>te.debug("Error while uploading",{error:e}))).finally((()=>this.resetForm()))},resetForm(){const e=this.$refs.form;e?.reset()},onCancel(){this.uploadManager.queue.forEach((e=>{e.cancel()})),this.resetForm()},updateStatus(){if(this.isPaused)return void(this.timeLeft=ue("paused"));const e=Math.round(this.eta.estimate());if(e!==1/0)if(e<10)this.timeLeft=ue("a few seconds left");else if(e>60){const t=new Date(0);t.setSeconds(e);const s=t.toISOString().slice(11,19);this.timeLeft=ue("{time} left",{time:s})}else this.timeLeft=ue("{seconds} seconds left",{seconds:e});else this.timeLeft=ue("estimating time left")},setDestination(e){this.destination?(this.uploadManager.destination=e,this.newFileMenuEntries=(0,C.m1)(e)):te.debug("Invalid destination")},onUploadCompletion(e){e.status===ae.FAILED?this.$emit("failed",e):this.$emit("uploaded",e)}}}),ke=he(xe,(function(){var e=this,t=e._self._c;return e._self._setupProxy,e.destination?t("form",{ref:"form",staticClass:"upload-picker",class:{"upload-picker--uploading":e.isUploading,"upload-picker--paused":e.isPaused},attrs:{"data-cy-upload-picker":""}},[!e.noMenu&&0!==e.newFileMenuEntries.length||e.canUploadFolders?t("NcActions",{attrs:{"aria-label":e.buttonLabel,"menu-name":e.buttonName,type:"secondary"},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[t("NcActionCaption",{attrs:{name:e.t("Upload from device")}}),t("NcActionButton",{attrs:{"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file","close-after-click":!0},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconUpload",{attrs:{size:20}})]},proxy:!0}],null,!1,337456192)},[e._v(" "+e._s(e.t("Upload files"))+" ")]),e.canUploadFolders?t("NcActionButton",{attrs:{"close-after-click":"","data-cy-upload-picker-add-folders":"","data-cy-upload-picker-menu-entry":"upload-folder"},on:{click:function(t){return e.onTriggerPick(!0)}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconFolderUpload",{staticStyle:{color:"var(--color-primary-element)"},attrs:{size:20}})]},proxy:!0}],null,!1,1037549157)},[e._v(" "+e._s(e.t("Upload folders"))+" ")]):e._e(),e.noMenu?e._e():e._l(e.menuEntriesUpload,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":s.id},on:{click:function(t){return e.onClick(s)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])})),!e.noMenu&&e.menuEntriesNew.length>0?[t("NcActionSeparator"),t("NcActionCaption",{attrs:{name:e.t("Create new")}}),e._l(e.menuEntriesNew,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":s.id},on:{click:function(t){return e.onClick(s)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e(),!e.noMenu&&e.menuEntriesOther.length>0?[t("NcActionSeparator"),e._l(e.menuEntriesOther,(function(s){return t("NcActionButton",{key:s.id,staticClass:"upload-picker__menu-entry",attrs:{icon:s.iconClass,"close-after-click":!0,"data-cy-upload-picker-menu-entry":s.id},on:{click:function(t){return e.onClick(s)}},scopedSlots:e._u([s.iconSvgInline?{key:"icon",fn:function(){return[t("NcIconSvgWrapper",{attrs:{svg:s.iconSvgInline}})]},proxy:!0}:null],null,!0)},[e._v(" "+e._s(s.displayName)+" ")])}))]:e._e()],2):t("NcButton",{attrs:{disabled:e.disabled,"data-cy-upload-picker-add":"","data-cy-upload-picker-menu-entry":"upload-file",type:"secondary"},on:{click:function(t){return e.onTriggerPick()}},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconPlus",{attrs:{size:20}})]},proxy:!0}],null,!1,1991456921)},[e._v(" "+e._s(e.buttonName)+" ")]),t("div",{directives:[{name:"show",rawName:"v-show",value:e.isUploading,expression:"isUploading"}],staticClass:"upload-picker__progress"},[t("NcProgressBar",{attrs:{"aria-label":e.t("Upload progress"),"aria-describedby":e.progressTimeId,error:e.hasFailure,value:e.progress,size:"medium"}}),t("p",{attrs:{id:e.progressTimeId}},[e._v(" "+e._s(e.timeLeft)+" ")])],1),e.isUploading?t("NcButton",{staticClass:"upload-picker__cancel",attrs:{type:"tertiary","aria-label":e.t("Cancel uploads"),"data-cy-upload-picker-cancel":""},on:{click:e.onCancel},scopedSlots:e._u([{key:"icon",fn:function(){return[t("IconCancel",{attrs:{size:20}})]},proxy:!0}],null,!1,3076329829)}):e._e(),t("input",{ref:"input",staticClass:"hidden-visually",attrs:{accept:e.accept?.join?.(", "),multiple:e.multiple,"data-cy-upload-picker-input":"",type:"file"},on:{change:e.onPick}})],1):e._e()}),[],0,0,"c5517ef8").exports;function _e(e=(0,v.f)(),t=!1){return(t||void 0===window._nc_uploader)&&(window._nc_uploader=new fe(e)),window._nc_uploader}async function Se(e,t,n,i){const a=(0,w.$V)((()=>Promise.all([s.e(4208),s.e(918)]).then(s.bind(s,70918))));return new Promise(((s,r)=>{const o=new w.Ay({name:"ConflictPickerRoot",render:l=>l(a,{props:{dirname:e,conflicts:t,content:n,recursiveUpload:!0===i?.recursive},on:{submit(e){s(e),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)},cancel(e){r(e??new Error("Canceled")),o.$destroy(),o.$el?.parentNode?.removeChild(o.$el)}}})});o.$mount(),document.body.appendChild(o.$el)}))}},85136:(e,t,s)=>{"use strict";s.d(t,{a:()=>u,j:()=>c,k:()=>g,l:()=>m,t:()=>r});var n=s(84093);const i=(0,s(11195).$)().detectLocale();[{locale:"af",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)","Content-Type":"text/plain; charset=UTF-8",Language:"af","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: af\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ar",json:{charset:"utf-8",headers:{"Last-Translator":"Ali <alimahwer@yahoo.com>, 2024","Language-Team":"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)","Content-Type":"text/plain; charset=UTF-8",Language:"ar","Plural-Forms":"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAli <alimahwer@yahoo.com>, 2024\n"},msgstr:["Last-Translator: Ali <alimahwer@yahoo.com>, 2024\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ar\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" لا يصلح كاسم مجلد.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" غير مسموح به كاسم مجلد']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" غير مسموح به داخل اسم مجلد.']},"All files":{msgid:"All files",msgstr:["كل الملفات"]},Choose:{msgid:"Choose",msgstr:["إختَر"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["إختَر {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["إختَر %n ملف","إختَر %n ملف","إختَر %n ملف","إختَر %n ملفات","إختَر %n ملف","إختَر %n ملف"]},Copy:{msgid:"Copy",msgstr:["نسخ"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["نسخٌ إلى {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["تعذّر إنشاء المجلد الجديد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["يتعذّر تحميل إعدادات الملفات"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["يتعذّر تحميل مناظير views الملفات"]},"Create directory":{msgid:"Create directory",msgstr:["أنشِيءْ مجلّداً"]},"Current view selector":{msgid:"Current view selector",msgstr:["مُنتقِي المنظور الحالي"]},Favorites:{msgid:"Favorites",msgstr:["المُفضَّلة"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا."]},"Filter file list":{msgid:"Filter file list",msgstr:["فلترة قائمة الملفات"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["اسم المجلد لا يمكن أن يكون فارغاً."]},Home:{msgid:"Home",msgstr:["البداية"]},Modified:{msgid:"Modified",msgstr:["مُعدَّل"]},Move:{msgid:"Move",msgstr:["أُنقُل"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["أُنقُل إلى {target}"]},Name:{msgid:"Name",msgstr:["الاسم"]},New:{msgid:"New",msgstr:["جديد"]},"New folder":{msgid:"New folder",msgstr:["مٌجلّد جديد"]},"New folder name":{msgid:"New folder name",msgstr:["اسم المجلد الجديد"]},"No files in here":{msgid:"No files in here",msgstr:["لا توجد ملفات هنا"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["لا توجد ملفات تتطابق مع الفلتر الذي وضعته"]},"No matching files":{msgid:"No matching files",msgstr:["لا توجد ملفات مُطابِقة"]},Recent:{msgid:"Recent",msgstr:["الحالي"]},"Select all entries":{msgid:"Select all entries",msgstr:["حدِّد كل المداخل"]},"Select entry":{msgid:"Select entry",msgstr:["إختَر المدخل"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["إختر سطر الـ {nodename}"]},Size:{msgid:"Size",msgstr:["الحجم"]},Undo:{msgid:"Undo",msgstr:["تراجع"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["قُم برفع محتوىً أو قُم بمزامنة أجهزتك!"]}}}}},{locale:"ast",json:{charset:"utf-8",headers:{"Last-Translator":"enolp <enolp@softastur.org>, 2024","Language-Team":"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)","Content-Type":"text/plain; charset=UTF-8",Language:"ast","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nenolp <enolp@softastur.org>, 2024\n"},msgstr:["Last-Translator: enolp <enolp@softastur.org>, 2024\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ast\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» ye un nome de carpeta inválidu."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» ye un nome de carpeta inválidu"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Nun se permite'l caráuter «/» dientro'l nome de les carpetes."]},"All files":{msgid:"All files",msgstr:["Tolos ficheros"]},Choose:{msgid:"Choose",msgstr:["Escoyer"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoyer «{ficheru}»"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoyer %n ficheru","Escoyer %n ficheros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nun se pudo crear la carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nun se pudo cargar la configuración de los ficheros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nun se pudieron cargar les vistes de los ficheros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un direutoriu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de la vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Equí apaecen los ficheros y les carpetes que metas en Favoritos."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Equí apaecen los fichero y les carpetes que modificares apocayá."]},"Filter file list":{msgid:"Filter file list",msgstr:["Peñerar la llista de ficheros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nome de la carpeta nun pue tar baleru."]},Home:{msgid:"Home",msgstr:["Aniciu"]},Modified:{msgid:"Modified",msgstr:["Modificóse"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuevu"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nueva"]},"New folder name":{msgid:"New folder name",msgstr:["Nome de carpeta nuevu"]},"No files in here":{msgid:"No files in here",msgstr:["Equí nun hai nengún ficheru"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nun s'atopó nengún ficheru que concasare cola peñera."]},"No matching files":{msgid:"No matching files",msgstr:["Nun hai nengún ficheru que concase"]},Recent:{msgid:"Recent",msgstr:["De recién"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleicionar toles entraes"]},"Select entry":{msgid:"Select entry",msgstr:["Seleicionar la entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleicionar la filera de: {nodename}"]},Size:{msgid:"Size",msgstr:["Tamañu"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Xubi dalgún elementu o sincroniza colos tos preseos!"]}}}}},{locale:"az",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)","Content-Type":"text/plain; charset=UTF-8",Language:"az","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: az\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"be",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)","Content-Type":"text/plain; charset=UTF-8",Language:"be","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: be\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bg_BG",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)","Content-Type":"text/plain; charset=UTF-8",Language:"bg_BG","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bg_BG\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"bn_BD",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)","Content-Type":"text/plain; charset=UTF-8",Language:"bn_BD","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bn_BD\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"br",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)","Content-Type":"text/plain; charset=UTF-8",Language:"br","Plural-Forms":"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: br\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Disober"]}}}}},{locale:"bs",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)","Content-Type":"text/plain; charset=UTF-8",Language:"bs","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: bs\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ca",json:{charset:"utf-8",headers:{"Last-Translator":"Sergi Font, 2024","Language-Team":"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)","Content-Type":"text/plain; charset=UTF-8",Language:"ca","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nv v <e670006006@gmail.com>, 2024\nMarc Riera <marcriera@softcatala.org>, 2024\nSergi Font, 2024\n"},msgstr:["Last-Translator: Sergi Font, 2024\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ca\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" és un nom de carpeta no vàlid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no és permès en el nom de carpeta']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no és permès en el nom de carpeta.']},"All files":{msgid:"All files",msgstr:["Tots els fitxers"]},Choose:{msgid:"Choose",msgstr:["Tria"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Tria {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Tria %n fitxer","Tria %n fitxers"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No s'ha pogut crear la carpeta nova"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No es poden carregar fitxers de configuració"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No es poden carregar fitxers de vistes"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de visualització actual"]},Favorites:{msgid:"Favorites",msgstr:["Preferits"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Els fitxers i les carpetes recentment modificats es mostraran aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar llistat de fitxers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nom de la carpeta no pot estar buit."]},Home:{msgid:"Home",msgstr:["Inici"]},Modified:{msgid:"Modified",msgstr:["Data de modificació"]},Move:{msgid:"Move",msgstr:["Desplaça"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Desplaça a {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Crea"]},"New folder":{msgid:"New folder",msgstr:["Carpeta nova"]},"New folder name":{msgid:"New folder name",msgstr:["Nom de la carpeta nova"]},"No files in here":{msgid:"No files in here",msgstr:["No hi ha cap fitxer"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No s'ha trobat cap fitxer que coincideixi amb el filtre."]},"No matching files":{msgid:"No matching files",msgstr:["No hi ha cap fitxer que coincideixi"]},Recent:{msgid:"Recent",msgstr:["Recents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecciona totes les entrades"]},"Select entry":{msgid:"Select entry",msgstr:["Selecciona l'entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecciona la fila per a {nodename}"]},Size:{msgid:"Size",msgstr:["Mida"]},Undo:{msgid:"Undo",msgstr:["Desfés"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!"]}}}}},{locale:"cs",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2020","Language-Team":"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nPavel Borecki <pavel.borecki@gmail.com>, 2020\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:187"},msgstr:["Zpět"]}}}}},{locale:"cs_CZ",json:{charset:"utf-8",headers:{"Last-Translator":"Pavel Borecki <pavel.borecki@gmail.com>, 2024","Language-Team":"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)","Content-Type":"text/plain; charset=UTF-8",Language:"cs_CZ","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nPavel Borecki <pavel.borecki@gmail.com>, 2024\n"},msgstr:["Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cs_CZ\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}“ není platný název složky."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}“ není povolený název složky."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky."]},"All files":{msgid:"All files",msgstr:["Veškeré soubory"]},Choose:{msgid:"Choose",msgstr:["Zvolit"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Zvolit {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Zvolte %n soubor","Zvolte %n soubory","Zvolte %n souborů","Zvolte %n soubory"]},Copy:{msgid:"Copy",msgstr:["Zkopírovat"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Zkopírovat do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Novou složku se nepodařilo vytvořit"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodařilo se načíst nastavení pro soubory"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodařilo se načíst pohledy souborů"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvořit složku"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výběr stávajícího zobrazení"]},Favorites:{msgid:"Favorites",msgstr:["Oblíbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Zde se zobrazí soubory a složky, které označíte jako oblíbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Zde se zobrazí soubory a složky, které jste nedávno pozměnili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovat seznam souborů"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Složku je třeba nějak nazvat."]},Home:{msgid:"Home",msgstr:["Domů"]},Modified:{msgid:"Modified",msgstr:["Změněno"]},Move:{msgid:"Move",msgstr:["Přesounout"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Přesunout do {target}"]},Name:{msgid:"Name",msgstr:["Název"]},New:{msgid:"New",msgstr:["Nové"]},"New folder":{msgid:"New folder",msgstr:["Nová složka"]},"New folder name":{msgid:"New folder name",msgstr:["Název pro novou složku"]},"No files in here":{msgid:"No files in here",msgstr:["Nejsou zde žádné soubory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenalezeny žádné soubory odpovídající vašemu filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Žádné odpovídající soubory"]},Recent:{msgid:"Recent",msgstr:["Nedávné"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrat všechny položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrat položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vybrat řádek pro {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Zpět"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!"]}}}}},{locale:"cy_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"cy_GB","Plural-Forms":"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: cy_GB\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"da",json:{charset:"utf-8",headers:{"Last-Translator":"Martin Bonde <Martin@maboni.dk>, 2024","Language-Team":"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)","Content-Type":"text/plain; charset=UTF-8",Language:"da","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMartin Bonde <Martin@maboni.dk>, 2024\n"},msgstr:["Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: da\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldigt mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tilladt mappenavn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tilladt i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Vælg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vælg {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vælg %n fil","Vælg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke oprette den nye mappe"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Filindstillingerne kunne ikke indlæses"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke indlæse filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opret mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuel visningsvælger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper, du markerer som foretrukne, vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper, du for nylig har ændret, vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer fil liste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavnet må ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Ændret"]},Move:{msgid:"Move",msgstr:["Flyt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flyt til {target}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Ny mappe navn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Der blev ikke fundet nogen filer, der matcher dit filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen matchende filer"]},Recent:{msgid:"Recent",msgstr:["Seneste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vælg alle poster"]},"Select entry":{msgid:"Select entry",msgstr:["Vælg post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vælg rækken for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størelse"]},Undo:{msgid:"Undo",msgstr:["Fortryd"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload noget indhold eller synkroniser med dine enheder!"]}}}}},{locale:"de",json:{charset:"utf-8",headers:{"Last-Translator":"Ettore Atalan <atalanttore@googlemail.com>, 2024","Language-Team":"German (https://app.transifex.com/nextcloud/teams/64236/de/)","Content-Type":"text/plain; charset=UTF-8",Language:"de","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2023\nMarkus Eckstein, 2023\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\nJoachim Sokolowski, 2023\nEttore Atalan <atalanttore@googlemail.com>, 2024\n"},msgstr:["Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden."]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Startseite"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Keine Dateien vorhanden"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die deinem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Jüngste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!"]}}}}},{locale:"de_DE",json:{charset:"utf-8",headers:{"Last-Translator":"Mario Siegmann <mario_siegmann@web.de>, 2024","Language-Team":"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)","Content-Type":"text/plain; charset=UTF-8",Language:"de_DE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\nMario Siegmann <mario_siegmann@web.de>, 2024\n"},msgstr:["Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: de_DE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" ist ein ungültiger Ordnername.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ist kein zulässiger Ordnername']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ist innerhalb eines Ordnernamens nicht zulässig.']},"All files":{msgid:"All files",msgstr:["Alle Dateien"]},Choose:{msgid:"Choose",msgstr:["Auswählen"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} auswählen"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n Datei auswählen","%n Dateien auswählen"]},Copy:{msgid:"Copy",msgstr:["Kopieren"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Nach {target} kopieren"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Der neue Ordner konnte nicht erstellt werden"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dateieinstellungen konnten nicht geladen werden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dateiansichten konnten nicht geladen werden"]},"Create directory":{msgid:"Create directory",msgstr:["Verzeichnis erstellen"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuelle Ansichtsauswahl"]},Favorites:{msgid:"Favorites",msgstr:["Favoriten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dateiliste filtern"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Der Ordnername darf nicht leer sein."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Geändert"]},Move:{msgid:"Move",msgstr:["Verschieben"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Nach {target} verschieben"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["Neu"]},"New folder":{msgid:"New folder",msgstr:["Neuer Ordner"]},"New folder name":{msgid:"New folder name",msgstr:["Neuer Ordnername"]},"No files in here":{msgid:"No files in here",msgstr:["Hier sind keine Dateien"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen."]},"No matching files":{msgid:"No matching files",msgstr:["Keine passenden Dateien"]},Recent:{msgid:"Recent",msgstr:["Neueste"]},"Select all entries":{msgid:"Select all entries",msgstr:["Alle Einträge auswählen"]},"Select entry":{msgid:"Select entry",msgstr:["Eintrag auswählen"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Die Zeile für {nodename} auswählen."]},Size:{msgid:"Size",msgstr:["Größe"]},Undo:{msgid:"Undo",msgstr:["Rückgängig machen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!"]}}}}},{locale:"el",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)","Content-Type":"text/plain; charset=UTF-8",Language:"el","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: el\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Αναίρεση"]}}}}},{locale:"en_GB",json:{charset:"utf-8",headers:{"Last-Translator":"Andi Chandler <andi@gowling.com>, 2024","Language-Team":"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)","Content-Type":"text/plain; charset=UTF-8",Language:"en_GB","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2023\nAndi Chandler <andi@gowling.com>, 2024\n"},msgstr:["Last-Translator: Andi Chandler <andi@gowling.com>, 2024\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: en_GB\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is an invalid folder name.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is not an allowed folder name']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is not allowed inside a folder name.']},"All files":{msgid:"All files",msgstr:["All files"]},Choose:{msgid:"Choose",msgstr:["Choose"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choose {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choose %n file","Choose %n files"]},Copy:{msgid:"Copy",msgstr:["Copy"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copy to {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Could not create the new folder"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Could not load files settings"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Could not load files views"]},"Create directory":{msgid:"Create directory",msgstr:["Create directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Current view selector"]},Favorites:{msgid:"Favorites",msgstr:["Favourites"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Files and folders you mark as favourite will show up here."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Files and folders you recently modified will show up here."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter file list"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Folder name cannot be empty."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modified"]},Move:{msgid:"Move",msgstr:["Move"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Move to {target}"]},Name:{msgid:"Name",msgstr:["Name"]},New:{msgid:"New",msgstr:["New"]},"New folder":{msgid:"New folder",msgstr:["New folder"]},"New folder name":{msgid:"New folder name",msgstr:["New folder name"]},"No files in here":{msgid:"No files in here",msgstr:["No files in here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No files matching your filter were found."]},"No matching files":{msgid:"No matching files",msgstr:["No matching files"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Select all entries"]},"Select entry":{msgid:"Select entry",msgstr:["Select entry"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Select the row for {nodename}"]},Size:{msgid:"Size",msgstr:["Size"]},Undo:{msgid:"Undo",msgstr:["Undo"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload some content or sync with your devices!"]}}}}},{locale:"eo",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)","Content-Type":"text/plain; charset=UTF-8",Language:"eo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Malfari"]}}}}},{locale:"es",json:{charset:"utf-8",headers:{"Last-Translator":"Julio C. Ortega, 2024","Language-Team":"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)","Content-Type":"text/plain; charset=UTF-8",Language:"es","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\nJulio C. Ortega, 2024\n"},msgstr:["Last-Translator: Julio C. Ortega, 2024\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta no válido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido dentro del nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elige %n archivo","Elige %n archivos","Seleccione %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudieron cargar los ajustes de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:[" Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nuevo nombre de carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidiesen con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_419",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_419","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_419\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_AR",json:{charset:"utf-8",headers:{"Last-Translator":"Matías Campo Hoet <matiascampo@gmail.com>, 2024","Language-Team":"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_AR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\n"},msgstr:["Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_AR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de una carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Elegir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Elija {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Elija %n archivo","Elija %n archivos","Elija %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Cargue algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_CL",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CL","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CL\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_CR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_CR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_CR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_DO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_DO","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_DO\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_EC",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_EC","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_EC\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_GT",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_GT","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_GT\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_HN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_HN","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_HN\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_MX",json:{charset:"utf-8",headers:{"Last-Translator":"Jehu Marcos Herrera Puentes, 2024","Language-Team":"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_MX","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJehu Marcos Herrera Puentes, 2024\n"},msgstr:["Last-Translator: Jehu Marcos Herrera Puentes, 2024\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_MX\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" es un nombre de carpeta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" no es un nombre de carpeta permitido.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" no está permitido en el nombre de la carpeta.']},"All files":{msgid:"All files",msgstr:["Todos los archivos"]},Choose:{msgid:"Choose",msgstr:["Seleccionar"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Seleccionar {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleccionar %n archivo","Seleccionar %n archivos","Seleccionar %n archivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar a {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["No se pudo crear la nueva carpeta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["No se pudo cargar la configuración de archivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["No se pudieron cargar las vistas de los archivos"]},"Create directory":{msgid:"Create directory",msgstr:["Crear carpeta"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Los archivos y carpetas que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Los archivos y carpetas que modificó recientemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de archivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["El nombre de la carpeta no puede estar vacío."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover a {target}"]},Name:{msgid:"Name",msgstr:["Nombre"]},New:{msgid:"New",msgstr:["Nuevo"]},"New folder":{msgid:"New folder",msgstr:["Nueva carpeta"]},"New folder name":{msgid:"New folder name",msgstr:["Nombre de nueva carpeta"]},"No files in here":{msgid:"No files in here",msgstr:["No hay archivos aquí"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["No se encontraron archivos que coincidan con su filtro."]},"No matching files":{msgid:"No matching files",msgstr:["No hay archivos coincidentes"]},Recent:{msgid:"Recent",msgstr:["Reciente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas las entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccione la fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Deshacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["¡Suba algún contenido o sincronice con sus dispositivos!"]}}}}},{locale:"es_NI",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_NI","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_NI\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PA","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PA\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PE","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PE\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PR",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PR","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PR\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_PY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_PY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_PY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_SV",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_SV","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_SV\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"es_UY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)","Content-Type":"text/plain; charset=UTF-8",Language:"es_UY","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: es_UY\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"et_EE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)","Content-Type":"text/plain; charset=UTF-8",Language:"et_EE","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: et_EE\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"eu",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)","Content-Type":"text/plain; charset=UTF-8",Language:"eu","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: eu\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Desegin"]}}}}},{locale:"fa",json:{charset:"utf-8",headers:{"Last-Translator":"reza reza <forghan89@yahoo.com>, 2024","Language-Team":"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)","Content-Type":"text/plain; charset=UTF-8",Language:"fa","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nAmir Shekoohi, 2024\nreza reza <forghan89@yahoo.com>, 2024\n"},msgstr:["Last-Translator: reza reza <forghan89@yahoo.com>, 2024\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fa\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} نام پوشه معتبر نیست"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} نام پوشه مجاز نیست"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" نمی‌تواند در نام پوشه استفاده شود.']},"All files":{msgid:"All files",msgstr:["همه فایل‌ها"]},Choose:{msgid:"Choose",msgstr:["انتخاب"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["انتخاب {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["انتخاب %n فایل","انتخاب %n فایل"]},Copy:{msgid:"Copy",msgstr:["رونوشت"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["رونوشت از {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["پوشه جدید ایجاد نشد"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["تنظیمات فایل باز نشد"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["نمای فایل‌ها بارگیری نشد"]},"Create directory":{msgid:"Create directory",msgstr:["ایجاد فهرست"]},"Current view selector":{msgid:"Current view selector",msgstr:["انتخابگر نماگر فعلی"]},Favorites:{msgid:"Favorites",msgstr:["علایق"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند."]},"Filter file list":{msgid:"Filter file list",msgstr:["فیلتر لیست فایل"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["نام پوشه نمی تواند خالی باشد."]},Home:{msgid:"Home",msgstr:["خانه"]},Modified:{msgid:"Modified",msgstr:["اصلاح شده"]},Move:{msgid:"Move",msgstr:["انتقال"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["انتقال به {target}"]},Name:{msgid:"Name",msgstr:["نام"]},New:{msgid:"New",msgstr:["جدید"]},"New folder":{msgid:"New folder",msgstr:["پوشه جدید"]},"New folder name":{msgid:"New folder name",msgstr:["نام پوشه جدید"]},"No files in here":{msgid:"No files in here",msgstr:["فایلی اینجا نیست"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["هیچ فایلی مطابق با فیلتر شما یافت نشد."]},"No matching files":{msgid:"No matching files",msgstr:["فایل منطبقی وجود ندارد"]},Recent:{msgid:"Recent",msgstr:["اخیر"]},"Select all entries":{msgid:"Select all entries",msgstr:["انتخاب همه ورودی ها"]},"Select entry":{msgid:"Select entry",msgstr:["انتخاب ورودی"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["انتخاب ردیف برای {nodename}"]},Size:{msgid:"Size",msgstr:["اندازه"]},Undo:{msgid:"Undo",msgstr:["بازگردانی"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!"]}}}}},{locale:"fi_FI",json:{charset:"utf-8",headers:{"Last-Translator":"thingumy, 2024","Language-Team":"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)","Content-Type":"text/plain; charset=UTF-8",Language:"fi_FI","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\nthingumy, 2024\n"},msgstr:["Last-Translator: thingumy, 2024\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fi_FI\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" on virheellinen kansion nimi.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" ei ole sallittu kansion nimi']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ei ole sallittu kansion nimessä.']},"All files":{msgid:"All files",msgstr:["Kaikki tiedostot"]},Choose:{msgid:"Choose",msgstr:["Valitse"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Valitse {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Valitse %n tiedosto","Valitse %n tiedostoa"]},Copy:{msgid:"Copy",msgstr:["Kopioi"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopioi sijaintiin {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Uutta kansiota ei voitu luoda"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tiedoston asetuksia ei saa ladattua"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tiedoston näkymiä ei saa ladattua"]},"Create directory":{msgid:"Create directory",msgstr:["Luo kansio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nykyisen näkymän valinta"]},Favorites:{msgid:"Favorites",msgstr:["Suosikit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä."]},"Filter file list":{msgid:"Filter file list",msgstr:["Suodata tiedostolistaa"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Kansion nimi ei voi olla tyhjä."]},Home:{msgid:"Home",msgstr:["Koti"]},Modified:{msgid:"Modified",msgstr:["Muokattu"]},Move:{msgid:"Move",msgstr:["Siirrä"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Siirrä sijaintiin {target}"]},Name:{msgid:"Name",msgstr:["Nimi"]},New:{msgid:"New",msgstr:["Uusi"]},"New folder":{msgid:"New folder",msgstr:["Uusi kansio"]},"New folder name":{msgid:"New folder name",msgstr:["Uuden kansion nimi"]},"No files in here":{msgid:"No files in here",msgstr:["Täällä ei ole tiedostoja"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Suodatinta vastaavia tiedostoja ei löytynyt."]},"No matching files":{msgid:"No matching files",msgstr:["Ei vastaavia tiedostoja"]},Recent:{msgid:"Recent",msgstr:["Viimeisimmät"]},"Select all entries":{msgid:"Select all entries",msgstr:["Valitse kaikki tietueet"]},"Select entry":{msgid:"Select entry",msgstr:["Valitse tietue"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Valitse rivi {nodename}:lle"]},Size:{msgid:"Size",msgstr:["Koko"]},Undo:{msgid:"Undo",msgstr:["Kumoa"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!"]}}}}},{locale:"fo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)","Content-Type":"text/plain; charset=UTF-8",Language:"fo","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fo\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"fr",json:{charset:"utf-8",headers:{"Last-Translator":"DEV314R, 2024","Language-Team":"French (https://app.transifex.com/nextcloud/teams/64236/fr/)","Content-Type":"text/plain; charset=UTF-8",Language:"fr","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nRémi LEBLOND, 2023\nMordecai, 2023\nfleopaulD, 2023\nFrançois Ch., 2024\nJérôme HERBINET, 2024\nBenoit Pruneau, 2024\nDEV314R, 2024\n"},msgstr:["Last-Translator: DEV314R, 2024\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: fr\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" n\'est pas un nom de dossier valide.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" n\'est pas un nom de dossier autorisé.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Le caractère « / » n'est pas autorisé dans un nom de dossier."]},"All files":{msgid:"All files",msgstr:["Tous les fichiers"]},Choose:{msgid:"Choose",msgstr:["Choisir"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Choisir {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Choisir %n fichier","Choisir %n fichiers","Choisir %n fichiers "]},Copy:{msgid:"Copy",msgstr:["Copier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copier vers {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossible de créer le nouveau dossier"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Les paramètres des fichiers n'ont pas pu être chargés"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Les aperçus des fichiers n'ont pas pu être chargés"]},"Create directory":{msgid:"Create directory",msgstr:["Créer un répertoire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Sélecteur de vue courante"]},Favorites:{msgid:"Favorites",msgstr:["Favoris"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Les fichiers et répertoires marqués en favoris apparaîtront ici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Les fichiers et répertoires modifiés récemment apparaîtront ici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer la liste des fichiers"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Le nom du dossier ne peut pas être vide."]},Home:{msgid:"Home",msgstr:["Accueil"]},Modified:{msgid:"Modified",msgstr:["Modifié"]},Move:{msgid:"Move",msgstr:["Déplacer"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Déplacer vers {target}"]},Name:{msgid:"Name",msgstr:["Nom"]},New:{msgid:"New",msgstr:["Nouveau"]},"New folder":{msgid:"New folder",msgstr:["Nouveau répertoire"]},"New folder name":{msgid:"New folder name",msgstr:["Nom du nouveau répertoire"]},"No files in here":{msgid:"No files in here",msgstr:["Aucun fichier ici"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Aucun fichier trouvé correspondant à votre filtre."]},"No matching files":{msgid:"No matching files",msgstr:["Aucun fichier trouvé"]},Recent:{msgid:"Recent",msgstr:["Récents"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tous sélectionner"]},"Select entry":{msgid:"Select entry",msgstr:["Sélectionner une entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Sélectionner l'enregistrement pour {nodename}"]},Size:{msgid:"Size",msgstr:["Taille"]},Undo:{msgid:"Undo",msgstr:["Rétablir"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Charger du contenu ou synchroniser avec vos équipements !"]}}}}},{locale:"ga",json:{charset:"utf-8",headers:{"Last-Translator":"Aindriú Mac Giolla Eoin, 2024","Language-Team":"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)","Content-Type":"text/plain; charset=UTF-8",Language:"ga","Plural-Forms":"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nAindriú Mac Giolla Eoin, 2024\n"},msgstr:["Last-Translator: Aindriú Mac Giolla Eoin, 2024\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ga\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['Is ainm fillteáin neamhbhailí é "{name}".']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['Ní ainm fillteáin ceadaithe é "{name}".']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Ní cheadaítear "/" taobh istigh d\'ainm fillteáin.']},"All files":{msgid:"All files",msgstr:["Gach comhad"]},Choose:{msgid:"Choose",msgstr:["Roghnaigh"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Roghnaigh {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Roghnaigh %n comhad","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid","Roghnaigh %n comhaid"]},Copy:{msgid:"Copy",msgstr:["Cóip"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Cóipeáil chuig {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Níorbh fhéidir an fillteán nua a chruthú"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Níorbh fhéidir socruithe comhaid a lódáil"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Níorbh fhéidir radhairc comhad a lódáil"]},"Create directory":{msgid:"Create directory",msgstr:["Cruthaigh eolaire"]},"Current view selector":{msgid:"Current view selector",msgstr:["Roghnóir amhairc reatha"]},Favorites:{msgid:"Favorites",msgstr:["Ceanáin"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo."]},"Filter file list":{msgid:"Filter file list",msgstr:["Scag liosta comhad"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ní féidir ainm fillteáin a bheith folamh."]},Home:{msgid:"Home",msgstr:["Baile"]},Modified:{msgid:"Modified",msgstr:["Athraithe"]},Move:{msgid:"Move",msgstr:["Bog"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Bog go{target}"]},Name:{msgid:"Name",msgstr:["Ainm"]},New:{msgid:"New",msgstr:["Nua"]},"New folder":{msgid:"New folder",msgstr:["Fillteán nua"]},"New folder name":{msgid:"New folder name",msgstr:["Ainm fillteáin nua"]},"No files in here":{msgid:"No files in here",msgstr:["Níl aon chomhaid istigh anseo"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Níor aimsíodh aon chomhad a tháinig le do scagaire."]},"No matching files":{msgid:"No matching files",msgstr:["Gan comhaid meaitseála"]},Recent:{msgid:"Recent",msgstr:["le déanaí"]},"Select all entries":{msgid:"Select all entries",msgstr:["Roghnaigh gach iontráil"]},"Select entry":{msgid:"Select entry",msgstr:["Roghnaigh iontráil"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Roghnaigh an ró do {nodename}"]},Size:{msgid:"Size",msgstr:["Méid"]},Undo:{msgid:"Undo",msgstr:["Cealaigh"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!"]}}}}},{locale:"gd",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)","Content-Type":"text/plain; charset=UTF-8",Language:"gd","Plural-Forms":"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gd\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"gl",json:{charset:"utf-8",headers:{"Last-Translator":"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024","Language-Team":"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)","Content-Type":"text/plain; charset=UTF-8",Language:"gl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\n"},msgstr:["Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: gl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» non é un nome de cartafol válido."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» non é un nome de cartafol permitido"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["A «/» non está permitida no nome dun cartafol."]},"All files":{msgid:"All files",msgstr:["Todos os ficheiros"]},Choose:{msgid:"Choose",msgstr:["Escoller"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escoller {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escoller %n ficheiro","Escoller %n ficheiros"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar en {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Non foi posíbel crear o novo cartafol"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Non foi posíbel cargar os axustes dos ficheiros"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Non foi posíbel cargar as vistas dos ficheiros"]},"Create directory":{msgid:"Create directory",msgstr:["Crear un directorio"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selector de vista actual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os ficheiros e cartafoles que marque como favoritos aparecerán aquí."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Os ficheiros e cartafoles que modificou recentemente aparecerán aquí."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar a lista de ficheiros"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome do cartafol non pode estar baleiro."]},Home:{msgid:"Home",msgstr:["Inicio"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover cara a {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novo cartafol"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome do cartafol"]},"No files in here":{msgid:"No files in here",msgstr:["Aquí non hai ficheiros"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Non se atopou ningún ficheiro que coincida co filtro."]},"No matching files":{msgid:"No matching files",msgstr:["Non hai ficheiros coincidentes"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Seleccionar todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Seleccionar a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleccionar a fila para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamaño"]},Undo:{msgid:"Undo",msgstr:["Desfacer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Enviar algún contido ou sincronizalo cos seus dispositivos!"]}}}}},{locale:"he",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)","Content-Type":"text/plain; charset=UTF-8",Language:"he","Plural-Forms":"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: he\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["ביטול"]}}}}},{locale:"hi_IN",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)","Content-Type":"text/plain; charset=UTF-8",Language:"hi_IN","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hi_IN\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hr",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)","Content-Type":"text/plain; charset=UTF-8",Language:"hr","Plural-Forms":"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hr\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hsb",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)","Content-Type":"text/plain; charset=UTF-8",Language:"hsb","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hsb\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"hu_HU",json:{charset:"utf-8",headers:{"Last-Translator":"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024","Language-Team":"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)","Content-Type":"text/plain; charset=UTF-8",Language:"hu_HU","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFőnyedi Áron <sajtman@gmail.com>, 2023\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\n"},msgstr:["Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hu_HU\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” érvénytelen mappanév."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” nem engedélyezett mappanév"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” jel nem szerepelhet mappa nevében."]},"All files":{msgid:"All files",msgstr:["Minden fájl"]},Choose:{msgid:"Choose",msgstr:["Kiválasztás"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} kiválasztása"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n fájl kiválasztása","%n fájl kiválasztása"]},Copy:{msgid:"Copy",msgstr:["Másolás"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Másolás ide: {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Az új mappa létrehozása nem lehetséges"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Fájlbeállítások betöltése nem lehetséges"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Fájlnézetek betöltése nem lehetséges"]},"Create directory":{msgid:"Create directory",msgstr:["Mappa létrehozása"]},"Current view selector":{msgid:"Current view selector",msgstr:["Jelenlegi nézet választó"]},Favorites:{msgid:"Favorites",msgstr:["Kedvencek"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["A kedvencként megjelölt fájlok és mappák itt jelennek meg."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["A nemrég módosított fájlok és mappák itt jelennek meg."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fájl lista szűrése"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["A mappa neve nem lehet üres."]},Home:{msgid:"Home",msgstr:["Kezdőlap"]},Modified:{msgid:"Modified",msgstr:["Módosítva"]},Move:{msgid:"Move",msgstr:["Mozgatás"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mozgatás ide: {target}"]},Name:{msgid:"Name",msgstr:["Név"]},New:{msgid:"New",msgstr:["Új"]},"New folder":{msgid:"New folder",msgstr:["Új mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Új mappa név"]},"No files in here":{msgid:"No files in here",msgstr:["Itt nincsenek fájlok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nincs a szűrési feltételeknek megfelelő fájl."]},"No matching files":{msgid:"No matching files",msgstr:["Nincs ilyen fájl"]},Recent:{msgid:"Recent",msgstr:["Gyakori"]},"Select all entries":{msgid:"Select all entries",msgstr:["Minden bejegyzés kijelölése"]},"Select entry":{msgid:"Select entry",msgstr:["Bejegyzés kijelölése"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Válassz sort a következőnek: {nodename}"]},Size:{msgid:"Size",msgstr:["Méret"]},Undo:{msgid:"Undo",msgstr:["Visszavonás"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!"]}}}}},{locale:"hy",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)","Content-Type":"text/plain; charset=UTF-8",Language:"hy","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: hy\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ia",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)","Content-Type":"text/plain; charset=UTF-8",Language:"ia","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ia\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"id",json:{charset:"utf-8",headers:{"Last-Translator":"Lun May, 2024","Language-Team":"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)","Content-Type":"text/plain; charset=UTF-8",Language:"id","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nLinerly <linerly@proton.me>, 2023\nLun May, 2024\n"},msgstr:["Last-Translator: Lun May, 2024\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: id\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" bukan nama folder yang valid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" merupakan nama folder yang tidak diperbolehkan']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" tidak diperbolehkan di dalam nama folder.']},"All files":{msgid:"All files",msgstr:["Semua berkas"]},Choose:{msgid:"Choose",msgstr:["Pilih"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Pilih {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Pilih %n file"]},Copy:{msgid:"Copy",msgstr:["Salin"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Salin ke {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Tidak dapat membuat folder baru"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Tidak dapat memuat pengaturan file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Tidak dapat memuat tampilan file"]},"Create directory":{msgid:"Create directory",msgstr:["Buat direktori"]},"Current view selector":{msgid:"Current view selector",msgstr:["Pemilih tampilan saat ini"]},Favorites:{msgid:"Favorites",msgstr:["Favorit"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini."]},"Filter file list":{msgid:"Filter file list",msgstr:["Saring daftar berkas"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Name berkas tidak boleh kosong."]},Home:{msgid:"Home",msgstr:["Beranda"]},Modified:{msgid:"Modified",msgstr:["Diubah"]},Move:{msgid:"Move",msgstr:["Pindahkan"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Pindahkan ke {target}"]},Name:{msgid:"Name",msgstr:["Nama"]},New:{msgid:"New",msgstr:["Baru"]},"New folder":{msgid:"New folder",msgstr:["Folder baru"]},"New folder name":{msgid:"New folder name",msgstr:["Nama folder baru"]},"No files in here":{msgid:"No files in here",msgstr:["Tidak ada berkas di sini"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Tidak ada berkas yang cocok dengan penyaringan Anda."]},"No matching files":{msgid:"No matching files",msgstr:["Tidak ada berkas yang cocok"]},Recent:{msgid:"Recent",msgstr:["Terkini"]},"Select all entries":{msgid:"Select all entries",msgstr:["Pilih semua entri"]},"Select entry":{msgid:"Select entry",msgstr:["Pilih entri"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Pilih baris untuk {nodename}"]},Size:{msgid:"Size",msgstr:["Ukuran"]},Undo:{msgid:"Undo",msgstr:["Tidak jadi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Unggah beberapa konten atau sinkronkan dengan perangkat Anda!"]}}}}},{locale:"ig",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)","Content-Type":"text/plain; charset=UTF-8",Language:"ig","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ig\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"is",json:{charset:"utf-8",headers:{"Last-Translator":"Sveinn í Felli <sv1@fellsnet.is>, 2023","Language-Team":"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)","Content-Type":"text/plain; charset=UTF-8",Language:"is","Plural-Forms":"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSveinn í Felli <sv1@fellsnet.is>, 2023\n"},msgstr:["Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: is\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er ógilt möppuheiti.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ekki leyfilegt möppuheiti']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er er ekki leyfilegt innan í skráarheiti.']},"All files":{msgid:"All files",msgstr:["Allar skrár"]},Choose:{msgid:"Choose",msgstr:["Veldu"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Veldu {file}"]},Copy:{msgid:"Copy",msgstr:["Afrita"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Afrita í {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Get ekki búið til nýju möppuna"]},"Create directory":{msgid:"Create directory",msgstr:["Búa til möppu"]},"Current view selector":{msgid:"Current view selector",msgstr:["Núverandi val sýnar"]},Favorites:{msgid:"Favorites",msgstr:["Eftirlæti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Skrár og möppur sem þú merkir sem eftirlæti birtast hér."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Skrár og möppur sem þú breyttir nýlega birtast hér."]},"Filter file list":{msgid:"Filter file list",msgstr:["Sía skráalista"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Möppuheiti má ekki vera tómt."]},Home:{msgid:"Home",msgstr:["Heim"]},Modified:{msgid:"Modified",msgstr:["Breytt"]},Move:{msgid:"Move",msgstr:["Færa"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Færa í {target}"]},Name:{msgid:"Name",msgstr:["Heiti"]},New:{msgid:"New",msgstr:["Nýtt"]},"New folder":{msgid:"New folder",msgstr:["Ný mappa"]},"New folder name":{msgid:"New folder name",msgstr:["Heiti nýrrar möppu"]},"No files in here":{msgid:"No files in here",msgstr:["Engar skrár hér"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Engar skrár fundust sem passa við síuna."]},"No matching files":{msgid:"No matching files",msgstr:["Engar samsvarandi skrár"]},Recent:{msgid:"Recent",msgstr:["Nýlegt"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velja allar færslur"]},"Select entry":{msgid:"Select entry",msgstr:["Velja færslu"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Veldu röðina fyrir {nodename}"]},Size:{msgid:"Size",msgstr:["Stærð"]},Undo:{msgid:"Undo",msgstr:["Afturkalla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Sendu inn eitthvað efni eða samstilltu við tækin þín!"]}}}}},{locale:"it",json:{charset:"utf-8",headers:{"Last-Translator":"Sebastiano Furlan, 2024","Language-Team":"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)","Content-Type":"text/plain; charset=UTF-8",Language:"it","Plural-Forms":"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nClaudio Scandella, 2023\nRaffaele Silano <raffaelone@gmail.com>, 2024\nSebastiano Furlan, 2024\n"},msgstr:["Last-Translator: Sebastiano Furlan, 2024\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: it\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" non è un nome di cartella valido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" non è un nome di cartella ammesso']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" non è ammesso all\'interno del nome di una cartella.']},"All files":{msgid:"All files",msgstr:["Tutti i file"]},Choose:{msgid:"Choose",msgstr:["Scegli"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Scegli {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Seleziona %n file","Seleziona %n file","Seleziona %n file"]},Copy:{msgid:"Copy",msgstr:["Copia"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copia in {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Impossibile creare la nuova cartella"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Impossibile caricare le impostazioni dei file"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Impossibile caricare le visualizzazioni dei file"]},"Create directory":{msgid:"Create directory",msgstr:["Crea directory"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selettore della vista corrente"]},Favorites:{msgid:"Favorites",msgstr:["Preferiti"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["I file e le cartelle contrassegnate come preferite saranno mostrate qui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["I file e le cartelle che hai modificato di recente saranno mostrate qui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtra elenco file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Il nome della cartella non può essere vuoto."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificato"]},Move:{msgid:"Move",msgstr:["Sposta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Sposta in {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Nuovo"]},"New folder":{msgid:"New folder",msgstr:["Nuova cartella"]},"New folder name":{msgid:"New folder name",msgstr:["Nuovo nome cartella"]},"No files in here":{msgid:"No files in here",msgstr:["Nessun file qui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nessun file che corrisponde al tuo filtro è stato trovato."]},"No matching files":{msgid:"No matching files",msgstr:["Nessun file corrispondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Scegli tutte le voci"]},"Select entry":{msgid:"Select entry",msgstr:["Seleziona la voce"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Seleziona la riga per {nodename}"]},Size:{msgid:"Size",msgstr:["Taglia/dimensioni"]},Undo:{msgid:"Undo",msgstr:["Annulla"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carica qualche contenuto o sincronizza con i tuoi dispositivi!"]}}}}},{locale:"ja_JP",json:{charset:"utf-8",headers:{"Last-Translator":"devi, 2024","Language-Team":"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)","Content-Type":"text/plain; charset=UTF-8",Language:"ja_JP","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\ntakehito kondo, 2023\nkojima.imamura, 2024\nTakafumi AKAMATSU, 2024\ndevi, 2024\n"},msgstr:["Last-Translator: devi, 2024\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ja_JP\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" はフォルダー名に使用できません。']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}"は許可されたフォルダー名ではありません']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["フォルダー名に「/(スラッシュ)」は使用できません。"]},"All files":{msgid:"All files",msgstr:["すべてのファイル"]},Choose:{msgid:"Choose",msgstr:["選択"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} を選択"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n 個のファイルを選択"]},Copy:{msgid:"Copy",msgstr:["コピー"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} にコピー"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["新しいフォルダーを作成できませんでした"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["ファイル設定を読み込めませんでした"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["ファイルビューを読み込めませんでした"]},"Create directory":{msgid:"Create directory",msgstr:["ディレクトリを作成"]},"Current view selector":{msgid:"Current view selector",msgstr:["現在のビューセレクタ"]},Favorites:{msgid:"Favorites",msgstr:["お気に入り"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["お気に入りとしてマークしたファイルとフォルダがここに表示されます。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["最近変更したファイルとフォルダがここに表示されます。"]},"Filter file list":{msgid:"Filter file list",msgstr:["ファイルリストをフィルタ"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["フォルダ名は空にできません。"]},Home:{msgid:"Home",msgstr:["ホーム"]},Modified:{msgid:"Modified",msgstr:["変更済み"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} に移動"]},Name:{msgid:"Name",msgstr:["名前"]},New:{msgid:"New",msgstr:["新規作成"]},"New folder":{msgid:"New folder",msgstr:["新しいフォルダー"]},"New folder name":{msgid:"New folder name",msgstr:["新しいフォルダーの名前"]},"No files in here":{msgid:"No files in here",msgstr:["ファイルがありません"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["フィルタに一致するファイルは見つかりませんでした。"]},"No matching files":{msgid:"No matching files",msgstr:["一致するファイルはありません"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["すべてのエントリを選択"]},"Select entry":{msgid:"Select entry",msgstr:["エントリを選択"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} の行を選択"]},Size:{msgid:"Size",msgstr:["サイズ"]},Undo:{msgid:"Undo",msgstr:["元に戻す"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["コンテンツをアップロードするか、デバイスと同期してください!"]}}}}},{locale:"ka",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ka_GE",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)","Content-Type":"text/plain; charset=UTF-8",Language:"ka_GE","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ka_GE\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kab",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)","Content-Type":"text/plain; charset=UTF-8",Language:"kab","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kab\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Sefsex"]}}}}},{locale:"kk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)","Content-Type":"text/plain; charset=UTF-8",Language:"kk","Plural-Forms":"nplurals=2; plural=(n!=1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kk\nPlural-Forms: nplurals=2; plural=(n!=1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"km",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)","Content-Type":"text/plain; charset=UTF-8",Language:"km","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: km\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"kn",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)","Content-Type":"text/plain; charset=UTF-8",Language:"kn","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: kn\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ko",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)","Content-Type":"text/plain; charset=UTF-8",Language:"ko","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ko\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["되돌리기"]}}}}},{locale:"la",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)","Content-Type":"text/plain; charset=UTF-8",Language:"la","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: la\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lb",json:{charset:"utf-8",headers:{"Last-Translator":"VoXaN24ch, 2024","Language-Team":"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)","Content-Type":"text/plain; charset=UTF-8",Language:"lb","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nVoXaN24ch, 2024\n"},msgstr:["Last-Translator: VoXaN24ch, 2024\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lb\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} ass en ongëlteg Dossier"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ass net en erlaabten Dossiernumm"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ass net an engem Dossier Numm erlaabt']},"All files":{msgid:"All files",msgstr:["All Dateien"]},Choose:{msgid:"Choose",msgstr:["Wielt"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wielt {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wielt %n Fichieren","Wielt %n Fichier"]},Copy:{msgid:"Copy",msgstr:["Kopie"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopie op {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Konnt den neien Dossier net erstellen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Konnt d'Dateienastellungen net lueden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Konnt d'Dateien net lueden"]},"Create directory":{msgid:"Create directory",msgstr:["Erstellt Verzeechnes"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell Vue selector"]},Favorites:{msgid:"Favorites",msgstr:["Favoritten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter Datei Lëscht"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Dossier Numm kann net eidel sinn"]},Home:{msgid:"Home",msgstr:["Wëllkomm"]},Modified:{msgid:"Modified",msgstr:["Geännert"]},Move:{msgid:"Move",msgstr:["Plënne"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Plënneren {target}"]},Name:{msgid:"Name",msgstr:["Numm"]},New:{msgid:"New",msgstr:["Nei"]},"New folder":{msgid:"New folder",msgstr:["Neien dossier"]},"New folder name":{msgid:"New folder name",msgstr:["Neien dossier numm"]},"No files in here":{msgid:"No files in here",msgstr:["Kee fichier hei"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Kee fichier deen äre filter passt gouf fonnt"]},"No matching files":{msgid:"No matching files",msgstr:["Keng passende dateien"]},Recent:{msgid:"Recent",msgstr:["Rezent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wielt all entréen"]},"Select entry":{msgid:"Select entry",msgstr:["Wielt entrée"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wielt d'zeil fir {nodename}"]},Size:{msgid:"Size",msgstr:["Gréisst"]},Undo:{msgid:"Undo",msgstr:["Undoen"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Luet en inhalt erop oder synchroniséiert mat ären apparater"]}}}}},{locale:"lo",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)","Content-Type":"text/plain; charset=UTF-8",Language:"lo","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lo\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"lt_LT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)","Content-Type":"text/plain; charset=UTF-8",Language:"lt_LT","Plural-Forms":"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lt_LT\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Atšaukti"]}}}}},{locale:"lv",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)","Content-Type":"text/plain; charset=UTF-8",Language:"lv","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: lv\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"mk",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)","Content-Type":"text/plain; charset=UTF-8",Language:"mk","Plural-Forms":"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mk\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Врати"]}}}}},{locale:"mn",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)","Content-Type":"text/plain; charset=UTF-8",Language:"mn","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mn\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Буцаах"]}}}}},{locale:"mr",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)","Content-Type":"text/plain; charset=UTF-8",Language:"mr","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: mr\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["पूर्ववत करा"]}}}}},{locale:"ms_MY",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)","Content-Type":"text/plain; charset=UTF-8",Language:"ms_MY","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ms_MY\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"my",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)","Content-Type":"text/plain; charset=UTF-8",Language:"my","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: my\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["နဂိုအတိုင်းပြန်ထားရန်"]}}}}},{locale:"nb_NO",json:{charset:"utf-8",headers:{"Last-Translator":"armandg <geirawsm@pm.me>, 2024","Language-Team":"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nb_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nD PE, 2023\nSyvert Fossdal, 2024\narmandg <geirawsm@pm.me>, 2024\n"},msgstr:["Last-Translator: armandg <geirawsm@pm.me>, 2024\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nb_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" er et ugyldig mappenavn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" er ikke et tillatt mappenavn.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" er ikke tillatt inne i et mappenavn.']},"All files":{msgid:"All files",msgstr:["Alle filer"]},Choose:{msgid:"Choose",msgstr:["Velg"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Velg {fil}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Velg %n fil","Velg %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopier"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopier til {destinasjon}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunne ikke opprette den nye mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunne ikke laste filinnstillinger"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunne ikke laste filvisninger"]},"Create directory":{msgid:"Create directory",msgstr:["Opprett mappe"]},"Current view selector":{msgid:"Current view selector",msgstr:["Nåværende visningsvelger"]},Favorites:{msgid:"Favorites",msgstr:["Favoritter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer og mapper du markerer som favoritter vil vises her."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer og mapper du nylig har endret, vil vises her."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrer filliste"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappenavn kan ikke være tomt."]},Home:{msgid:"Home",msgstr:["Hjem"]},Modified:{msgid:"Modified",msgstr:["Modifisert"]},Move:{msgid:"Move",msgstr:["Flytt"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytt til {destinasjon}"]},Name:{msgid:"Name",msgstr:["Navn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mappe"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappenavn"]},"No files in here":{msgid:"No files in here",msgstr:["Ingen filer her"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ingen filer funnet med ditt filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ingen treffende filer"]},Recent:{msgid:"Recent",msgstr:["Nylig"]},"Select all entries":{msgid:"Select all entries",msgstr:["Velg alle oppføringer"]},"Select entry":{msgid:"Select entry",msgstr:["Velg oppføring"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Velg raden for {nodenavn}"]},Size:{msgid:"Size",msgstr:["Størrelse"]},Undo:{msgid:"Undo",msgstr:["Angre"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Last opp innhold eller synkroniser med enhetene dine!"]}}}}},{locale:"ne",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)","Content-Type":"text/plain; charset=UTF-8",Language:"ne","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ne\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"nl",json:{charset:"utf-8",headers:{"Last-Translator":"Casper <casper@vrije-mens.org>, 2024","Language-Team":"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)","Content-Type":"text/plain; charset=UTF-8",Language:"nl","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJoost <joho500@hotmail.com>, 2023\nJeroen Gui, 2023\nCasper <casper@vrije-mens.org>, 2024\n"},msgstr:["Last-Translator: Casper <casper@vrije-mens.org>, 2024\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nl\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" is een ongeldige mapnaam.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" is geen toegestane mapnaam']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" is niet toegestaan binnen een bestandsnaam']},"All files":{msgid:"All files",msgstr:["Alle bestanden"]},Choose:{msgid:"Choose",msgstr:["Kies"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Kies {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Kies %n bestand","Kies %n bestanden"]},Copy:{msgid:"Copy",msgstr:["Kopieer"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopieer naar {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kon de nieuwe map niet maken"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kon de bestandsinstellingen niet laden"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kon de bestandsweergaves niet laden"]},"Create directory":{msgid:"Create directory",msgstr:["Maak map"]},"Current view selector":{msgid:"Current view selector",msgstr:["Huidige weergave keuze"]},Favorites:{msgid:"Favorites",msgstr:["Favorieten"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Bestanden en mappen die je favoriet maakt, worden hier getoond."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter bestandslijst"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mapnaam mag niet leeg zijn."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Gewijzigd"]},Move:{msgid:"Move",msgstr:["Verplaatsen"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Verplaats naar {target}"]},Name:{msgid:"Name",msgstr:["Naam"]},New:{msgid:"New",msgstr:["Nieuw"]},"New folder":{msgid:"New folder",msgstr:["Nieuwe map"]},"New folder name":{msgid:"New folder name",msgstr:["Nieuwe mapnaam"]},"No files in here":{msgid:"No files in here",msgstr:["Geen bestanden hier"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Geen bestanden gevonden die voldoen aan je filter."]},"No matching files":{msgid:"No matching files",msgstr:["Geen gevonden bestanden"]},Recent:{msgid:"Recent",msgstr:["Recent"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecteer alle invoer"]},"Select entry":{msgid:"Select entry",msgstr:["Selecteer invoer"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecteer de rij voor {nodename}"]},Size:{msgid:"Size",msgstr:["Grootte"]},Undo:{msgid:"Undo",msgstr:["Ongedaan maken"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Upload inhoud of synchroniseer met je apparaten!"]}}}}},{locale:"nn_NO",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)","Content-Type":"text/plain; charset=UTF-8",Language:"nn_NO","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: nn_NO\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"oc",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)","Content-Type":"text/plain; charset=UTF-8",Language:"oc","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: oc\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anullar"]}}}}},{locale:"pl",json:{charset:"utf-8",headers:{"Last-Translator":"Piotr Strębski <strebski@gmail.com>, 2024","Language-Team":"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)","Content-Type":"text/plain; charset=UTF-8",Language:"pl","Plural-Forms":"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nJUJER wtf, 2023\nM H <haincu@o2.pl>, 2023\nValdnet, 2024\nPiotr Strębski <strebski@gmail.com>, 2024\n"},msgstr:["Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pl\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" jest nieprawidłową nazwą folderu']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie jest dozwoloną nazwą folderu']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['Znak "/" nie jest dozwolony w nazwie folderu']},"All files":{msgid:"All files",msgstr:["Wszystkie pliki"]},Choose:{msgid:"Choose",msgstr:["Wybierz"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Wybierz {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Wybierz %n plik","Wybierz %n pliki","Wybierz %n plików","Wybierz %n plików"]},Copy:{msgid:"Copy",msgstr:["Kopiuj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Skopiuj do {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nie można utworzyć nowego folderu"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nie można wczytać ustawień plików"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nie można wczytać widoków plików"]},"Create directory":{msgid:"Create directory",msgstr:["Utwórz katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Bieżący selektor widoku"]},Favorites:{msgid:"Favorites",msgstr:["Ulubione"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj"]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtruj listę plików"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Nazwa folderu nie może być pusta"]},Home:{msgid:"Home",msgstr:["Strona główna"]},Modified:{msgid:"Modified",msgstr:["Zmodyfikowano"]},Move:{msgid:"Move",msgstr:["Przenieś"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Przejdź do {target}"]},Name:{msgid:"Name",msgstr:["Nazwa"]},New:{msgid:"New",msgstr:["Nowy"]},"New folder":{msgid:"New folder",msgstr:["Nowy folder"]},"New folder name":{msgid:"New folder name",msgstr:["Nowa nazwa folderu"]},"No files in here":{msgid:"No files in here",msgstr:["Brak plików"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nie znaleziono plików spełniających warunki filtru"]},"No matching files":{msgid:"No matching files",msgstr:["Brak pasujących plików"]},Recent:{msgid:"Recent",msgstr:["Ostatni"]},"Select all entries":{msgid:"Select all entries",msgstr:["Wybierz wszystkie wpisy"]},"Select entry":{msgid:"Select entry",msgstr:["Wybierz wpis"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Wybierz wiersz dla {nodename}"]},Size:{msgid:"Size",msgstr:["Rozmiar"]},Undo:{msgid:"Undo",msgstr:["Cofnij"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!"]}}}}},{locale:"ps",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)","Content-Type":"text/plain; charset=UTF-8",Language:"ps","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ps\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"pt_BR",json:{charset:"utf-8",headers:{"Last-Translator":"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024","Language-Team":"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_BR","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nFlávio Veras <flaviove@gmail.com>, 2023\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\n"},msgstr:["Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_BR\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" é um nome de pasta inválido.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" não é um nome de pasta permitido']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" não é permitido dentro de um nome de pasta.']},"All files":{msgid:"All files",msgstr:["Todos os arquivos"]},Choose:{msgid:"Choose",msgstr:["Escolher"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Escolher arquivo}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Escolher %n arquivo","Escolher %n arquivos","Escolher %n arquivos"]},Copy:{msgid:"Copy",msgstr:["Copiar"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiar para {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Não foi possível criar a nova pasta"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Não foi possível carregar configurações de arquivos"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Não foi possível carregar exibições de arquivos"]},"Create directory":{msgid:"Create directory",msgstr:["Criar diretório"]},"Current view selector":{msgid:"Current view selector",msgstr:["Seletor de visualização atual"]},Favorites:{msgid:"Favorites",msgstr:["Favoritos"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Os arquivos e pastas marcados como favoritos aparecerão aqui."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Arquivos e pastas que você modificou recentemente aparecerão aqui."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrar lista de arquivos"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["O nome da pasta não pode ficar vazio."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Modificado"]},Move:{msgid:"Move",msgstr:["Mover"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mover para {target}"]},Name:{msgid:"Name",msgstr:["Nome"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Nova pasta"]},"New folder name":{msgid:"New folder name",msgstr:["Novo nome de pasta"]},"No files in here":{msgid:"No files in here",msgstr:["Nenhum arquivo aqui"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenhum arquivo correspondente ao seu filtro foi encontrado."]},"No matching files":{msgid:"No matching files",msgstr:["Nenhum arquivo correspondente"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selecione todas as entradas"]},"Select entry":{msgid:"Select entry",msgstr:["Selecione a entrada"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selecione a linha para {nodename}"]},Size:{msgid:"Size",msgstr:["Tamanho"]},Undo:{msgid:"Undo",msgstr:["Desfazer"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Carregue algum conteúdo ou sincronize com seus dispositivos!"]}}}}},{locale:"pt_PT",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)","Content-Type":"text/plain; charset=UTF-8",Language:"pt_PT","Plural-Forms":"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: pt_PT\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["Anular"]}}}}},{locale:"ro",json:{charset:"utf-8",headers:{"Last-Translator":"Daniel MD <dmihaidumitru@gmail.com>, 2023","Language-Team":"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)","Content-Type":"text/plain; charset=UTF-8",Language:"ro","Plural-Forms":"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nDaniel MD <dmihaidumitru@gmail.com>, 2023\n"},msgstr:["Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ro\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" este un nume de director invalid.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nu este un nume de director permis']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nu este permis în numele unui director.']},"All files":{msgid:"All files",msgstr:["Toate fișierele"]},Choose:{msgid:"Choose",msgstr:["Alege"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Alege {file}"]},Copy:{msgid:"Copy",msgstr:["Copiază"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Copiază în {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nu s-a putut crea noul director"]},"Create directory":{msgid:"Create directory",msgstr:["Creează director"]},"Current view selector":{msgid:"Current view selector",msgstr:["Selectorul curent al vizualizării"]},Favorites:{msgid:"Favorites",msgstr:["Favorite"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Fișiere și directoare pe care le marcați ca favorite vor apărea aici."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Fișiere și directoare pe care le-ați modificat recent vor apărea aici."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrează lista de fișiere"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Numele de director nu poate fi necompletat."]},Home:{msgid:"Home",msgstr:["Acasă"]},Modified:{msgid:"Modified",msgstr:["Modificat"]},Move:{msgid:"Move",msgstr:["Mută"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Mută către {target}"]},Name:{msgid:"Name",msgstr:["Nume"]},New:{msgid:"New",msgstr:["Nou"]},"New folder":{msgid:"New folder",msgstr:["Director nou"]},"New folder name":{msgid:"New folder name",msgstr:["Numele noului director"]},"No files in here":{msgid:"No files in here",msgstr:["Nu există fișiere"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nu există fișiere potrivite pentru filtrul selectat"]},"No matching files":{msgid:"No matching files",msgstr:["Nu există fișiere potrivite"]},Recent:{msgid:"Recent",msgstr:["Recente"]},"Select all entries":{msgid:"Select all entries",msgstr:["Selectează toate înregistrările"]},"Select entry":{msgid:"Select entry",msgstr:["Selectează înregistrarea"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Selectează rândul pentru {nodename}"]},Size:{msgid:"Size",msgstr:["Mărime"]},Undo:{msgid:"Undo",msgstr:["Anulează"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!"]}}}}},{locale:"ru",json:{charset:"utf-8",headers:{"Last-Translator":"Kitsune R, 2024","Language-Team":"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)","Content-Type":"text/plain; charset=UTF-8",Language:"ru","Plural-Forms":"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMax Smith <sevinfolds@gmail.com>, 2023\nashed <craysy@gmail.com>, 2023\nAlex <kekcuha@gmail.com>, 2024\nR4SAS, 2024\nВлад, 2024\nKitsune R, 2024\n"},msgstr:["Last-Translator: Kitsune R, 2024\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ru\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["«{name}» — недопустимое имя папки."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["«{name}» не является разрешенным именем папки"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["Символ «/» не допускается внутри имени папки."]},"All files":{msgid:"All files",msgstr:["Все файлы"]},Choose:{msgid:"Choose",msgstr:["Выбрать"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Выбрать {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Выбрать %n файл","Выбрать %n файла","Выбрать %n файлов","Выбрать %n файлов"]},Copy:{msgid:"Copy",msgstr:["Копировать"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копировать в «{target}»"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не удалось создать новую папку"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не удалось загрузить настройки файлов"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не удалось загрузить файлы просмотров"]},"Create directory":{msgid:"Create directory",msgstr:["Создать папку"]},"Current view selector":{msgid:"Current view selector",msgstr:["Переключатель текущего вида"]},Favorites:{msgid:"Favorites",msgstr:["Избранное"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Здесь появятся файлы и папки, которые вы пометили как избранные."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Здесь будут отображаться файлы и папки, которые вы недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фильтровать список файлов"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Имя папки не может быть пустым."]},Home:{msgid:"Home",msgstr:["Home"]},Modified:{msgid:"Modified",msgstr:["Изменен"]},Move:{msgid:"Move",msgstr:["Переместить"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перейти к {target}"]},Name:{msgid:"Name",msgstr:["Имя"]},New:{msgid:"New",msgstr:["Новый"]},"New folder":{msgid:"New folder",msgstr:["Новая папка"]},"New folder name":{msgid:"New folder name",msgstr:["Имя новой папки"]},"No files in here":{msgid:"No files in here",msgstr:["Здесь нет файлов"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Файлы, соответствующие вашему фильтру, не найдены."]},"No matching files":{msgid:"No matching files",msgstr:["Нет подходящих файлов"]},Recent:{msgid:"Recent",msgstr:["Недавний"]},"Select all entries":{msgid:"Select all entries",msgstr:["Выбрать все записи"]},"Select entry":{msgid:"Select entry",msgstr:["Выберите запись"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Выберите строку для {nodename}"]},Size:{msgid:"Size",msgstr:["Размер"]},Undo:{msgid:"Undo",msgstr:["Отменить"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Загрузите контент или синхронизируйте его со своими устройствами!"]}}}}},{locale:"sc",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)","Content-Type":"text/plain; charset=UTF-8",Language:"sc","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sc\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"si",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)","Content-Type":"text/plain; charset=UTF-8",Language:"si","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: si\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["පෙරසේ"]}}}}},{locale:"sk_SK",json:{charset:"utf-8",headers:{"Last-Translator":"Tomas Rusnak <linkermail@gmail.com>, 2024","Language-Team":"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)","Content-Type":"text/plain; charset=UTF-8",Language:"sk_SK","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nStanislav Prekop <prekop3@gmail.com>, 2024\nTomas Rusnak <linkermail@gmail.com>, 2024\n"},msgstr:["Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sk_SK\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" je neplatný názov pričinka.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" nie je povolený názov priečinka.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" nie je povolené v názve priečinka.']},"All files":{msgid:"All files",msgstr:["Všetky súbory"]},Choose:{msgid:"Choose",msgstr:["Vybrať"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Vybrať {súbor}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Vybraný %n súbor","Vybrané %n súbory","Vybraných %n súborov","Vybraných %n súborov"]},Copy:{msgid:"Copy",msgstr:["Kopírovať"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopírovať do {umiestnenia}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nepodarilo sa vytvoriť nový priečinok"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Nepodarilo sa načítať nastavenia súborov"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nepodarilo sa načítať pohľady súborov"]},"Create directory":{msgid:"Create directory",msgstr:["Vytvoriť adresár"]},"Current view selector":{msgid:"Current view selector",msgstr:["Výber aktuálneho zobrazenia"]},Favorites:{msgid:"Favorites",msgstr:["Obľúbené"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrovať zoznam súborov"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Názov priečinka nemôže byť prázdny."]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Upravené"]},Move:{msgid:"Move",msgstr:["Prejsť"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Prejsť na {umiestnenie}"]},Name:{msgid:"Name",msgstr:["Názov"]},New:{msgid:"New",msgstr:["Pridať"]},"New folder":{msgid:"New folder",msgstr:["Pridať priečinok"]},"New folder name":{msgid:"New folder name",msgstr:["Pridať názov priečinka"]},"No files in here":{msgid:"No files in here",msgstr:["Nie sú tu žiadne súbory"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nenašli sa žiadne súbory zodpovedajúce vášmu filtru."]},"No matching files":{msgid:"No matching files",msgstr:["Žiadne zodpovedajúce súbory"]},Recent:{msgid:"Recent",msgstr:["Nedávne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Vybrať všetky položky"]},"Select entry":{msgid:"Select entry",msgstr:["Vybrať položku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Vyberte riadok pre {názov uzla}"]},Size:{msgid:"Size",msgstr:["Veľkosť"]},Undo:{msgid:"Undo",msgstr:["Späť"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!"]}}}}},{locale:"sl",json:{charset:"utf-8",headers:{"Last-Translator":"Simon Bogina, 2024","Language-Team":"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)","Content-Type":"text/plain; charset=UTF-8",Language:"sl","Plural-Forms":"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nSimon Bogina, 2024\n"},msgstr:["Last-Translator: Simon Bogina, 2024\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sl\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["{name} je neveljavno ime mape."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["{name} ni dovoljeno ime mape"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" ni dovoljen v imenu mape.']},"All files":{msgid:"All files",msgstr:["Vse datoteke"]},Choose:{msgid:"Choose",msgstr:["Izberi"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izberi {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izberi %n datoteko","Izberi %n datoteki","Izberi %n datotek","Izberi %n datotek"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj v {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Nisem mogel ustvariti nove mape"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["NIsem mogel naložiti nastavitev datotek"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Nisem mogel naložiti pogledov datotek"]},"Create directory":{msgid:"Create directory",msgstr:["Ustvari mapo"]},"Current view selector":{msgid:"Current view selector",msgstr:["Izbirnik trenutnega pogleda"]},Favorites:{msgid:"Favorites",msgstr:["Priljubljene"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtriraj seznam datotek"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ime mape ne more biti prazno"]},Home:{msgid:"Home",msgstr:["Domov"]},Modified:{msgid:"Modified",msgstr:["Spremenjeno"]},Move:{msgid:"Move",msgstr:["Premakni"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premakni v {target}"]},Name:{msgid:"Name",msgstr:["Ime"]},New:{msgid:"New",msgstr:["Nov"]},"New folder":{msgid:"New folder",msgstr:["Nova mapa"]},"New folder name":{msgid:"New folder name",msgstr:["Novo ime mape"]},"No files in here":{msgid:"No files in here",msgstr:["Tukaj ni datotek"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Ni bilo najdenih ujemajočih datotek glede na vaš filter."]},"No matching files":{msgid:"No matching files",msgstr:["Ni ujemajočih datotek"]},Recent:{msgid:"Recent",msgstr:["Nedavne"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izberi vse vnose"]},"Select entry":{msgid:"Select entry",msgstr:["Izberi vnos"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izberi vrstico za {nodename}"]},Size:{msgid:"Size",msgstr:["Velikost"]},Undo:{msgid:"Undo",msgstr:["Razveljavi"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!"]}}}}},{locale:"sq",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)","Content-Type":"text/plain; charset=UTF-8",Language:"sq","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sq\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"sr",json:{charset:"utf-8",headers:{"Last-Translator":"Иван Пешић, 2024","Language-Team":"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nИван Пешић, 2024\n"},msgstr:["Last-Translator: Иван Пешић, 2024\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” није исправно име фолдера."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” није дозвољено име за фолдер."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” није дозвољено унутар имена фолдера."]},"All files":{msgid:"All files",msgstr:["Сви фајлови"]},Choose:{msgid:"Choose",msgstr:["Изаберите"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Изаберите {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Изаберите %n фајл","Изаберите %n фајла","Изаберите %n фајлова"]},Copy:{msgid:"Copy",msgstr:["Копирај"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копирај у {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Није могао да се креира нови фолдер"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не могу да се учитају подешавања фајлова"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не могу да се учитају прикази фајлова"]},"Create directory":{msgid:"Create directory",msgstr:["Креирај директоријум"]},"Current view selector":{msgid:"Current view selector",msgstr:["Бирач тренутног приказа"]},Favorites:{msgid:"Favorites",msgstr:["Омиљено"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери које сте означили као омиљене."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Овде ће се појавити фајлови и фолдери који се се недавно изменили."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фитрирање листе фајлова"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Име фолдера не може бити празно."]},Home:{msgid:"Home",msgstr:["Почетак"]},Modified:{msgid:"Modified",msgstr:["Измењено"]},Move:{msgid:"Move",msgstr:["Премести"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Премести у {target}"]},Name:{msgid:"Name",msgstr:["Име"]},New:{msgid:"New",msgstr:["Ново"]},"New folder":{msgid:"New folder",msgstr:["Нови фолдер"]},"New folder name":{msgid:"New folder name",msgstr:["Име новог фолдера"]},"No files in here":{msgid:"No files in here",msgstr:["Овде нема фајлова"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Није пронађен ниједан фајл који задовољава ваш филтер."]},"No matching files":{msgid:"No matching files",msgstr:["Нема таквих фајлова"]},Recent:{msgid:"Recent",msgstr:["Скорашње"]},"Select all entries":{msgid:"Select all entries",msgstr:["Изаберите све ставке"]},"Select entry":{msgid:"Select entry",msgstr:["Изаберите ставку"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Изаберите ред за {nodename}"]},Size:{msgid:"Size",msgstr:["Величина"]},Undo:{msgid:"Undo",msgstr:["Поништи"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Отпремите нешто или синхронизујте са својим уређајима!"]}}}}},{locale:"sr@latin",json:{charset:"utf-8",headers:{"Last-Translator":"Bogdan Vuković, 2024","Language-Team":"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)","Content-Type":"text/plain; charset=UTF-8",Language:"sr@latin","Plural-Forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nBogdan Vuković, 2024\n"},msgstr:["Last-Translator: Bogdan Vuković, 2024\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sr@latin\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["„{name}” je neispravan naziv foldera."]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["„{name}” je nedozvoljen naziv foldera."]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["„/” se ne može koristiti unutar naziva foldera."]},"All files":{msgid:"All files",msgstr:["Svi fajlovi"]},Choose:{msgid:"Choose",msgstr:["Izaberite"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Izaberite {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Izaberite %n fajl","Izaberite %n fajla","Izaberite %n fajlova"]},Copy:{msgid:"Copy",msgstr:["Kopiraj"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiraj u {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Neuspešno kreiranje novog foldera"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Neuspešno učitavanje podešavanja fajlova"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Neuspešno učitavanje prikaza fajlova"]},"Create directory":{msgid:"Create directory",msgstr:["Kreiraj direktorijum"]},"Current view selector":{msgid:"Current view selector",msgstr:["Birač trenutnog prikaza"]},Favorites:{msgid:"Favorites",msgstr:["Omiljeno"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Lista omiljenih fajlova i foldera."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Lista fajlova i foldera sa skorašnjim izmenama."]},"Filter file list":{msgid:"Filter file list",msgstr:["Fitriranje liste fajlova"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Naziv foldera ne može biti prazan."]},Home:{msgid:"Home",msgstr:["Početak"]},Modified:{msgid:"Modified",msgstr:["Izmenjeno"]},Move:{msgid:"Move",msgstr:["Premesti"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Premesti u {target}"]},Name:{msgid:"Name",msgstr:["Naziv"]},New:{msgid:"New",msgstr:["Novo"]},"New folder":{msgid:"New folder",msgstr:["Novi folder"]},"New folder name":{msgid:"New folder name",msgstr:["Naziv novog foldera"]},"No files in here":{msgid:"No files in here",msgstr:["Bez fajlova"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Nema fajlova koji zadovoljavaju uslove filtera."]},"No matching files":{msgid:"No matching files",msgstr:["Nema takvih fajlova"]},Recent:{msgid:"Recent",msgstr:["Skorašnje"]},"Select all entries":{msgid:"Select all entries",msgstr:["Izaberite sve stavke"]},"Select entry":{msgid:"Select entry",msgstr:["Izaberite stavku"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Izaberite red za {nodename}"]},Size:{msgid:"Size",msgstr:["Veličina"]},Undo:{msgid:"Undo",msgstr:["Vrati"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Otpremite sadržaj ili sinhronizujte sa svojim uređajima!"]}}}}},{locale:"sv",json:{charset:"utf-8",headers:{"Last-Translator":"Magnus Höglund, 2024","Language-Team":"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)","Content-Type":"text/plain; charset=UTF-8",Language:"sv","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nMagnus Höglund, 2024\n"},msgstr:["Last-Translator: Magnus Höglund, 2024\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sv\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" är ett ogiltigt mappnamn.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" är inte ett tillåtet mappnamn']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" är inte tillåtet i ett mappnamn.']},"All files":{msgid:"All files",msgstr:["Alla filer"]},Choose:{msgid:"Choose",msgstr:["Välj"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Välj {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Välj %n fil","Välj %n filer"]},Copy:{msgid:"Copy",msgstr:["Kopiera"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Kopiera till {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Kunde inte skapa den nya mappen"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Kunde inte ladda filinställningar"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Kunde inte ladda läsa in filvyer"]},"Create directory":{msgid:"Create directory",msgstr:["Skapa katalog"]},"Current view selector":{msgid:"Current view selector",msgstr:["Aktuell vyväljare"]},Favorites:{msgid:"Favorites",msgstr:["Favoriter"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Filer och mappar som du markerar som favorit kommer att visas här."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Filer och mappar som du nyligen ändrat kommer att visas här."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filtrera fillistan"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Mappnamnet får inte vara tomt."]},Home:{msgid:"Home",msgstr:["Hem"]},Modified:{msgid:"Modified",msgstr:["Ändrad"]},Move:{msgid:"Move",msgstr:["Flytta"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Flytta till {target}"]},Name:{msgid:"Name",msgstr:["Namn"]},New:{msgid:"New",msgstr:["Ny"]},"New folder":{msgid:"New folder",msgstr:["Ny mapp"]},"New folder name":{msgid:"New folder name",msgstr:["Nytt mappnamn"]},"No files in here":{msgid:"No files in here",msgstr:["Inga filer här"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Inga filer som matchar ditt filter hittades."]},"No matching files":{msgid:"No matching files",msgstr:["Inga matchande filer"]},Recent:{msgid:"Recent",msgstr:["Nyligen"]},"Select all entries":{msgid:"Select all entries",msgstr:["Välj alla poster"]},"Select entry":{msgid:"Select entry",msgstr:["Välj post"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Välj raden för {nodename}"]},Size:{msgid:"Size",msgstr:["Storlek"]},Undo:{msgid:"Undo",msgstr:["Ångra"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Ladda upp lite innehåll eller synkronisera med dina enheter!"]}}}}},{locale:"sw",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)","Content-Type":"text/plain; charset=UTF-8",Language:"sw","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: sw\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"ta",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)","Content-Type":"text/plain; charset=UTF-8",Language:"ta","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ta\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["செயல்தவிர்"]}}}}},{locale:"th_TH",json:{charset:"utf-8",headers:{"Last-Translator":"Joas Schilling, 2023","Language-Team":"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)","Content-Type":"text/plain; charset=UTF-8",Language:"th_TH","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJoas Schilling, 2023\n"},msgstr:["Last-Translator: Joas Schilling, 2023\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: th_TH\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:["เลิกทำ"]}}}}},{locale:"tk",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)","Content-Type":"text/plain; charset=UTF-8",Language:"tk","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tk\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"tr",json:{charset:"utf-8",headers:{"Last-Translator":"Kaya Zeren <kayazeren@gmail.com>, 2024","Language-Team":"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)","Content-Type":"text/plain; charset=UTF-8",Language:"tr","Plural-Forms":"nplurals=2; plural=(n > 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nKaya Zeren <kayazeren@gmail.com>, 2024\n"},msgstr:["Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: tr\nPlural-Forms: nplurals=2; plural=(n > 1);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" geçersiz bir klasör adı.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" izin verilen bir klasör adı değil']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" karakteri klasör adında kullanılamaz.']},"All files":{msgid:"All files",msgstr:["Tüm dosyalar"]},Choose:{msgid:"Choose",msgstr:["Seçin"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["{file} seçin"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["%n dosya seçin","%n dosya seçin"]},Copy:{msgid:"Copy",msgstr:["Kopyala"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["{target} üzerine kopyala"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Yeni klasör oluşturulamadı"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Dosyalar uygulamasının ayarları yüklenemedi"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Dosyalar uygulamasının görünümleri yüklenemedi"]},"Create directory":{msgid:"Create directory",msgstr:["Klasör oluştur"]},"Current view selector":{msgid:"Current view selector",msgstr:["Geçerli görünüm seçici"]},Favorites:{msgid:"Favorites",msgstr:["Sık kullanılanlar"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir."]},"Filter file list":{msgid:"Filter file list",msgstr:["Dosya listesini süz"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Klasör adı boş olamaz."]},Home:{msgid:"Home",msgstr:["Giriş"]},Modified:{msgid:"Modified",msgstr:["Değiştirilme"]},Move:{msgid:"Move",msgstr:["Taşı"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["{target} üzerine taşı"]},Name:{msgid:"Name",msgstr:["Ad"]},New:{msgid:"New",msgstr:["Yeni"]},"New folder":{msgid:"New folder",msgstr:["Yeni klasör"]},"New folder name":{msgid:"New folder name",msgstr:["Yeni klasör adı"]},"No files in here":{msgid:"No files in here",msgstr:["Burada herhangi bir dosya yok"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Süzgece uyan bir dosya bulunamadı."]},"No matching files":{msgid:"No matching files",msgstr:["Eşleşen bir dosya yok"]},Recent:{msgid:"Recent",msgstr:["Son kullanılanlar"]},"Select all entries":{msgid:"Select all entries",msgstr:["Tüm kayıtları seç"]},"Select entry":{msgid:"Select entry",msgstr:["Kaydı seç"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["{nodename} satırını seçin"]},Size:{msgid:"Size",msgstr:["Boyut"]},Undo:{msgid:"Undo",msgstr:["Geri al"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!"]}}}}},{locale:"ug",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)","Content-Type":"text/plain; charset=UTF-8",Language:"ug","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ug\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uk",json:{charset:"utf-8",headers:{"Last-Translator":"O St <oleksiy.stasevych@gmail.com>, 2024","Language-Team":"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)","Content-Type":"text/plain; charset=UTF-8",Language:"uk","Plural-Forms":"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nO St <oleksiy.stasevych@gmail.com>, 2024\n"},msgstr:["Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uk\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" є недійсною назвою для каталогу.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"{name}" не є дозволеною назвою для каталогу.']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/" не дозволено у назві каталогу.']},"All files":{msgid:"All files",msgstr:["Всі файли"]},Choose:{msgid:"Choose",msgstr:["Вибрати"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Вибрати {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Вибрати %n файл","Вибрати %n файли","Вибрати %n файлів","Вибрати %n файлів"]},Copy:{msgid:"Copy",msgstr:["Копіювати"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Копіювати до {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Не вдалося створити новий каталог"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Не вдалося завантажити налаштування файлів"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Не вдалося завантажити подання файлів"]},"Create directory":{msgid:"Create directory",msgstr:["Створити каталог"]},"Current view selector":{msgid:"Current view selector",msgstr:["Вибір подання"]},Favorites:{msgid:"Favorites",msgstr:["Із зірочкою"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які ви позначите зірочкою."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Тут показуватимуться файли та каталоги, які було нещодавно змінено."]},"Filter file list":{msgid:"Filter file list",msgstr:["Фільтрувати список файлів"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Ім'я каталогу не може бути порожнім."]},Home:{msgid:"Home",msgstr:["Домівка"]},Modified:{msgid:"Modified",msgstr:["Змінено"]},Move:{msgid:"Move",msgstr:["Перемістити"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Перемістити до {target}"]},Name:{msgid:"Name",msgstr:["Ім'я"]},New:{msgid:"New",msgstr:["Новий"]},"New folder":{msgid:"New folder",msgstr:["Новий каталог"]},"New folder name":{msgid:"New folder name",msgstr:["Ім'я нового каталогу"]},"No files in here":{msgid:"No files in here",msgstr:["Тут відсутні файли"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Відсутні збіги за фільтром."]},"No matching files":{msgid:"No matching files",msgstr:["Відсутні збіги файлів."]},Recent:{msgid:"Recent",msgstr:["Останні"]},"Select all entries":{msgid:"Select all entries",msgstr:["Вибрати всі записи"]},"Select entry":{msgid:"Select entry",msgstr:["Вибрати запис"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Вибрати рядок для {nodename}"]},Size:{msgid:"Size",msgstr:["Розмір"]},Undo:{msgid:"Undo",msgstr:["Повернути"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Завантажте вміст або синхронізуйте з вашим пристроєм!"]}}}}},{locale:"ur_PK",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)","Content-Type":"text/plain; charset=UTF-8",Language:"ur_PK","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: ur_PK\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"uz",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)","Content-Type":"text/plain; charset=UTF-8",Language:"uz","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: uz\nPlural-Forms: nplurals=1; plural=0;\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}},{locale:"vi",json:{charset:"utf-8",headers:{"Last-Translator":"Trần Đình Tuyển, 2024","Language-Team":"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)","Content-Type":"text/plain; charset=UTF-8",Language:"vi","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nTran Duc, 2024\nTrần Đình Tuyển, 2024\n"},msgstr:["Last-Translator: Trần Đình Tuyển, 2024\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: vi\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:['"{name}" là tên thư mục không hợp lệ.']},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:['"1{name}"không phải là tên thư mục được cho phép']},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['"/"không được phép đặt trong tên thư mục.']},"All files":{msgid:"All files",msgstr:["Tất cả tệp"]},Choose:{msgid:"Choose",msgstr:["Chọn"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["Chọn {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["Chọn %n tệp"]},Copy:{msgid:"Copy",msgstr:["Sao chép"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["Sao chép đến {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["Không thể tạo thư mục mới"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["Không thể tải tập tin cài đặt"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["Không thể tải xuống tệp xem"]},"Create directory":{msgid:"Create directory",msgstr:["Tạo thư mục"]},"Current view selector":{msgid:"Current view selector",msgstr:["Hiện tại chế độ xem của bộ chọn"]},Favorites:{msgid:"Favorites",msgstr:["Yêu cầu thích"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây."]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây."]},"Filter file list":{msgid:"Filter file list",msgstr:["Filter list file"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["Thư mục tên không được để trống."]},Home:{msgid:"Home",msgstr:["Trang chủ"]},Modified:{msgid:"Modified",msgstr:["Đã sửa đổi"]},Move:{msgid:"Move",msgstr:["Di chuyển"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["Di chuyển đến{target}"]},Name:{msgid:"Name",msgstr:["Tên"]},New:{msgid:"New",msgstr:["Mới"]},"New folder":{msgid:"New folder",msgstr:["New thư mục"]},"New folder name":{msgid:"New folder name",msgstr:["New thư mục tên"]},"No files in here":{msgid:"No files in here",msgstr:["No file at here"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["Không tìm thấy tệp nào phù hợp với bộ lọc của bạn."]},"No matching files":{msgid:"No matching files",msgstr:["No file phù hợp"]},Recent:{msgid:"Recent",msgstr:["Gần đây"]},"Select all entries":{msgid:"Select all entries",msgstr:["Choose all items"]},"Select entry":{msgid:"Select entry",msgstr:["Chọn mục nhập"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["Choose hang cho{nodename}"]},Size:{msgid:"Size",msgstr:["Kích cỡ"]},Undo:{msgid:"Undo",msgstr:["Hoàn tác"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!"]}}}}},{locale:"zh_CN",json:{charset:"utf-8",headers:{"Last-Translator":"Ruijian Deng, 2024","Language-Team":"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_CN","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nken, 2023\nEric, 2023\nPhonebook3599, 2024\nRuijian Deng, 2024\n"},msgstr:["Last-Translator: Ruijian Deng, 2024\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_CN\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["“{name}”是无效的文件夹名称。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["“{name}”不是允许的文件夹名称"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:["文件夹名称中不允许包含“/”。"]},"All files":{msgid:"All files",msgstr:["所有文件"]},Choose:{msgid:"Choose",msgstr:["选择"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["选择 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["选择 %n 个文件"]},Copy:{msgid:"Copy",msgstr:["复制"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["复制到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["无法创建新文件夹"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["无法加载文件设置"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["无法加载文件视图"]},"Create directory":{msgid:"Create directory",msgstr:["创建目录"]},"Current view selector":{msgid:"Current view selector",msgstr:["当前视图选择器"]},Favorites:{msgid:"Favorites",msgstr:["最爱"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您标记为最爱的文件与文件夹会显示在这里"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的文件与文件夹会显示在这里"]},"Filter file list":{msgid:"Filter file list",msgstr:["过滤文件列表"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["文件夹名称不能为空。"]},Home:{msgid:"Home",msgstr:["主目录"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移动"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移动至 {target}"]},Name:{msgid:"Name",msgstr:["名称"]},New:{msgid:"New",msgstr:["新建"]},"New folder":{msgid:"New folder",msgstr:["新文件夹"]},"New folder name":{msgid:"New folder name",msgstr:["新文件夹名称"]},"No files in here":{msgid:"No files in here",msgstr:["此处无文件"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您过滤条件的文件"]},"No matching files":{msgid:"No matching files",msgstr:["无符合的文件"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["选择所有条目"]},"Select entry":{msgid:"Select entry",msgstr:["选择条目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["选择 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:[" 撤消"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上传一些项目或与您的设备同步!"]}}}}},{locale:"zh_HK",json:{charset:"utf-8",headers:{"Last-Translator":"Café Tango, 2024","Language-Team":"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_HK","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\nCafé Tango, 2024\n"},msgstr:["Last-Translator: Café Tango, 2024\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_HK\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid folder name.':{msgid:'"{name}" is an invalid folder name.',msgstr:["「{name}」是無效的資料夾名稱。"]},'"{name}" is not an allowed folder name':{msgid:'"{name}" is not an allowed folder name',msgstr:["「{name}」是無效的資料夾名稱。"]},'"/" is not allowed inside a folder name.':{msgid:'"/" is not allowed inside a folder name.',msgstr:['資料夾名稱中不允許使用 "/"。']},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},"Choose %n file":{msgid:"Choose %n file",msgid_plural:"Choose %n files",msgstr:["選擇 %n 個檔案"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Could not load files settings":{msgid:"Could not load files settings",msgstr:["無法載入檔案設定"]},"Could not load files views":{msgid:"Could not load files views",msgstr:["無法載入文件視圖"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},"Folder name cannot be empty.":{msgid:"Folder name cannot be empty.",msgstr:["資料夾名稱不能為空。"]},Home:{msgid:"Home",msgstr:["首頁"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["還原"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zh_TW",json:{charset:"utf-8",headers:{"Last-Translator":"黃柏諺 <s8321414@gmail.com>, 2023","Language-Team":"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)","Content-Type":"text/plain; charset=UTF-8",Language:"zh_TW","Plural-Forms":"nplurals=1; plural=0;"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\n黃柏諺 <s8321414@gmail.com>, 2023\n"},msgstr:["Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zh_TW\nPlural-Forms: nplurals=1; plural=0;\n"]},'"{name}" is an invalid file name.':{msgid:'"{name}" is an invalid file name.',msgstr:["「{name}」是無效的檔案名稱。"]},'"{name}" is not an allowed filetype':{msgid:'"{name}" is not an allowed filetype',msgstr:["「{name}」並非允許的檔案類型"]},'"/" is not allowed inside a file name.':{msgid:'"/" is not allowed inside a file name.',msgstr:["檔案名稱中不允許使用「/」。"]},"All files":{msgid:"All files",msgstr:["所有檔案"]},Choose:{msgid:"Choose",msgstr:["選擇"]},"Choose {file}":{msgid:"Choose {file}",msgstr:["選擇 {file}"]},Copy:{msgid:"Copy",msgstr:["複製"]},"Copy to {target}":{msgid:"Copy to {target}",msgstr:["複製到 {target}"]},"Could not create the new folder":{msgid:"Could not create the new folder",msgstr:["無法建立新資料夾"]},"Create directory":{msgid:"Create directory",msgstr:["建立目錄"]},"Current view selector":{msgid:"Current view selector",msgstr:["目前檢視選取器"]},Favorites:{msgid:"Favorites",msgstr:["最愛"]},"File name cannot be empty.":{msgid:"File name cannot be empty.",msgstr:["檔案名稱不能為空。"]},"Filepicker sections":{msgid:"Filepicker sections",msgstr:["檔案挑選器選取"]},"Files and folders you mark as favorite will show up here.":{msgid:"Files and folders you mark as favorite will show up here.",msgstr:["您標記為最愛的檔案與資料夾將會顯示在此處。"]},"Files and folders you recently modified will show up here.":{msgid:"Files and folders you recently modified will show up here.",msgstr:["您最近修改的檔案與資料夾將會顯示在此處。"]},"Filter file list":{msgid:"Filter file list",msgstr:["過濾檔案清單"]},Home:{msgid:"Home",msgstr:["家"]},"Mime type {mime}":{msgid:"Mime type {mime}",msgstr:["Mime type {mime}"]},Modified:{msgid:"Modified",msgstr:["已修改"]},Move:{msgid:"Move",msgstr:["移動"]},"Move to {target}":{msgid:"Move to {target}",msgstr:["移動至 {target}"]},Name:{msgid:"Name",msgstr:["名稱"]},New:{msgid:"New",msgstr:["新"]},"New folder":{msgid:"New folder",msgstr:["新資料夾"]},"New folder name":{msgid:"New folder name",msgstr:["新資料夾名稱"]},"No files in here":{msgid:"No files in here",msgstr:["此處無檔案"]},"No files matching your filter were found.":{msgid:"No files matching your filter were found.",msgstr:["找不到符合您過濾條件的檔案。"]},"No matching files":{msgid:"No matching files",msgstr:["無符合的檔案"]},Recent:{msgid:"Recent",msgstr:["最近"]},"Select all entries":{msgid:"Select all entries",msgstr:["選取所有條目"]},"Select entry":{msgid:"Select entry",msgstr:["選取條目"]},"Select the row for {nodename}":{msgid:"Select the row for {nodename}",msgstr:["選取 {nodename} 的列"]},Size:{msgid:"Size",msgstr:["大小"]},Undo:{msgid:"Undo",msgstr:["復原"]},unknown:{msgid:"unknown",msgstr:["未知"]},"Upload some content or sync with your devices!":{msgid:"Upload some content or sync with your devices!",msgstr:["上傳一些內容或與您的裝置同步"]}}}}},{locale:"zu_ZA",json:{charset:"utf-8",headers:{"Last-Translator":"Transifex Bot <>, 2023","Language-Team":"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)","Content-Type":"text/plain; charset=UTF-8",Language:"zu_ZA","Plural-Forms":"nplurals=2; plural=(n != 1);"},translations:{"":{"":{msgid:"",comments:{translator:"\nTranslators:\nTransifex Bot <>, 2023\n"},msgstr:["Last-Translator: Transifex Bot <>, 2023\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\nContent-Type: text/plain; charset=UTF-8\nLanguage: zu_ZA\nPlural-Forms: nplurals=2; plural=(n != 1);\n"]},Undo:{msgid:"Undo",comments:{reference:"lib/toast.ts:223"},msgstr:[""]}}}}}].map((e=>i.addTranslation(e.locale,e.json)));const a=i.build(),r=(a.ngettext.bind(a),a.gettext.bind(a));var o=(e=>(e[e.OFF="off"]="OFF",e[e.POLITE="polite"]="POLITE",e[e.ASSERTIVE="assertive"]="ASSERTIVE",e))(o||{});const l=7e3;function d(e,t){var s;if(t=Object.assign({timeout:l,isHTML:!1,type:void 0,selector:void 0,onRemove:()=>{},onClick:void 0,close:!0},t),"string"==typeof e&&!t.isHTML){const t=document.createElement("div");t.innerHTML=e,e=t.innerText}let i=null!=(s=t.type)?s:"";"function"==typeof t.onClick&&(i+=" toast-with-click ");const a=e instanceof Node;let r=o.POLITE;t.ariaLive?r=t.ariaLive:"toast-error"!==t.type&&"toast-undo"!==t.type||(r=o.ASSERTIVE);const d=n({[a?"node":"text"]:e,duration:t.timeout,callback:t.onRemove,onClick:t.onClick,close:t.close,gravity:"top",selector:t.selector,position:"right",backgroundColor:"",className:"dialogs "+i,escapeMarkup:!t.isHTML,ariaLive:r});return d.showToast(),d}function m(e,t){return d(e,{...t,type:"toast-error"})}function c(e,t){return d(e,{...t,type:"toast-warning"})}function g(e,t){return d(e,{...t,type:"toast-info"})}function u(e,t,s,n,i,a,r,o){var l="function"==typeof e?e.options:e;return t&&(l.render=t,l.staticRenderFns=s,l._compiled=!0),a&&(l._scopeId="data-v-"+a),{exports:e,options:l}}},95674:(e,t,s)=>{"use strict";s.d(t,{I9:()=>i.j,Qg:()=>i.l,Ss:()=>o,cf:()=>i.k}),s(43627);var n=s(85471),i=s(85136),a=s(94219),r=s(80910);s(96763);const o=(e,t,s=(()=>{}))=>{const i=document.createElement("div");(document.querySelector(null==t?void 0:t.container)||document.body).appendChild(i);const a=new n.Ay({el:i,name:"VueDialogHelper",render:i=>i(e,{props:t,on:{close:(...e)=>{s(...e.map((e=>(0,n.ux)(e)))),a.$destroy()}}})});return a};Object.defineProperty;const l=(0,n.pM)({__name:"GenericDialog",props:{name:null,text:null,html:null,buttons:null,severity:null},setup(e){const t=e,s=()=>"".concat(t.name,": ").concat(t.text);return(0,n.sV)((()=>window.addEventListener("unload",s))),(0,n.hi)((()=>window.removeEventListener("unload",s))),{__sfc:!0,props:t,handleUnload:s,NcDialog:a.A,NcNoteCard:r.A}}});var d=function(){var e=this,t=e._self._c,s=e._self._setupProxy;return t(s.NcDialog,{attrs:{"dialog-classes":"nc-generic-dialog",buttons:e.buttons,name:e.name,message:e.text},on:{"update:open":function(t){return e.$emit("close")}}},[e.severity?t(s.NcNoteCard,{attrs:{type:e.severity}},[t("p",{domProps:{textContent:e._s(e.text)}})]):e._e(),e.html?t("div",{domProps:{innerHTML:e._s(e.html)}}):e._e()],1)},m=[];(0,i.a)(l,d,m,!1,null,null).exports},57485:(e,t,s)=>{"use strict";s.d(t,{A:()=>d});var n=s(9052);class i extends Error{constructor(e){super(e),this.name="TimeoutError"}}class a extends Error{constructor(e){super(),this.name="AbortError",this.message=e}}const r=e=>void 0===globalThis.DOMException?new a(e):new DOMException(e),o=e=>{const t=void 0===e.reason?r("This operation was aborted."):e.reason;return t instanceof Error?t:r(t)};class l{#r=[];enqueue(e,t){const s={priority:(t={priority:0,...t}).priority,run:e};if(this.size&&this.#r[this.size-1].priority>=t.priority)return void this.#r.push(s);const n=function(e,t,s){let n=0,i=e.length;for(;i>0;){const s=Math.trunc(i/2);let r=n+s;a=e[r],t.priority-a.priority<=0?(n=++r,i-=s+1):i=s}var a;return n}(this.#r,s);this.#r.splice(n,0,s)}dequeue(){const e=this.#r.shift();return e?.run}filter(e){return this.#r.filter((t=>t.priority===e.priority)).map((e=>e.run))}get size(){return this.#r.length}}class d extends n{#o;#l;#d=0;#m;#c;#g=0;#u;#p;#r;#f;#h=0;#v;#w;#y;timeout;constructor(e){if(super(),!("number"==typeof(e={carryoverConcurrencyCount:!1,intervalCap:Number.POSITIVE_INFINITY,interval:0,concurrency:Number.POSITIVE_INFINITY,autoStart:!0,queueClass:l,...e}).intervalCap&&e.intervalCap>=1))throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${e.intervalCap?.toString()??""}\` (${typeof e.intervalCap})`);if(void 0===e.interval||!(Number.isFinite(e.interval)&&e.interval>=0))throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${e.interval?.toString()??""}\` (${typeof e.interval})`);this.#o=e.carryoverConcurrencyCount,this.#l=e.intervalCap===Number.POSITIVE_INFINITY||0===e.interval,this.#m=e.intervalCap,this.#c=e.interval,this.#r=new e.queueClass,this.#f=e.queueClass,this.concurrency=e.concurrency,this.timeout=e.timeout,this.#y=!0===e.throwOnTimeout,this.#w=!1===e.autoStart}get#C(){return this.#l||this.#d<this.#m}get#T(){return this.#h<this.#v}#A(){this.#h--,this.#b(),this.emit("next")}#x(){this.#k(),this.#_(),this.#p=void 0}get#S(){const e=Date.now();if(void 0===this.#u){const t=this.#g-e;if(!(t<0))return void 0===this.#p&&(this.#p=setTimeout((()=>{this.#x()}),t)),!0;this.#d=this.#o?this.#h:0}return!1}#b(){if(0===this.#r.size)return this.#u&&clearInterval(this.#u),this.#u=void 0,this.emit("empty"),0===this.#h&&this.emit("idle"),!1;if(!this.#w){const e=!this.#S;if(this.#C&&this.#T){const t=this.#r.dequeue();return!!t&&(this.emit("active"),t(),e&&this.#_(),!0)}}return!1}#_(){this.#l||void 0!==this.#u||(this.#u=setInterval((()=>{this.#k()}),this.#c),this.#g=Date.now()+this.#c)}#k(){0===this.#d&&0===this.#h&&this.#u&&(clearInterval(this.#u),this.#u=void 0),this.#d=this.#o?this.#h:0,this.#F()}#F(){for(;this.#b(););}get concurrency(){return this.#v}set concurrency(e){if(!("number"==typeof e&&e>=1))throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${e}\` (${typeof e})`);this.#v=e,this.#F()}async#N(e){return new Promise(((t,s)=>{e.addEventListener("abort",(()=>{s(e.reason)}),{once:!0})}))}async add(e,t={}){return t={timeout:this.timeout,throwOnTimeout:this.#y,...t},new Promise(((s,n)=>{this.#r.enqueue((async()=>{this.#h++,this.#d++;try{t.signal?.throwIfAborted();let n=e({signal:t.signal});t.timeout&&(n=function(e,t){const{milliseconds:s,fallback:n,message:a,customTimers:r={setTimeout,clearTimeout}}=t;let l;const d=new Promise(((d,m)=>{if("number"!=typeof s||1!==Math.sign(s))throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${s}\``);if(t.signal){const{signal:e}=t;e.aborted&&m(o(e)),e.addEventListener("abort",(()=>{m(o(e))}))}if(s===Number.POSITIVE_INFINITY)return void e.then(d,m);const c=new i;l=r.setTimeout.call(void 0,(()=>{if(n)try{d(n())}catch(e){m(e)}else"function"==typeof e.cancel&&e.cancel(),!1===a?d():a instanceof Error?m(a):(c.message=a??`Promise timed out after ${s} milliseconds`,m(c))}),s),(async()=>{try{d(await e)}catch(e){m(e)}})()})).finally((()=>{d.clear()}));return d.clear=()=>{r.clearTimeout.call(void 0,l),l=void 0},d}(Promise.resolve(n),{milliseconds:t.timeout})),t.signal&&(n=Promise.race([n,this.#N(t.signal)]));const a=await n;s(a),this.emit("completed",a)}catch(e){if(e instanceof i&&!t.throwOnTimeout)return void s();n(e),this.emit("error",e)}finally{this.#A()}}),t),this.emit("add"),this.#b()}))}async addAll(e,t){return Promise.all(e.map((async e=>this.add(e,t))))}start(){return this.#w?(this.#w=!1,this.#F(),this):this}pause(){this.#w=!0}clear(){this.#r=new this.#f}async onEmpty(){0!==this.#r.size&&await this.#L("empty")}async onSizeLessThan(e){this.#r.size<e||await this.#L("next",(()=>this.#r.size<e))}async onIdle(){0===this.#h&&0===this.#r.size||await this.#L("idle")}async#L(e,t){return new Promise((s=>{const n=()=>{t&&!t()||(this.off(e,n),s())};this.on(e,n)}))}get size(){return this.#r.size}sizeBy(e){return this.#r.filter(e).length}get pending(){return this.#h}get isPaused(){return this.#w}}},53110:(e,t,s)=>{"use strict";s.d(t,{F0:()=>g,FZ:()=>o,pe:()=>a});var n=s(33319);const{Axios:i,AxiosError:a,CanceledError:r,isCancel:o,CancelToken:l,VERSION:d,all:m,Cancel:c,isAxiosError:g,spread:u,toFormData:p,AxiosHeaders:f,HttpStatusCode:h,formToJSON:v,getAdapter:w,mergeConfig:y}=n.A}},a={};function r(e){var t=a[e];if(void 0!==t)return t.exports;var s=a[e]={id:e,loaded:!1,exports:{}};return i[e].call(s.exports,s,s.exports,r),s.loaded=!0,s.exports}r.m=i,e=[],r.O=(t,s,n,i)=>{if(!s){var a=1/0;for(m=0;m<e.length;m++){s=e[m][0],n=e[m][1],i=e[m][2];for(var o=!0,l=0;l<s.length;l++)(!1&i||a>=i)&&Object.keys(r.O).every((e=>r.O[e](s[l])))?s.splice(l--,1):(o=!1,i<a&&(a=i));if(o){e.splice(m--,1);var d=n();void 0!==d&&(t=d)}}return t}i=i||0;for(var m=e.length;m>0&&e[m-1][2]>i;m--)e[m]=e[m-1];e[m]=[s,n,i]},r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var s in t)r.o(t,s)&&!r.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,s)=>(r.f[s](e,t),t)),[])),r.u=e=>e+"-"+e+".js?v="+{918:"42dc18350820a2df996f",1902:"15c69743cf3911d7117d",2400:"e05bb23ce5cd8e8e3b27",6429:"89166d2636e7cbd574e0",6880:"367ddfc725b6ef2ee02b",8066:"f1f0a3884f0b92377e6a"}[e],r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s={},n="nextcloud:",r.l=(e,t,i,a)=>{if(s[e])s[e].push(t);else{var o,l;if(void 0!==i)for(var d=document.getElementsByTagName("script"),m=0;m<d.length;m++){var c=d[m];if(c.getAttribute("src")==e||c.getAttribute("data-webpack")==n+i){o=c;break}}o||(l=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",n+i),o.src=e),s[e]=[t];var g=(t,n)=>{o.onerror=o.onload=null,clearTimeout(u);var i=s[e];if(delete s[e],o.parentNode&&o.parentNode.removeChild(o),i&&i.forEach((e=>e(n))),t)return t(n)},u=setTimeout(g.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=g.bind(null,o.onerror),o.onload=g.bind(null,o.onload),l&&document.head.appendChild(o)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.j=2882,(()=>{var e;r.g.importScripts&&(e=r.g.location+"");var t=r.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var s=t.getElementsByTagName("script");if(s.length)for(var n=s.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=s[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{r.b=document.baseURI||self.location.href;var e={2882:0};r.f.j=(t,s)=>{var n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)s.push(n[2]);else{var i=new Promise(((s,i)=>n=e[t]=[s,i]));s.push(n[2]=i);var a=r.p+r.u(t),o=new Error;r.l(a,(s=>{if(r.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var i=s&&("load"===s.type?"missing":s.type),a=s&&s.target&&s.target.src;o.message="Loading chunk "+t+" failed.\n("+i+": "+a+")",o.name="ChunkLoadError",o.type=i,o.request=a,n[1](o)}}),"chunk-"+t,t)}},r.O.j=t=>0===e[t];var t=(t,s)=>{var n,i,a=s[0],o=s[1],l=s[2],d=0;if(a.some((t=>0!==e[t]))){for(n in o)r.o(o,n)&&(r.m[n]=o[n]);if(l)var m=l(r)}for(t&&t(s);d<a.length;d++)i=a[d],r.o(e,i)&&e[i]&&e[i][0](),e[i]=0;return r.O(m)},s=self.webpackChunknextcloud=self.webpackChunknextcloud||[];s.forEach(t.bind(null,0)),s.push=t.bind(null,s.push.bind(s))})(),r.nc=void 0;var o=r.O(void 0,[4208],(()=>r(38536)));o=r.O(o)})();
+//# sourceMappingURL=files-main.js.map?v=50c196c93092c7824b11 \ No newline at end of file
diff --git a/dist/files-main.js.map b/dist/files-main.js.map
index b24ce444861..4eb355c8ab6 100644
--- a/dist/files-main.js.map
+++ b/dist/files-main.js.map
@@ -1 +1 @@
-{"version":3,"file":"files-main.js?v=d93cf6610595e184e48d","mappings":";UAAIA,ECAAC,EACAC,2BCCJ,IAAIC,EAAMC,OAAOC,UAAUC,eACvBC,EAAS,IASb,SAASC,IAAU,CA4BnB,SAASC,EAAGC,EAAIC,EAASC,GACvBC,KAAKH,GAAKA,EACVG,KAAKF,QAAUA,EACfE,KAAKD,KAAOA,IAAQ,CACtB,CAaA,SAASE,EAAYC,EAASC,EAAON,EAAIC,EAASC,GAChD,GAAkB,mBAAPF,EACT,MAAM,IAAIO,UAAU,mCAGtB,IAAIC,EAAW,IAAIT,EAAGC,EAAIC,GAAWI,EAASH,GAC1CO,EAAMZ,EAASA,EAASS,EAAQA,EAMpC,OAJKD,EAAQK,QAAQD,GACXJ,EAAQK,QAAQD,GAAKT,GAC1BK,EAAQK,QAAQD,GAAO,CAACJ,EAAQK,QAAQD,GAAMD,GADhBH,EAAQK,QAAQD,GAAKE,KAAKH,IADlCH,EAAQK,QAAQD,GAAOD,EAAUH,EAAQO,gBAI7DP,CACT,CASA,SAASQ,EAAWR,EAASI,GACI,KAAzBJ,EAAQO,aAAoBP,EAAQK,QAAU,IAAIZ,SAC5CO,EAAQK,QAAQD,EAC9B,CASA,SAASK,IACPX,KAAKO,QAAU,IAAIZ,EACnBK,KAAKS,aAAe,CACtB,CAzEIlB,OAAOqB,SACTjB,EAAOH,UAAYD,OAAOqB,OAAO,OAM5B,IAAIjB,GAASkB,YAAWnB,GAAS,IA2ExCiB,EAAanB,UAAUsB,WAAa,WAClC,IACIC,EACAC,EAFAC,EAAQ,GAIZ,GAA0B,IAAtBjB,KAAKS,aAAoB,OAAOQ,EAEpC,IAAKD,KAASD,EAASf,KAAKO,QACtBjB,EAAI4B,KAAKH,EAAQC,IAAOC,EAAMT,KAAKd,EAASsB,EAAKG,MAAM,GAAKH,GAGlE,OAAIzB,OAAO6B,sBACFH,EAAMI,OAAO9B,OAAO6B,sBAAsBL,IAG5CE,CACT,EASAN,EAAanB,UAAU8B,UAAY,SAAmBnB,GACpD,IAAIG,EAAMZ,EAASA,EAASS,EAAQA,EAChCoB,EAAWvB,KAAKO,QAAQD,GAE5B,IAAKiB,EAAU,MAAO,GACtB,GAAIA,EAAS1B,GAAI,MAAO,CAAC0B,EAAS1B,IAElC,IAAK,IAAI2B,EAAI,EAAGC,EAAIF,EAASG,OAAQC,EAAK,IAAIC,MAAMH,GAAID,EAAIC,EAAGD,IAC7DG,EAAGH,GAAKD,EAASC,GAAG3B,GAGtB,OAAO8B,CACT,EASAhB,EAAanB,UAAUqC,cAAgB,SAAuB1B,GAC5D,IAAIG,EAAMZ,EAASA,EAASS,EAAQA,EAChCmB,EAAYtB,KAAKO,QAAQD,GAE7B,OAAKgB,EACDA,EAAUzB,GAAW,EAClByB,EAAUI,OAFM,CAGzB,EASAf,EAAanB,UAAUsC,KAAO,SAAc3B,EAAO4B,EAAIC,EAAIC,EAAIC,EAAIC,GACjE,IAAI7B,EAAMZ,EAASA,EAASS,EAAQA,EAEpC,IAAKH,KAAKO,QAAQD,GAAM,OAAO,EAE/B,IAEI8B,EACAZ,EAHAF,EAAYtB,KAAKO,QAAQD,GACzB+B,EAAMC,UAAUZ,OAIpB,GAAIJ,EAAUzB,GAAI,CAGhB,OAFIyB,EAAUvB,MAAMC,KAAKuC,eAAepC,EAAOmB,EAAUzB,QAAI2C,GAAW,GAEhEH,GACN,KAAK,EAAG,OAAOf,EAAUzB,GAAGqB,KAAKI,EAAUxB,UAAU,EACrD,KAAK,EAAG,OAAOwB,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,IAAK,EACzD,KAAK,EAAG,OAAOT,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,IAAK,EAC7D,KAAK,EAAG,OAAOV,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,EAAIC,IAAK,EACjE,KAAK,EAAG,OAAOX,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,EAAIC,EAAIC,IAAK,EACrE,KAAK,EAAG,OAAOZ,EAAUzB,GAAGqB,KAAKI,EAAUxB,QAASiC,EAAIC,EAAIC,EAAIC,EAAIC,IAAK,EAG3E,IAAKX,EAAI,EAAGY,EAAO,IAAIR,MAAMS,EAAK,GAAIb,EAAIa,EAAKb,IAC7CY,EAAKZ,EAAI,GAAKc,UAAUd,GAG1BF,EAAUzB,GAAG4C,MAAMnB,EAAUxB,QAASsC,EACxC,KAAO,CACL,IACIM,EADAhB,EAASJ,EAAUI,OAGvB,IAAKF,EAAI,EAAGA,EAAIE,EAAQF,IAGtB,OAFIF,EAAUE,GAAGzB,MAAMC,KAAKuC,eAAepC,EAAOmB,EAAUE,GAAG3B,QAAI2C,GAAW,GAEtEH,GACN,KAAK,EAAGf,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,SAAU,MACpD,KAAK,EAAGwB,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,QAASiC,GAAK,MACxD,KAAK,EAAGT,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,QAASiC,EAAIC,GAAK,MAC5D,KAAK,EAAGV,EAAUE,GAAG3B,GAAGqB,KAAKI,EAAUE,GAAG1B,QAASiC,EAAIC,EAAIC,GAAK,MAChE,QACE,IAAKG,EAAM,IAAKM,EAAI,EAAGN,EAAO,IAAIR,MAAMS,EAAK,GAAIK,EAAIL,EAAKK,IACxDN,EAAKM,EAAI,GAAKJ,UAAUI,GAG1BpB,EAAUE,GAAG3B,GAAG4C,MAAMnB,EAAUE,GAAG1B,QAASsC,GAGpD,CAEA,OAAO,CACT,EAWAzB,EAAanB,UAAUmD,GAAK,SAAYxC,EAAON,EAAIC,GACjD,OAAOG,EAAYD,KAAMG,EAAON,EAAIC,GAAS,EAC/C,EAWAa,EAAanB,UAAUO,KAAO,SAAcI,EAAON,EAAIC,GACrD,OAAOG,EAAYD,KAAMG,EAAON,EAAIC,GAAS,EAC/C,EAYAa,EAAanB,UAAU+C,eAAiB,SAAwBpC,EAAON,EAAIC,EAASC,GAClF,IAAIO,EAAMZ,EAASA,EAASS,EAAQA,EAEpC,IAAKH,KAAKO,QAAQD,GAAM,OAAON,KAC/B,IAAKH,EAEH,OADAa,EAAWV,KAAMM,GACVN,KAGT,IAAIsB,EAAYtB,KAAKO,QAAQD,GAE7B,GAAIgB,EAAUzB,GAEVyB,EAAUzB,KAAOA,GACfE,IAAQuB,EAAUvB,MAClBD,GAAWwB,EAAUxB,UAAYA,GAEnCY,EAAWV,KAAMM,OAEd,CACL,IAAK,IAAIkB,EAAI,EAAGT,EAAS,GAAIW,EAASJ,EAAUI,OAAQF,EAAIE,EAAQF,KAEhEF,EAAUE,GAAG3B,KAAOA,GACnBE,IAASuB,EAAUE,GAAGzB,MACtBD,GAAWwB,EAAUE,GAAG1B,UAAYA,IAErCiB,EAAOP,KAAKc,EAAUE,IAOtBT,EAAOW,OAAQ1B,KAAKO,QAAQD,GAAyB,IAAlBS,EAAOW,OAAeX,EAAO,GAAKA,EACpEL,EAAWV,KAAMM,EACxB,CAEA,OAAON,IACT,EASAW,EAAanB,UAAUoD,mBAAqB,SAA4BzC,GACtE,IAAIG,EAUJ,OARIH,GACFG,EAAMZ,EAASA,EAASS,EAAQA,EAC5BH,KAAKO,QAAQD,IAAMI,EAAWV,KAAMM,KAExCN,KAAKO,QAAU,IAAIZ,EACnBK,KAAKS,aAAe,GAGfT,IACT,EAKAW,EAAanB,UAAUqD,IAAMlC,EAAanB,UAAU+C,eACpD5B,EAAanB,UAAUS,YAAcU,EAAanB,UAAUmD,GAK5DhC,EAAamC,SAAWpD,EAKxBiB,EAAaA,aAAeA,EAM1BoC,EAAOC,QAAUrC,mMCxTZ,MAAMsC,GAAQC,EAAAA,EAAAA,qBCtBrB,MAAMC,EAAQ,eACRC,EAAgB,IAAIC,OAAO,IAAMF,EAAQ,aAAc,MACvDG,EAAe,IAAID,OAAO,IAAMF,EAAQ,KAAM,MAEpD,SAASI,EAAiBC,EAAYC,GACrC,IAEC,MAAO,CAACC,mBAAmBF,EAAWG,KAAK,KAC5C,CAAE,MAEF,CAEA,GAA0B,IAAtBH,EAAW9B,OACd,OAAO8B,EAGRC,EAAQA,GAAS,EAGjB,MAAMG,EAAOJ,EAAWrC,MAAM,EAAGsC,GAC3BI,EAAQL,EAAWrC,MAAMsC,GAE/B,OAAO7B,MAAMpC,UAAU6B,OAAOH,KAAK,GAAIqC,EAAiBK,GAAOL,EAAiBM,GACjF,CAEA,SAASC,EAAOC,GACf,IACC,OAAOL,mBAAmBK,EAC3B,CAAE,MACD,IAAIC,EAASD,EAAME,MAAMb,IAAkB,GAE3C,IAAK,IAAI5B,EAAI,EAAGA,EAAIwC,EAAOtC,OAAQF,IAGlCwC,GAFAD,EAAQR,EAAiBS,EAAQxC,GAAGmC,KAAK,KAE1BM,MAAMb,IAAkB,GAGxC,OAAOW,CACR,CACD,CCvCe,SAASG,EAAaC,EAAQC,GAC5C,GAAwB,iBAAXD,GAA4C,iBAAdC,EAC1C,MAAM,IAAIhE,UAAU,iDAGrB,GAAe,KAAX+D,GAA+B,KAAdC,EACpB,MAAO,GAGR,MAAMC,EAAiBF,EAAOG,QAAQF,GAEtC,OAAwB,IAApBC,EACI,GAGD,CACNF,EAAOhD,MAAM,EAAGkD,GAChBF,EAAOhD,MAAMkD,EAAiBD,EAAU1C,QAE1C,CCnBO,SAAS6C,EAAYC,EAAQC,GACnC,MAAMC,EAAS,CAAC,EAEhB,GAAI9C,MAAM+C,QAAQF,GACjB,IAAK,MAAMG,KAAOH,EAAW,CAC5B,MAAMI,EAAatF,OAAOuF,yBAAyBN,EAAQI,GACvDC,GAAYE,YACfxF,OAAOyF,eAAeN,EAAQE,EAAKC,EAErC,MAGA,IAAK,MAAMD,KAAOK,QAAQC,QAAQV,GAAS,CAC1C,MAAMK,EAAatF,OAAOuF,yBAAyBN,EAAQI,GACvDC,EAAWE,YAEVN,EAAUG,EADAJ,EAAOI,GACKJ,IACzBjF,OAAOyF,eAAeN,EAAQE,EAAKC,EAGtC,CAGD,OAAOH,CACR,CCpBA,MAAMS,EAAoBC,GAASA,QAG7BC,EAAkBlB,GAAUmB,mBAAmBnB,GAAQoB,WAAW,YAAYC,GAAK,IAAIA,EAAEC,WAAW,GAAGC,SAAS,IAAIC,kBAEpHC,EAA2BC,OAAO,4BA8OxC,SAASC,EAA6BV,GACrC,GAAqB,iBAAVA,GAAuC,IAAjBA,EAAM1D,OACtC,MAAM,IAAItB,UAAU,uDAEtB,CAEA,SAAS2F,EAAOX,EAAOY,GACtB,OAAIA,EAAQD,OACJC,EAAQC,OAASZ,EAAgBD,GAASE,mBAAmBF,GAG9DA,CACR,CAEA,SAAS,EAAOA,EAAOY,GACtB,OAAIA,EAAQlC,OHzLE,SAA4BoC,GAC1C,GAA0B,iBAAfA,EACV,MAAM,IAAI9F,UAAU,6DAA+D8F,EAAa,KAGjG,IAEC,OAAOxC,mBAAmBwC,EAC3B,CAAE,MAED,OA9CF,SAAkCnC,GAEjC,MAAMoC,EAAa,CAClB,SAAU,KACV,SAAU,MAGX,IAAIlC,EAAQX,EAAa8C,KAAKrC,GAC9B,KAAOE,GAAO,CACb,IAECkC,EAAWlC,EAAM,IAAMP,mBAAmBO,EAAM,GACjD,CAAE,MACD,MAAMS,EAASZ,EAAOG,EAAM,IAExBS,IAAWT,EAAM,KACpBkC,EAAWlC,EAAM,IAAMS,EAEzB,CAEAT,EAAQX,EAAa8C,KAAKrC,EAC3B,CAGAoC,EAAW,OAAS,IAEpB,MAAME,EAAU9G,OAAO+G,KAAKH,GAE5B,IAAK,MAAMvB,KAAOyB,EAEjBtC,EAAQA,EAAMwC,QAAQ,IAAIlD,OAAOuB,EAAK,KAAMuB,EAAWvB,IAGxD,OAAOb,CACR,CAYSyC,CAAyBN,EACjC,CACD,CG8KS,CAAgBd,GAGjBA,CACR,CAEA,SAASqB,EAAW1C,GACnB,OAAInC,MAAM+C,QAAQZ,GACVA,EAAM2C,OAGO,iBAAV3C,EACH0C,EAAWlH,OAAO+G,KAAKvC,IAC5B2C,MAAK,CAACC,EAAGC,IAAMC,OAAOF,GAAKE,OAAOD,KAClCE,KAAIlC,GAAOb,EAAMa,KAGbb,CACR,CAEA,SAASgD,EAAWhD,GACnB,MAAMiD,EAAYjD,EAAMO,QAAQ,KAKhC,OAJmB,IAAf0C,IACHjD,EAAQA,EAAM5C,MAAM,EAAG6F,IAGjBjD,CACR,CAYA,SAASkD,EAAW7B,EAAOY,GAO1B,OANIA,EAAQkB,eAAiBL,OAAOM,MAAMN,OAAOzB,KAA6B,iBAAVA,GAAuC,KAAjBA,EAAMgC,OAC/FhC,EAAQyB,OAAOzB,IACLY,EAAQqB,eAA2B,OAAVjC,GAA2C,SAAxBA,EAAMkC,eAAoD,UAAxBlC,EAAMkC,gBAC9FlC,EAAgC,SAAxBA,EAAMkC,eAGRlC,CACR,CAEO,SAASmC,EAAQxD,GAEvB,MAAMyD,GADNzD,EAAQgD,EAAWhD,IACMO,QAAQ,KACjC,OAAoB,IAAhBkD,EACI,GAGDzD,EAAM5C,MAAMqG,EAAa,EACjC,CAEO,SAASC,EAAMC,EAAO1B,GAW5BF,GAVAE,EAAU,CACTlC,QAAQ,EACR4C,MAAM,EACNiB,YAAa,OACbC,qBAAsB,IACtBV,cAAc,EACdG,eAAe,KACZrB,IAGiC4B,sBAErC,MAAMC,EApMP,SAA8B7B,GAC7B,IAAItB,EAEJ,OAAQsB,EAAQ2B,aACf,IAAK,QACJ,MAAO,CAAC/C,EAAKQ,EAAO0C,KACnBpD,EAAS,YAAY0B,KAAKxB,GAE1BA,EAAMA,EAAI2B,QAAQ,UAAW,IAExB7B,QAKoBlC,IAArBsF,EAAYlD,KACfkD,EAAYlD,GAAO,CAAC,GAGrBkD,EAAYlD,GAAKF,EAAO,IAAMU,GAR7B0C,EAAYlD,GAAOQ,CAQe,EAIrC,IAAK,UACJ,MAAO,CAACR,EAAKQ,EAAO0C,KACnBpD,EAAS,SAAS0B,KAAKxB,GACvBA,EAAMA,EAAI2B,QAAQ,OAAQ,IAErB7B,OAKoBlC,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAIkD,EAAYlD,GAAMQ,GAJxC0C,EAAYlD,GAAO,CAACQ,GALpB0C,EAAYlD,GAAOQ,CAS2B,EAIjD,IAAK,uBACJ,MAAO,CAACR,EAAKQ,EAAO0C,KACnBpD,EAAS,WAAW0B,KAAKxB,GACzBA,EAAMA,EAAI2B,QAAQ,SAAU,IAEvB7B,OAKoBlC,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAIkD,EAAYlD,GAAMQ,GAJxC0C,EAAYlD,GAAO,CAACQ,GALpB0C,EAAYlD,GAAOQ,CAS2B,EAIjD,IAAK,QACL,IAAK,YACJ,MAAO,CAACR,EAAKQ,EAAO0C,KACnB,MAAMnD,EAA2B,iBAAVS,GAAsBA,EAAM2C,SAAS/B,EAAQ4B,sBAC9DI,EAAmC,iBAAV5C,IAAuBT,GAAW,EAAOS,EAAOY,GAAS+B,SAAS/B,EAAQ4B,sBACzGxC,EAAQ4C,EAAiB,EAAO5C,EAAOY,GAAWZ,EAClD,MAAM6C,EAAWtD,GAAWqD,EAAiB5C,EAAM3B,MAAMuC,EAAQ4B,sBAAsBd,KAAIoB,GAAQ,EAAOA,EAAMlC,KAAuB,OAAVZ,EAAiBA,EAAQ,EAAOA,EAAOY,GACpK8B,EAAYlD,GAAOqD,CAAQ,EAI7B,IAAK,oBACJ,MAAO,CAACrD,EAAKQ,EAAO0C,KACnB,MAAMnD,EAAU,SAASwD,KAAKvD,GAG9B,GAFAA,EAAMA,EAAI2B,QAAQ,OAAQ,KAErB5B,EAEJ,YADAmD,EAAYlD,GAAOQ,EAAQ,EAAOA,EAAOY,GAAWZ,GAIrD,MAAMgD,EAAuB,OAAVhD,EAChB,GACAA,EAAM3B,MAAMuC,EAAQ4B,sBAAsBd,KAAIoB,GAAQ,EAAOA,EAAMlC,UAE7CxD,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAIkD,EAAYlD,MAASwD,GAJ3CN,EAAYlD,GAAOwD,CAImC,EAIzD,QACC,MAAO,CAACxD,EAAKQ,EAAO0C,UACMtF,IAArBsF,EAAYlD,GAKhBkD,EAAYlD,GAAO,IAAI,CAACkD,EAAYlD,IAAMyD,OAAQjD,GAJjD0C,EAAYlD,GAAOQ,CAIoC,EAI5D,CA0FmBkD,CAAqBtC,GAGjCuC,EAAchJ,OAAOqB,OAAO,MAElC,GAAqB,iBAAV8G,EACV,OAAOa,EAKR,KAFAb,EAAQA,EAAMN,OAAOb,QAAQ,SAAU,KAGtC,OAAOgC,EAGR,IAAK,MAAMC,KAAad,EAAMjE,MAAM,KAAM,CACzC,GAAkB,KAAd+E,EACH,SAGD,MAAMC,EAAazC,EAAQlC,OAAS0E,EAAUjD,WAAW,IAAK,KAAOiD,EAErE,IAAK5D,EAAKQ,GAASlB,EAAauE,EAAY,UAEhCjG,IAARoC,IACHA,EAAM6D,GAKPrD,OAAkB5C,IAAV4C,EAAsB,KAAQ,CAAC,QAAS,YAAa,qBAAqB2C,SAAS/B,EAAQ2B,aAAevC,EAAQ,EAAOA,EAAOY,GACxI6B,EAAU,EAAOjD,EAAKoB,GAAUZ,EAAOmD,EACxC,CAEA,IAAK,MAAO3D,EAAKQ,KAAU7F,OAAO8G,QAAQkC,GACzC,GAAqB,iBAAVnD,GAAgC,OAAVA,EAChC,IAAK,MAAOsD,EAAMC,KAAWpJ,OAAO8G,QAAQjB,GAC3CA,EAAMsD,GAAQzB,EAAW0B,EAAQ3C,QAGlCuC,EAAY3D,GAAOqC,EAAW7B,EAAOY,GAIvC,OAAqB,IAAjBA,EAAQU,KACJ6B,IAKiB,IAAjBvC,EAAQU,KAAgBnH,OAAO+G,KAAKiC,GAAa7B,OAASnH,OAAO+G,KAAKiC,GAAa7B,KAAKV,EAAQU,OAAOkC,QAAO,CAAClE,EAAQE,KAC9H,MAAMQ,EAAQmD,EAAY3D,GAE1B,OADAF,EAAOE,GAAOiE,QAAQzD,IAA2B,iBAAVA,IAAuBxD,MAAM+C,QAAQS,GAASqB,EAAWrB,GAASA,EAClGV,CAAM,GACXnF,OAAOqB,OAAO,MAClB,CAEO,SAASkI,EAAUtE,EAAQwB,GACjC,IAAKxB,EACJ,MAAO,GAWRsB,GARAE,EAAU,CACTD,QAAQ,EACRE,QAAQ,EACR0B,YAAa,OACbC,qBAAsB,OACnB5B,IAGiC4B,sBAErC,MAAMmB,EAAenE,GACnBoB,EAAQgD,UAAY7D,EAAkBX,EAAOI,KAC1CoB,EAAQiD,iBAAmC,KAAhBzE,EAAOI,GAGjCiD,EAjZP,SAA+B7B,GAC9B,OAAQA,EAAQ2B,aACf,IAAK,QACJ,OAAO/C,GAAO,CAACF,EAAQU,KACtB,MAAM8D,EAAQxE,EAAOhD,OAErB,YACWc,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EAAQ,CAACqB,EAAOnB,EAAKoB,GAAU,IAAKkD,EAAO,KAAKvF,KAAK,KAInD,IACHe,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,IAAKD,EAAOmD,EAAOlD,GAAU,KAAMD,EAAOX,EAAOY,IAAUrC,KAAK,IACvF,EAIH,IAAK,UACJ,OAAOiB,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,MAAMrC,KAAK,KAI7B,IACHe,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,MAAOD,EAAOX,EAAOY,IAAUrC,KAAK,KAK9D,IAAK,uBACJ,OAAOiB,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,UAAUrC,KAAK,KAIjC,IACHe,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,SAAUD,EAAOX,EAAOY,IAAUrC,KAAK,KAKjE,IAAK,QACL,IAAK,YACL,IAAK,oBAAqB,CACzB,MAAMwF,EAA4C,sBAAxBnD,EAAQ2B,YAC/B,MACA,IAEH,OAAO/C,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,GAIRU,EAAkB,OAAVA,EAAiB,GAAKA,EAER,IAAlBV,EAAOhD,OACH,CAAC,CAACqE,EAAOnB,EAAKoB,GAAUmD,EAAmBpD,EAAOX,EAAOY,IAAUrC,KAAK,KAGzE,CAAC,CAACe,EAAQqB,EAAOX,EAAOY,IAAUrC,KAAKqC,EAAQ4B,uBAExD,CAEA,QACC,OAAOhD,GAAO,CAACF,EAAQU,SAEX5C,IAAV4C,GACIY,EAAQgD,UAAsB,OAAV5D,GACpBY,EAAQiD,iBAA6B,KAAV7D,EAExBV,EAGM,OAAVU,EACI,IACHV,EACHqB,EAAOnB,EAAKoB,IAIP,IACHtB,EACH,CAACqB,EAAOnB,EAAKoB,GAAU,IAAKD,EAAOX,EAAOY,IAAUrC,KAAK,KAK9D,CAmRmByF,CAAsBpD,GAElCqD,EAAa,CAAC,EAEpB,IAAK,MAAOzE,EAAKQ,KAAU7F,OAAO8G,QAAQ7B,GACpCuE,EAAanE,KACjByE,EAAWzE,GAAOQ,GAIpB,MAAMkB,EAAO/G,OAAO+G,KAAK+C,GAMzB,OAJqB,IAAjBrD,EAAQU,MACXJ,EAAKI,KAAKV,EAAQU,MAGZJ,EAAKQ,KAAIlC,IACf,MAAMQ,EAAQZ,EAAOI,GAErB,YAAcpC,IAAV4C,EACI,GAGM,OAAVA,EACIW,EAAOnB,EAAKoB,GAGhBpE,MAAM+C,QAAQS,GACI,IAAjBA,EAAM1D,QAAwC,sBAAxBsE,EAAQ2B,YAC1B5B,EAAOnB,EAAKoB,GAAW,KAGxBZ,EACLwD,OAAOf,EAAUjD,GAAM,IACvBjB,KAAK,KAGDoC,EAAOnB,EAAKoB,GAAW,IAAMD,EAAOX,EAAOY,EAAQ,IACxDsD,QAAO9D,GAAKA,EAAE9D,OAAS,IAAGiC,KAAK,IACnC,CAEO,SAAS4F,EAASC,EAAKxD,GAC7BA,EAAU,CACTlC,QAAQ,KACLkC,GAGJ,IAAKyD,EAAMC,GAAQxF,EAAasF,EAAK,KAMrC,YAJahH,IAATiH,IACHA,EAAOD,GAGD,CACNA,IAAKC,GAAMhG,MAAM,OAAO,IAAM,GAC9BiE,MAAOD,EAAMF,EAAQiC,GAAMxD,MACvBA,GAAWA,EAAQ2D,yBAA2BD,EAAO,CAACE,mBAAoB,EAAOF,EAAM1D,IAAY,CAAC,EAE1G,CAEO,SAAS6D,EAAarF,EAAQwB,GACpCA,EAAU,CACTD,QAAQ,EACRE,QAAQ,EACR,CAACL,IAA2B,KACzBI,GAGJ,MAAMwD,EAAMzC,EAAWvC,EAAOgF,KAAK/F,MAAM,KAAK,IAAM,GAQpD,IAAIqG,EAAchB,EALJ,IACVrB,EAHiBF,EAAQ/C,EAAOgF,KAGZ,CAAC9C,MAAM,OAC3BlC,EAAOkD,OAGwB1B,GACnC8D,IAAgB,IAAIA,IAEpB,IAAIJ,EAvML,SAAiBF,GAChB,IAAIE,EAAO,GACX,MAAM1C,EAAYwC,EAAIlF,QAAQ,KAK9B,OAJmB,IAAf0C,IACH0C,EAAOF,EAAIrI,MAAM6F,IAGX0C,CACR,CA+LYK,CAAQvF,EAAOgF,KAC1B,GAAyC,iBAA9BhF,EAAOoF,mBAAiC,CAClD,MAAMI,EAA6B,IAAIC,IAAIT,GAC3CQ,EAA2BN,KAAOlF,EAAOoF,mBACzCF,EAAO1D,EAAQJ,GAA4BoE,EAA2BN,KAAO,IAAIlF,EAAOoF,oBACzF,CAEA,MAAO,GAAGJ,IAAMM,IAAcJ,GAC/B,CAEO,SAASQ,EAAKnG,EAAOuF,EAAQtD,GACnCA,EAAU,CACT2D,yBAAyB,EACzB,CAAC/D,IAA2B,KACzBI,GAGJ,MAAM,IAACwD,EAAG,MAAE9B,EAAK,mBAAEkC,GAAsBL,EAASxF,EAAOiC,GAEzD,OAAO6D,EAAa,CACnBL,MACA9B,MAAOnD,EAAYmD,EAAO4B,GAC1BM,sBACE5D,EACJ,CAEO,SAASmE,EAAQpG,EAAOuF,EAAQtD,GAGtC,OAAOkE,EAAKnG,EAFYnC,MAAM+C,QAAQ2E,GAAU1E,IAAQ0E,EAAOvB,SAASnD,GAAO,CAACA,EAAKQ,KAAWkE,EAAO1E,EAAKQ,GAExEY,EACrC,CCvgBA,yBCEAoE,EAAAA,GAAIC,IAAIC,EAAAA,IAER,MAAMC,EAAeD,EAAAA,GAAO9K,UAAUgB,KACtC8J,EAAAA,GAAO9K,UAAUgB,KAAO,SAAcgK,EAAIC,EAAYC,GAClD,OAAID,GAAcC,EACPH,EAAarJ,KAAKlB,KAAMwK,EAAIC,EAAYC,GAC5CH,EAAarJ,KAAKlB,KAAMwK,GAAIG,OAAMC,GAAOA,GACpD,EACA,MAwBA,EAxBe,IAAIN,EAAAA,GAAO,CACtBO,KAAM,UAGNC,MAAMC,EAAAA,EAAAA,IAAY,eAClBC,gBAAiB,SACjBC,OAAQ,CACJ,CACIC,KAAM,IAENC,SAAU,CAAEnK,KAAM,WAAYoK,OAAQ,CAAEC,KAAM,WAElD,CACIH,KAAM,wBACNlK,KAAM,WACNsK,OAAO,IAIfC,cAAAA,CAAe7D,GACX,MAAMhD,EAASoF,EAAYhB,UAAUpB,GAAOnB,QAAQ,SAAU,KAC9D,OAAO7B,EAAU,IAAMA,EAAU,EACrC,mbClCJ,gDCoBA,MCpBsG,EDoBtG,CACE1D,KAAM,UACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,qBEff,SAXgB,OACd,GCRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,gCAAgCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,g5BAAg5B,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC15C,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,4CEKhC,SAASC,EAAUC,EAAOC,EAAU7G,GAClC,IAcI8G,EAdAC,EAAO/G,GAAW,CAAC,EACnBgH,EAAkBD,EAAKE,WACvBA,OAAiC,IAApBD,GAAqCA,EAClDE,EAAiBH,EAAKI,UACtBA,OAA+B,IAAnBD,GAAoCA,EAChDE,EAAoBL,EAAKM,aACzBA,OAAqC,IAAtBD,OAA+B5K,EAAY4K,EAS1DE,GAAY,EAEZC,EAAW,EAEf,SAASC,IACHV,GACFW,aAAaX,EAEjB,CAkBA,SAASY,IACP,IAAK,IAAIC,EAAOrL,UAAUZ,OAAQkM,EAAa,IAAIhM,MAAM+L,GAAOE,EAAO,EAAGA,EAAOF,EAAME,IACrFD,EAAWC,GAAQvL,UAAUuL,GAG/B,IAAIC,EAAO9N,KACP+N,EAAUC,KAAKC,MAAQV,EAO3B,SAASnH,IACPmH,EAAWS,KAAKC,MAChBpB,EAASpK,MAAMqL,EAAMF,EACvB,CAOA,SAASM,IACPpB,OAAYtK,CACd,CAjBI8K,IAmBCH,IAAaE,GAAiBP,GAMjC1G,IAGFoH,SAEqBhL,IAAjB6K,GAA8BU,EAAUnB,EACtCO,GAMFI,EAAWS,KAAKC,MAEXhB,IACHH,EAAYqB,WAAWd,EAAea,EAAQ9H,EAAMwG,KAOtDxG,KAEsB,IAAf6G,IAYTH,EAAYqB,WAAWd,EAAea,EAAQ9H,OAAuB5D,IAAjB6K,EAA6BT,EAAQmB,EAAUnB,IAEvG,CAIA,OAFAc,EAAQU,OAxFR,SAAgBpI,GACd,IACIqI,GADQrI,GAAW,CAAC,GACOsI,aAC3BA,OAAsC,IAAvBD,GAAwCA,EAE3Db,IACAF,GAAagB,CACf,EAmFOZ,CACT,sCCzHA,MCpB2G,EDoB3G,CACE1M,KAAM,eACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,GCRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,sCAAsCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8HAA8H,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC9oB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,wBEKhC,UAAe6B,WAAAA,MACbC,OAAO,SACPC,aACAC,QC1ByL,GCoC3L,CACA1N,KAAA,kBAEAwC,WAAA,CACAmL,SAAA,GACAC,oBAAA,IACAC,cAAAA,GAAAA,GAGAC,KAAAA,KACA,CACAC,qBAAA,EACAC,cAAAC,EAAAA,EAAAA,GAAA,+BAIAC,SAAA,CACAC,iBAAAA,GAAA,IAAAC,EAAAC,EAAAC,EACA,MAAAC,GAAAC,EAAAA,EAAAA,IAAA,QAAAJ,EAAA,KAAAJ,oBAAA,IAAAI,OAAA,EAAAA,EAAAK,MAAA,MACAC,GAAAF,EAAAA,EAAAA,IAAA,QAAAH,EAAA,KAAAL,oBAAA,IAAAK,OAAA,EAAAA,EAAAM,OAAA,MAGA,eAAAL,EAAA,KAAAN,oBAAA,IAAAM,OAAA,EAAAA,EAAAK,OAAA,EACA,KAAAC,EAAA,gCAAAL,kBAGA,KAAAK,EAAA,kCACAH,KAAAF,EACAI,MAAAD,GAEA,EACAG,mBAAAA,GACA,YAAAb,aAAAc,SAIA,KAAAF,EAAA,gCAAAZ,cAHA,EAIA,GAGAe,WAAAA,GAKAC,YAAA,KAAAC,2BAAA,MAEAC,EAAAA,EAAAA,IAAA,0BAAAD,6BACAC,EAAAA,EAAAA,IAAA,0BAAAD,6BACAC,EAAAA,EAAAA,IAAA,wBAAAD,6BACAC,EAAAA,EAAAA,IAAA,0BAAAD,2BACA,EAEAE,OAAAA,GAAA,IAAAC,EAAAC,GAWA,QAAAD,EAAA,KAAApB,oBAAA,IAAAoB,OAAA,EAAAA,EAAAT,OAAA,gBAAAU,EAAA,KAAArB,oBAAA,IAAAqB,OAAA,EAAAA,EAAAC,OACA,KAAAC,wBAEA,EAEAC,QAAA,CAEAC,4BPuDMC,GADkB,CAAC,EACCC,QAGjBhE,EO1DT,cAAAxM,GACA,KAAAyQ,mBAAAzQ,EACA,GPwDmC,CAC/BkN,cAA0B,UAHG,IAAjBqD,IAAkCA,OOpDlDT,2BAAAtD,EAAA,cAAAxM,GACA,KAAAyQ,mBAAAzQ,EACA,IAQA,wBAAAyQ,GAAA,IAAAzQ,EAAAmC,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,QACA,SAAAyM,oBAAA,CAIA,KAAAA,qBAAA,EACA,QAAA8B,EAAAC,EAAAC,EAAAC,EACA,MAAAC,QAAAC,EAAAA,GAAAC,KAAApG,EAAAA,EAAAA,IAAA,6BACA,GAAAkG,SAAA,QAAAJ,EAAAI,EAAAnC,YAAA,IAAA+B,IAAAA,EAAA/B,KACA,UAAAsC,MAAA,0BAKA,QAAAN,EAAA,KAAA9B,oBAAA,IAAA8B,OAAA,EAAAA,EAAAR,MAAA,gBAAAS,EAAAE,EAAAnC,KAAAA,YAAA,IAAAiC,OAAA,EAAAA,EAAAT,QAAA,QAAAU,EAAAC,EAAAnC,KAAAA,YAAA,IAAAkC,OAAA,EAAAA,EAAArB,OAAA,GACA,KAAAY,yBAGA,KAAAvB,aAAAiC,EAAAnC,KAAAA,IACA,OAAAuC,GACAC,GAAAD,MAAA,mCAAAA,UAEAlR,IACAoR,EAAAA,EAAAA,IAAA3B,EAAA,2CAEA,SACA,KAAAb,qBAAA,CACA,CAxBA,CAyBA,EAEAwB,sBAAAA,IACAgB,EAAAA,EAAAA,IAAA,KAAA3B,EAAA,6EACA,EAEAA,EAAA4B,EAAAA,KPKA,IAEMd,yJQvJF1K,GAAU,CAAC,EAEfA,GAAQyL,kBAAoB,KAC5BzL,GAAQ0L,cAAgB,KAElB1L,GAAQ2L,OAAS,UAAc,KAAM,QAE3C3L,GAAQ4L,OAAS,KACjB5L,GAAQ6L,mBAAqB,KAEhB,KAAI,KAAS7L,IAKJ,MAAW,KAAQ8L,QAAS,KAAQA,OCP1D,UAXgB,OACd,ICTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAQD,EAAIiD,aAAchD,EAAG,sBAAsB,CAACG,YAAY,uCAAuC4F,MAAM,CAAE,sDAAuDhG,EAAIiD,aAAaW,OAAS,GAAGvD,MAAM,CAAC,aAAaL,EAAI6D,EAAE,QAAS,wBAAwB,QAAU7D,EAAIgD,oBAAoB,KAAOhD,EAAIoD,kBAAkB,MAAQpD,EAAI8D,oBAAoB,0CAA0C,IAAIlN,GAAG,CAAC,MAAQ,SAAS0J,GAAyD,OAAjDA,EAAO2F,kBAAkB3F,EAAO4F,iBAAwBlG,EAAI0E,2BAA2BhO,MAAM,KAAMH,UAAU,IAAI,CAAC0J,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,OAAO,KAAO,IAAI8F,KAAK,SAASnG,EAAIS,GAAG,KAAMT,EAAIiD,aAAaW,OAAS,EAAG3D,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,QAAQ,MAAQL,EAAIiD,aAAac,SAAW,GAAG,MAAQqC,KAAKC,IAAIrG,EAAIiD,aAAac,SAAU,MAAMoC,KAAK,UAAUnG,EAAIW,MAAM,GAAGX,EAAIW,IACh2B,GACsB,IDUpB,EACA,KACA,WACA,MAI8B,QEnBhC,wCCoBA,MCpB4G,GDoB5G,CACE1L,KAAM,gBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,sCAAsCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,oMAAoM,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACptB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,wBEQhC,MC1BmL,GD0BnL,CACA1L,KAAA,UACAsK,MAAA,CACA+G,GAAA,CACA3G,KAAA4G,SACAC,UAAA,IAGApC,OAAAA,GACA,KAAAqC,IAAAC,YAAA,KAAAJ,KACA,GElBA,IAXgB,OACd,ICRW,WAA+C,OAAOrG,EAA5BhM,KAAYiM,MAAMD,IAAa,MACtE,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QEZ1B0G,IAAazD,EAAAA,EAAAA,GAAU,QAAS,SAAU,CAC5C0D,aAAa,EACbC,qBAAqB,EACrBC,sBAAsB,EACtBC,oBAAoB,EACpBC,WAAW,IAEFC,GAAqB,WAC9B,MAsBMC,GAtBQC,EAAAA,EAAAA,IAAY,aAAc,CACpCC,MAAOA,KAAA,CACHT,gBAEJU,QAAS,CAILC,QAAAA,CAASzO,EAAKQ,GACVgF,EAAAA,GAAAA,IAAQpK,KAAK0S,WAAY9N,EAAKQ,EAClC,EAIA,YAAMkO,CAAO1O,EAAKQ,SACR8L,EAAAA,GAAMqC,KAAIxI,EAAAA,EAAAA,IAAY,6BAA+BnG,GAAM,CAC7DQ,WAEJtD,EAAAA,EAAAA,IAAK,uBAAwB,CAAE8C,MAAKQ,SACxC,IAGgBoO,IAAMlR,WAQ9B,OANK2Q,EAAgBQ,gBACjBvD,EAAAA,EAAAA,IAAU,wBAAwB,SAAAnD,GAA0B,IAAhB,IAAEnI,EAAG,MAAEQ,GAAO2H,EACtDkG,EAAgBI,SAASzO,EAAKQ,EAClC,IACA6N,EAAgBQ,cAAe,GAE5BR,CACX,ECqEA,IACAjS,KAAA,WACAwC,WAAA,CACAkQ,UAAA,GACAC,oBAAA,KACAC,qBAAA,KACAC,sBAAA,KACAC,aAAA,KACAC,QAAAA,IAGAzI,MAAA,CACA0I,KAAA,CACAtI,KAAA7C,QACAgD,SAAA,IAIAoI,MAAAA,KAEA,CACAhB,gBAFAD,OAMAlE,IAAAA,GAAA,IAAAoF,EAAAC,EAAAC,EACA,OAEAC,UAAA,QAAAH,EAAAI,OAAAC,WAAA,IAAAL,GAAA,QAAAA,EAAAA,EAAAM,aAAA,IAAAN,GAAA,QAAAA,EAAAA,EAAAO,gBAAA,IAAAP,OAAA,EAAAA,EAAAG,WAAA,GAGAK,WAAAC,EAAAA,EAAAA,IAAA,aAAArP,mBAAA,QAAA6O,GAAAS,EAAAA,EAAAA,aAAA,IAAAT,OAAA,EAAAA,EAAAU,MACAC,WAAA,iEACAC,gBAAAhK,EAAAA,EAAAA,IAAA,sDACAiK,iBAAA,EACAC,eAAA,QAAAb,GAAAnF,EAAAA,EAAAA,GAAA,iEAAAmF,GAAAA,EAEA,EAEAlF,SAAA,CACAwD,UAAAA,GACA,YAAAO,gBAAAP,UACA,GAGA3C,WAAAA,GAEA,KAAAsE,SAAAa,SAAAC,GAAAA,EAAAnB,QACA,EAEAoB,aAAAA,GAEA,KAAAf,SAAAa,SAAAC,GAAAA,EAAAE,SACA,EAEA7E,QAAA,CACA8E,OAAAA,GACA,KAAAhJ,MAAA,QACA,EAEAiJ,SAAAA,CAAA3Q,EAAAQ,GACA,KAAA6N,gBAAAK,OAAA1O,EAAAQ,EACA,EAEA,iBAAAoQ,GACAC,SAAAC,cAAA,0BAAAC,SAEAC,UAAAC,iBAMAD,UAAAC,UAAAC,UAAA,KAAApB,WACA,KAAAM,iBAAA,GACAe,EAAAA,EAAAA,IAAAnG,EAAA,2CACAzB,YAAA,KACA,KAAA6G,iBAAA,IACA,OATAzD,EAAAA,EAAAA,IAAA3B,EAAA,sCAUA,EAEAA,EAAA4B,EAAAA,KCnMoL,sBCWhL,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IbTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,sBAAsB,CAACI,MAAM,CAAC,KAAOL,EAAIiI,KAAK,mBAAkB,EAAK,KAAOjI,EAAI6D,EAAE,QAAS,mBAAmBjN,GAAG,CAAC,cAAcoJ,EAAIuJ,UAAU,CAACtJ,EAAG,uBAAuB,CAACI,MAAM,CAAC,GAAK,WAAW,KAAOL,EAAI6D,EAAE,QAAS,oBAAoB,CAAC5D,EAAG,wBAAwB,CAACI,MAAM,CAAC,iCAAiC,uBAAuB,QAAUL,EAAI2G,WAAWG,sBAAsBlQ,GAAG,CAAC,iBAAiB,SAAS0J,GAAQ,OAAON,EAAIwJ,UAAU,uBAAwBlJ,EAAO,IAAI,CAACN,EAAIS,GAAG,WAAWT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,yBAAyB,YAAY7D,EAAIS,GAAG,KAAKR,EAAG,wBAAwB,CAACI,MAAM,CAAC,iCAAiC,qBAAqB,QAAUL,EAAI2G,WAAWI,oBAAoBnQ,GAAG,CAAC,iBAAiB,SAAS0J,GAAQ,OAAON,EAAIwJ,UAAU,qBAAsBlJ,EAAO,IAAI,CAACN,EAAIS,GAAG,WAAWT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,8BAA8B,YAAY7D,EAAIS,GAAG,KAAKR,EAAG,wBAAwB,CAACI,MAAM,CAAC,iCAAiC,cAAc,QAAUL,EAAI2G,WAAWC,aAAahQ,GAAG,CAAC,iBAAiB,SAAS0J,GAAQ,OAAON,EAAIwJ,UAAU,cAAelJ,EAAO,IAAI,CAACN,EAAIS,GAAG,WAAWT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,sBAAsB,YAAY7D,EAAIS,GAAG,KAAKR,EAAG,wBAAwB,CAACI,MAAM,CAAC,iCAAiC,sBAAsB,QAAUL,EAAI2G,WAAWE,qBAAqBjQ,GAAG,CAAC,iBAAiB,SAAS0J,GAAQ,OAAON,EAAIwJ,UAAU,sBAAuBlJ,EAAO,IAAI,CAACN,EAAIS,GAAG,WAAWT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,wBAAwB,YAAY7D,EAAIS,GAAG,KAAMT,EAAIkJ,eAAgBjJ,EAAG,wBAAwB,CAACI,MAAM,CAAC,iCAAiC,YAAY,QAAUL,EAAI2G,WAAWK,WAAWpQ,GAAG,CAAC,iBAAiB,SAAS0J,GAAQ,OAAON,EAAIwJ,UAAU,YAAalJ,EAAO,IAAI,CAACN,EAAIS,GAAG,WAAWT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,yBAAyB,YAAY7D,EAAIW,MAAM,GAAGX,EAAIS,GAAG,KAA8B,IAAxBT,EAAIsI,SAAS3S,OAAcsK,EAAG,uBAAuB,CAACI,MAAM,CAAC,GAAK,gBAAgB,KAAOL,EAAI6D,EAAE,QAAS,yBAAyB,CAAC7D,EAAIiK,GAAIjK,EAAIsI,UAAU,SAASc,GAAS,MAAO,CAACnJ,EAAG,UAAU,CAACpH,IAAIuQ,EAAQnU,KAAKoL,MAAM,CAAC,GAAK+I,EAAQ9C,MAAM,KAAI,GAAGtG,EAAIW,KAAKX,EAAIS,GAAG,KAAKR,EAAG,uBAAuB,CAACI,MAAM,CAAC,GAAK,SAAS,KAAOL,EAAI6D,EAAE,QAAS,YAAY,CAAC5D,EAAG,eAAe,CAACI,MAAM,CAAC,GAAK,mBAAmB,MAAQL,EAAI6D,EAAE,QAAS,cAAc,wBAAuB,EAAK,QAAU7D,EAAIiJ,gBAAgB,wBAAwBjJ,EAAI6D,EAAE,QAAS,qBAAqB,MAAQ7D,EAAI2I,UAAU,SAAW,WAAW,KAAO,OAAO/R,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAOA,EAAO4J,OAAON,QAAQ,EAAE,wBAAwB5J,EAAIyJ,aAAaU,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,uBAAuB/E,GAAG,WAAW,MAAO,CAACmM,EAAG,YAAY,CAACI,MAAM,CAAC,KAAO,MAAM,EAAEgK,OAAM,OAAUrK,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACA,EAAG,IAAI,CAACG,YAAY,eAAeC,MAAM,CAAC,KAAOL,EAAI+I,WAAW,OAAS,SAAS,IAAM,wBAAwB,CAAC/I,EAAIS,GAAG,aAAaT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,qDAAqD,kBAAkB7D,EAAIS,GAAG,KAAKR,EAAG,MAAMD,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACA,EAAG,IAAI,CAACG,YAAY,eAAeC,MAAM,CAAC,KAAOL,EAAIgJ,iBAAiB,CAAChJ,EAAIS,GAAG,aAAaT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,0FAA0F,mBAAmB,IAAI,EAChqG,GACsB,IaUpB,EACA,KACA,WACA,MAI8B,QCdzB,SAASyG,KACZ,MAAMC,GAAaC,EAAAA,EAAAA,MACbC,GAAQC,EAAAA,EAAAA,IAAWH,EAAWE,OAC9BE,GAAcD,EAAAA,EAAAA,IAAWH,EAAWK,QAK1C,SAASC,EAAezW,GACpBuW,EAAYtR,MAAQjF,EAAM0W,MAC9B,CAIA,SAASC,IACLN,EAAMpR,MAAQkR,EAAWE,KAC7B,CASA,OARAO,EAAAA,EAAAA,KAAU,KACNT,EAAWU,iBAAiB,SAAUF,GACtCR,EAAWU,iBAAiB,eAAgBJ,EAAe,KAE/DK,EAAAA,EAAAA,KAAY,KACRX,EAAWY,oBAAoB,SAAUJ,GACzCR,EAAWY,oBAAoB,eAAgBN,EAAe,IAE3D,CACHF,cACAF,QAER,CCPA,MAAMW,IAAalI,EAAAA,EAAAA,GAAU,QAAS,cAAe,CAAC,GACzCmI,GAAqB,WAC9B,MAAM5D,GAAQN,EAAAA,EAAAA,IAAY,aAAc,CACpCC,MAAOA,KAAA,CACHgE,gBAEJE,QAAS,CACLC,UAAYnE,GAAW9H,GAAS8H,EAAMgE,WAAW9L,IAAS,CAAC,GAE/D+H,QAAS,CAILC,QAAAA,CAAShI,EAAMzG,EAAKQ,GACXpF,KAAKmX,WAAW9L,IACjBjB,EAAAA,GAAAA,IAAQpK,KAAKmX,WAAY9L,EAAM,CAAC,GAEpCjB,EAAAA,GAAAA,IAAQpK,KAAKmX,WAAW9L,GAAOzG,EAAKQ,EACxC,EAIA,YAAMkO,CAAOjI,EAAMzG,EAAKQ,GACpB8L,EAAAA,GAAMqC,KAAIxI,EAAAA,EAAAA,IAAY,4BAAD1J,OAA6BgK,EAAI,KAAAhK,OAAIuD,IAAQ,CAC9DQ,WAEJtD,EAAAA,EAAAA,IAAK,2BAA4B,CAAEuJ,OAAMzG,MAAKQ,SAClD,EAMAmS,YAAAA,GAA+C,IAAlC3S,EAAGtC,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,WAAY+I,EAAI/I,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,QAElCtC,KAAKsT,OAAOjI,EAAM,eAAgBzG,GAClC5E,KAAKsT,OAAOjI,EAAM,oBAAqB,MAC3C,EAIAmM,sBAAAA,GAAuC,IAAhBnM,EAAI/I,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,QAC1B,MACMmV,EAA4C,SADnCzX,KAAKsX,UAAUjM,IAAS,CAAEqM,kBAAmB,QAChCA,kBAA8B,OAAS,MAEnE1X,KAAKsT,OAAOjI,EAAM,oBAAqBoM,EAC3C,KAGFE,EAAkBnE,KAAMlR,WAQ9B,OANKqV,EAAgBlE,gBACjBvD,EAAAA,EAAAA,IAAU,4BAA4B,SAAAnD,GAAgC,IAAtB,KAAE1B,EAAI,IAAEzG,EAAG,MAAEQ,GAAO2H,EAChE4K,EAAgBtE,SAAShI,EAAMzG,EAAKQ,EACxC,IACAuS,EAAgBlE,cAAe,GAE5BkE,CACX,ECrF0P,ICa3OC,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,aACNwC,WAAY,CACRqU,QAAO,EACPC,gBAAe,GACfC,gBAAe,IACfnJ,oBAAmB,IACnBoJ,iBAAgB,IAChBC,cAAaA,IAEjBhE,KAAAA,GACI,MAAM0D,EAAkBP,MAClB,YAAEV,EAAW,MAAEF,GAAUH,KAC/B,MAAO,CACHK,cACAF,QACAmB,kBAER,EACA7I,KAAIA,KACO,CACHoJ,gBAAgB,IAGxBhJ,SAAU,CAINiJ,aAAAA,GAAgB,IAAAC,EACZ,OAAkB,QAAXA,EAAA,KAAKC,cAAM,IAAAD,GAAQ,QAARA,EAAXA,EAAahN,cAAM,IAAAgN,OAAA,EAAnBA,EAAqB/M,OAAQ,OACxC,EACAiN,WAAAA,GACI,OAAO,KAAK9B,MAEPlN,QAAO+B,IAASA,EAAKkN,SAErB7R,MAAK,CAACC,EAAGC,IACHD,EAAE6R,MAAQ5R,EAAE4R,OAE3B,EACAC,UAAAA,GACI,OAAO,KAAKjC,MAEPlN,QAAO+B,KAAUA,EAAKkN,SAEtB3P,QAAO,CAAC8P,EAAMrN,KACfqN,EAAKrN,EAAKkN,QAAU,IAAKG,EAAKrN,EAAKkN,SAAW,GAAKlN,GAEnDqN,EAAKrN,EAAKkN,QAAQ7R,MAAK,CAACC,EAAGC,IAChBD,EAAE6R,MAAQ5R,EAAE4R,QAEhBE,IACR,CAAC,EACR,GAEJC,MAAO,CACHR,aAAAA,CAAcS,EAASC,GAAS,IAAAC,EAC5B,GAAI,KAAKX,iBAAkC,QAArBW,EAAK,KAAKpC,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkBC,IAAI,CAE7C,MAAM1N,EAAO,KAAKmL,MAAMwC,MAAKjM,IAAA,IAAC,GAAEgM,GAAIhM,EAAA,OAAKgM,IAAO,KAAKZ,aAAa,IAElE,KAAKc,SAAS5N,GACdiG,GAAO4H,MAAK,2BAAA7X,OAA4BwX,EAAO,QAAAxX,OAAOuX,GAAW,CAAEpO,GAAIa,GAC3E,CACJ,GAEJ0E,WAAAA,GAEI,MAAM1E,EAAO,KAAKmL,MAAMwC,MAAKG,IAAA,IAAC,GAAEJ,GAAII,EAAA,OAAKJ,IAAO,KAAKZ,aAAa,IAClE,KAAKc,SAAS5N,GACdiG,GAAO4H,MAAM,6CAA8C,CAAE7N,QACjE,EACAmF,QAAS,CACLZ,EAAC,KAODwJ,qBAAAA,CAAsB/N,GAAM,IAAAgO,EACxB,OAA+B,QAAxBA,EAAA,KAAKZ,WAAWpN,EAAK0N,WAAG,IAAAM,OAAA,EAAxBA,EAA0B3X,QAAS,CAC9C,EAKAuX,QAAAA,CAAS5N,GAAM,IAAA6I,EAAAoF,EAED,QAAVpF,EAAAI,OAAOC,WAAG,IAAAL,GAAO,QAAPA,EAAVA,EAAYM,aAAK,IAAAN,GAAS,QAATA,EAAjBA,EAAmBqF,eAAO,IAAArF,GAAO,QAAPoF,EAA1BpF,EAA4BmB,aAAK,IAAAiE,GAAjCA,EAAApY,KAAAgT,IACAqC,EAAAA,EAAAA,MAAgBiD,UAAUnO,IAC1BvJ,EAAAA,EAAAA,IAAK,2BAA4BuJ,EACrC,EAMAoO,cAAAA,CAAepO,GAEX,MAAMqO,EAAa,KAAKA,WAAWrO,GAEnCA,EAAKsO,UAAYD,EACjB,KAAK/B,gBAAgBrE,OAAOjI,EAAK0N,GAAI,YAAaW,EACtD,EAMAA,UAAAA,CAAWrO,GAAM,IAAAuO,EACb,MAAoE,kBAAf,QAA9CA,EAAO,KAAKjC,gBAAgBL,UAAUjM,EAAK0N,WAAG,IAAAa,OAAA,EAAvCA,EAAyCD,WACI,IAArD,KAAKhC,gBAAgBL,UAAUjM,EAAK0N,IAAIY,UACtB,IAAlBtO,EAAKsO,QACf,EAKAE,oBAAAA,CAAqBxO,GACjB,GAAIA,EAAKD,OAAQ,CACb,MAAM,IAAE0O,GAAQzO,EAAKD,OACrB,MAAO,CAAEpK,KAAM,WAAYoK,OAAQC,EAAKD,OAAQ1D,MAAO,CAAEoS,OAC7D,CACA,MAAO,CAAE9Y,KAAM,WAAYoK,OAAQ,CAAEC,KAAMA,EAAK0N,IACpD,EAIAgB,YAAAA,GACI,KAAK7B,gBAAiB,CAC1B,EAIA8B,eAAAA,GACI,KAAK9B,gBAAiB,CAC1B,qBC3IJ,GAAU,CAAC,EAEf,GAAQzG,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IFTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,kBAAkB,CAACI,MAAM,CAAC,2BAA2B,GAAG,aAAaL,EAAI6D,EAAE,QAAS,UAAUsG,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,OAAOkM,EAAIiK,GAAIjK,EAAIuM,aAAa,SAASjN,GAAM,OAAOW,EAAG,sBAAsB,CAACpH,IAAIyG,EAAK0N,GAAG3M,MAAM,CAAC,kBAAiB,EAAK,gCAAgCf,EAAK0N,GAAG,MAAQhN,EAAIqN,sBAAsB/N,GAAM,KAAOA,EAAK6O,UAAU,KAAO7O,EAAKrK,KAAK,KAAO+K,EAAI2N,WAAWrO,GAAM,OAASA,EAAK8O,OAAO,GAAKpO,EAAI8N,qBAAqBxO,IAAO1I,GAAG,CAAC,cAAc,SAAS0J,GAAQ,OAAON,EAAI0N,eAAepO,EAAK,IAAI,CAAEA,EAAK+O,KAAMpO,EAAG,mBAAmB,CAACI,MAAM,CAAC,KAAO,OAAO,IAAMf,EAAK+O,MAAMlI,KAAK,SAASnG,EAAIW,KAAKX,EAAIS,GAAG,KAAKT,EAAIiK,GAAIjK,EAAI0M,WAAWpN,EAAK0N,KAAK,SAASsB,GAAO,OAAOrO,EAAG,sBAAsB,CAACpH,IAAIyV,EAAMtB,GAAG3M,MAAM,CAAC,gCAAgCiO,EAAMtB,GAAG,cAAa,EAAK,KAAOsB,EAAMH,UAAU,KAAOG,EAAMrZ,KAAK,GAAK+K,EAAI8N,qBAAqBQ,KAAS,CAAEA,EAAMD,KAAMpO,EAAG,mBAAmB,CAACI,MAAM,CAAC,KAAO,OAAO,IAAMiO,EAAMD,MAAMlI,KAAK,SAASnG,EAAIW,MAAM,EAAE,KAAI,EAAE,GAAE,EAAE0J,OAAM,GAAM,CAACxR,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACmM,EAAG,KAAK,CAACG,YAAY,kCAAkC,CAACH,EAAG,mBAAmBD,EAAIS,GAAG,KAAKR,EAAG,sBAAsB,CAACI,MAAM,CAAC,aAAaL,EAAI6D,EAAE,QAAS,+BAA+B,KAAO7D,EAAI6D,EAAE,QAAS,kBAAkB,2CAA2C,IAAIjN,GAAG,CAAC,MAAQ,SAAS0J,GAAyD,OAAjDA,EAAO4F,iBAAiB5F,EAAO2F,kBAAyBjG,EAAIgO,aAAatX,MAAM,KAAMH,UAAU,IAAI,CAAC0J,EAAG,UAAU,CAACI,MAAM,CAAC,KAAO,OAAO,KAAO,IAAI8F,KAAK,UAAU,IAAI,GAAG,EAAEkE,OAAM,MAAS,CAACrK,EAAIS,GAAG,KAAKT,EAAIS,GAAG,KAAKR,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAOL,EAAImM,eAAe,oCAAoC,IAAIvV,GAAG,CAAC,MAAQoJ,EAAIiO,oBAAoB,EACtvD,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCnBhC,4ECoBA,MCpByG,GDoBzG,CACEhZ,KAAM,aACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,mCAAmCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,0NAA0N,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACvuB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,wBEEhC,MCpB2H,GDoB3H,CACE1L,KAAM,+BACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wDAAwDC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,4FAA4F,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC9nB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,wEEEhC,MCpB8G,GDoB9G,CACE1L,KAAM,kBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,yCAAyCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,sKAAsK,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACzrB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB2E,GCoB3G,CACE1L,KAAM,eACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MCff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,sCAAsCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,0DAA0D,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC1kB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,wBEOzB,MACM4N,GAAS,IAAIC,EAAAA,GAAW,CACjCxB,GAF0B,UAG1ByB,YAAaA,KAAM5K,EAAAA,EAAAA,IAAE,QAAS,gBAC9B6K,cAAeA,IAAMC,GAErBC,QAAUC,IAAU,IAAAC,EAAA9N,EAAA+N,EAEhB,OAAqB,IAAjBF,EAAMlZ,UAGLkZ,EAAM,MAIA,QAAPC,EAACvG,cAAM,IAAAuG,GAAK,QAALA,EAANA,EAAQtG,WAAG,IAAAsG,GAAO,QAAPA,EAAXA,EAAarG,aAAK,IAAAqG,IAAlBA,EAAoBtB,UAG+D,QAAxFxM,GAAqB,QAAb+N,EAAAF,EAAM,GAAGG,YAAI,IAAAD,OAAA,EAAbA,EAAeE,WAAW,aAAcJ,EAAM,GAAGK,cAAgBC,EAAAA,GAAWC,YAAI,IAAApO,GAAAA,CAAU,EAEtG,UAAM3G,CAAKgV,EAAM/P,EAAMyO,GACnB,IAKI,aAHMxF,OAAOC,IAAIC,MAAM+E,QAAQvF,KAAKoH,EAAKlQ,MAEzCoJ,OAAO+G,IAAI7G,MAAMlK,OAAOgR,UAAU,KAAM,CAAEjQ,KAAMA,EAAK0N,GAAIwC,OAAQH,EAAKG,QAAU,IAAKjH,OAAO+G,IAAI7G,MAAMlK,OAAO5C,MAAOoS,QAAO,GACpH,IACX,CACA,MAAOzI,GAEH,OADAC,GAAOD,MAAM,8BAA+B,CAAEA,WACvC,CACX,CACJ,EACAmH,OAAQ,YClCL,MAAMgD,GAAW,UAAHna,OAA6B,QAA7B8S,IAAaS,EAAAA,EAAAA,aAAgB,IAAAT,QAAA,EAAhBA,GAAkBU,KACvC4G,IAAiB9G,EAAAA,EAAAA,IAAkB,MAAQ6G,ICElDE,KDGgBC,EAAAA,EAAAA,MADG,eAACC,EAAOtZ,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAGmZ,GAAc,OAAKE,EAAAA,EAAAA,IAAaC,EAAQ,CCF7DC,IACTC,GAAYC,UACd,MAAMC,GAAkBC,EAAAA,EAAAA,MAClBvX,QAAegX,GAAOQ,KAAK,GAAD7a,OAAI8a,EAAAA,IAAW9a,OAAG+Z,EAAKlQ,MAAQ,CAC3DkR,SAAS,EACTtN,KAAMkN,IAEV,OAAOK,EAAAA,EAAAA,IAAgB3X,EAAOoK,KAAK,EAE1BwN,GAAgB,WACzB,MAyFMC,GAzFQrJ,EAAAA,EAAAA,IAAY,QAAS,CAC/BC,MAAOA,KAAA,CACHqJ,MAAO,CAAC,EACRC,MAAO,CAAC,EACRhJ,cAAc,IAElB4D,QAAS,CAILqF,QAAUvJ,GAAWwJ,GAAWxJ,EAAMqJ,MAAMG,GAK5CC,SAAWzJ,GAAW0J,GAAYA,EAC7B/V,KAAI6V,GAAUxJ,EAAMqJ,MAAMG,KAC1BrT,OAAOT,SAMZiU,aAAe3J,GAAW4J,GAAWxd,OAAOyd,OAAO7J,EAAMqJ,OAAOlT,QAAO8R,GAAQA,EAAKG,SAAWwB,IAI/FE,QAAU9J,GAAW+J,GAAY/J,EAAMsJ,MAAMS,IAEjD9J,QAAS,CACL+J,WAAAA,CAAYvC,GAER,MAAM4B,EAAQ5B,EAAMhS,QAAO,CAACwU,EAAKhC,IACxBA,EAAKG,QAIV6B,EAAIhC,EAAKuB,QAAUvB,EACZgC,IAJH9L,GAAOD,MAAM,6CAA8C,CAAE+J,SACtDgC,IAIZ,CAAC,GACJhT,EAAAA,GAAAA,IAAQpK,KAAM,QAAS,IAAKA,KAAKwc,SAAUA,GAC/C,EACAa,WAAAA,CAAYzC,GACRA,EAAM1F,SAAQkG,IACNA,EAAKuB,QACLvS,EAAAA,GAAIkT,OAAOtd,KAAKwc,MAAOpB,EAAKuB,OAChC,GAER,EACAY,OAAAA,CAAOxQ,GAAoB,IAAnB,QAAEmQ,EAAO,KAAEnC,GAAMhO,EACrB3C,EAAAA,GAAAA,IAAQpK,KAAKyc,MAAOS,EAASnC,EACjC,EACAyC,aAAAA,CAAcpC,GACVpb,KAAKqd,YAAY,CAACjC,GACtB,EACAqC,aAAAA,CAAcrC,GACVpb,KAAKmd,YAAY,CAAC/B,GACtB,EACAsC,WAAAA,CAAWvE,GAAsB,IAArB,KAAEiC,EAAI,UAAEuC,GAAWxE,EACtBiC,EAAKG,QAKVnR,EAAAA,GAAIkT,OAAOtd,KAAKwc,MAAOmB,GACvB3d,KAAKmd,YAAY,CAAC/B,KALd9J,GAAOD,MAAM,6CAA8C,CAAE+J,QAMrE,EACA,mBAAMwC,CAAcxC,GAChB,IAAKA,EAAKG,OAEN,YADAjK,GAAOD,MAAM,6CAA8C,CAAE+J,SAIjE,MAAMR,EAAQ5a,KAAK8c,aAAa1B,EAAKG,QACrC,GAAIX,EAAMlZ,OAAS,EAGf,aAFMmc,QAAQC,IAAIlD,EAAM9T,IAAIgV,KAAYiC,KAAK/d,KAAKmd,kBAClD7L,GAAO4H,MAAM0B,EAAMlZ,OAAS,0BAA2B,CAAE6Z,OAAQH,EAAKG,SAItEH,EAAKuB,SAAW/B,EAAM,GAAG+B,OAK7Bb,GAAUV,GAAM2C,MAAKC,GAAKhe,KAAKmd,YAAY,CAACa,MAJxChe,KAAKmd,YAAY,CAAC/B,GAK1B,IAGU5H,IAAMlR,WASxB,OAPKia,EAAU9I,gBACXvD,EAAAA,EAAAA,IAAU,qBAAsBqM,EAAUkB,gBAC1CvN,EAAAA,EAAAA,IAAU,qBAAsBqM,EAAUiB,gBAC1CtN,EAAAA,EAAAA,IAAU,qBAAsBqM,EAAUqB,gBAC1C1N,EAAAA,EAAAA,IAAU,mBAAoBqM,EAAUmB,aACxCnB,EAAU9I,cAAe,GAEtB8I,CACX,kBCjIO,MAAM0B,GAAgB,WACzB,MAAMzB,EAAQF,MAAcha,WA+GtB4b,GA9GQhL,EAAAA,EAAAA,IAAY,QAAS,CAC/BC,MAAOA,KAAA,CACHgL,MAAO,CAAC,EACR1K,cAAc,IAElB4D,QAAS,CACL+G,QAAUjL,GACC,CAAC+J,EAAShS,KACb,GAAKiI,EAAMgL,MAAMjB,GAGjB,OAAO/J,EAAMgL,MAAMjB,GAAShS,EAAK,GAI7CkI,QAAS,CACLiL,OAAAA,CAAQC,GAECte,KAAKme,MAAMG,EAAQpB,UACpB9S,EAAAA,GAAAA,IAAQpK,KAAKme,MAAOG,EAAQpB,QAAS,CAAC,GAG1C9S,EAAAA,GAAAA,IAAQpK,KAAKme,MAAMG,EAAQpB,SAAUoB,EAAQpT,KAAMoT,EAAQ3B,OAC/D,EACA4B,UAAAA,CAAWrB,EAAShS,GAEXlL,KAAKme,MAAMjB,IAGhB9S,EAAAA,GAAIkT,OAAOtd,KAAKme,MAAMjB,GAAUhS,EACpC,EACAuS,aAAAA,CAAcrC,GAAM,IAAAoD,EAChB,MAAMtB,GAAyB,QAAfsB,GAAAjI,EAAAA,EAAAA,aAAe,IAAAiI,GAAQ,QAARA,EAAfA,EAAiB7H,cAAM,IAAA6H,OAAA,EAAvBA,EAAyBzF,KAAM,QAC1CqC,EAAKG,QAKNH,EAAK1P,OAAS+S,EAAAA,GAASC,QACvB1e,KAAKqe,QAAQ,CACTnB,UACAhS,KAAMkQ,EAAKlQ,KACXyR,OAAQvB,EAAKuB,SAKrB3c,KAAK2e,wBAAwBvD,IAbzB9J,GAAOD,MAAM,qBAAsB,CAAE+J,QAc7C,EACAoC,aAAAA,CAAcpC,GAAM,IAAAwD,EAChB,MAAM1B,GAAyB,QAAf0B,GAAArI,EAAAA,EAAAA,aAAe,IAAAqI,GAAQ,QAARA,EAAfA,EAAiBjI,cAAM,IAAAiI,OAAA,EAAvBA,EAAyB7F,KAAM,QAC3CqC,EAAK1P,OAAS+S,EAAAA,GAASC,QAEvB1e,KAAKue,WAAWrB,EAAS9B,EAAKlQ,MAElClL,KAAK6e,6BAA6BzD,EACtC,EACAsC,WAAAA,CAAW3Q,GAAsB,IAAA+R,EAAA,IAArB,KAAE1D,EAAI,UAAEuC,GAAW5Q,EAC3B,MAAMmQ,GAAyB,QAAf4B,GAAAvI,EAAAA,EAAAA,aAAe,IAAAuI,GAAQ,QAARA,EAAfA,EAAiBnI,cAAM,IAAAmI,OAAA,EAAvBA,EAAyB/F,KAAM,QAE/C,GAAIqC,EAAK1P,OAAS+S,EAAAA,GAASC,OAAQ,CAE/B,MAAMK,EAAUxf,OAAO8G,QAAQrG,KAAKme,MAAMjB,IAAUlE,MAAKG,IAAA,IAAE,CAAEwD,GAAOxD,EAAA,OAAKwD,IAAWgB,CAAS,IACzFoB,SAAAA,EAAU,IACV/e,KAAKue,WAAWrB,EAAS6B,EAAQ,IAGrC/e,KAAKqe,QAAQ,CACTnB,UACAhS,KAAMkQ,EAAKlQ,KACXyR,OAAQvB,EAAKuB,QAErB,CAEA,MAAMqC,EAAU,IAAIC,EAAAA,GAAK,CAAEtC,OAAQgB,EAAWuB,MAAO9D,EAAK8D,MAAOC,KAAM/D,EAAK+D,OAC5Enf,KAAK6e,6BAA6BG,GAClChf,KAAK2e,wBAAwBvD,EACjC,EACAyD,4BAAAA,CAA6BzD,GAAM,IAAAgE,EAC/B,MAAMlC,GAAyB,QAAfkC,GAAA7I,EAAAA,EAAAA,aAAe,IAAA6I,GAAQ,QAARA,EAAfA,EAAiBzI,cAAM,IAAAyI,OAAA,EAAvBA,EAAyBrG,KAAM,QAEzCsG,GAAeC,EAAAA,GAAAA,IAAQlE,EAAKuB,QAC5B4C,EAA2B,MAAjBnE,EAAKkE,QAAkB9C,EAAMS,QAAQC,GAAWV,EAAME,QAAQ2C,GAC9E,GAAIE,EAAQ,KAAAC,EAER,MAAMC,EAAW,IAAIC,IAAoB,QAAjBF,EAACD,EAAOI,iBAAS,IAAAH,EAAAA,EAAI,IAI7C,OAHAC,EAASnC,OAAOlC,EAAKuB,QACrBvS,EAAAA,GAAAA,IAAQmV,EAAQ,YAAa,IAAIE,EAASzC,gBAC1C1L,GAAO4H,MAAM,mBAAoB,CAAEX,OAAQgH,EAAQnE,OAAMqE,SAAUF,EAAOI,WAE9E,CACArO,GAAO4H,MAAM,wDAAyD,CAAEkC,QAC5E,EACAuD,uBAAAA,CAAwBvD,GAAM,IAAAwE,EAC1B,MAAM1C,GAAyB,QAAf0C,GAAArJ,EAAAA,EAAAA,aAAe,IAAAqJ,GAAQ,QAARA,EAAfA,EAAiBjJ,cAAM,IAAAiJ,OAAA,EAAvBA,EAAyB7G,KAAM,QAEzCsG,GAAeC,EAAAA,GAAAA,IAAQlE,EAAKuB,QAC5B4C,EAA2B,MAAjBnE,EAAKkE,QAAkB9C,EAAMS,QAAQC,GAAWV,EAAME,QAAQ2C,GAC9E,GAAIE,EAAQ,KAAAM,EAER,MAAMJ,EAAW,IAAIC,IAAoB,QAAjBG,EAACN,EAAOI,iBAAS,IAAAE,EAAAA,EAAI,IAI7C,OAHAJ,EAASK,IAAI1E,EAAKuB,QAClBvS,EAAAA,GAAAA,IAAQmV,EAAQ,YAAa,IAAIE,EAASzC,gBAC1C1L,GAAO4H,MAAM,mBAAoB,CAAEX,OAAQgH,EAAQnE,OAAMqE,SAAUF,EAAOI,WAE9E,CACArO,GAAO4H,MAAM,wDAAyD,CAAEkC,QAC5E,IAGW5H,IAAMlR,WAQzB,OANK4b,EAAWzK,gBACZvD,EAAAA,EAAAA,IAAU,qBAAsBgO,EAAWT,gBAC3CvN,EAAAA,EAAAA,IAAU,qBAAsBgO,EAAWV,gBAC3CtN,EAAAA,EAAAA,IAAU,mBAAoBgO,EAAWR,aACzCQ,EAAWzK,cAAe,GAEvByK,CACX,EC9Ha6B,IAAoB7M,EAAAA,EAAAA,IAAY,YAAa,CACtDC,MAAOA,KAAA,CACH6M,SAAU,GACVC,cAAe,GACfC,kBAAmB,OAEvB9M,QAAS,CAIL+M,GAAAA,GAAoB,IAAhBC,EAAS9d,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,GACZ8H,EAAAA,GAAAA,IAAQpK,KAAM,WAAY,IAAI,IAAI0f,IAAIU,IAC1C,EAIAC,YAAAA,GAAuC,IAA1BH,EAAiB5d,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAE7B8H,EAAAA,GAAAA,IAAQpK,KAAM,gBAAiBkgB,EAAoBlgB,KAAKggB,SAAW,IACnE5V,EAAAA,GAAAA,IAAQpK,KAAM,oBAAqBkgB,EACvC,EAIAI,KAAAA,GACIlW,EAAAA,GAAAA,IAAQpK,KAAM,WAAY,IAC1BoK,EAAAA,GAAAA,IAAQpK,KAAM,gBAAiB,IAC/BoK,EAAAA,GAAAA,IAAQpK,KAAM,oBAAqB,KACvC,KC5BR,IAAIugB,GACG,MAAMC,GAAmB,WAQ5B,OANAD,IAAWE,EAAAA,GAAAA,MACGvN,EAAAA,EAAAA,IAAY,WAAY,CAClCC,MAAOA,KAAA,CACHuN,MAAOH,GAASG,SAGjBlN,IAAMlR,UACjB,0CCCO,MAAMqe,WAAkB1B,KAG3B2B,WAAAA,CAAY5f,GAAqB,IAAf6f,EAAQve,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,aACzBwe,MAAM,GAAI9f,EAAM,CAAE0K,KAAM,2BAH5B,gaAII1L,KAAK+gB,UAAYF,CACrB,CACA,YAAIA,CAASA,GACT7gB,KAAK+gB,UAAYF,CACrB,CACA,YAAIA,GACA,OAAO7gB,KAAK+gB,SAChB,CACA,QAAIjV,GACA,OAAO9L,KAAKghB,sBAAsBhhB,KACtC,CACA,gBAAIihB,GACA,OAA8B,IAA1BjhB,KAAK+gB,UAAUrf,OACRsM,KAAKC,MAETjO,KAAKkhB,uBAAuBlhB,KACvC,CAMAkhB,sBAAAA,CAAuBC,GACnB,OAAOA,EAAUN,SAASjY,QAAO,CAACwU,EAAKgE,IAC5BA,EAAKH,aAAe7D,EAIrBgE,EAAKH,aACL7D,GACP,EACP,CAKA4D,qBAAAA,CAAsBG,GAClB,OAAOA,EAAUN,SAASjY,QAAO,CAACwU,EAAKiE,IAI5BjE,EAAMiE,EAAMvV,MACpB,EACP,EAMG,MAAMwV,GAAevF,UAExB,GAAIsF,EAAME,OACN,OAAO,IAAI1D,SAAQ,CAAC2D,EAASC,KACzBJ,EAAMD,KAAKI,EAASC,EAAO,IAInCnQ,GAAO4H,MAAM,+BAAgC,CAAEmI,MAAOA,EAAMrgB,OAC5D,MAAMmgB,EAAYE,EACZhb,QAAgBqb,GAAcP,GAC9BN,SAAkBhD,QAAQC,IAAIzX,EAAQS,IAAIwa,MAAgBjZ,OAChE,OAAO,IAAIsY,GAAUQ,EAAUngB,KAAM6f,EAAS,EAM5Ca,GAAiBP,IACnB,MAAMQ,EAAYR,EAAUS,eAC5B,OAAO,IAAI/D,SAAQ,CAAC2D,EAASC,KACzB,MAAMpb,EAAU,GACVwb,EAAaA,KACfF,EAAUG,aAAaC,IACfA,EAAQrgB,QACR2E,EAAQ7F,QAAQuhB,GAChBF,KAGAL,EAAQnb,EACZ,IACAgL,IACAoQ,EAAOpQ,EAAM,GACf,EAENwQ,GAAY,GACd,EAEOG,GAA6BjG,UACtC,MAAMkG,GAAYtG,EAAAA,EAAAA,MAElB,UADwBsG,EAAUC,OAAOC,GACzB,CACZ7Q,GAAO4H,MAAM,wCAAyC,CAAEiJ,uBAClDF,EAAUG,gBAAgBD,EAAc,CAAEE,WAAW,IAC3D,MAAMnG,QAAa+F,EAAU/F,KAAKiG,EAAc,CAAE/F,SAAS,EAAMtN,MAAMmN,EAAAA,EAAAA,SACvEna,EAAAA,EAAAA,IAAK,sBAAsBua,EAAAA,EAAAA,IAAgBH,EAAKpN,MACpD,GAESwT,GAAkBvG,MAAOS,EAAO+F,EAAa1B,KACtD,IAEI,MAAM2B,EAAYhG,EAAMlT,QAAQ8X,GACrBP,EAAS7H,MAAMoC,GAASA,EAAKqH,YAAcrB,aAAgBnC,KAAOmC,EAAKpgB,KAAOogB,EAAKqB,cAC3FnZ,OAAOT,SAEJ6Z,EAAUlG,EAAMlT,QAAQ8X,IAClBoB,EAAUza,SAASqZ,MAGzB,SAAEpB,EAAQ,QAAE2C,SAAkBC,EAAAA,GAAAA,GAAmBL,EAAYrX,KAAMsX,EAAW3B,GAGpF,OAFAvP,GAAO4H,MAAM,sBAAuB,CAAEwJ,UAAS1C,WAAU2C,YAEjC,IAApB3C,EAASte,QAAmC,IAAnBihB,EAAQjhB,SAEjCmhB,EAAAA,EAAAA,KAASjT,EAAAA,EAAAA,IAAE,QAAS,iCACpB0B,GAAOwR,KAAK,wCACL,IAGJ,IAAIJ,KAAY1C,KAAa2C,EACxC,CACA,MAAOtR,GACH0R,GAAQ1R,MAAMA,IAEdE,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,qBACrB0B,GAAOD,MAAM,4BACjB,CACA,MAAO,EAAE,+DCvHb,IAAIqP,GAEJ,MAIasC,GAAWA,KACftC,KACDA,GAAQ,IAAIuC,GAAAA,EAAO,CAAEC,YANL,KAQbxC,IAEJ,IAAIyC,IACX,SAAWA,GACPA,EAAqB,KAAI,OACzBA,EAAqB,KAAI,OACzBA,EAA6B,aAAI,cACpC,CAJD,CAIGA,KAAmBA,GAAiB,CAAC,IACjC,MAAMC,GAAWxI,GAE2B,IADzBA,EAAMhS,QAAO,CAACwJ,EAAKgJ,IAASjJ,KAAKC,IAAIA,EAAKgJ,EAAKH,cAAcC,EAAAA,GAAWmI,KACtEnI,EAAAA,GAAWoI,QAQ1BC,GAAW3I,GANIA,IACjBA,EAAM4I,OAAMpI,IAAQ,IAAAqI,EAAAC,EAEvB,OADwBC,KAAKlc,MAA2C,QAAtCgc,EAAgB,QAAhBC,EAACtI,EAAKwI,kBAAU,IAAAF,OAAA,EAAfA,EAAkB,2BAAmB,IAAAD,EAAAA,EAAI,MACpDI,MAAKC,GAAiC,gBAApBA,EAAUC,QAAiD,IAAtBD,EAAUnJ,SAAuC,aAAlBmJ,EAAUlf,KAAmB,IAMxIof,CAAYpJ,KACXA,EAAMiJ,MAAKzI,GAAQA,EAAKH,cAAgBC,EAAAA,GAAWC,uBClDxD,MAAM8I,GAAgB7I,IAClBiB,EAAAA,EAAAA,IAAgBjB,GAErBM,IAASC,EAAAA,EAAAA,MC+BTuI,GAAqBtJ,GACnBwI,GAAQxI,GACJ2I,GAAQ3I,GACDuI,GAAegB,aAEnBhB,GAAeiB,KAGnBjB,GAAekB,KA4BbC,GAAuBvI,eAAOX,EAAMmH,EAAagC,GAA8B,IAAtBC,EAASliB,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GAC3E,IAAKigB,EACD,OAEJ,GAAIA,EAAY7W,OAAS+S,EAAAA,GAASC,OAC9B,MAAM,IAAItN,OAAMxB,EAAAA,EAAAA,IAAE,QAAS,gCAG/B,GAAI2U,IAAWpB,GAAeiB,MAAQhJ,EAAKkE,UAAYiD,EAAYrX,KAC/D,MAAM,IAAIkG,OAAMxB,EAAAA,EAAAA,IAAE,QAAS,kDAa/B,GAAI,GAAAvO,OAAGkhB,EAAYrX,KAAI,KAAI8P,WAAW,GAAD3Z,OAAI+Z,EAAKlQ,KAAI,MAC9C,MAAM,IAAIkG,OAAMxB,EAAAA,EAAAA,IAAE,QAAS,4EAG/BxF,EAAAA,GAAAA,IAAQgR,EAAM,SAAUqJ,EAAAA,GAAWC,SACnC,MAAMC,EA9CV,SAAmC9Z,EAAM8R,EAAQ4F,GAC7C,MAAMqC,EAAO/Z,IAASsY,GAAeiB,MAAOxU,EAAAA,EAAAA,IAAE,QAAS,yCAA0C,CAAE+M,SAAQ4F,iBAAiB3S,EAAAA,EAAAA,IAAE,QAAS,0CAA2C,CAAE+M,SAAQ4F,gBAC5L,IAAIsC,EAMJ,OALAA,GAAQhC,EAAAA,EAAAA,IAAS,oEAADxhB,OAAqEujB,GAAQ,CACzFE,QAAQ,EACRC,QAASC,EAAAA,GACTC,SAAUA,KAAM,IAAAC,EAAO,QAALA,EAAAL,SAAK,IAAAK,GAALA,EAAOC,YAAaN,OAAQriB,CAAS,IAEpD,IAAMqiB,GAASA,EAAMM,WAChC,CAqC2BC,CAA0Bb,EAAQnJ,EAAKqH,SAAUF,EAAYrX,MAC9EwV,EAAQsC,KACd,aAAatC,EAAMZ,KAAI/D,UACnB,MAAMsJ,EAAcnc,GACF,IAAVA,GACO0G,EAAAA,EAAAA,IAAE,QAAS,WAEfA,EAAAA,EAAAA,IAAE,QAAS,iBAAapN,EAAW0G,GAE9C,IACI,MAAMwS,GAASC,EAAAA,EAAAA,MACT2J,GAAc3hB,EAAAA,GAAAA,MAAKwY,EAAAA,GAAaf,EAAKlQ,MACrCqa,GAAkB5hB,EAAAA,GAAAA,MAAKwY,EAAAA,GAAaoG,EAAYrX,MACtD,GAAIqZ,IAAWpB,GAAekB,KAAM,CAChC,IAAIpO,EAASmF,EAAKqH,SAElB,IAAK+B,EAAW,CACZ,MAAMgB,QAAmB9J,EAAO+J,qBAAqBF,GACrDtP,GAASyP,EAAAA,EAAAA,IAActK,EAAKqH,SAAU+C,EAAW1e,KAAKkX,GAAMA,EAAEyE,WAAW,CACrEkD,OAAQN,EACRO,oBAAqBxK,EAAK1P,OAAS+S,EAAAA,GAASC,QAEpD,CAGA,SAFMhD,EAAOmK,SAASP,GAAa3hB,EAAAA,GAAAA,MAAK4hB,EAAiBtP,IAErDmF,EAAKkE,UAAYiD,EAAYrX,KAAM,CACnC,MAAM,KAAE4D,SAAe4M,EAAOQ,MAAKvY,EAAAA,GAAAA,MAAK4hB,EAAiBtP,GAAS,CAC9DmG,SAAS,EACTtN,MAAMmN,EAAAA,EAAAA,SAEVna,EAAAA,EAAAA,IAAK,sBAAsBua,EAAAA,EAAAA,IAAgBvN,GAC/C,CACJ,KACK,CAED,IAAK0V,EAAW,CACZ,MAAMgB,QDjIC,WAAgB,IAAfta,EAAI5I,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAC/B4I,EAAO,GAAH7J,OAAM8a,EAAAA,IAAW9a,OAAG6J,GACxB,MAAM4a,EAAa,IAAIC,gBACjB/J,GAAkBC,EAAAA,EAAAA,MACxB,OAAO,IAAI+J,GAAAA,mBAAkBjK,MAAOyF,EAASC,EAAQwE,KACjDA,GAAS,IAAMH,EAAWI,UAC1B,IACI,MAAMC,QAAyBzK,GAAO+J,qBAAqBva,EAAM,CAC7DkR,SAAS,EACTtN,KAAMkN,EACNoK,aAAa,EACbC,OAAQP,EAAWO,SAEjBtL,EAAOoL,EAAiBrX,KAAK,GAC7B+R,EAAWsF,EAAiBrX,KAAK3N,MAAM,GAC7C,GAAI4Z,EAAKuL,WAAapb,GAAQ,GAAA7J,OAAG0Z,EAAKuL,SAAQ,OAAQpb,EAClD,MAAM,IAAIkG,MAAM,2CAEpBoQ,EAAQ,CACJjC,OAAQ0E,GAAalJ,GACrB8F,SAAUA,EAAS/Z,KAAIpC,IACnB,IACI,OAAOuf,GAAavf,EACxB,CACA,MAAO2M,GAEH,OADAC,GAAOD,MAAM,0BAADhQ,OAA2BqD,EAAO+d,SAAQ,KAAK,CAAEpR,UACtD,IACX,KACD/H,OAAOT,UAElB,CACA,MAAOwI,GACHoQ,EAAOpQ,EACX,IAER,CC8F6CkV,CAAYhE,EAAYrX,MACjD,IAAIsb,EAAAA,GAAAA,GAAY,CAACpL,GAAOoK,EAAW3E,UAC/B,IAEI,MAAM,SAAEb,EAAQ,QAAE2C,SAAkBC,EAAAA,GAAAA,GAAmBL,EAAYrX,KAAM,CAACkQ,GAAOoK,EAAW3E,UAE5F,IAAKb,EAASte,SAAWihB,EAAQjhB,OAC7B,MAER,CACA,MAAO2P,GAGH,YADAE,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,kBAEzB,CAER,CAGA,UACU8L,EAAO+K,SAASnB,GAAa3hB,EAAAA,GAAAA,MAAK4hB,EAAiBnK,EAAKqH,UAClE,CACA,MAAOpR,GAAO,IAAAqV,EAAAC,EACV,MAAMC,EAAS,IAAIC,UACbjC,QAA2B,QAApB8B,EAAMrV,EAAMJ,gBAAQ,IAAAyV,OAAA,EAAdA,EAAgB9B,QAC7BkC,EACuB,QADhBH,EAAGC,EAAOG,gBAAgBnC,QAAAA,EAAQ,GAAI,YAC9ClP,cAAc,kBAAU,IAAAiR,OAAA,EADbA,EACeK,YAI/B,MAHIF,IACAvV,EAAAA,EAAAA,IAAUuV,GAERzV,CACV,EAGAvP,EAAAA,EAAAA,IAAK,qBAAsBsZ,EAC/B,CACJ,CACA,MAAO/J,GACH,GAAIA,aAAiB4V,GAAAA,GAAY,KAAAC,EAAAC,EAAAC,EAC7B,GAAgC,OAA5B/V,SAAe,QAAV6V,EAAL7V,EAAOJ,gBAAQ,IAAAiW,OAAA,EAAfA,EAAiBG,QACjB,MAAM,IAAIjW,OAAMxB,EAAAA,EAAAA,IAAE,QAAS,kEAE1B,GAAgC,OAA5ByB,SAAe,QAAV8V,EAAL9V,EAAOJ,gBAAQ,IAAAkW,OAAA,EAAfA,EAAiBE,QACtB,MAAM,IAAIjW,OAAMxB,EAAAA,EAAAA,IAAE,QAAS,yBAE1B,GAAgC,OAA5ByB,SAAe,QAAV+V,EAAL/V,EAAOJ,gBAAQ,IAAAmW,OAAA,EAAfA,EAAiBC,QACtB,MAAM,IAAIjW,OAAMxB,EAAAA,EAAAA,IAAE,QAAS,oCAE1B,GAAIyB,EAAMyV,QACX,MAAM,IAAI1V,MAAMC,EAAMyV,QAE9B,CAEA,MADAxV,GAAO4H,MAAM7H,GACP,IAAID,KACd,CAAC,QAEGhH,EAAAA,GAAAA,IAAQgR,EAAM,SAAU,IACxBuJ,GACJ,IAER,EAQA5I,eAAeuL,GAAwBhN,GAA0B,IAAlBR,EAAGxX,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKsY,EAAKtY,UAAAZ,OAAA,EAAAY,UAAA,QAAAE,EAC3D,MAAM,QAAEgf,EAAO,OAAEC,EAAM,QAAE8F,GAAY1J,QAAQ2J,gBACvCC,EAAU7M,EAAM9T,KAAIsU,GAAQA,EAAKG,SAAQjS,OAAOT,SA+DtD,OA9DmB6e,EAAAA,EAAAA,KAAqB9X,EAAAA,EAAAA,IAAE,QAAS,uBAC9C+X,kBAAiB,GACjBC,WAAW5J,IAEJyJ,EAAQ1f,SAASiW,EAAEzC,UAE1BsM,kBAAkB,IAClBC,gBAAe,GACfC,QAAQjO,GACRkO,kBAAiB,CAAC5H,EAAWlV,KAC9B,MAAM+c,EAAU,GACVhS,GAASwM,EAAAA,GAAAA,UAASvX,GAClBgd,EAAWtN,EAAM9T,KAAIsU,GAAQA,EAAKkE,UAClCnB,EAAQvD,EAAM9T,KAAIsU,GAAQA,EAAKlQ,OAerC,OAdIoP,IAAW6I,GAAekB,MAAQ/J,IAAW6I,GAAegB,cAC5D8D,EAAQznB,KAAK,CACT2nB,MAAOlS,GAASrG,EAAAA,EAAAA,IAAE,QAAS,mBAAoB,CAAEqG,eAAUzT,EAAW,CAAE4lB,QAAQ,EAAOC,UAAU,KAAWzY,EAAAA,EAAAA,IAAE,QAAS,QACvHlE,KAAM,UACN0O,KAAMkO,GACN,cAAMzb,CAAS0V,GACXf,EAAQ,CACJe,YAAaA,EAAY,GACzBjI,OAAQ6I,GAAekB,MAE/B,IAIJ6D,EAASngB,SAASmD,IAIlBiT,EAAMpW,SAASmD,IAIfoP,IAAW6I,GAAeiB,MAAQ9J,IAAW6I,GAAegB,cAC5D8D,EAAQznB,KAAK,CACT2nB,MAAOlS,GAASrG,EAAAA,EAAAA,IAAE,QAAS,mBAAoB,CAAEqG,eAAUzT,EAAW,CAAE4lB,QAAQ,EAAOC,UAAU,KAAWzY,EAAAA,EAAAA,IAAE,QAAS,QACvHlE,KAAM4O,IAAW6I,GAAeiB,KAAO,UAAY,YACnDhK,KAAMmO,GACN,cAAM1b,CAAS0V,GACXf,EAAQ,CACJe,YAAaA,EAAY,GACzBjI,OAAQ6I,GAAeiB,MAE/B,IAhBG6D,CAmBG,IAEbvZ,QACMxE,OACNS,OAAO0G,IACRC,GAAO4H,MAAM7H,GACTA,aAAiBmX,EAAAA,GACjBhH,GAAQ,GAGRC,EAAO,IAAIrQ,OAAMxB,EAAAA,EAAAA,IAAE,QAAS,kCAChC,IAEG2X,CACX,CACsB,IAAIhN,EAAAA,GAAW,CACjCxB,GAAI,YACJyB,WAAAA,CAAYI,GACR,OAAQsJ,GAAkBtJ,IACtB,KAAKuI,GAAeiB,KAChB,OAAOxU,EAAAA,EAAAA,IAAE,QAAS,QACtB,KAAKuT,GAAekB,KAChB,OAAOzU,EAAAA,EAAAA,IAAE,QAAS,QACtB,KAAKuT,GAAegB,aAChB,OAAOvU,EAAAA,EAAAA,IAAE,QAAS,gBAE9B,EACA6K,cAAeA,IAAM8N,GACrB5N,QAAQC,KAECA,EAAM4I,OAAMpI,IAAI,IAAAqN,EAAA,OAAa,QAAbA,EAAIrN,EAAKL,YAAI,IAAA0N,OAAA,EAATA,EAAWzN,WAAW,UAAU,KAGlDJ,EAAMlZ,OAAS,IAAM0hB,GAAQxI,IAAU2I,GAAQ3I,IAE1D,UAAMxU,CAAKgV,EAAM/P,EAAMyO,GACnB,MAAMQ,EAAS4J,GAAkB,CAAC9I,IAClC,IAAI1W,EACJ,IACIA,QAAe4iB,GAAwBhN,EAAQR,EAAK,CAACsB,GACzD,CACA,MAAOsN,GAEH,OADApX,GAAOD,MAAMqX,IACN,CACX,CACA,IAAe,IAAXhkB,EAEA,OADAme,EAAAA,EAAAA,KAASjT,EAAAA,EAAAA,IAAE,QAAS,0CAA2C,CAAE0W,SAAUlL,EAAKuN,eACzE,KAEX,IAEI,aADMrE,GAAqBlJ,EAAM1W,EAAO6d,YAAa7d,EAAO4V,SACrD,CACX,CACA,MAAOjJ,GACH,SAAIA,aAAiBD,OAAWC,EAAMyV,YAClCvV,EAAAA,EAAAA,IAAUF,EAAMyV,SAET,KAGf,CACJ,EACA,eAAM8B,CAAUhO,EAAOvP,EAAMyO,GACzB,MAAMQ,EAAS4J,GAAkBtJ,GAC3BlW,QAAe4iB,GAAwBhN,EAAQR,EAAKc,GAE1D,IAAe,IAAXlW,EAIA,OAHAme,EAAAA,EAAAA,IAA0B,IAAjBjI,EAAMlZ,QACTkO,EAAAA,EAAAA,IAAE,QAAS,0CAA2C,CAAE0W,SAAU1L,EAAM,GAAG+N,eAC3E/Y,EAAAA,EAAAA,IAAE,QAAS,qCACVgL,EAAM9T,KAAI,IAAM,OAE3B,MAAM+hB,EAAWjO,EAAM9T,KAAIiV,UACvB,IAEI,aADMuI,GAAqBlJ,EAAM1W,EAAO6d,YAAa7d,EAAO4V,SACrD,CACX,CACA,MAAOjJ,GAEH,OADAC,GAAOD,MAAM,aAADhQ,OAAcqD,EAAO4V,OAAM,SAAS,CAAEc,OAAM/J,WACjD,CACX,KAKJ,aAAawM,QAAQC,IAAI+K,EAC7B,EACArQ,MAAO,qBCjTJ,MAAMsQ,GAAyB/M,UAIlC,MAAM1V,EAAU0iB,EACXzf,QAAQpB,GACS,SAAdA,EAAK8gB,OACL1X,GAAO4H,MAAM,wBAAyB,CAAE8P,KAAM9gB,EAAK8gB,KAAMtd,KAAMxD,EAAKwD,QAC7D,KAGZ5E,KAAKoB,IAAS,IAAA6E,EAAAkc,EAAAC,EAAAC,EAEb,OACiC,QADjCpc,EAA2B,QAA3Bkc,EAAO/gB,SAAgB,QAAZghB,EAAJhhB,EAAMkhB,kBAAU,IAAAF,OAAA,EAAhBA,EAAAhoB,KAAAgH,UAAoB,IAAA+gB,EAAAA,EACpB/gB,SAAsB,QAAlBihB,EAAJjhB,EAAMmhB,wBAAgB,IAAAF,OAAA,EAAtBA,EAAAjoB,KAAAgH,UAA0B,IAAA6E,EAAAA,EAC1B7E,CAAI,IAEf,IAAIohB,GAAS,EACb,MAAMC,EAAW,IAAI5I,GAAU,QAE/B,IAAK,MAAMU,KAAShb,EAEhB,GAAIgb,aAAiBmI,iBAArB,CACIlY,GAAOmY,KAAK,+DACZ,MAAMrI,EAAOC,EAAMqI,YACnB,GAAa,OAATtI,EAAe,CACf9P,GAAOmY,KAAK,qCAAsC,CAAE/d,KAAM2V,EAAM3V,KAAMsd,KAAM3H,EAAM2H,QAClFzX,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,oDACrB,QACJ,CAGA,GAAkB,yBAAdwR,EAAK1V,OAAoC0V,EAAK1V,KAAM,CAC/C4d,IACDhY,GAAOmY,KAAK,8EACZE,EAAAA,EAAAA,KAAY/Z,EAAAA,EAAAA,IAAE,QAAS,uFACvB0Z,GAAS,GAEb,QACJ,CACAC,EAAS1I,SAASrgB,KAAK4gB,EAE3B,MAEA,IACImI,EAAS1I,SAASrgB,WAAW8gB,GAAaD,GAC9C,CACA,MAAOhQ,GAEHC,GAAOD,MAAM,mCAAoC,CAAEA,SACvD,CAEJ,OAAOkY,CAAQ,EAENK,GAAsB7N,MAAOhB,EAAMwH,EAAa1B,KACzD,MAAMN,GAAWE,EAAAA,GAAAA,KAKjB,SAHU+F,EAAAA,GAAAA,GAAYzL,EAAK8F,SAAUA,KACjC9F,EAAK8F,eAAiByB,GAAgBvH,EAAK8F,SAAU0B,EAAa1B,IAEzC,IAAzB9F,EAAK8F,SAASnf,OAGd,OAFA4P,GAAOwR,KAAK,qBAAsB,CAAE/H,UACpC8H,EAAAA,EAAAA,KAASjT,EAAAA,EAAAA,IAAE,QAAS,uBACb,GAGX0B,GAAO4H,MAAM,sBAAD7X,OAAuBkhB,EAAYrX,MAAQ,CAAE6P,OAAM8F,SAAU9F,EAAK8F,WAC9E,MAAMH,EAAQ,GACRmJ,EAA0B9N,MAAOoF,EAAWjW,KAC9C,IAAK,MAAMkW,KAAQD,EAAUN,SAAU,CAGnC,MAAMiJ,GAAenmB,EAAAA,GAAAA,MAAKuH,EAAMkW,EAAKpgB,MAGrC,GAAIogB,aAAgBT,GAApB,CACI,MAAMwB,GAAe4H,EAAAA,GAAAA,IAAU5N,EAAAA,GAAaoG,EAAYrX,KAAM4e,GAC9D,IACI/G,GAAQ7J,MAAM,uBAAwB,CAAE4Q,uBAClC9H,GAA2BG,SAC3B0H,EAAwBzI,EAAM0I,EACxC,CACA,MAAOzY,IACHE,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,6CAA8C,CAAEuR,UAAWC,EAAKpgB,QACrFsQ,GAAOD,MAAM,GAAI,CAAEA,QAAO8Q,eAAchB,UAAWC,GACvD,CAEJ,MAEA9P,GAAO4H,MAAM,sBAAuBvV,EAAAA,GAAAA,MAAK4e,EAAYrX,KAAM4e,GAAe,CAAE1I,SAE5EV,EAAMlgB,KAAK+f,EAASyJ,OAAOF,EAAc1I,EAAMmB,EAAY5F,QAC/D,GAIJ4D,EAAS0J,cAGHJ,EAAwB9O,EAAM,KACpCwF,EAAS2J,QAET,MAEMC,SAFgBtM,QAAQuM,WAAW1J,IAElBpX,QAAO5E,GAA4B,aAAlBA,EAAO2iB,SAC/C,OAAI8C,EAAOzoB,OAAS,GAChB4P,GAAOD,MAAM,8BAA+B,CAAE8Y,YAC9C5Y,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,qCACd,KAEX0B,GAAO4H,MAAM,gCACbnD,EAAAA,EAAAA,KAAYnG,EAAAA,EAAAA,IAAE,QAAS,gCAChBiO,QAAQC,IAAI4C,GAAM,EAEhB2J,GAAsBtO,eAAOnB,EAAO2H,EAAa1B,GAA6B,IAAnByJ,EAAMhoB,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GAC1E,MAAMoe,EAAQ,GAKd,SAHU8F,EAAAA,GAAAA,GAAY5L,EAAOiG,KACzBjG,QAAc0H,GAAgB1H,EAAO2H,EAAa1B,IAEjC,IAAjBjG,EAAMlZ,OAGN,OAFA4P,GAAOwR,KAAK,sBAAuB,CAAElI,eACrCiI,EAAAA,EAAAA,KAASjT,EAAAA,EAAAA,IAAE,QAAS,wBAGxB,IAAK,MAAMwL,KAAQR,EACfxQ,EAAAA,GAAAA,IAAQgR,EAAM,SAAUqJ,EAAAA,GAAWC,SACnChE,EAAMlgB,KAAK8jB,GAAqBlJ,EAAMmH,EAAa+H,EAASnH,GAAekB,KAAOlB,GAAeiB,MAAM,IAG3G,MAAMrC,QAAgBlE,QAAQuM,WAAW1J,GACzC9F,EAAM1F,SAAQkG,GAAQhR,EAAAA,GAAAA,IAAQgR,EAAM,cAAU5Y,KAE9C,MAAM2nB,EAASpI,EAAQzY,QAAO5E,GAA4B,aAAlBA,EAAO2iB,SAC/C,GAAI8C,EAAOzoB,OAAS,EAGhB,OAFA4P,GAAOD,MAAM,sCAAuC,CAAE8Y,gBACtD5Y,EAAAA,EAAAA,IAAU+Y,GAAS1a,EAAAA,EAAAA,IAAE,QAAS,mCAAoCA,EAAAA,EAAAA,IAAE,QAAS,kCAGjF0B,GAAO4H,MAAM,+BACbnD,EAAAA,EAAAA,IAAYuU,GAAS1a,EAAAA,EAAAA,IAAE,QAAS,8BAA+BA,EAAAA,EAAAA,IAAE,QAAS,4BAC9E,EChKa2a,IAAsBrX,EAAAA,EAAAA,IAAY,WAAY,CACvDC,MAAOA,KAAA,CACHqX,SAAU,KAEdpX,QAAS,CAIL+M,GAAAA,GAAoB,IAAhBC,EAAS9d,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,GAAAA,UAAA,GAAG,GACZ8H,EAAAA,GAAAA,IAAQpK,KAAM,WAAYogB,EAC9B,EAIAE,KAAAA,GACIlW,EAAAA,GAAAA,IAAQpK,KAAM,WAAY,GAC9B,KCjBR,GAAeoK,EAAAA,GAAIqgB,OAAO,CACtB3b,KAAIA,KACO,CACH4b,eAAgB,OAGxBva,OAAAA,GAAU,IAAAwa,EACN,MAAMC,EAAanV,SAASC,cAAc,oBAC1C1V,KAAK0qB,eAAwC,QAA1BC,EAAGC,aAAU,EAAVA,EAAYC,mBAAW,IAAAF,EAAAA,EAAI,KACjD3qB,KAAK8qB,gBAAkB,IAAIC,gBAAgB1kB,IACnCA,EAAQ3E,OAAS,GAAK2E,EAAQ,GAAG4P,SAAW2U,IAC5C5qB,KAAK0qB,eAAiBrkB,EAAQ,GAAG2kB,YAAYC,MACjD,IAEJjrB,KAAK8qB,gBAAgBI,QAAQN,EACjC,EACAxV,aAAAA,GACIpV,KAAK8qB,gBAAgBK,YACzB,ICxCuP,ICkB5OvT,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,cACNwC,WAAY,CACR4nB,cAAa,KACbC,aAAY,KACZrT,iBAAgBA,EAAAA,GAEpBsT,OAAQ,CACJC,IAEJjgB,MAAO,CACHJ,KAAM,CACFQ,KAAMC,OACNE,QAAS,MAGjBoI,KAAAA,GACI,MAAMuX,EAAgBjB,KAChBkB,EAAanP,KACb4B,EAAaD,KACbyN,EAAiB3L,KACjB4L,EAAgBnL,MAChB,YAAE9J,GAAgBL,KACxB,MAAO,CACHmV,gBACAC,aACAvN,aACAwN,iBACAC,gBACAjV,cAER,EACAxH,SAAU,CACN0c,IAAAA,GAC4BxO,MAIxB,MAAO,CAAC,OAFM,KAAKlS,KAAKzH,MAAM,KAAK6F,OAAOT,SAAS/B,KAF3BsW,EAE8C,IAFrChY,GAAWgY,GAAG,GAAA/b,OAAO+D,EAAK,OAIrC0B,KAAKoE,GAASA,EAAK3E,QAAQ,WAAY,QACjE,EACAslB,QAAAA,GACI,OAAO,KAAKD,KAAK9kB,KAAI,CAACgT,EAAK5Q,KACvB,MAAMyT,EAAS,KAAKmP,sBAAsBhS,GACpCsB,EAAOuB,EAAS,KAAKoP,kBAAkBpP,QAAUna,EACjDgI,EAAK,IAAK,KAAK6N,OAAQjN,OAAQ,CAAEgQ,KAAMA,aAAI,EAAJA,EAAMG,QAAU7T,MAAO,CAAEoS,QACtE,MAAO,CACHA,MACAkS,OAAO,EACPhrB,KAAM,KAAKirB,kBAAkBnS,GAC7BtP,KAEA0hB,YAAahjB,IAAU,KAAK0iB,KAAKlqB,OAAS,EAC7C,GAET,EACAyqB,kBAAAA,GACI,OAA2C,IAApC,KAAKR,cAAcjL,MAAMhf,MACpC,EAEA0qB,qBAAAA,GAGI,OAAO,KAAKD,oBAAsB,KAAKzB,eAAiB,GAC5D,EAEA2B,QAAAA,GAAW,IAAAC,EAAAxT,EACP,OAA6B,QAA7BwT,EAAuB,QAAvBxT,EAAO,KAAKpC,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkBsB,YAAI,IAAAkS,EAAAA,4IACjC,EACAC,aAAAA,GACI,OAAO,KAAKb,eAAe1L,QAC/B,EACAwM,aAAAA,GACI,OAAO,KAAKhB,cAAchB,QAC9B,GAEJha,QAAS,CACLub,iBAAAA,CAAkBpP,GACd,OAAO,KAAK8O,WAAW/O,QAAQC,EACnC,EACAmP,qBAAAA,CAAsB5gB,GAAM,IAAA6B,EACxB,OAA8E,QAA9EA,EAAQ,KAAK2J,aAAe,KAAKwH,WAAWE,QAAQ,KAAK1H,YAAYqC,GAAI7N,UAAK,IAAA6B,EAAAA,EAAK,IACvF,EACAkf,iBAAAA,CAAkB/gB,GACI,IAAAuhB,EAAlB,GAAa,MAATvhB,EACA,OAAuB,QAAhBuhB,EAAA,KAAK/V,mBAAW,IAAA+V,OAAA,EAAhBA,EAAkBzrB,QAAQ4O,EAAAA,EAAAA,IAAE,QAAS,QAEhD,MAAM+M,EAAS,KAAKmP,sBAAsB5gB,GACpCkQ,EAAOuB,EAAS,KAAKoP,kBAAkBpP,QAAUna,EACvD,OAAO4Y,aAAI,EAAJA,EAAMuN,eAAelG,EAAAA,GAAAA,UAASvX,EACzC,EACAwhB,OAAAA,CAAQliB,GAAI,IAAAmiB,GACJniB,SAAS,QAAPmiB,EAAFniB,EAAI9C,aAAK,IAAAilB,OAAA,EAATA,EAAW7S,OAAQ,KAAKzB,OAAO3Q,MAAMoS,KACrC,KAAKxN,MAAM,SAEnB,EACAsgB,UAAAA,CAAWzsB,EAAO+K,GACT/K,EAAM0sB,eAIP3hB,IAAS,KAAK0gB,KAAK,KAAKA,KAAKlqB,OAAS,GAKtCvB,EAAM2sB,QACN3sB,EAAM0sB,aAAaE,WAAa,OAGhC5sB,EAAM0sB,aAAaE,WAAa,OARhC5sB,EAAM0sB,aAAaE,WAAa,OAUxC,EACA,YAAMC,CAAO7sB,EAAO+K,GAAM,IAAA+hB,EAAAC,EAAAC,EAEtB,KAAK,KAAKX,eAAoC,QAAnBS,EAAC9sB,EAAM0sB,oBAAY,IAAAI,GAAO,QAAPA,EAAlBA,EAAoBlE,aAAK,IAAAkE,GAAzBA,EAA2BvrB,QACnD,OAKJvB,EAAM8R,iBAEN,MAAMmO,EAAY,KAAKoM,cACjBzD,EAAQ,KAAsB,QAAlBmE,EAAA/sB,EAAM0sB,oBAAY,IAAAK,OAAA,EAAlBA,EAAoBnE,QAAS,IAGzCQ,QAAiBT,GAAuBC,GAExClI,QAAiC,QAAtBsM,EAAM,KAAKzW,mBAAW,IAAAyW,OAAA,EAAhBA,EAAkB5G,YAAYrb,IAC/CqU,EAASsB,aAAQ,EAARA,EAAUtB,OACzB,IAAKA,EAED,YADAhO,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,0CAG9B,MAAMwd,EAAuD,IAA5C7N,EAAOtE,YAAcC,EAAAA,GAAWmS,QAC3C/C,EAASnqB,EAAM2sB,QAGrB,IAAKM,GAA4B,IAAjBjtB,EAAMmtB,OAClB,OAIJ,GAFAhc,GAAO4H,MAAM,UAAW,CAAE/Y,QAAOof,SAAQa,YAAWmJ,aAEhDA,EAAS1I,SAASnf,OAAS,EAE3B,kBADMkoB,GAAoBL,EAAUhK,EAAQsB,EAASA,UAIzD,MAAMjG,EAAQwF,EAAUtZ,KAAI6V,GAAU,KAAK8O,WAAW/O,QAAQC,WACxD0N,GAAoBzP,EAAO2E,EAAQsB,EAASA,SAAUyJ,GAGxDlK,EAAUyD,MAAKlH,GAAU,KAAK4P,cAAcxkB,SAAS4U,OACrDrL,GAAO4H,MAAM,gDACb,KAAKwS,eAAepL,QAE5B,EACAiN,eAAAA,CAAgBrkB,EAAOskB,GAAS,IAAAC,EAC5B,OAAID,SAAW,QAAJC,EAAPD,EAAShjB,UAAE,IAAAijB,GAAO,QAAPA,EAAXA,EAAa/lB,aAAK,IAAA+lB,OAAA,EAAlBA,EAAoB3T,OAAQ,KAAKzB,OAAO3Q,MAAMoS,KACvClK,EAAAA,EAAAA,IAAE,QAAS,4BAEH,IAAV1G,GACE0G,EAAAA,EAAAA,IAAE,QAAS,8BAA+B4d,GAE9C,IACX,EACAE,cAAAA,CAAeF,GAAS,IAAAG,EACpB,OAAIH,SAAW,QAAJG,EAAPH,EAAShjB,UAAE,IAAAmjB,GAAO,QAAPA,EAAXA,EAAajmB,aAAK,IAAAimB,OAAA,EAAlBA,EAAoB7T,OAAQ,KAAKzB,OAAO3Q,MAAMoS,KACvClK,EAAAA,EAAAA,IAAE,QAAS,4BAEf,IACX,EACAA,EAACA,EAAAA,sBCnLL,GAAU,CAAC,EAEf,GAAQ6B,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IFTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,gBAAgB,CAACG,YAAY,0BAA0B4F,MAAM,CAAE,yCAA0ChG,EAAIqgB,uBAAwBhgB,MAAM,CAAC,oCAAoC,GAAG,aAAaL,EAAI6D,EAAE,QAAS,2BAA2BsG,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,UAAU/E,GAAG,WAAW,MAAO,CAACkM,EAAI6hB,GAAG,WAAW,EAAExX,OAAM,IAAO,MAAK,IAAOrK,EAAIiK,GAAIjK,EAAI8f,UAAU,SAAS2B,EAAQtkB,GAAO,OAAO8C,EAAG,eAAeD,EAAIG,GAAG,CAACtH,IAAI4oB,EAAQ1T,IAAI1N,MAAM,CAAC,IAAM,OAAO,GAAKohB,EAAQhjB,GAAG,kBAA4B,IAAVtB,GAAe6C,EAAI2e,gBAAkB,IAAI,MAAQ3e,EAAIwhB,gBAAgBrkB,EAAOskB,GAAS,mBAAmBzhB,EAAI2hB,eAAeF,IAAU7qB,GAAG,CAAC,KAAO,SAAS0J,GAAQ,OAAON,EAAIihB,OAAO3gB,EAAQmhB,EAAQ1T,IAAI,GAAG+T,SAAS,CAAC,MAAQ,SAASxhB,GAAQ,OAAON,EAAI2gB,QAAQc,EAAQhjB,GAAG,EAAE,SAAW,SAAS6B,GAAQ,OAAON,EAAI6gB,WAAWvgB,EAAQmhB,EAAQ1T,IAAI,GAAG5D,YAAYnK,EAAIoK,GAAG,CAAY,IAAVjN,EAAa,CAACtE,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACmM,EAAG,mBAAmB,CAACI,MAAM,CAAC,KAAO,GAAG,IAAML,EAAIsgB,YAAY,EAAEjW,OAAM,GAAM,MAAM,MAAK,IAAO,eAAeoX,GAAQ,GAAO,IAAG,EACjmC,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCqBnBM,GAAiBlT,IAC1B,MAAMmT,EAAYnT,EAAMtR,QAAO8R,GAAQA,EAAK1P,OAAS+S,EAAAA,GAASQ,OAAMvd,OAC9DssB,EAAcpT,EAAMtR,QAAO8R,GAAQA,EAAK1P,OAAS+S,EAAAA,GAASC,SAAQhd,OACxE,OAAkB,IAAdqsB,GACO/P,EAAAA,EAAAA,IAAE,QAAS,uBAAwB,wBAAyBgQ,EAAa,CAAEA,gBAE7D,IAAhBA,GACEhQ,EAAAA,EAAAA,IAAE,QAAS,mBAAoB,oBAAqB+P,EAAW,CAAEA,cAE1D,IAAdA,GACO/P,EAAAA,EAAAA,IAAE,QAAS,kCAAmC,mCAAoCgQ,EAAa,CAAEA,gBAExF,IAAhBA,GACOhQ,EAAAA,EAAAA,IAAE,QAAS,gCAAiC,iCAAkC+P,EAAW,CAAEA,eAE/Fne,EAAAA,EAAAA,IAAE,QAAS,8CAA+C,CAAEme,YAAWC,eAAc,ECvDhG,gBCsBO,MAAMC,IAAsB/a,EAAAA,EAAAA,IAAY,cAAe,CAC1DC,MAAOA,KAAA,CACH+a,OAAQ,SChBHC,GAAmB,WAC5B,MAwEMC,GAxEQlb,EAAAA,EAAAA,IAAY,WAAY,CAClCC,MAAOA,KAAA,CACHkb,kBAAc7rB,EACd8rB,QAAS,KAEblb,QAAS,CAOL,YAAMmb,GAAS,IAAAC,EAAAC,EACX,QAA0BjsB,IAAtBxC,KAAKquB,aACL,MAAM,IAAIjd,MAAM,sCAEpB,MAAMkd,GAA2B,QAAjBE,GAAAC,EAAAzuB,KAAKsuB,SAAQlnB,YAAI,IAAAonB,OAAA,EAAjBA,EAAAttB,KAAAutB,KAAyB,GACnCC,EAAU1uB,KAAKquB,aAAa5L,SAC5BkM,EAAmB3uB,KAAKquB,aAAaO,cAC3C,GAAIF,IAAYJ,EACZ,OAAO,EAEX,MAAMlT,EAAOpb,KAAKquB,aAClBjkB,EAAAA,GAAAA,IAAQgR,EAAM,SAAUqJ,EAAAA,GAAWC,SACnC,IAqBI,OAnBA1kB,KAAKquB,aAAaE,OAAOD,GACzBhd,GAAO4H,MAAM,iBAAkB,CAAEqJ,YAAaviB,KAAKquB,aAAaO,cAAeD,2BAEzEzd,EAAAA,EAAAA,IAAM,CACRqT,OAAQ,OACR/a,IAAKmlB,EACLE,QAAS,CACLC,YAAa9uB,KAAKquB,aAAaO,cAC/BG,UAAW,QAInBjtB,EAAAA,EAAAA,IAAK,qBAAsB9B,KAAKquB,eAChCvsB,EAAAA,EAAAA,IAAK,qBAAsB9B,KAAKquB,eAChCvsB,EAAAA,EAAAA,IAAK,mBAAoB,CACrBsZ,KAAMpb,KAAKquB,aACX1Q,UAAW,GAAFtc,QAAKie,EAAAA,GAAAA,SAAQtf,KAAKquB,aAAa1R,QAAO,KAAAtb,OAAIqtB,KAEvD1uB,KAAKgvB,UACE,CACX,CACA,MAAO3d,GAIH,GAHAC,GAAOD,MAAM,4BAA6B,CAAEA,UAE5CrR,KAAKquB,aAAaE,OAAOG,IACrBO,EAAAA,EAAAA,IAAa5d,GAAQ,KAAAqV,EAAAQ,EAErB,GAAgC,OAA5B7V,SAAe,QAAVqV,EAALrV,EAAOJ,gBAAQ,IAAAyV,OAAA,EAAfA,EAAiBW,QACjB,MAAM,IAAIjW,OAAMxB,EAAAA,EAAAA,GAAE,QAAS,2DAA4D,CAAE8e,aAExF,GAAgC,OAA5Brd,SAAe,QAAV6V,EAAL7V,EAAOJ,gBAAQ,IAAAiW,OAAA,EAAfA,EAAiBG,QACtB,MAAM,IAAIjW,OAAMxB,EAAAA,EAAAA,GAAE,QAAS,8FAA+F,CACtH0e,UACAxU,KAAK2I,EAAAA,GAAAA,UAASziB,KAAKquB,aAAa/O,WAG5C,CAEA,MAAM,IAAIlO,OAAMxB,EAAAA,EAAAA,GAAE,QAAS,+BAAgC,CAAE8e,YACjE,CAAC,QAEGtkB,EAAAA,GAAAA,IAAQgR,EAAM,cAAU5Y,EAC5B,CACJ,IAGcgR,IAAMlR,WAS5B,OAPK8rB,EAAc3a,gBACfvD,EAAAA,EAAAA,IAAU,qBAAqB,SAAUkL,GACrCgT,EAAcC,aAAejT,EAC7BgT,EAAcE,QAAUlT,EAAKqH,QACjC,IACA2L,EAAc3a,cAAe,GAE1B2a,CACX,ECrFW,KAAIc,KAAKzF,uCCcpB,SAAS0F,GAAaC,GACpB,IAAIC,EACJ,MAAMC,GAAQ,SAAQF,GACtB,OAAoD,OAA5CC,EAAc,MAATC,OAAgB,EAASA,EAAM9c,KAAe6c,EAAKC,CAClE,CAEA,MAAMC,GAAgB,MAAWjb,YAAS,EAE1C,SAASkb,MAAoBptB,GAC3B,IAAI6T,EACAlV,EACAO,EACA0E,EAOJ,GANuB,iBAAZ5D,EAAK,IAAmBR,MAAM+C,QAAQvC,EAAK,MACnDrB,EAAQO,EAAW0E,GAAW5D,EAC/B6T,EAASsZ,KAERtZ,EAAQlV,EAAQO,EAAW0E,GAAW5D,GAEpC6T,EACH,OAAO,MACJrU,MAAM+C,QAAQ5D,KACjBA,EAAS,CAACA,IACPa,MAAM+C,QAAQrD,KACjBA,EAAY,CAACA,IACf,MAAMmuB,EAAW,GACXC,EAAU,KACdD,EAASva,SAASrV,GAAOA,MACzB4vB,EAAS/tB,OAAS,CAAC,EAMfiuB,GAAY,SAChB,IAAM,CAACR,GAAalZ,IAAS,SAAQjQ,MACrC,EAAEqM,EAAIud,MAEJ,GADAF,KACKrd,EACH,OACF,MAAMwd,GAAe,SAASD,GAAY,IAAKA,GAAaA,EAC5DH,EAASjvB,QACJO,EAAO+uB,SAAS3vB,GACVmB,EAAUwF,KAAKzG,GAbb,EAACgS,EAAIlS,EAAOE,EAAUuvB,KACrCvd,EAAG2E,iBAAiB7W,EAAOE,EAAUuvB,GAC9B,IAAMvd,EAAG6E,oBAAoB/W,EAAOE,EAAUuvB,IAWZG,CAAS1d,EAAIlS,EAAOE,EAAUwvB,OAEpE,GAEH,CAAEG,WAAW,EAAMC,MAAO,SAEtBC,EAAO,KACXP,IACAD,GAAS,EAGX,OADA,SAAkBQ,GACXA,CACT,CAEA,IAAIC,IAAiB,EACrB,SAASC,GAAena,EAAQoa,EAASrqB,EAAU,CAAC,GAClD,MAAM,OAAEsO,EAASib,GAAa,OAAEe,EAAS,GAAE,QAAEC,GAAU,EAAI,aAAEC,GAAe,GAAUxqB,EACtF,IAAKsO,EACH,OAAO,MACL,QAAU6b,KACZA,IAAiB,EACjBvuB,MAAM6uB,KAAKnc,EAAOmB,SAASib,KAAKjR,UAAUvK,SAAS7C,GAAOA,EAAG2E,iBAAiB,QAAS,SACvF1C,EAAOmB,SAASkb,gBAAgB3Z,iBAAiB,QAAS,QAE5D,IAAI4Z,GAAe,EACnB,MAAMC,EAAgB1wB,GACbmwB,EAAOzM,MAAMiN,IAClB,GAAuB,iBAAZA,EACT,OAAOlvB,MAAM6uB,KAAKnc,EAAOmB,SAASsb,iBAAiBD,IAAUjN,MAAMxR,GAAOA,IAAOlS,EAAM8V,QAAU9V,EAAM6wB,eAAejpB,SAASsK,KAC1H,CACL,MAAMA,EAAK8c,GAAa2B,GACxB,OAAOze,IAAOlS,EAAM8V,SAAW5D,GAAMlS,EAAM6wB,eAAejpB,SAASsK,GACrE,KAeEqd,EAAU,CACdF,GAAiBlb,EAAQ,SAbTnU,IAChB,MAAMkS,EAAK8c,GAAalZ,GACnB5D,GAAMA,IAAOlS,EAAM8V,SAAU9V,EAAM6wB,eAAejpB,SAASsK,KAE3C,IAAjBlS,EAAM0W,SACR+Z,GAAgBC,EAAa1wB,IAC1BywB,EAILP,EAAQlwB,GAHNywB,GAAe,EAGH,GAG8B,CAAEK,SAAS,EAAMV,YAC7Df,GAAiBlb,EAAQ,eAAgBoU,IACvC,MAAMrW,EAAK8c,GAAalZ,GACxB2a,GAAgBC,EAAanI,OAASrW,GAAOqW,EAAEsI,eAAejpB,SAASsK,GAAI,GAC1E,CAAE4e,SAAS,IACdT,GAAgBhB,GAAiBlb,EAAQ,QAASnU,IAChDgO,YAAW,KACT,IAAIkhB,EACJ,MAAMhd,EAAK8c,GAAalZ,GACqD,YAAhC,OAAvCoZ,EAAK/a,EAAOmB,SAASyb,oBAAyB,EAAS7B,EAAG8B,WAAiC,MAAN9e,OAAa,EAASA,EAAG+e,SAAS9c,EAAOmB,SAASyb,iBAC3Ib,EAAQlwB,EACV,GACC,EAAE,KAEPmJ,OAAOT,SAET,MADa,IAAM6mB,EAAQxa,SAASrV,GAAOA,KAE7C,CAEA,MAAMwxB,GAAkB,CACtB,CAAC,MAAelhB,SAASkC,EAAIif,GAC3B,MAAMf,GAAWe,EAAQC,UAAUC,OACnC,GAA6B,mBAAlBF,EAAQlsB,MACjBiN,EAAGof,sBAAwBrB,GAAe/d,EAAIif,EAAQlsB,MAAO,CAAEmrB,gBAC1D,CACL,MAAOF,EAASrqB,GAAWsrB,EAAQlsB,MACnCiN,EAAGof,sBAAwBrB,GAAe/d,EAAIge,EAAS9wB,OAAOmyB,OAAO,CAAEnB,WAAWvqB,GACpF,CACF,EACA,CAAC,MAAe2rB,WAAWtf,GACzBA,EAAGof,uBACL,GAkDC,MAAethB,QA4Hf,MAAeA,QA6DoB,oBAAfyhB,WAA6BA,WAA+B,oBAAXtd,OAAyBA,OAA2B,oBAAXud,OAAyBA,OAAyB,oBAAT/jB,MAAuBA,KAkf9K,MAAeqC,QAiHf,MAAeA,QA6Gf,MAAeA,QA6Zf,MAAeA,QASf,MAAeA,QAkXTtH,QACEA,QACCA,QACFA,QA6BP,MAAesH,SAkHF,SAAI,GC/9DpB,MCpB+G,GDoB/G,CACEnP,KAAM,mBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,0CAA0CC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gIAAgI,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACppB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,wBEbhC,SAAetC,EAAAA,GAAIqgB,OAAO,CACtBzpB,KAAM,qBACNwC,WAAY,CACRsuB,iBAAgB,GAChBC,WAAUA,GAAAA,GAEdjjB,KAAIA,KACO,CACH8L,MAAO,KAGf1L,SAAU,CACN8iB,YAAAA,GACI,OAA6B,IAAtB,KAAKpX,MAAMlZ,MACtB,EACAuwB,cAAAA,GACI,OAAO,KAAKD,cACL,KAAKpX,MAAM,GAAGlP,OAAS+S,EAAAA,GAASC,MAC3C,EACA1d,IAAAA,GACI,OAAK,KAAK8K,KAGV,GAAAzK,OAAU,KAAK6wB,QAAO,OAAA7wB,OAAM,KAAKyK,MAFtB,KAAKomB,OAGpB,EACApmB,IAAAA,GACI,MAAMqmB,EAAY,KAAKvX,MAAMhS,QAAO,CAACwpB,EAAOhX,IAASgX,EAAQhX,EAAKtP,MAAQ,GAAG,GACvEA,EAAOumB,SAASF,EAAW,KAAO,EACxC,MAAoB,iBAATrmB,GAAqBA,EAAO,EAC5B,MAEJ0D,EAAAA,EAAAA,IAAe1D,GAAM,EAChC,EACAomB,OAAAA,GACI,GAAI,KAAKF,aAAc,KAAAtO,EACnB,MAAMtI,EAAO,KAAKR,MAAM,GACxB,OAAsB,QAAf8I,EAAAtI,EAAKwI,kBAAU,IAAAF,OAAA,EAAfA,EAAiBiF,cAAevN,EAAKqH,QAChD,CACA,OAAOqL,GAAc,KAAKlT,MAC9B,GAEJpK,QAAS,CACL8C,MAAAA,CAAOsH,GACH,KAAKA,MAAQA,EACb,KAAK0X,MAAMC,WAAWC,kBAEtB5X,EAAMzZ,MAAM,EAAG,GAAG+T,SAAQkG,IACtB,MAAMqX,EAAUhd,SAASC,cAAa,mCAAArU,OAAoC+Z,EAAKG,OAAM,iCACjFkX,GACoB,KAAKH,MAAMC,WACnB9f,YAAYggB,EAAQC,WAAWC,WAAU,GACzD,IAEJ,KAAKC,WAAU,KACX,KAAKtmB,MAAM,SAAU,KAAKkG,IAAI,GAEtC,KC7D0P,sBCW9P,GAAU,CAAC,EAEf,GAAQf,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IHTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,MAAM,CAACG,YAAY,yBAAyB,CAACH,EAAG,OAAO,CAACG,YAAY,+BAA+B,CAACH,EAAG,OAAO,CAAC6mB,IAAI,eAAe9mB,EAAIS,GAAG,KAAMT,EAAIkmB,eAAgBjmB,EAAG,cAAcA,EAAG,qBAAqB,GAAGD,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACG,YAAY,+BAA+B,CAACJ,EAAIS,GAAGT,EAAIU,GAAGV,EAAI/K,UACvY,GACsB,IGUpB,EACA,KACA,KACA,MAI8B,QCjB1B8xB,GAAU1oB,EAAAA,GAAIqgB,OAAOsI,IAC3B,IAAIN,GCSJroB,EAAAA,GAAI4oB,UAAU,iBAAkB3B,IAChC,MAAMje,IAAU6f,EAAAA,EAAAA,MAChB,IAAerb,EAAAA,EAAAA,IAAgB,CAC3BtM,MAAO,CACHqR,OAAQ,CACJjR,KAAM,CAACgT,EAAAA,GAAQwU,EAAAA,GAAQC,EAAAA,IACvB5gB,UAAU,GAEdqI,MAAO,CACHlP,KAAM9J,MACN2Q,UAAU,GAEdmY,eAAgB,CACZhf,KAAM7E,OACNgF,QAAS,IAGjBunB,OAAAA,GACI,MAAO,CACHC,mBAAmBnkB,EAAAA,EAAAA,KAAS,IAAMlP,KAAKqzB,oBACvCC,oBAAoBpkB,EAAAA,EAAAA,KAAS,IAAMlP,KAAKszB,qBAEhD,EACAxkB,KAAIA,KACO,CACHykB,QAAS,GACTC,UAAU,EACVC,UAAU,IAGlBvkB,SAAU,CACNwkB,UAAAA,GAAa,IAAAtb,EAET,QAAmB,QAAXA,EAAApY,KAAKqY,cAAM,IAAAD,GAAO,QAAPA,EAAXA,EAAa1Q,aAAK,IAAA0Q,GAAK,QAALA,EAAlBA,EAAoB0B,WAAG,IAAA1B,OAAA,EAAvBA,EAAyB1S,aAAc,KAAKa,QAAQ,WAAY,KAC5E,EACAotB,aAAAA,GAAgB,IAAAC,EAAAC,EACZ,OAAyB,QAAlBD,EAAA5zB,KAAKqY,OAAOjN,cAAM,IAAAwoB,OAAA,EAAlBA,EAAoBrY,UAA2B,QAArBsY,EAAI7zB,KAAKqY,OAAO3Q,aAAK,IAAAmsB,OAAA,EAAjBA,EAAmBtY,SAAU,IACtE,EACAA,MAAAA,GAAS,IAAAuY,EACL,OAAkB,QAAlBA,EAAO9zB,KAAK2c,cAAM,IAAAmX,OAAA,EAAXA,EAAavY,MACxB,EACAwY,QAAAA,GACI,OCjCY,SAAUC,GAC9B,IAAItqB,EAAO,EACX,IAAK,IAAIlI,EAAI,EAAGA,EAAIwyB,EAAItyB,OAAQF,IAC5BkI,GAASA,GAAQ,GAAKA,EAAOsqB,EAAIvuB,WAAWjE,GAAM,EAEtD,OAAQkI,IAAS,CACrB,CD2BmBuqB,CAASj0B,KAAK2c,OAAOA,OAChC,EACAuX,SAAAA,GACI,OAAOl0B,KAAK2c,OAAO0K,SAAW5C,EAAAA,GAAWC,SAA4B,KAAjB1kB,KAAKuzB,OAC7D,EAKA/Y,WAAAA,GAEI,OAAOxa,KAAK2c,OAAOgM,aAAe3oB,KAAK2c,OAAO8F,QAClD,EAIAA,QAAAA,GACI,MAAuB,KAAnBziB,KAAKm0B,UACEn0B,KAAKwa,YAETxa,KAAKwa,YAAYrZ,MAAM,EAAG,EAAInB,KAAKm0B,UAAUzyB,OACxD,EAIAyyB,SAAAA,GACI,OAAIn0B,KAAK2c,OAAOjR,OAAS+S,EAAAA,GAASC,OACvB,IAEJ0V,EAAAA,GAAAA,SAAQp0B,KAAKwa,YACxB,EACAgS,aAAAA,GACI,OAAOxsB,KAAKwrB,cAAchB,QAC9B,EACA+B,aAAAA,GACI,OAAOvsB,KAAK0rB,eAAe1L,QAC/B,EACAqU,UAAAA,GACI,OAAOr0B,KAAKusB,cAAcxkB,SAAS/H,KAAK2c,OAAOA,OACnD,EACA2X,UAAAA,GACI,OAAOt0B,KAAKouB,cAAcC,eAAiBruB,KAAK2c,MACpD,EACA4X,qBAAAA,GACI,OAAOv0B,KAAKs0B,YAAct0B,KAAK0qB,eAAiB,GACpD,EACA8J,QAAAA,GACI,OAAO7oB,OAAO3L,KAAKub,UAAY5P,OAAO3L,KAAK2zB,cAC/C,EACAc,OAAAA,GACI,GAAIz0B,KAAKs0B,WACL,OAAO,EAEX,MAAMG,EAAWrZ,GACsC,KAA3CA,aAAI,EAAJA,EAAMH,aAAcC,EAAAA,GAAWoI,QAG3C,OAAItjB,KAAKusB,cAAc7qB,OAAS,EACd1B,KAAKusB,cAAczlB,KAAI6V,GAAU3c,KAAKyrB,WAAW/O,QAAQC,KAC1D6G,MAAMiR,GAEhBA,EAAQz0B,KAAK2c,OACxB,EACAyQ,OAAAA,GACI,OAAIptB,KAAK2c,OAAOjR,OAAS+S,EAAAA,GAASC,SAI9B1e,KAAKwsB,cAAczkB,SAAS/H,KAAK2c,OAAOA,SAGa,IAAjD3c,KAAK2c,OAAO1B,YAAcC,EAAAA,GAAWmS,OACjD,EACAqH,WAAY,CACRvjB,GAAAA,GACI,OAAOnR,KAAK20B,iBAAiBzG,SAAWluB,KAAK+zB,SAASruB,UAC1D,EACAya,GAAAA,CAAI+N,GACAluB,KAAK20B,iBAAiBzG,OAASA,EAASluB,KAAK+zB,SAASruB,WAAa,IACvE,GAEJ4uB,UAAAA,GACI,OAAOt0B,KAAKouB,cAAcC,eAAiBruB,KAAK2c,MACpD,EAIA2W,kBAAAA,GACI,OAAItzB,KAAK2c,OAAO0K,SAAW5C,EAAAA,GAAWmQ,OAC3B,GAEJxhB,GACF9J,QAAOgR,IACR,IAAKA,EAAOK,QACR,OAAO,EAIX,IACI,OAAOL,EAAOK,QAAQ,CAAC3a,KAAK2c,QAAS3c,KAAK0W,YAC9C,CACA,MAAOrF,GAEH,OADAC,GAAOD,MAAM,8BAA+B,CAAEiJ,SAAQjJ,WAC/C,CACX,KAEC3K,MAAK,CAACC,EAAGC,KAAOD,EAAE6R,OAAS,IAAM5R,EAAE4R,OAAS,IACrD,EACA6a,iBAAAA,GACI,OAAOrzB,KAAKszB,mBAAmBta,MAAMsB,QAA8B9X,IAAnB8X,EAAOzO,SAC3D,GAEJ8M,MAAO,CAKHgE,MAAAA,CAAOhW,EAAGC,GACFD,EAAEgW,SAAW/V,EAAE+V,QACf3c,KAAK60B,YAEb,EACAH,UAAAA,IAC4B,IAApB10B,KAAK00B,YAGLpgB,OAAOnG,YAAW,KACd,GAAInO,KAAK00B,WAEL,OAGJ,MAAM3Z,EAAOtF,SAASqf,eAAe,mBACxB,OAAT/Z,IACAA,EAAKga,MAAMC,eAAe,iBAC1Bja,EAAKga,MAAMC,eAAe,iBAC9B,GACD,IAEX,GAEJ5f,aAAAA,GACIpV,KAAK60B,YACT,EACArkB,QAAS,CACLqkB,UAAAA,GAAa,IAAAI,EAAAC,EAETl1B,KAAKuzB,QAAU,GAEL,QAAV0B,EAAAj1B,KAAKsyB,aAAK,IAAA2C,GAAS,QAATA,EAAVA,EAAYxC,eAAO,IAAAwC,GAAO,QAAPC,EAAnBD,EAAqB3U,aAAK,IAAA4U,GAA1BA,EAAAh0B,KAAA+zB,GAEAj1B,KAAK00B,YAAa,CACtB,EAEAS,YAAAA,CAAah1B,GAET,GAAIH,KAAK00B,WACL,OAIJ,GAAK10B,KAAKyzB,SASL,KAAA2B,EAED,MAAMra,EAAe,QAAXqa,EAAGp1B,KAAKwS,WAAG,IAAA4iB,OAAA,EAARA,EAAUC,QAAQ,oBAC/Bta,EAAKga,MAAMC,eAAe,iBAC1Bja,EAAKga,MAAMC,eAAe,gBAC9B,KAdoB,KAAAM,EAEhB,MAAMva,EAAe,QAAXua,EAAGt1B,KAAKwS,WAAG,IAAA8iB,OAAA,EAARA,EAAUD,QAAQ,oBACzBrK,EAAcjQ,EAAKwa,wBAGzBxa,EAAKga,MAAMS,YAAY,gBAAiBrjB,KAAKsjB,IAAI,EAAGt1B,EAAMu1B,QAAU1K,EAAYpnB,KAAO,KAAO,MAC9FmX,EAAKga,MAAMS,YAAY,gBAAiBrjB,KAAKsjB,IAAI,EAAGt1B,EAAMw1B,QAAU3K,EAAY4K,KAAO,KAC3F,CAQA,MAAMC,EAAwB71B,KAAKusB,cAAc7qB,OAAS,EAC1D1B,KAAK20B,iBAAiBzG,OAASluB,KAAKq0B,YAAcwB,EAAwB,SAAW71B,KAAK+zB,SAASruB,WAEnGvF,EAAM8R,iBACN9R,EAAM6R,iBACV,EACA8jB,iBAAAA,CAAkB31B,GAEd,KAAIH,KAAKs0B,YAILn0B,EAAMmtB,OAAS,GAInB,OAAIntB,EAAM2sB,SAAW3sB,EAAM41B,SAA4B,IAAjB51B,EAAMmtB,QACxCntB,EAAM8R,iBACNqC,OAAON,MAAKjJ,EAAAA,EAAAA,IAAY,cAAe,CAAEgS,OAAQ/c,KAAKub,WAC/C,QAEPvb,KAAKqzB,mBACLlzB,EAAM8R,iBACN9R,EAAM6R,kBAENhS,KAAKqzB,kBAAkBjtB,KAAKpG,KAAK2c,OAAQ3c,KAAK0W,YAAa1W,KAAK0zB,aAIhEpf,OAAON,MAAKjJ,EAAAA,EAAAA,IAAY,cAAe,CAAEgS,OAAQ/c,KAAKub,SAAW,SAEzE,EACAya,sBAAAA,CAAuB71B,GAAO,IAAA81B,EAC1B91B,EAAM8R,iBACN9R,EAAM6R,kBACFkkB,UAAsB,QAATD,EAAbC,GAAevb,eAAO,IAAAsb,GAAtBA,EAAA/0B,KAAAg1B,GAAyB,CAACl2B,KAAK2c,QAAS3c,KAAK0W,cAC7Cwf,GAAc9vB,KAAKpG,KAAK2c,OAAQ3c,KAAK0W,YAAa1W,KAAK0zB,WAE/D,EACA9G,UAAAA,CAAWzsB,GACPH,KAAKwzB,SAAWxzB,KAAKotB,QAChBptB,KAAKotB,QAKNjtB,EAAM2sB,QACN3sB,EAAM0sB,aAAaE,WAAa,OAGhC5sB,EAAM0sB,aAAaE,WAAa,OARhC5sB,EAAM0sB,aAAaE,WAAa,MAUxC,EACAoJ,WAAAA,CAAYh2B,GAGR,MAAMi2B,EAAgBj2B,EAAMi2B,cACxBA,SAAAA,EAAehF,SAASjxB,EAAMk2B,iBAGlCr2B,KAAKwzB,UAAW,EACpB,EACA,iBAAM8C,CAAYn2B,GAAO,IAAA8sB,EAAAsJ,EAAArJ,EAErB,GADA/sB,EAAM6R,mBACDhS,KAAKy0B,UAAYz0B,KAAKub,OAGvB,OAFApb,EAAM8R,sBACN9R,EAAM6R,kBAGVV,GAAO4H,MAAM,eAAgB,CAAE/Y,UAEb,QAAlB8sB,EAAA9sB,EAAM0sB,oBAAY,IAAAI,GAAW,QAAXsJ,EAAlBtJ,EAAoBuJ,iBAAS,IAAAD,GAA7BA,EAAAr1B,KAAA+rB,GAEAjtB,KAAKouB,cAAcY,SAGfhvB,KAAKusB,cAAcxkB,SAAS/H,KAAK2c,OAAOA,QACxC3c,KAAKwrB,cAAcrL,IAAIngB,KAAKusB,eAG5BvsB,KAAKwrB,cAAcrL,IAAI,CAACngB,KAAK2c,OAAOA,SAExC,MAAM/B,EAAQ5a,KAAKwrB,cAAchB,SAC5B1jB,KAAI6V,GAAU3c,KAAKyrB,WAAW/O,QAAQC,KACrC8Z,ODvTmB1a,UAC1B,IAAI8B,SAAS2D,IACXiR,KACDA,IAAU,IAAIK,IAAU4D,SACxBjhB,SAASib,KAAKje,YAAYggB,GAAQjgB,MAEtCigB,GAAQnf,OAAOsH,GACf6X,GAAQkE,IAAI,UAAU,KAClBnV,EAAQiR,GAAQjgB,KAChBigB,GAAQmE,KAAK,SAAS,GACxB,IC6SsBC,CAAsBjc,GACxB,QAAlBsS,EAAA/sB,EAAM0sB,oBAAY,IAAAK,GAAlBA,EAAoB4J,aAAaL,GAAQ,IAAK,GAClD,EACAM,SAAAA,GACI/2B,KAAKwrB,cAAclL,QACnBtgB,KAAKwzB,UAAW,EAChBliB,GAAO4H,MAAM,aACjB,EACA,YAAM8T,CAAO7sB,GAAO,IAAA62B,EAAAC,EAAAne,EAEhB,KAAK9Y,KAAKwsB,eAAoC,QAAnBwK,EAAC72B,EAAM0sB,oBAAY,IAAAmK,GAAO,QAAPA,EAAlBA,EAAoBjO,aAAK,IAAAiO,GAAzBA,EAA2Bt1B,QACnD,OAEJvB,EAAM8R,iBACN9R,EAAM6R,kBAEN,MAAMoO,EAAYpgB,KAAKwsB,cACjBzD,EAAQ,KAAsB,QAAlBkO,EAAA92B,EAAM0sB,oBAAY,IAAAoK,OAAA,EAAlBA,EAAoBlO,QAAS,IAGzCQ,QAAiBT,GAAuBC,GAExClI,QAAiC,QAAtB/H,EAAM9Y,KAAK0W,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkByN,YAAYvmB,KAAK2c,OAAOzR,OAC3DqU,EAASsB,aAAQ,EAARA,EAAUtB,OACzB,IAAKA,EAED,YADAhO,EAAAA,EAAAA,IAAUvR,KAAK4P,EAAE,QAAS,0CAK9B,IAAK5P,KAAKotB,SAAWjtB,EAAMmtB,OACvB,OAEJ,MAAMhD,EAASnqB,EAAM2sB,QAIrB,GAHA9sB,KAAKwzB,UAAW,EAChBliB,GAAO4H,MAAM,UAAW,CAAE/Y,QAAOof,SAAQa,YAAWmJ,aAEhDA,EAAS1I,SAASnf,OAAS,EAE3B,kBADMkoB,GAAoBL,EAAUhK,EAAQsB,EAASA,UAIzD,MAAMjG,EAAQwF,EAAUtZ,KAAI6V,GAAU3c,KAAKyrB,WAAW/O,QAAQC,WACxD0N,GAAoBzP,EAAO2E,EAAQsB,EAASA,SAAUyJ,GAGxDlK,EAAUyD,MAAKlH,GAAU3c,KAAKusB,cAAcxkB,SAAS4U,OACrDrL,GAAO4H,MAAM,gDACblZ,KAAK0rB,eAAepL,QAE5B,EACA1Q,EAACA,EAAAA,qBExWT,MCNmQ,GDMnQ,CACI5O,KAAM,sBACNsK,MAAO,CACHqR,OAAQ,CACJjR,KAAMnM,OACNgT,UAAU,GAEdmE,YAAa,CACThL,KAAMnM,OACNgT,UAAU,GAEd2kB,OAAQ,CACJxrB,KAAM4G,SACNC,UAAU,IAGlBoG,MAAO,CACHgE,MAAAA,GACI,KAAKwa,mBACT,EACAzgB,WAAAA,GACI,KAAKygB,mBACT,GAEJhnB,OAAAA,GACI,KAAKgnB,mBACT,EACA3mB,QAAS,CACL,uBAAM2mB,GACF,MAAMC,QAAgB,KAAKF,OAAO,KAAKva,OAAQ,KAAKjG,aAChD0gB,EACA,KAAK5kB,IAAIggB,gBAAgB4E,GAGzB,KAAK5kB,IAAIggB,iBAEjB,IExBR,IAXgB,OACd,IFRW,WAA+C,OAAOxmB,EAA5BhM,KAAYiM,MAAMD,IAAa,OACtE,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QClBhC,wCCoBA,MCpB4G,GDoB5G,CACEhL,KAAM,gBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,uCAAuCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,2EAA2E,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC5lB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QHLhC,IAAekL,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,mBACNwC,WAAY,CACR6zB,cAAa,GACbC,oBAAmB,GACnBC,eAAc,KACdC,UAAS,KACTC,kBAAiB,KACjBzf,iBAAgB,IAChB0f,cAAaA,GAAAA,GAEjBpsB,MAAO,CACHof,eAAgB,CACZhf,KAAM7E,OACN0L,UAAU,GAEdghB,QAAS,CACL7nB,KAAMC,OACN4G,UAAU,GAEd2b,OAAQ,CACJxiB,KAAM7C,QACNgD,SAAS,GAEb8Q,OAAQ,CACJjR,KAAMnM,OACNgT,UAAU,GAEdkhB,SAAU,CACN/nB,KAAM7C,QACNgD,SAAS,IAGjBoI,KAAAA,GACI,MAAM,YAAEyC,GAAgBL,KAExB,MAAO,CAEHK,YAAaA,EACb4c,oBAJuBqE,EAAAA,EAAAA,IAAO,qBAAsB,IAM5D,EACA7oB,KAAIA,KACO,CACH8oB,cAAe,OAGvB1oB,SAAU,CACNwkB,UAAAA,GAAa,IAAAtb,EAET,QAAmB,QAAXA,EAAA,KAAKC,cAAM,IAAAD,GAAO,QAAPA,EAAXA,EAAa1Q,aAAK,IAAA0Q,GAAK,QAALA,EAAlBA,EAAoB0B,WAAG,IAAA1B,OAAA,EAAvBA,EAAyB1S,aAAc,KAAKa,QAAQ,WAAY,KAC5E,EACA2tB,SAAAA,GACI,OAAO,KAAKvX,OAAO0K,SAAW5C,EAAAA,GAAWC,OAC7C,EAEAmT,oBAAAA,GACI,OAAI,KAAKnN,eAAiB,KAAO,KAAK+I,SAC3B,GAEJ,KAAKH,mBAAmBhqB,QAAOgR,IAClC,IAAI,IAAAwd,EACA,OAAOxd,SAAc,QAARwd,EAANxd,EAAQyd,cAAM,IAAAD,OAAA,EAAdA,EAAA52B,KAAAoZ,EAAiB,KAAKqC,OAAQ,KAAKjG,YAC9C,CACA,MAAOrF,GAEH,OADAC,GAAOD,MAAM,2CAA4C,CAAEiJ,SAAQjJ,WAC5D,CACX,IAER,EAEA2mB,oBAAAA,GACI,OAAI,KAAKvE,SACE,GAEJ,KAAKH,mBAAmBhqB,QAAOgR,GAAyC,mBAAxBA,EAAO2d,cAClE,EAEAC,kBAAAA,GAGI,GAAI,KAAKN,cACL,OAAO,KAAKC,qBAEhB,MAAMzkB,EAAU,IAET,KAAKykB,wBAEL,KAAKvE,mBAAmBhqB,QAAOgR,GAAUA,EAAOzO,UAAYssB,EAAAA,GAAYC,QAAyC,mBAAxB9d,EAAO2d,gBACrG3uB,QAAO,CAAClE,EAAO8D,EAAO4E,IAEb5E,IAAU4E,EAAKuqB,WAAU/d,GAAUA,EAAOvB,KAAO3T,EAAM2T,OAG5Duf,EAAgBllB,EAAQ9J,QAAOgR,IAAWA,EAAO/B,SAAQzR,KAAIwT,GAAUA,EAAOvB,KAEpF,OAAO3F,EAAQ9J,QAAOgR,KAAYA,EAAO/B,QAAU+f,EAAcvwB,SAASuS,EAAO/B,UACrF,EACAggB,qBAAAA,GACI,OAAO,KAAKjF,mBACPhqB,QAAOgR,GAAUA,EAAO/B,SACxB3P,QAAO,CAAC4vB,EAAKle,KACTke,EAAIle,EAAO/B,UACZigB,EAAIle,EAAO/B,QAAU,IAEzBigB,EAAIle,EAAO/B,QAAQ/X,KAAK8Z,GACjBke,IACR,CAAC,EACR,EACA9D,WAAY,CACRvjB,GAAAA,GACI,OAAO,KAAK+c,MAChB,EACA/N,GAAAA,CAAI/a,GACA,KAAKkH,MAAM,gBAAiBlH,EAChC,GAOJqzB,qBAAoBA,IACThjB,SAASC,cAAc,8BAElCgjB,SAAAA,GACI,OAAO,KAAK/b,OAAOiH,WAAW,aAClC,GAEJjL,MAAO,CAEH+b,UAAAA,GACI,KAAKkD,cAAgB,IACzB,GAEJpnB,QAAS,CACLmoB,iBAAAA,CAAkBre,GACd,IACI,IAAK,KAAKmZ,UAAa,KAAK/I,eAAiB,KAAOpQ,EAAOyd,SAAoC,mBAAjBzd,EAAO7O,MAAsB,CAGvG,MAAMA,EAAQ6O,EAAO7O,MAAM,CAAC,KAAKkR,QAAS,KAAKjG,aAC/C,GAAIjL,EACA,OAAOA,CACf,CACA,OAAO6O,EAAOE,YAAY,CAAC,KAAKmC,QAAS,KAAKjG,YAClD,CACA,MAAOrF,GAGH,OAFAC,GAAOD,MAAM,0CAA2C,CAAEiJ,SAAQjJ,UAE3DiJ,EAAOvB,EAClB,CACJ,EACA,mBAAM6f,CAActe,GAA2B,IAAnBue,EAASv2B,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GAEjC,GAAI,KAAK4xB,WAA8B,KAAjB,KAAKX,QACvB,OAGJ,GAAI,KAAKgF,sBAAsBje,EAAOvB,IAElC,YADA,KAAK6e,cAAgBtd,GAGzB,IAAIE,EAAcF,EAAOvB,GACzB,IACIyB,EAAcF,EAAOE,YAAY,CAAC,KAAKmC,QAAS,KAAKjG,YACzD,CACA,MAAOrF,GACHC,GAAOD,MAAM,0CAA2C,CAAEiJ,SAAQjJ,SACtE,CACA,IAEI,KAAK/E,MAAM,iBAAkBgO,EAAOvB,IACpC,KAAK+f,KAAK,KAAKnc,OAAQ,SAAU8H,EAAAA,GAAWC,SAC5C,MAAMqU,QAAgBze,EAAOlU,KAAK,KAAKuW,OAAQ,KAAKjG,YAAa,KAAKgd,YAEtE,GAAIqF,QACA,OAEJ,GAAIA,EAEA,YADAhjB,EAAAA,EAAAA,KAAYnG,EAAAA,EAAAA,IAAE,QAAS,+CAAgD,CAAE4K,kBAG7EjJ,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,gCAAiC,CAAE4K,gBAC5D,CACA,MAAOnJ,GACHC,GAAOD,MAAM,+BAAgC,CAAEiJ,SAAQjJ,WACvDE,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,gCAAiC,CAAE4K,gBAC5D,CAAC,QAGG,KAAKlO,MAAM,iBAAkB,IAC7B,KAAKwsB,KAAK,KAAKnc,OAAQ,cAAUna,GAE7Bq2B,IACA,KAAKjB,cAAgB,KAE7B,CACJ,EACAoB,MAAAA,CAAOjgB,GAAI,IAAAkgB,EACP,OAAqC,QAA9BA,EAAA,KAAKV,sBAAsBxf,UAAG,IAAAkgB,OAAA,EAA9BA,EAAgCv3B,QAAS,CACpD,EACA,uBAAMw3B,CAAkB5e,GACpB,KAAKsd,cAAgB,WAEf,KAAKhF,YAEX,KAAKA,WAAU,KAAM,IAAAqC,EAEjB,MAAMkE,EAA8C,QAApClE,EAAG,KAAK3C,MAAK,UAAAjxB,OAAWiZ,EAAOvB,YAAK,IAAAkc,OAAA,EAAjCA,EAAoC,GACvC,IAAAmE,EAAZD,IACsC,QAAtCC,EAAAD,EAAW3mB,IAAIkD,cAAc,iBAAS,IAAA0jB,GAAtCA,EAAwCC,QAC5C,GAER,EACAzpB,EAACA,EAAAA,MKpOgQ,sBCWrQ,GAAU,CAAC,EAEf,GAAQ6B,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,uBCftD,GAAU,CAAC,EAEf,GAAQL,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCjB1D,IAAI,IAAY,OACd,IRVW,WAAiB,IAAAwnB,EAAAC,EAAKxtB,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,KAAK,CAACG,YAAY,0BAA0BC,MAAM,CAAC,iCAAiC,KAAK,CAACL,EAAIiK,GAAIjK,EAAIisB,sBAAsB,SAAS1d,GAAQ,OAAOtO,EAAG,sBAAsB,CAACpH,IAAI0V,EAAOvB,GAAG5M,YAAY,iCAAiC4F,MAAM,0BAA4BuI,EAAOvB,GAAG3M,MAAM,CAAC,eAAeL,EAAI2K,YAAY,OAAS4D,EAAO2d,aAAa,OAASlsB,EAAI4Q,SAAS,IAAG5Q,EAAIS,GAAG,KAAKR,EAAG,YAAY,CAAC6mB,IAAI,cAAczmB,MAAM,CAAC,qBAAqBL,EAAI0sB,qBAAqB,UAAY1sB,EAAI0sB,qBAAqB,cAAa,EAAK,KAAO,WAAW,aAAiD,IAApC1sB,EAAI8rB,qBAAqBn2B,OAAuD,OAASqK,EAAI8rB,qBAAqBn2B,OAAO,KAAOqK,EAAI2oB,YAAY/xB,GAAG,CAAC,cAAc,SAAS0J,GAAQN,EAAI2oB,WAAWroB,CAAM,EAAE,MAAQ,SAASA,GAAQN,EAAI6rB,cAAgB,IAAI,IAAI,CAAC7rB,EAAIiK,GAAIjK,EAAImsB,oBAAoB,SAAS5d,GAAO,IAAAkf,EAAC,OAAOxtB,EAAG,iBAAiB,CAACpH,IAAI0V,EAAOvB,GAAG8Z,IAAG,UAAAxxB,OAAWiZ,EAAOvB,IAAK0gB,UAAS,EAAK1nB,MAAM,CAClhC,CAAC,0BAAD1Q,OAA2BiZ,EAAOvB,MAAO,EACzC,+BAAkChN,EAAIitB,OAAO1e,EAAOvB,KACnD3M,MAAM,CAAC,qBAAqBL,EAAIitB,OAAO1e,EAAOvB,IAAI,gCAAgCuB,EAAOvB,GAAG,UAAUhN,EAAIitB,OAAO1e,EAAOvB,IAAI,MAAoB,QAAbygB,EAAClf,EAAO7O,aAAK,IAAA+tB,OAAA,EAAZA,EAAAt4B,KAAAoZ,EAAe,CAACvO,EAAI4Q,QAAS5Q,EAAI2K,cAAc/T,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAI6sB,cAActe,EAAO,GAAGpE,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEkM,EAAIwnB,UAAYjZ,EAAOvB,GAAI/M,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,MAAMJ,EAAG,mBAAmB,CAACI,MAAM,CAAC,IAAMkO,EAAOG,cAAc,CAAC1O,EAAI4Q,QAAS5Q,EAAI2K,gBAAgB,EAAEN,OAAM,IAAO,MAAK,IAAO,CAACrK,EAAIS,GAAG,WAAWT,EAAIU,GAAqB,WAAlBV,EAAI2sB,WAAwC,mBAAdpe,EAAOvB,GAA0B,GAAKhN,EAAI4sB,kBAAkBre,IAAS,WAAW,IAAGvO,EAAIS,GAAG,KAAMT,EAAI6rB,eAAiB7rB,EAAIwsB,sBAAuC,QAAlBe,EAACvtB,EAAI6rB,qBAAa,IAAA0B,OAAA,EAAjBA,EAAmBvgB,IAAK,CAAC/M,EAAG,iBAAiB,CAACG,YAAY,8BAA8BxJ,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAImtB,kBAAkBntB,EAAI6rB,cAAc,GAAG1hB,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACmM,EAAG,iBAAiB,EAAEoK,OAAM,IAAO,MAAK,EAAM,aAAa,CAACrK,EAAIS,GAAG,aAAaT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,SAAS,cAAc7D,EAAIS,GAAG,KAAKR,EAAG,qBAAqBD,EAAIS,GAAG,KAAKT,EAAIiK,GAAIjK,EAAIwsB,sBAAuC,QAAlBgB,EAACxtB,EAAI6rB,qBAAa,IAAA2B,OAAA,EAAjBA,EAAmBxgB,KAAK,SAASuB,GAAO,IAAAof,EAAC,OAAO1tB,EAAG,iBAAiB,CAACpH,IAAI0V,EAAOvB,GAAG5M,YAAY,kCAAkC4F,MAAK,0BAAA1Q,OAA2BiZ,EAAOvB,IAAK3M,MAAM,CAAC,oBAAoB,GAAG,gCAAgCkO,EAAOvB,GAAG,MAAoB,QAAb2gB,EAACpf,EAAO7O,aAAK,IAAAiuB,OAAA,EAAZA,EAAAx4B,KAAAoZ,EAAe,CAACvO,EAAI4Q,QAAS5Q,EAAI2K,cAAc/T,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAI6sB,cAActe,EAAO,GAAGpE,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEkM,EAAIwnB,UAAYjZ,EAAOvB,GAAI/M,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,MAAMJ,EAAG,mBAAmB,CAACI,MAAM,CAAC,IAAMkO,EAAOG,cAAc,CAAC1O,EAAI4Q,QAAS5Q,EAAI2K,gBAAgB,EAAEN,OAAM,IAAO,MAAK,IAAO,CAACrK,EAAIS,GAAG,aAAaT,EAAIU,GAAGV,EAAI4sB,kBAAkBre,IAAS,aAAa,KAAIvO,EAAIW,MAAM,IAAI,EACjxD,GACsB,IQQpB,EACA,KACA,WACA,MAIF,SAAe,GAAiB,QCpB0O,ICQ3PkL,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,oBACNwC,WAAY,CACRqQ,sBAAqB,KACrB6jB,cAAaA,GAAAA,GAEjBpsB,MAAO,CACHiQ,OAAQ,CACJ7P,KAAM7E,OACN0L,UAAU,GAEd2hB,UAAW,CACPxoB,KAAM7C,QACNgD,SAAS,GAEb+O,MAAO,CACHlP,KAAM9J,MACN2Q,UAAU,GAEdoK,OAAQ,CACJjR,KAAMnM,OACNgT,UAAU,IAGlB0B,KAAAA,GACI,MAAMyX,EAAiB3L,KACjB4Z,ECNkB,WAC5B,MAmBMA,GAnBQzmB,EAAAA,EAAAA,IAAY,WAAY,CAClCC,MAAOA,KAAA,CACHymB,QAAQ,EACR9M,SAAS,EACTiJ,SAAS,EACT8D,UAAU,IAEdzmB,QAAS,CACL0mB,OAAAA,CAAQ35B,GACCA,IACDA,EAAQmU,OAAOnU,OAEnBiK,EAAAA,GAAAA,IAAQpK,KAAM,WAAYG,EAAMy5B,QAChCxvB,EAAAA,GAAAA,IAAQpK,KAAM,YAAaG,EAAM2sB,SACjC1iB,EAAAA,GAAAA,IAAQpK,KAAM,YAAaG,EAAM41B,SACjC3rB,EAAAA,GAAAA,IAAQpK,KAAM,aAAcG,EAAM05B,SACtC,IAGcrmB,IAAMlR,WAQ5B,OANKq3B,EAAclmB,eACfa,OAAO0C,iBAAiB,UAAW2iB,EAAcG,SACjDxlB,OAAO0C,iBAAiB,QAAS2iB,EAAcG,SAC/CxlB,OAAO0C,iBAAiB,YAAa2iB,EAAcG,SACnDH,EAAclmB,cAAe,GAE1BkmB,CACX,CDvB8BI,GACtB,MAAO,CACHJ,gBACAjO,iBAER,EACAxc,SAAU,CACNqd,aAAAA,GACI,OAAO,KAAKb,eAAe1L,QAC/B,EACAqU,UAAAA,GACI,OAAO,KAAK9H,cAAcxkB,SAAS,KAAK4U,OAAOA,OACnD,EACAzT,KAAAA,GACI,OAAO,KAAK0R,MAAMyd,WAAWjd,GAASA,EAAKuB,SAAW,KAAKA,OAAOA,QACtE,EACA4E,MAAAA,GACI,OAAO,KAAK5E,OAAOjR,OAAS+S,EAAAA,GAASQ,IACzC,EACA+a,YAAAA,GACI,OAAO,KAAKzY,QACN3R,EAAAA,EAAAA,IAAE,QAAS,oBACXA,EAAAA,EAAAA,IAAE,QAAS,oBACrB,EACAqqB,SAAAA,GACI,OAAO,KAAK1Y,QACN3R,EAAAA,EAAAA,IAAE,QAAS,4CAA6C,CAAE4K,YAAa,KAAKmC,OAAO8F,YACnF7S,EAAAA,EAAAA,IAAE,QAAS,8CAA+C,CAAE4K,YAAa,KAAKmC,OAAO8F,UAC/F,GAEJjS,QAAS,CACL0pB,iBAAAA,CAAkBla,GAAU,IAAAma,EACxB,MAAMC,EAAmB,KAAKlxB,MACxBgX,EAAoB,KAAKwL,eAAexL,kBAE9C,GAAsB,QAAlBia,EAAA,KAAKR,qBAAa,IAAAQ,GAAlBA,EAAoBN,UAAkC,OAAtB3Z,EAA4B,CAC5D,MAAMma,EAAoB,KAAK9N,cAAcxkB,SAAS,KAAK4U,OAAOA,QAC5DuN,EAAQ/X,KAAKC,IAAIgoB,EAAkBla,GACnCoa,EAAMnoB,KAAKsjB,IAAIvV,EAAmBka,GAClCna,EAAgB,KAAKyL,eAAezL,cACpCsa,EAAgB,KAAK3f,MACtB9T,KAAIsa,GAAQA,EAAKzE,SACjBxb,MAAM+oB,EAAOoQ,EAAM,GACnBhxB,OAAOT,SAENuX,EAAY,IAAIH,KAAkBsa,GACnCjxB,QAAOqT,IAAW0d,GAAqB1d,IAAW,KAAKA,OAAOA,SAInE,OAHArL,GAAO4H,MAAM,oDAAqD,CAAEgR,QAAOoQ,MAAKC,gBAAeF,2BAE/F,KAAK3O,eAAevL,IAAIC,EAE5B,CACA,MAAMA,EAAYJ,EACZ,IAAI,KAAKuM,cAAe,KAAK5P,OAAOA,QACpC,KAAK4P,cAAcjjB,QAAOqT,GAAUA,IAAW,KAAKA,OAAOA,SACjErL,GAAO4H,MAAM,qBAAsB,CAAEkH,cACrC,KAAKsL,eAAevL,IAAIC,GACxB,KAAKsL,eAAerL,aAAa+Z,EACrC,EACAI,cAAAA,GACI,KAAK9O,eAAepL,OACxB,EACA1Q,EAACA,EAAAA,ME9ET,IAXgB,OACd,IFRW,WAAkB,IAAI7D,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,KAAK,CAACG,YAAY,2BAA2BxJ,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAIA,EAAOX,KAAKpH,QAAQ,QAAQyH,EAAI0uB,GAAGpuB,EAAOquB,QAAQ,MAAM,GAAGruB,EAAOzH,IAAI,CAAC,MAAM,YAA0ByH,EAAOygB,SAASzgB,EAAOwtB,UAAUxtB,EAAOutB,QAAQvtB,EAAO0pB,QAA/D,KAA0FhqB,EAAIyuB,eAAe/3B,MAAM,KAAMH,UAAU,IAAI,CAAEyJ,EAAImoB,UAAWloB,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAOL,EAAIiuB,gBAAgBhuB,EAAG,wBAAwB,CAACI,MAAM,CAAC,aAAaL,EAAIkuB,UAAU,QAAUluB,EAAIsoB,YAAY1xB,GAAG,CAAC,iBAAiBoJ,EAAImuB,sBAAsB,EACrmB,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QClBhC,gBCSO,SAASS,KACZ,MAAMC,ECeV,WAKE,IAAI7f,GAAO,UAAqB3E,MAAMykB,MACtC,IAAK9f,EAAK+f,QAAS,CACjB,IAAIF,GAAQ,SAAY,GAAMG,KAAI,WAAc,OAAO,QAAgBx7B,OAAOmyB,OAAO,CAAC,EAAG3W,EAAKigB,QAAQC,cAAgB,IAEtHlgB,EAAK+f,QAAUF,EAEf7f,EAAKigB,QAAQE,WAAU,SAAU1wB,GAC/BjL,OAAOmyB,OAAOkJ,EAAOpwB,EACvB,GACF,CAEA,OAAOuQ,EAAK+f,OACd,CDhCkBK,GAoBd,MAAO,CAEHha,WAlBcjS,EAAAA,EAAAA,KAAS,IAAMvD,OAAOivB,EAAMlzB,MAAMoS,KAAO,KAEtDvT,QAAQ,WAAY,QAkBrBwW,QAdW7N,EAAAA,EAAAA,KAAS,KAAM,IAAAksB,EAC1B,MAAMre,EAASlW,OAAOwrB,SAA4B,QAApB+I,EAACR,EAAMxvB,OAAOmQ,cAAM,IAAA6f,EAAAA,EAAI,MAAQ,KAC9D,OAAOv0B,OAAOM,MAAM4V,GAAU,KAAOA,CAAM,IAc3Cse,UATansB,EAAAA,EAAAA,KAEjB,IAAM,aAAc0rB,EAAMlzB,QAA0C,iBAAzBkzB,EAAMlzB,MAAM4zB,UAAsE,UAA7CV,EAAMlzB,MAAM4zB,SAASC,uBASzG,CE1BO,SAASC,GAAoBx6B,GAAsB,IAAhBonB,EAAM9lB,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GAC5C,GAAoB,KAAhBtB,EAAKoG,OACL,OAAOwI,EAAAA,EAAAA,GAAE,QAAS,+BAEtB,IAEI,OADA6rB,EAAAA,EAAAA,IAAiBz6B,GACV,EACX,CACA,MAAOqQ,GACH,KAAMA,aAAiBqqB,EAAAA,IACnB,MAAMrqB,EAEV,OAAQA,EAAMsqB,QACV,KAAKC,EAAAA,GAA2BC,UAC5B,OAAOjsB,EAAAA,EAAAA,GAAE,QAAS,6CAA8C,CAAEksB,KAAMzqB,EAAM0qB,cAAWv5B,EAAW,CAAE4lB,WAC1G,KAAKwT,EAAAA,GAA2BI,aAC5B,OAAOpsB,EAAAA,EAAAA,GAAE,QAAS,gEAAiE,CAAEmsB,QAAS1qB,EAAM0qB,cAAWv5B,EAAW,CAAE4lB,QAAQ,IACxI,KAAKwT,EAAAA,GAA2BK,UAC5B,OAAI5qB,EAAM0qB,QAAQ93B,MAAM,aACb2L,EAAAA,EAAAA,GAAE,QAAS,4CAA6C,CAAEukB,UAAW9iB,EAAM0qB,cAAWv5B,EAAW,CAAE4lB,QAAQ,KAE/GxY,EAAAA,EAAAA,GAAE,QAAS,6CAA8C,CAAEukB,UAAW9iB,EAAM0qB,cAAWv5B,EAAW,CAAE4lB,QAAQ,IACvH,QACI,OAAOxY,EAAAA,EAAAA,GAAE,QAAS,qBAE9B,CACJ,CH5BA,MIVsQ,IJUvPgI,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,gBACNwC,WAAY,CACR04B,YAAWA,GAAAA,GAEf5wB,MAAO,CAIHmX,SAAU,CACN/W,KAAMC,OACN4G,UAAU,GAKd4hB,UAAW,CACPzoB,KAAMC,OACN4G,UAAU,GAEdmY,eAAgB,CACZhf,KAAM7E,OACN0L,UAAU,GAEdqI,MAAO,CACHlP,KAAM9J,MACN2Q,UAAU,GAEdoK,OAAQ,CACJjR,KAAMnM,OACNgT,UAAU,GAEdkhB,SAAU,CACN/nB,KAAM7C,QACNgD,SAAS,IAGjBoI,KAAAA,GACI,MAAM,YAAEyC,GAAgBL,MAClB,UAAE8K,GAAcwZ,KAChBvM,EAAgBD,KAEtB,MAAO,CACHzX,cACA2c,mBAHsBsE,EAAAA,EAAAA,IAAO,qBAI7BxW,YACAiN,gBAER,EACAlf,SAAU,CACNolB,UAAAA,GACI,OAAO,KAAKlG,cAAcC,eAAiB,KAAK1R,MACpD,EACA4X,qBAAAA,GACI,OAAO,KAAKD,YAAc,KAAK5J,eAAiB,GACpD,EACA4D,QAAS,CACLnd,GAAAA,GACI,OAAO,KAAKid,cAAcE,OAC9B,EACAnO,GAAAA,CAAImO,GACA,KAAKF,cAAcE,QAAUA,CACjC,GAEJ6N,WAAAA,GAKI,MAJmB,CACf,CAAC1d,EAAAA,GAASQ,OAAOrP,EAAAA,EAAAA,IAAE,QAAS,YAC5B,CAAC6O,EAAAA,GAASC,SAAS9O,EAAAA,EAAAA,IAAE,QAAS,gBAEhB,KAAK+M,OAAOjR,KAClC,EACA0wB,MAAAA,GACI,GAAI,KAAKzf,OAAOiH,WAAWyY,OACvB,MAAO,CACHC,GAAI,OACJlxB,OAAQ,CACJK,OAAOmE,EAAAA,EAAAA,IAAE,QAAS,8BAI9B,GAAI,KAAKyjB,mBAAqB,KAAK3c,YAAa,CAC5C,MAAM8D,EAAc,KAAK6Y,kBAAkB7Y,YAAY,CAAC,KAAKmC,QAAS,KAAKjG,aAC3E,MAAO,CACH4lB,GAAI,SACJlxB,OAAQ,CACJ,aAAcoP,EACd/O,MAAO+O,EACP+hB,SAAU,KAGtB,CAGA,MAAO,CACHD,GAAI,OAEZ,GAEJ3jB,MAAO,CAMH2b,WAAY,CACRtE,WAAW,EACXK,OAAAA,CAAQmM,GACAA,GACA,KAAKC,eAEb,GAEJnO,OAAAA,GAAU,IAAAE,EAAAC,EAAAiO,EAEN,MAAMpO,GAA2B,QAAjBE,GAAAC,EAAA,KAAKH,SAAQlnB,YAAI,IAAAonB,OAAA,EAAjBA,EAAAttB,KAAAutB,KAAyB,GACnC1qB,EAA8B,QAAzB24B,EAAG,KAAKpK,MAAMqK,mBAAW,IAAAD,OAAA,EAAtBA,EAAwBlqB,IAAIkD,cAAc,SACxD,IAAK3R,EACD,OAEJ,IAAI64B,EAAWpB,GAAoBlN,GAElB,KAAbsO,GAAmB,KAAKC,kBAAkBvO,KAC1CsO,GAAWhtB,EAAAA,EAAAA,IAAE,QAAS,qDAE1B,KAAKgjB,WAAU,KACP,KAAK0B,aACLvwB,EAAM+4B,kBAAkBF,GACxB74B,EAAMg5B,iBACV,GAER,GAEJvsB,QAAS,CACLqsB,iBAAAA,CAAkB77B,GACd,OAAO,KAAK4Z,MAAM5B,MAAKoC,GAAQA,EAAKqH,WAAazhB,GAAQoa,IAAS,KAAKuB,QAC3E,EACA8f,aAAAA,GACI,KAAK7J,WAAU,KAAM,IAAAoK,EAAAC,EAEjB,MAAMl5B,EAA8B,QAAzBi5B,EAAG,KAAK1K,MAAMqK,mBAAW,IAAAK,OAAA,EAAtBA,EAAwBxqB,IAAIkD,cAAc,SACxD,IAAK3R,EAED,YADAuN,GAAOD,MAAM,mCAGjBtN,EAAMs1B,QACN,MAAM33B,EAAS,KAAKib,OAAO8F,SAAS/gB,QAA+B,QAAtBu7B,EAAC,KAAKtgB,OAAOwX,iBAAS,IAAA8I,EAAAA,EAAI,IAAIv7B,OAC3EqC,EAAMm5B,kBAAkB,EAAGx7B,GAE3BqC,EAAMo5B,cAAc,IAAIC,MAAM,SAAS,GAE/C,EACAC,YAAAA,GACS,KAAK/I,YAIV,KAAKlG,cAAcY,QACvB,EAEA,cAAMsO,GAAW,IAAAC,EAAAC,EACb,MAAMlP,GAA2B,QAAjBiP,GAAAC,EAAA,KAAKlP,SAAQlnB,YAAI,IAAAm2B,OAAA,EAAjBA,EAAAr8B,KAAAs8B,KAAyB,GAEzC,IADa,KAAKlL,MAAMmL,WACdC,gBAEN,YADAnsB,EAAAA,EAAAA,KAAU3B,EAAAA,EAAAA,IAAE,QAAS,qBAAuB,IAAM4rB,GAAoBlN,IAG1E,MAAMI,EAAU,KAAK/R,OAAO8F,SAC5B,GAAI6L,IAAYI,EAIhB,UACyB,KAAKN,cAAcG,YAEpCxY,EAAAA,EAAAA,KAAYnG,EAAAA,EAAAA,IAAE,QAAS,qCAAsC,CAAE8e,UAASJ,aACxE,KAAKsE,WAAU,KACX,MAAM+K,EAAiB,KAAKrL,MAAM7P,SAClCkb,SAAAA,EAAgBtE,OAAO,IAMnC,CACA,MAAOhoB,GACHC,GAAOD,MAAMA,IACbE,EAAAA,EAAAA,IAAUF,EAAMyV,SAEhB,KAAK2V,eACT,MArBI,KAAKY,cAsBb,EACAztB,EAACA,EAAAA,sBK9LL,GAAU,CAAC,EAEf,GAAQ6B,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,INTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAoBlO,EAAIuoB,WAAYtoB,EAAG,OAAO,CAAC4xB,WAAW,CAAC,CAAC58B,KAAK,mBAAmB68B,QAAQ,qBAAqBz4B,MAAO2G,EAAIuxB,SAAUQ,WAAW,aAAajL,IAAI,aAAa1mB,YAAY,yBAAyBC,MAAM,CAAC,aAAaL,EAAI6D,EAAE,QAAS,gBAAgBjN,GAAG,CAAC,OAAS,SAAS0J,GAAyD,OAAjDA,EAAO4F,iBAAiB5F,EAAO2F,kBAAyBjG,EAAIuxB,SAAS76B,MAAM,KAAMH,UAAU,IAAI,CAAC0J,EAAG,cAAc,CAAC6mB,IAAI,cAAczmB,MAAM,CAAC,MAAQL,EAAIowB,YAAY,WAAY,EAAK,UAAY,EAAE,UAAW,EAAK,MAAQpwB,EAAIuiB,QAAQ,aAAe,QAAQ3rB,GAAG,CAAC,eAAe,SAAS0J,GAAQN,EAAIuiB,QAAQjiB,CAAM,EAAE,MAAQ,SAASA,GAAQ,OAAIA,EAAOX,KAAKpH,QAAQ,QAAQyH,EAAI0uB,GAAGpuB,EAAOquB,QAAQ,MAAM,GAAGruB,EAAOzH,IAAI,CAAC,MAAM,WAAkB,KAAYmH,EAAIsxB,aAAa56B,MAAM,KAAMH,UAAU,MAAM,GAAG0J,EAAGD,EAAIqwB,OAAOE,GAAGvwB,EAAIG,GAAG,CAAC2mB,IAAI,WAAWkL,IAAI,YAAY5xB,YAAY,4BAA4BC,MAAM,CAAC,cAAcL,EAAIuoB,WAAW,mCAAmC,KAAK,YAAYvoB,EAAIqwB,OAAOhxB,QAAO,GAAO,CAACY,EAAG,OAAO,CAACG,YAAY,6BAA6B,CAACH,EAAG,OAAO,CAACG,YAAY,wBAAwB6xB,SAAS,CAAC,YAAcjyB,EAAIU,GAAGV,EAAI0W,aAAa1W,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACG,YAAY,2BAA2B6xB,SAAS,CAAC,YAAcjyB,EAAIU,GAAGV,EAAIooB,iBACtyC,GACsB,IMUpB,EACA,KACA,WACA,MAI8B,QCnBhC,gBCoBA,MCpBuG,GDoBvG,CACEnzB,KAAM,WACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MEff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,iCAAiCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,0FAA0F,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACrmB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB6E,GCoB7G,CACE1L,KAAM,iBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MCff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wCAAwCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,6IAA6I,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC/pB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBsE,GCoBtG,CACE1L,KAAM,UACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MCff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,gCAAgCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,0KAA0K,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACprB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB0E,GCoB1G,CACE1L,KAAM,cACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MCff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,oCAAoCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,uLAAuL,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACrsB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBsE,GCoBtG,CACE1L,KAAM,UACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MCff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,gCAAgCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gVAAgV,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC11B,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElB6E,GCoB7G,CACE1L,KAAM,iBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MCff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wCAAwCC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,mGAAmG,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UACrnB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBiK,GCuBjM,CACA1L,KAAA,kBACAsK,MAAA,CACAG,MAAA,CACAC,KAAAC,OACAE,QAAA,IAEAD,UAAA,CACAF,KAAAC,OACAE,QAAA,gBAEAC,KAAA,CACAJ,KAAA7E,OACAgF,QAAA,MClBA,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,wCAAwCC,MAAM,CAAC,eAAeL,EAAIN,MAAM,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gGAAgGL,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,8FAA8FL,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gFAAgFL,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gGAAgGL,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,kFAAkFL,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,4SACpjC,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBqO,ICetPwL,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,eACNwC,WAAY,CACRwU,iBAAgBA,EAAAA,GAEpBlJ,KAAIA,KACO,CACHmvB,8MAGR,aAAM9tB,GAAU,IAAA+tB,QACN,KAAKtL,YAEX,MAAMvgB,EAAK,KAAKG,IAAIkD,cAAc,OAClCrD,SAAgB,QAAd6rB,EAAF7rB,EAAI8rB,oBAAY,IAAAD,GAAhBA,EAAAh9B,KAAAmR,EAAmB,UAAW,cAClC,EACA7B,QAAS,CACLZ,EAACA,EAAAA,sBCrBL,GAAU,CAAC,EAEf,GAAQ6B,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IFTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,mBAAmB,CAACG,YAAY,uBAAuBC,MAAM,CAAC,KAAOL,EAAI6D,EAAE,QAAS,YAAY,IAAM7D,EAAIkyB,UAC7M,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCnByO,GjCmB1P7zB,EAAAA,GAAIqgB,OAAO,CACtBzpB,KAAM,mBACNwC,WAAY,CACR46B,iBAAgB,KAChBC,gBAAe,GACfC,gBAAe,GACfC,aAAY,GACZC,SAAQ,GACRzM,WAAU,KACV0M,eAAc,GACdC,QAAO,GACPC,SAAQ,KACRC,YAAW,GACXC,QAAOA,IAEXvzB,MAAO,CACHqR,OAAQ,CACJjR,KAAMnM,OACNgT,UAAU,GAEdihB,SAAU,CACN9nB,KAAM7C,QACNgD,SAAS,GAEb4nB,SAAU,CACN/nB,KAAM7C,QACNgD,SAAS,IAGjBoI,MAAKA,KAEM,CACHhB,gBAFoBD,OAK5BlE,KAAIA,KACO,CACHgwB,sBAAkBt8B,IAG1B0M,SAAU,CACNqM,MAAAA,GAAS,IAAAuY,EAAAiL,EACL,OAAkB,QAAlBjL,EAAO,KAAKnX,cAAM,IAAAmX,GAAQ,QAARA,EAAXA,EAAavY,cAAM,IAAAuY,GAAU,QAAViL,EAAnBjL,EAAqBpuB,gBAAQ,IAAAq5B,OAAA,EAA7BA,EAAA79B,KAAA4yB,EACX,EACAkL,UAAAA,GACI,OAA2C,IAApC,KAAKriB,OAAOiH,WAAWqb,QAClC,EACAvsB,UAAAA,GACI,OAAO,KAAKO,gBAAgBP,UAChC,EACAwsB,YAAAA,GACI,OAA+C,IAAxC,KAAKxsB,WAAWE,mBAC3B,EACAusB,UAAAA,GACI,GAAI,KAAKxiB,OAAOjR,OAAS+S,EAAAA,GAASC,OAC9B,OAAO,KAEX,IAA8B,IAA1B,KAAKogB,iBACL,OAAO,KAEX,IACI,MAAMK,EAAa,KAAKxiB,OAAOiH,WAAWub,aACnCp0B,EAAAA,EAAAA,IAAY,gCAAiC,CAC5CwQ,OAAQ,KAAKA,SAEf/R,EAAM,IAAIS,IAAIqK,OAAO8qB,SAASC,OAASF,GAO7C,OALA31B,EAAI81B,aAAanf,IAAI,IAAK,KAAKsT,SAAW,MAAQ,MAClDjqB,EAAI81B,aAAanf,IAAI,IAAK,KAAKsT,SAAW,MAAQ,MAClDjqB,EAAI81B,aAAanf,IAAI,eAAgB,QAErC3W,EAAI81B,aAAanf,IAAI,KAA2B,IAAtB,KAAK+e,aAAwB,IAAM,KACtD11B,EAAI+1B,IACf,CACA,MAAO7W,GACH,OAAO,IACX,CACJ,EACA8W,WAAAA,GACI,YkCrEgDh9B,IlCqEhC,KAAKma,OkCrEjBiH,WAAW,6BlCsEJ6b,GAEJ,IACX,EACAC,aAAAA,GAAgB,IAAAC,EAAAC,EAAAC,EAAAC,EACZ,GAAI,KAAKnjB,OAAOjR,OAAS+S,EAAAA,GAASC,OAC9B,OAAO,KAGX,GAAkD,KAAnC,QAAXihB,EAAA,KAAKhjB,cAAM,IAAAgjB,GAAY,QAAZA,EAAXA,EAAa/b,kBAAU,IAAA+b,OAAA,EAAvBA,EAA0B,iBAC1B,OAAOjB,GAGX,GAAe,QAAfkB,EAAI,KAAKjjB,cAAM,IAAAijB,GAAY,QAAZA,EAAXA,EAAahc,kBAAU,IAAAgc,GAAvBA,EAA0B,UAC1B,OAAOf,GAGX,MAAMkB,EAAaxgC,OAAOyd,QAAkB,QAAX6iB,EAAA,KAAKljB,cAAM,IAAAkjB,GAAY,QAAZA,EAAXA,EAAajc,kBAAU,IAAAic,OAAA,EAAvBA,EAA0B,iBAAkB,CAAC,GAAGx3B,OACjF,GAAI03B,EAAWlc,MAAKnY,GAAQA,IAASs0B,GAAAA,EAAUC,iBAAmBv0B,IAASs0B,GAAAA,EAAUE,mBACjF,OAAOvB,GAAAA,EAGX,GAAIoB,EAAWr+B,OAAS,EACpB,OAAO28B,GAEX,OAAmB,QAAnByB,EAAQ,KAAKnjB,cAAM,IAAAmjB,GAAY,QAAZA,EAAXA,EAAalc,kBAAU,IAAAkc,OAAA,EAAvBA,EAA0B,eAC9B,IAAK,WACL,IAAK,mBACD,OAAOlB,GACX,IAAK,QACD,OAAOR,GAAAA,EACX,IAAK,aACD,OAAOE,GACX,IAAK,SACD,OAAOD,GAEf,OAAO,IACX,GAEJ7tB,QAAS,CAEL8P,KAAAA,GAEI,KAAKwe,sBAAmBt8B,EACpB,KAAK8vB,MAAMC,aACX,KAAKD,MAAMC,WAAW4N,IAAM,GAEpC,EACAC,iBAAAA,CAAkBjgC,GAAO,IAAAkgC,EAEK,MAAV,QAAZA,EAAAlgC,EAAM8V,cAAM,IAAAoqB,OAAA,EAAZA,EAAcF,OAGlB,KAAKrB,kBAAmB,EAC5B,EACAlvB,EAACA,EAAAA,MmCxIT,IAXgB,OACd,InCRW,WAAkB,IAAI7D,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,OAAO,CAACG,YAAY,wBAAwB,CAAsB,WAApBJ,EAAI4Q,OAAOjR,KAAmB,CAAEK,EAAIynB,SAAUznB,EAAIu0B,GAAG,GAAG,CAACv0B,EAAIu0B,GAAG,GAAGv0B,EAAIS,GAAG,KAAMT,EAAI2zB,cAAe1zB,EAAGD,EAAI2zB,cAAc,CAAC3B,IAAI,cAAc5xB,YAAY,iCAAiCJ,EAAIW,OAAQX,EAAIozB,aAAuC,IAAzBpzB,EAAI+yB,iBAA2B9yB,EAAG,MAAM,CAAC6mB,IAAI,aAAa1mB,YAAY,+BAA+B4F,MAAM,CAAC,wCAAiE,IAAzBhG,EAAI+yB,kBAA4B1yB,MAAM,CAAC,IAAM,GAAG,QAAU,OAAO,IAAML,EAAIozB,YAAYx8B,GAAG,CAAC,MAAQoJ,EAAIq0B,kBAAkB,KAAO,SAAS/zB,GAAQN,EAAI+yB,kBAAmB,CAAK,KAAK/yB,EAAIu0B,GAAG,GAAGv0B,EAAIS,GAAG,KAAMT,EAAIizB,WAAYhzB,EAAG,OAAO,CAACG,YAAY,iCAAiC,CAACJ,EAAIu0B,GAAG,IAAI,GAAGv0B,EAAIW,KAAKX,EAAIS,GAAG,KAAMT,EAAIyzB,YAAaxzB,EAAGD,EAAIyzB,YAAY,CAACzB,IAAI,cAAc5xB,YAAY,oEAAoEJ,EAAIW,MAAM,EACl8B,GACsB,CAAC,WAAY,IAAaV,EAALhM,KAAYiM,MAAMD,GAAgC,OAAlDhM,KAAgCiM,MAAMgO,YAAmBjO,EAAG,iBACvG,EAAE,WAAY,IAAaA,EAALhM,KAAYiM,MAAMD,GAAgC,OAAlDhM,KAAgCiM,MAAMgO,YAAmBjO,EAAG,aAClF,EAAE,WAAY,IAAaA,EAALhM,KAAYiM,MAAMD,GAAgC,OAAlDhM,KAAgCiM,MAAMgO,YAAmBjO,EAAG,WAClF,EAAE,WAAY,IAAaA,EAALhM,KAAYiM,MAAMD,GAAgC,OAAlDhM,KAAgCiM,MAAMgO,YAAmBjO,EAAG,eAClF,ImCKE,EACA,KACA,KACA,MAI8B,QClByN,I3EgB1O4L,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,YACNwC,WAAY,CACR8zB,oBAAmB,GACnBiJ,iBAAgB,GAChBC,kBAAiB,GACjBC,cAAa,GACbC,iBAAgB,GAChBC,WAAUA,GAAAA,GAEdrV,OAAQ,CACJsV,IAEJt1B,MAAO,CACHu1B,iBAAkB,CACdn1B,KAAM7C,QACNgD,SAAS,GAEbi1B,gBAAiB,CACbp1B,KAAM7C,QACNgD,SAAS,GAEbk1B,QAAS,CACLr1B,KAAM7C,QACNgD,SAAS,IAGjBoI,KAAAA,GACI,MAAM0gB,EAAmB1G,KACnBzC,EAAgBjB,KAChBkB,EAAanP,KACb8R,EAAgBD,KAChBzC,EAAiB3L,MACjB,YAAErJ,GAAgBL,KACxB,MAAO,CACHse,mBACAnJ,gBACAC,aACA2C,gBACA1C,iBACAhV,cAER,EACAxH,SAAU,CAKN8xB,YAAAA,GAOI,MAAO,IANc,KAAK1M,WACpB,CAAC,EACD,CACE2M,UAAW,KAAK3K,YAChB9C,SAAU,KAAK5G,YAInBsU,YAAa,KAAK/L,aAClBgM,UAAW,KAAKhL,YAChBiL,QAAS,KAAKrK,UACdsK,KAAM,KAAKrU,OAEnB,EACAsU,OAAAA,GAAU,IAAAxoB,EAEN,OAAI,KAAK4R,eAAiB,KAAO,KAAKqW,QAC3B,IAEY,QAAhBjoB,EAAA,KAAKpC,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkBwoB,UAAW,EACxC,EACAx1B,IAAAA,GACI,MAAMA,EAAO,KAAK6Q,OAAO7Q,KACzB,YAAatJ,IAATsJ,GAAsB3E,MAAM2E,IAASA,EAAO,EACrC,KAAK8D,EAAE,QAAS,YAEpBJ,EAAAA,EAAAA,IAAe1D,GAAM,EAChC,EACAy1B,WAAAA,GACI,MACMz1B,EAAO,KAAK6Q,OAAO7Q,KACzB,QAAatJ,IAATsJ,GAAsB3E,MAAM2E,IAASA,EAAO,EAC5C,MAAO,CAAC,EAEZ,MAAM01B,EAAQrvB,KAAKsvB,MAAMtvB,KAAKC,IAAI,IAAK,IAAMD,KAAKuvB,IAAK51B,EALhC,SAKwD,KAC/E,MAAO,CACH61B,MAAK,6CAAAtgC,OAA+CmgC,EAAK,qCAEjE,EACAI,YAAAA,GAAe,IAAAC,EAAAC,EACX,MAAMC,EAAiB,QACjBC,EAAyB,QAApBH,EAAG,KAAKllB,OAAOqlB,aAAK,IAAAH,GAAS,QAATC,EAAjBD,EAAmBI,eAAO,IAAAH,OAAA,EAA1BA,EAAA5gC,KAAA2gC,GACd,IAAKG,EACD,MAAO,CAAC,EAGZ,MAAMR,EAAQrvB,KAAKsvB,MAAMtvB,KAAKC,IAAI,IAAK,KAAO2vB,GAAkB/zB,KAAKC,MAAQ+zB,IAAUD,IACvF,OAAIP,EAAQ,EACD,CAAC,EAEL,CACHG,MAAK,6CAAAtgC,OAA+CmgC,EAAK,qCAEjE,EACAQ,KAAAA,GAEI,OAAI,KAAKrlB,OAAOqlB,QAAU76B,MAAM,KAAKwV,OAAOqlB,MAAME,WACvC,KAAKvlB,OAAOqlB,MAEnB,KAAKrlB,OAAOwlB,SAAWh7B,MAAM,KAAKwV,OAAOwlB,OAAOD,WACzC,KAAKvlB,OAAOwlB,OAEhB,IACX,EACAC,UAAAA,GACI,OAAI,KAAKzlB,OAAOqlB,OACLK,EAAAA,GAAAA,GAAO,KAAK1lB,OAAOqlB,OAAOM,OAAO,OAErC,EACX,GAEJ9xB,QAAS,CACLhB,eAAcA,EAAAA,M4EvHtB,IAXgB,OACd,I5ERW,WAAkB,IAAIzD,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,KAAKD,EAAIw2B,GAAG,CAACp2B,YAAY,kBAAkB4F,MAAM,CAClJ,4BAA6BhG,EAAIynB,SACjC,2BAA4BznB,EAAImoB,UAChC,0BAA2BnoB,EAAIyoB,UAC9BpoB,MAAM,CAAC,yBAAyB,GAAG,gCAAgCL,EAAIwP,OAAO,8BAA8BxP,EAAI4Q,OAAO8F,SAAS,UAAY1W,EAAI0oB,UAAU1oB,EAAIi1B,cAAc,CAAEj1B,EAAI4Q,OAAOiH,WAAWyY,OAAQrwB,EAAG,OAAO,CAACG,YAAY,4BAA4BJ,EAAIW,KAAKX,EAAIS,GAAG,KAAKR,EAAG,oBAAoB,CAACI,MAAM,CAAC,OAASL,EAAIwP,OAAO,aAAaxP,EAAImoB,UAAU,MAAQnoB,EAAI6O,MAAM,OAAS7O,EAAI4Q,UAAU5Q,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACG,YAAY,uBAAuBC,MAAM,CAAC,8BAA8B,KAAK,CAACJ,EAAG,mBAAmB,CAAC6mB,IAAI,UAAUzmB,MAAM,CAAC,OAASL,EAAI4Q,OAAO,SAAW5Q,EAAIynB,UAAU3F,SAAS,CAAC,SAAW,SAASxhB,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAAS+J,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,KAAKyJ,EAAIS,GAAG,KAAKR,EAAG,gBAAgB,CAAC6mB,IAAI,OAAOzmB,MAAM,CAAC,SAAWL,EAAI0W,SAAS,UAAY1W,EAAIooB,UAAU,mBAAmBpoB,EAAI2e,eAAe,MAAQ3e,EAAI6O,MAAM,OAAS7O,EAAI4Q,QAAQkR,SAAS,CAAC,SAAW,SAASxhB,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAAS+J,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,MAAM,GAAGyJ,EAAIS,GAAG,KAAKR,EAAG,mBAAmB,CAAC4xB,WAAW,CAAC,CAAC58B,KAAK,OAAO68B,QAAQ,SAASz4B,OAAQ2G,EAAIwoB,sBAAuBuJ,WAAW,2BAA2BjL,IAAI,UAAU9gB,MAAK,2BAAA1Q,OAA4B0K,EAAIgoB,UAAW3nB,MAAM,CAAC,mBAAmBL,EAAI2e,eAAe,QAAU3e,EAAIwnB,QAAQ,OAASxnB,EAAI2oB,WAAW,OAAS3oB,EAAI4Q,QAAQha,GAAG,CAAC,iBAAiB,SAAS0J,GAAQN,EAAIwnB,QAAQlnB,CAAM,EAAE,gBAAgB,SAASA,GAAQN,EAAI2oB,WAAWroB,CAAM,KAAKN,EAAIS,GAAG,MAAOT,EAAIg1B,SAAWh1B,EAAI+0B,gBAAiB90B,EAAG,KAAK,CAACG,YAAY,uBAAuB4oB,MAAOhpB,EAAIw1B,YAAan1B,MAAM,CAAC,8BAA8B,IAAIzJ,GAAG,CAAC,MAAQoJ,EAAIiqB,yBAAyB,CAAChqB,EAAG,OAAO,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAID,WAAWC,EAAIW,KAAKX,EAAIS,GAAG,MAAOT,EAAIg1B,SAAWh1B,EAAI80B,iBAAkB70B,EAAG,KAAK,CAACG,YAAY,wBAAwB4oB,MAAOhpB,EAAI61B,aAAcx1B,MAAM,CAAC,+BAA+B,IAAIzJ,GAAG,CAAC,MAAQoJ,EAAIiqB,yBAAyB,CAAEjqB,EAAIi2B,MAAOh2B,EAAG,aAAa,CAACI,MAAM,CAAC,UAAYL,EAAIi2B,MAAM,kBAAiB,KAAQh2B,EAAG,OAAO,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,qBAAqB,GAAG7D,EAAIW,KAAKX,EAAIS,GAAG,KAAKT,EAAIiK,GAAIjK,EAAIu1B,SAAS,SAASkB,GAAO,IAAAC,EAAC,OAAOz2B,EAAG,KAAK,CAACpH,IAAI49B,EAAOzpB,GAAG5M,YAAY,gCAAgC4F,MAAK,mBAAA1Q,OAAmC,QAAnCohC,EAAoB12B,EAAI2K,mBAAW,IAAA+rB,OAAA,EAAfA,EAAiB1pB,GAAE,KAAA1X,OAAImhC,EAAOzpB,IAAK3M,MAAM,CAAC,uCAAuCo2B,EAAOzpB,IAAIpW,GAAG,CAAC,MAAQoJ,EAAIiqB,yBAAyB,CAAChqB,EAAG,sBAAsB,CAACI,MAAM,CAAC,eAAeL,EAAI2K,YAAY,OAAS8rB,EAAOtL,OAAO,OAASnrB,EAAI4Q,WAAW,EAAE,KAAI,EACngF,GACsB,I4EKpB,EACA,KACA,KACA,MAI8B,QClB6N,ICY9O/E,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,gBACNwC,WAAY,CACR+8B,iBAAgB,GAChBC,kBAAiB,GACjBC,cAAa,GACbC,iBAAgBA,IAEpBpV,OAAQ,CACJsV,IAEJ8B,cAAc,EACdzuB,KAAAA,GACI,MAAM0gB,EAAmB1G,KACnBzC,EAAgBjB,KAChBkB,EAAanP,KACb8R,EAAgBD,KAChBzC,EAAiB3L,MACjB,YAAErJ,GAAgBL,KACxB,MAAO,CACHse,mBACAnJ,gBACAC,aACA2C,gBACA1C,iBACAhV,cAER,EACA5H,KAAIA,KACO,CACH2kB,UAAU,MCxBtB,IAXgB,OACd,IDRW,WAAkB,IAAI1nB,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,KAAK,CAACG,YAAY,kBAAkB4F,MAAM,CAAC,0BAA2BhG,EAAIyoB,SAAU,4BAA6BzoB,EAAIynB,SAAU,2BAA4BznB,EAAImoB,WAAW9nB,MAAM,CAAC,yBAAyB,GAAG,gCAAgCL,EAAIwP,OAAO,8BAA8BxP,EAAI4Q,OAAO8F,SAAS,UAAY1W,EAAI0oB,SAAS9xB,GAAG,CAAC,YAAcoJ,EAAIopB,aAAa,SAAWppB,EAAI6gB,WAAW,UAAY7gB,EAAIoqB,YAAY,UAAYpqB,EAAIuqB,YAAY,QAAUvqB,EAAIgrB,UAAU,KAAOhrB,EAAIihB,SAAS,CAAEjhB,EAAI4Q,OAAOiH,WAAWyY,OAAQrwB,EAAG,OAAO,CAACG,YAAY,4BAA4BJ,EAAIW,KAAKX,EAAIS,GAAG,KAAKR,EAAG,oBAAoB,CAACI,MAAM,CAAC,OAASL,EAAIwP,OAAO,aAAaxP,EAAImoB,UAAU,MAAQnoB,EAAI6O,MAAM,OAAS7O,EAAI4Q,UAAU5Q,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACG,YAAY,uBAAuBC,MAAM,CAAC,8BAA8B,KAAK,CAACJ,EAAG,mBAAmB,CAAC6mB,IAAI,UAAUzmB,MAAM,CAAC,SAAWL,EAAIynB,SAAS,aAAY,EAAK,OAASznB,EAAI4Q,QAAQkR,SAAS,CAAC,SAAW,SAASxhB,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAAS+J,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,KAAKyJ,EAAIS,GAAG,KAAKR,EAAG,gBAAgB,CAAC6mB,IAAI,OAAOzmB,MAAM,CAAC,SAAWL,EAAI0W,SAAS,UAAY1W,EAAIooB,UAAU,mBAAmBpoB,EAAI2e,eAAe,aAAY,EAAK,MAAQ3e,EAAI6O,MAAM,OAAS7O,EAAI4Q,QAAQkR,SAAS,CAAC,SAAW,SAASxhB,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,EAAE,MAAQ,SAAS+J,GAAQ,OAAON,EAAI+pB,kBAAkBrzB,MAAM,KAAMH,UAAU,MAAM,GAAGyJ,EAAIS,GAAG,KAAKR,EAAG,mBAAmB,CAAC6mB,IAAI,UAAU9gB,MAAK,2BAAA1Q,OAA4B0K,EAAIgoB,UAAW3nB,MAAM,CAAC,mBAAmBL,EAAI2e,eAAe,aAAY,EAAK,QAAU3e,EAAIwnB,QAAQ,OAASxnB,EAAI2oB,WAAW,OAAS3oB,EAAI4Q,QAAQha,GAAG,CAAC,iBAAiB,SAAS0J,GAAQN,EAAIwnB,QAAQlnB,CAAM,EAAE,gBAAgB,SAASA,GAAQN,EAAI2oB,WAAWroB,CAAM,MAAM,EACz2D,GACsB,ICSpB,EACA,KACA,KACA,MAI8B,QClBhC,gBAMA,MCN+P,GDM/P,CACIrL,KAAM,kBACNsK,MAAO,CACHq3B,OAAQ,CACJj3B,KAAMnM,OACNgT,UAAU,GAEdqwB,cAAe,CACXl3B,KAAMnM,OACNgT,UAAU,GAEdmE,YAAa,CACThL,KAAMnM,OACNgT,UAAU,IAGlBrD,SAAU,CACNyL,OAAAA,GACI,OAAO,KAAKgoB,OAAOhoB,QAAQ,KAAKioB,cAAe,KAAKlsB,YACxD,GAEJiC,MAAO,CACHgC,OAAAA,CAAQA,GACCA,GAGL,KAAKgoB,OAAOE,QAAQ,KAAKD,cAAe,KAAKlsB,YACjD,EACAksB,aAAAA,GACI,KAAKD,OAAOE,QAAQ,KAAKD,cAAe,KAAKlsB,YACjD,GAEJvG,OAAAA,GACI4S,GAAQ7J,MAAM,UAAW,KAAKypB,OAAO5pB,IACrC,KAAK4pB,OAAOzL,OAAO,KAAK5E,MAAMwQ,MAAO,KAAKF,cAAe,KAAKlsB,YAClE,GEvBJ,IAXgB,OACd,IFRW,WAAkB,IAAI3K,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAAC4xB,WAAW,CAAC,CAAC58B,KAAK,OAAO68B,QAAQ,SAASz4B,MAAO2G,EAAI4O,QAASmjB,WAAW,YAAY/rB,MAAK,sBAAA1Q,OAAuB0K,EAAI42B,OAAO5pB,KAAM,CAAC/M,EAAG,OAAO,CAAC6mB,IAAI,WAC/N,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QClBoO,GCOrPzoB,EAAAA,GAAIqgB,OAAO,CACtBzpB,KAAM,uBACNwC,WAAY,CAAC,EACb8H,MAAO,CACHu1B,iBAAkB,CACdn1B,KAAM7C,QACNgD,SAAS,GAEbi1B,gBAAiB,CACbp1B,KAAM7C,QACNgD,SAAS,GAEb+O,MAAO,CACHlP,KAAM9J,MACN2Q,UAAU,GAEd2f,QAAS,CACLxmB,KAAMC,OACNE,QAAS,IAEb6e,eAAgB,CACZhf,KAAM7E,OACNgF,QAAS,IAGjBoI,KAAAA,GACI,MAAMiK,EAAaD,KACbwN,EAAanP,MACb,UAAE6E,GAAcwZ,MAChB,YAAEjkB,GAAgBL,KACxB,MAAO,CACHoV,aACAvN,aACAiD,YACAzK,cAER,EACAxH,SAAU,CACN0zB,aAAAA,GAAgB,IAAA9pB,EACZ,GAAqB,QAAjBA,EAAC,KAAKpC,mBAAW,IAAAoC,IAAhBA,EAAkBC,GACnB,OAEJ,GAAuB,MAAnB,KAAKoI,UACL,OAAO,KAAKsK,WAAWxO,QAAQ,KAAKvG,YAAYqC,IAEpD,MAAMgE,EAAS,KAAKmB,WAAWE,QAAQ,KAAK1H,YAAYqC,GAAI,KAAKoI,WACjE,OAAO,KAAKsK,WAAW/O,QAAQK,EACnC,EACAukB,OAAAA,GAAU,IAAA7U,EAEN,OAAI,KAAK/B,eAAiB,IACf,IAEY,QAAhB+B,EAAA,KAAK/V,mBAAW,IAAA+V,OAAA,EAAhBA,EAAkB6U,UAAW,EACxC,EACAnP,SAAAA,GAAY,IAAA4Q,EAER,OAAsB,QAAtBA,EAAI,KAAKH,qBAAa,IAAAG,GAAlBA,EAAoBj3B,MACb0D,EAAAA,EAAAA,IAAe,KAAKozB,cAAc92B,MAAM,IAG5C0D,EAAAA,EAAAA,IAAe,KAAKoL,MAAMhS,QAAO,CAACwpB,EAAOhX,IAASgX,EAAQhX,EAAKtP,MAAQ,GAAG,IAAI,EACzF,GAEJ0E,QAAS,CACLwyB,cAAAA,CAAeR,GACX,MAAO,CACH,iCAAiC,EACjC,oBAAAnhC,OAAoB,KAAKqV,YAAYqC,GAAE,KAAA1X,OAAImhC,EAAOzpB,MAAO,EAEjE,EACAnJ,EAAG4B,EAAAA,sBCnEP,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IFTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,KAAK,CAACA,EAAG,KAAK,CAACG,YAAY,4BAA4B,CAACH,EAAG,OAAO,CAACG,YAAY,mBAAmB,CAACJ,EAAIS,GAAGT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,4BAA4B7D,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACG,YAAY,wBAAwB,CAACH,EAAG,OAAO,CAACG,YAAY,yBAAyBJ,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAImmB,cAAcnmB,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACG,YAAY,4BAA4BJ,EAAIS,GAAG,KAAMT,EAAI+0B,gBAAiB90B,EAAG,KAAK,CAACG,YAAY,2CAA2C,CAACH,EAAG,OAAO,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIomB,gBAAgBpmB,EAAIW,KAAKX,EAAIS,GAAG,KAAMT,EAAI80B,iBAAkB70B,EAAG,KAAK,CAACG,YAAY,6CAA6CJ,EAAIW,KAAKX,EAAIS,GAAG,KAAKT,EAAIiK,GAAIjK,EAAIu1B,SAAS,SAASkB,GAAO,IAAAS,EAAC,OAAOj3B,EAAG,KAAK,CAACpH,IAAI49B,EAAOzpB,GAAGhH,MAAMhG,EAAIi3B,eAAeR,IAAS,CAACx2B,EAAG,OAAO,CAACD,EAAIS,GAAGT,EAAIU,GAAiB,QAAfw2B,EAACT,EAAOtQ,eAAO,IAAA+Q,OAAA,EAAdA,EAAA/hC,KAAAshC,EAAiBz2B,EAAI6O,MAAO7O,EAAI2K,kBAAkB,KAAI,EACt6B,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,QCnBhC,4BCyBA,SAAetM,EAAAA,GAAIqgB,OAAO,CACtBxW,KAAAA,GACI,MAAM,YAAEyC,GAAgBL,KACxB,MAAO,CACHK,cAER,EACAxH,SAAU,KACHg0B,EAAAA,EAAAA,IAAS9rB,GAAoB,CAAC,YAAa,eAAgB,2BAI9D+rB,WAAAA,GAAc,IAAAC,EAAAtqB,EACV,OAA0C,QAAnCsqB,EAAApjC,KAAKsX,UAAUtX,KAAK0W,YAAYqC,WAAG,IAAAqqB,OAAA,EAAnCA,EAAqCC,gBACrB,QADiCvqB,EACjD9Y,KAAK0W,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkBwqB,iBAClB,UACX,EAIAC,YAAAA,GAAe,IAAAC,EAEX,MAA4B,UADgC,QAAtCA,EAAGxjC,KAAKsX,UAAUtX,KAAK0W,YAAYqC,WAAG,IAAAyqB,OAAA,EAAnCA,EAAqC9rB,kBAElE,GAEJlH,QAAS,CACLizB,YAAAA,CAAa7+B,GAEL5E,KAAKmjC,cAAgBv+B,EAKzB5E,KAAKuX,aAAa3S,EAAK5E,KAAK0W,YAAYqC,IAJpC/Y,KAAKwX,uBAAuBxX,KAAK0W,YAAYqC,GAKrD,KC3DkQ,ICM3PnB,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,6BACNwC,WAAY,CACRkgC,SAAQ,KACRC,OAAM,KACNC,SAAQA,GAAAA,GAEZtY,OAAQ,CACJuY,IAEJv4B,MAAO,CACHtK,KAAM,CACF0K,KAAMC,OACN4G,UAAU,GAEd1H,KAAM,CACFa,KAAMC,OACN4G,UAAU,IAGlB/B,QAAS,CACLZ,EAAG4B,EAAAA,sBChBP,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IFTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,WAAW,CAAC+F,MAAM,CAAC,iCAAkC,CACtJ,yCAA0ChG,EAAIo3B,cAAgBp3B,EAAIlB,KAClE,uCAA4D,SAApBkB,EAAIo3B,cAC1C/2B,MAAM,CAAC,UAAyB,SAAbL,EAAIlB,KAAkB,MAAQ,gBAAgB,KAAO,WAAW,MAAQkB,EAAI/K,MAAM2B,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAI03B,aAAa13B,EAAIlB,KAAK,GAAGqL,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEkM,EAAIo3B,cAAgBp3B,EAAIlB,MAAQkB,EAAIw3B,aAAcv3B,EAAG,SAAS,CAACG,YAAY,wCAAwCH,EAAG,WAAW,CAACG,YAAY,wCAAwC,EAAEiK,OAAM,MAAS,CAACrK,EAAIS,GAAG,KAAKR,EAAG,OAAO,CAACG,YAAY,uCAAuC,CAACJ,EAAIS,GAAGT,EAAIU,GAAGV,EAAI/K,UACtgB,GACsB,IEOpB,EACA,KACA,WACA,MAI8B,QCnBoO,INSrP4W,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,uBACNwC,WAAY,CACRsgC,2BAA0B,GAC1BjwB,sBAAqBA,GAAAA,GAEzByX,OAAQ,CACJuY,IAEJv4B,MAAO,CACHu1B,iBAAkB,CACdn1B,KAAM7C,QACNgD,SAAS,GAEbi1B,gBAAiB,CACbp1B,KAAM7C,QACNgD,SAAS,GAEb+O,MAAO,CACHlP,KAAM9J,MACN2Q,UAAU,GAEdmY,eAAgB,CACZhf,KAAM7E,OACNgF,QAAS,IAGjBoI,KAAAA,GACI,MAAMwX,EAAanP,KACboP,EAAiB3L,MACjB,YAAErJ,GAAgBL,KACxB,MAAO,CACHoV,aACAC,iBACAhV,cAER,EACAxH,SAAU,CACNoyB,OAAAA,GAAU,IAAAxoB,EAEN,OAAI,KAAK4R,eAAiB,IACf,IAEY,QAAhB5R,EAAA,KAAKpC,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkBwoB,UAAW,EACxC,EACAxnB,GAAAA,GAAM,IAAA1B,EAEF,QAAmB,QAAXA,EAAA,KAAKC,cAAM,IAAAD,GAAO,QAAPA,EAAXA,EAAa1Q,aAAK,IAAA0Q,OAAA,EAAlBA,EAAoB0B,MAAO,KAAKvT,QAAQ,WAAY,KAChE,EACAw9B,aAAAA,GACI,MAAM5b,GAAQvY,EAAAA,EAAAA,IAAE,QAAS,8CACzB,MAAO,CACH,aAAcuY,EACd6b,QAAS,KAAKC,cACdC,cAAe,KAAKC,eACpB14B,MAAO0c,EAEf,EACAic,aAAAA,GACI,OAAO,KAAK1Y,eAAe1L,QAC/B,EACAikB,aAAAA,GACI,OAAO,KAAKG,cAAc1iC,SAAW,KAAKkZ,MAAMlZ,MACpD,EACA2iC,cAAAA,GACI,OAAqC,IAA9B,KAAKD,cAAc1iC,MAC9B,EACAyiC,cAAAA,GACI,OAAQ,KAAKF,gBAAkB,KAAKI,cACxC,GAEJ7zB,QAAS,CACL8zB,eAAAA,CAAgBz5B,GACZ,OAAI,KAAKs4B,cAAgBt4B,EACd,KAAK04B,aAAe,YAAc,aAEtC,IACX,EACAP,cAAAA,CAAeR,GAAQ,IAAA/V,EACnB,MAAO,CACH,sBAAsB,EACtB,iCAAkC+V,EAAO97B,KACzC,iCAAiC,EACjC,oBAAArF,OAAoC,QAApCorB,EAAoB,KAAK/V,mBAAW,IAAA+V,OAAA,EAAhBA,EAAkB1T,GAAE,KAAA1X,OAAImhC,EAAOzpB,MAAO,EAElE,EACAwrB,WAAAA,CAAYvkB,GACR,GAAIA,EAAU,CACV,MAAMI,EAAY,KAAKxF,MAAM9T,KAAIsU,GAAQA,EAAKuB,SAAQrT,OAAOT,SAC7DyI,GAAO4H,MAAM,+BAAgC,CAAEkH,cAC/C,KAAKsL,eAAerL,aAAa,MACjC,KAAKqL,eAAevL,IAAIC,EAC5B,MAEI9O,GAAO4H,MAAM,qBACb,KAAKwS,eAAepL,OAE5B,EACAka,cAAAA,GACI,KAAK9O,eAAepL,OACxB,EACA1Q,EAACA,EAAAA,sBOnGL,GAAU,CAAC,EAEf,GAAQ6B,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IRTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,KAAK,CAACG,YAAY,wBAAwB,CAACH,EAAG,KAAK,CAACG,YAAY,8CAA8CxJ,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAIA,EAAOX,KAAKpH,QAAQ,QAAQyH,EAAI0uB,GAAGpuB,EAAOquB,QAAQ,MAAM,GAAGruB,EAAOzH,IAAI,CAAC,MAAM,YAA0ByH,EAAOygB,SAASzgB,EAAOwtB,UAAUxtB,EAAOutB,QAAQvtB,EAAO0pB,QAA/D,KAA0FhqB,EAAIyuB,eAAe/3B,MAAM,KAAMH,UAAU,IAAI,CAAC0J,EAAG,wBAAwBD,EAAIG,GAAG,CAACvJ,GAAG,CAAC,iBAAiBoJ,EAAIw4B,cAAc,wBAAwBx4B,EAAIg4B,eAAc,KAAS,GAAGh4B,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACG,YAAY,uEAAuEC,MAAM,CAAC,YAAYL,EAAIu4B,gBAAgB,cAAc,CAACt4B,EAAG,OAAO,CAACG,YAAY,yBAAyBJ,EAAIS,GAAG,KAAKR,EAAG,6BAA6B,CAACI,MAAM,CAAC,KAAOL,EAAI6D,EAAE,QAAS,QAAQ,KAAO,eAAe,GAAG7D,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACG,YAAY,4BAA4BJ,EAAIS,GAAG,KAAMT,EAAI+0B,gBAAiB90B,EAAG,KAAK,CAACG,YAAY,0CAA0C4F,MAAM,CAAE,+BAAgChG,EAAI+0B,iBAAkB10B,MAAM,CAAC,YAAYL,EAAIu4B,gBAAgB,UAAU,CAACt4B,EAAG,6BAA6B,CAACI,MAAM,CAAC,KAAOL,EAAI6D,EAAE,QAAS,QAAQ,KAAO,WAAW,GAAG7D,EAAIW,KAAKX,EAAIS,GAAG,KAAMT,EAAI80B,iBAAkB70B,EAAG,KAAK,CAACG,YAAY,2CAA2C4F,MAAM,CAAE,+BAAgChG,EAAI80B,kBAAmBz0B,MAAM,CAAC,YAAYL,EAAIu4B,gBAAgB,WAAW,CAACt4B,EAAG,6BAA6B,CAACI,MAAM,CAAC,KAAOL,EAAI6D,EAAE,QAAS,YAAY,KAAO,YAAY,GAAG7D,EAAIW,KAAKX,EAAIS,GAAG,KAAKT,EAAIiK,GAAIjK,EAAIu1B,SAAS,SAASkB,GAAQ,OAAOx2B,EAAG,KAAK,CAACpH,IAAI49B,EAAOzpB,GAAGhH,MAAMhG,EAAIi3B,eAAeR,GAAQp2B,MAAM,CAAC,YAAYL,EAAIu4B,gBAAgB9B,EAAOzpB,MAAM,CAAIypB,EAAO97B,KAAMsF,EAAG,6BAA6B,CAACI,MAAM,CAAC,KAAOo2B,EAAO/2B,MAAM,KAAO+2B,EAAOzpB,MAAM/M,EAAG,OAAO,CAACD,EAAIS,GAAG,WAAWT,EAAIU,GAAG+1B,EAAO/2B,OAAO,aAAa,EAAE,KAAI,EAC74D,GACsB,IQUpB,EACA,KACA,WACA,MAI8B,QCnBhC,uCAIA,MCJ2P,GDI5OrB,EAAAA,GAAIqgB,OAAO,CACtBzpB,KAAM,cACNsqB,OAAQ,CAACC,IACTjgB,MAAO,CACHk5B,cAAe,CACX94B,KAAM,CAACnM,OAAQ+S,UACfC,UAAU,GAEdkyB,QAAS,CACL/4B,KAAMC,OACN4G,UAAU,GAEdmyB,YAAa,CACTh5B,KAAM9J,MACN2Q,UAAU,GAEdoyB,WAAY,CACRj5B,KAAMnM,OACNsM,QAASA,KAAA,CAAS,IAEtB+4B,cAAe,CACXl5B,KAAM7E,OACNgF,QAAS,GAEb4nB,SAAU,CACN/nB,KAAM7C,QACNgD,SAAS,GAKbg5B,QAAS,CACLn5B,KAAMC,OACNE,QAAS,KAGjBiD,IAAAA,GACI,MAAO,CACH5F,MAAO,KAAK07B,cACZE,aAAc,EACdC,aAAc,EACdC,YAAa,EACbC,eAAgB,KAExB,EACA/1B,SAAU,CAENg2B,OAAAA,GACI,OAAO,KAAKF,YAAc,CAC9B,EAEAG,WAAAA,GACI,OAAI,KAAK1R,SACE,KAAK2R,YAET,CACX,EACAC,UAAAA,GAGI,OAAO,KAAK5R,SAAY,IAAiB,EAC7C,EAEA6R,UAASA,IAEE,IAEXC,QAAAA,GACI,OAAOpzB,KAAKqzB,MAAM,KAAKR,YAAc,KAAKD,cAAgB,KAAKM,YAAe,KAAKF,YAAc,KAAKC,YAAe,EAAI,CAC7H,EACAA,WAAAA,GACI,OAAK,KAAK3R,SAGHthB,KAAKszB,MAAM,KAAK/a,eAAiB,KAAK4a,WAFlC,CAGf,EAIAI,UAAAA,GACI,OAAOvzB,KAAKsjB,IAAI,EAAG,KAAKvsB,MAAQ,KAAKi8B,YACzC,EAKAQ,UAAAA,GAEI,OAAI,KAAKlS,SACE,KAAK8R,SAAW,KAAKH,YAEzB,KAAKG,QAChB,EACAK,aAAAA,GACI,IAAK,KAAKV,QACN,MAAO,GAEX,MAAMnc,EAAQ,KAAK2b,YAAYvjC,MAAM,KAAKukC,WAAY,KAAKA,WAAa,KAAKC,YAEvEE,EADW9c,EAAMzf,QAAOpB,GAAQ3I,OAAOyd,OAAO,KAAK8oB,gBAAgB/9B,SAASG,EAAK,KAAKu8B,YAC9D39B,KAAIoB,GAAQA,EAAK,KAAKu8B,WAC9CsB,EAAaxmC,OAAO+G,KAAK,KAAKw/B,gBAAgBx8B,QAAO1E,IAAQihC,EAAa99B,SAAS,KAAK+9B,eAAelhC,MAC7G,OAAOmkB,EAAMjiB,KAAIoB,IACb,MAAMgB,EAAQ3J,OAAOyd,OAAO,KAAK8oB,gBAAgBxhC,QAAQ4D,EAAK,KAAKu8B,UAEnE,IAAe,IAAXv7B,EACA,MAAO,CACHtE,IAAKrF,OAAO+G,KAAK,KAAKw/B,gBAAgB58B,GACtChB,QAIR,MAAMtD,EAAMmhC,EAAWC,OAAS7zB,KAAK8zB,SAASvgC,SAAS,IAAIwgC,OAAO,GAElE,OADA,KAAKJ,eAAelhC,GAAOsD,EAAK,KAAKu8B,SAC9B,CAAE7/B,MAAKsD,OAAM,GAE5B,EAIAi+B,aAAAA,GACI,OAAOh0B,KAAKszB,MAAM,KAAKf,YAAYhjC,OAAS,KAAK0jC,YACrD,EACAgB,UAAAA,GACI,MAAMC,EAAiB,KAAKX,WAAa,KAAKH,SAAW,KAAKb,YAAYhjC,OACpE4kC,EAAY,KAAK5B,YAAYhjC,OAAS,KAAKgkC,WAAa,KAAKC,WAC7DY,EAAmBp0B,KAAKszB,MAAMtzB,KAAKC,IAAI,KAAKsyB,YAAYhjC,OAAS,KAAKgkC,WAAYY,GAAa,KAAKlB,aAC1G,MAAO,CACHoB,WAAU,GAAAnlC,OAAK8Q,KAAKszB,MAAM,KAAKC,WAAa,KAAKN,aAAe,KAAKC,WAAU,MAC/EoB,cAAeJ,EAAiB,EAAC,GAAAhlC,OAAMklC,EAAmB,KAAKlB,WAAU,MACzEqB,UAAS,GAAArlC,OAAK,KAAK8kC,cAAgB,KAAKd,WAAU,MAE1D,GAEJ1sB,MAAO,CACHisB,aAAAA,CAAc17B,GACV,KAAKy9B,SAASz9B,EAClB,EACAi9B,aAAAA,GACQ,KAAKvB,eACL,KAAKhS,WAAU,IAAM,KAAK+T,SAAS,KAAK/B,gBAEhD,EACAQ,WAAAA,CAAYA,EAAawB,GACE,IAAnBA,EAQJ,KAAKD,SAAS,KAAKz9B,OALf6Z,GAAQ7J,MAAM,iDAMtB,GAEJ/I,OAAAA,GAAU,IAAA8kB,EAAA4R,EACN,MAAMC,EAAmB,QAAb7R,EAAG,KAAK3C,aAAK,IAAA2C,OAAA,EAAVA,EAAY6R,OACrB/rB,EAAO,KAAKvI,IACZu0B,EAAkB,QAAbF,EAAG,KAAKvU,aAAK,IAAAuU,OAAA,EAAVA,EAAYE,MAC1B,KAAK9B,eAAiB,IAAIla,eAAeic,MAAS,KAAM,IAAAC,EAAAC,EAAAC,EACpD,KAAKrC,aAAmC,QAAvBmC,EAAGH,aAAM,EAANA,EAAQM,oBAAY,IAAAH,EAAAA,EAAI,EAC5C,KAAKlC,aAAkC,QAAtBmC,EAAGH,aAAK,EAALA,EAAOK,oBAAY,IAAAF,EAAAA,EAAI,EAC3C,KAAKlC,YAAgC,QAArBmC,EAAGpsB,aAAI,EAAJA,EAAMqsB,oBAAY,IAAAD,EAAAA,EAAI,EACzC71B,GAAO4H,MAAM,uCACb,KAAKmuB,UAAU,GAChB,KAAK,IACR,KAAKpC,eAAe/Z,QAAQ4b,GAC5B,KAAK7B,eAAe/Z,QAAQnQ,GAC5B,KAAKkqB,eAAe/Z,QAAQ6b,GACxB,KAAKnC,eACL,KAAK+B,SAAS,KAAK/B,eAGvB,KAAKpyB,IAAIwE,iBAAiB,SAAU,KAAKqwB,SAAU,CAAEpW,SAAS,IAC9D,KAAK6U,eAAiB,CAAC,CAC3B,EACA1wB,aAAAA,GACQ,KAAK6vB,gBACL,KAAKA,eAAe9Z,YAE5B,EACA3a,QAAS,CACLm2B,QAAAA,CAASz9B,GACL,MAAMo+B,EAAYn1B,KAAKqzB,KAAK,KAAKd,YAAYhjC,OAAS,KAAK0jC,aAC3D,GAAIkC,EAAY,KAAK/B,SAEjB,YADAj0B,GAAO4H,MAAM,iDAAkD,CAAEhQ,QAAOo+B,YAAW/B,SAAU,KAAKA,WAGtG,KAAKr8B,MAAQA,EAEb,MAAMq+B,GAAap1B,KAAKszB,MAAMv8B,EAAQ,KAAKk8B,aAAe,IAAO,KAAKC,WAAa,KAAKP,aACxFxzB,GAAO4H,MAAM,mCAAqChQ,EAAO,CAAEq+B,YAAWnC,YAAa,KAAKA,cACxF,KAAK5yB,IAAI+0B,UAAYA,CACzB,EACAF,QAAAA,GAAW,IAAAG,EACa,QAApBA,EAAA,KAAKC,uBAAe,IAAAD,IAApB,KAAKC,gBAAoBC,uBAAsB,KAC3C,KAAKD,gBAAkB,KACvB,MAAME,EAAY,KAAKn1B,IAAI+0B,UAAY,KAAKzC,aACtC57B,EAAQiJ,KAAKszB,MAAMkC,EAAY,KAAKtC,YAAc,KAAKD,YAE7D,KAAKl8B,MAAQiJ,KAAKsjB,IAAI,EAAGvsB,GACzB,KAAKoD,MAAM,SAAS,IAE5B,KE5LR,IAXgB,OACd,IFRW,WAAkB,IAAIP,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,MAAM,CAACG,YAAY,aAAaC,MAAM,CAAC,qBAAqB,KAAK,CAACJ,EAAG,MAAM,CAAC6mB,IAAI,SAAS1mB,YAAY,sBAAsB,CAACJ,EAAI6hB,GAAG,WAAW,GAAG7hB,EAAIS,GAAG,KAAQT,EAAI67B,aAAa,kBAAmB57B,EAAG,MAAM,CAACG,YAAY,6BAA6B,CAACJ,EAAI6hB,GAAG,mBAAmB,GAAG7hB,EAAIW,KAAKX,EAAIS,GAAG,KAAKR,EAAG,QAAQ,CAACG,YAAY,oBAAoB4F,MAAM,CAAE,0CAA2ChG,EAAI67B,aAAa,oBAAqB,CAAE77B,EAAI84B,QAAS74B,EAAG,UAAU,CAACG,YAAY,mBAAmB,CAACJ,EAAIS,GAAG,WAAWT,EAAIU,GAAGV,EAAI84B,SAAS,YAAY94B,EAAIW,KAAKX,EAAIS,GAAG,KAAKR,EAAG,QAAQ,CAAC6mB,IAAI,QAAQ1mB,YAAY,oBAAoBC,MAAM,CAAC,2BAA2B,KAAK,CAACL,EAAI6hB,GAAG,WAAW,GAAG7hB,EAAIS,GAAG,KAAKR,EAAG,QAAQ,CAACG,YAAY,oBAAoB4F,MAAMhG,EAAI0nB,SAAW,0BAA4B,0BAA0BsB,MAAOhpB,EAAIq6B,WAAYh6B,MAAM,CAAC,2BAA2B,KAAKL,EAAIiK,GAAIjK,EAAI65B,eAAe,SAAA74B,EAAqBvL,GAAE,IAAd,IAACoD,EAAG,KAAEsD,GAAK6E,EAAI,OAAOf,EAAGD,EAAIy4B,cAAcz4B,EAAIG,GAAG,CAACtH,IAAIA,EAAIm5B,IAAI,YAAY3xB,MAAM,CAAC,OAASlE,EAAK,MAAQ1G,IAAI,YAAYuK,EAAI44B,YAAW,GAAO,IAAG,GAAG54B,EAAIS,GAAG,KAAKR,EAAG,QAAQ,CAAC4xB,WAAW,CAAC,CAAC58B,KAAK,OAAO68B,QAAQ,SAASz4B,MAAO2G,EAAIm5B,QAASpH,WAAW,YAAY3xB,YAAY,oBAAoBC,MAAM,CAAC,2BAA2B,KAAK,CAACL,EAAI6hB,GAAG,WAAW,MAC30C,GACsB,IESpB,EACA,KACA,KACA,MAI8B,QCJ1Bxa,IAAU6f,EAAAA,EAAAA,MAChB,IAAerb,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,8BACNwC,WAAY,CACRg0B,UAAS,KACTD,eAAc,KACdvf,iBAAgB,IAChB0f,cAAaA,GAAAA,GAEjBpM,OAAQ,CACJC,IAEJjgB,MAAO,CACHoL,YAAa,CACThL,KAAMnM,OACNgT,UAAU,GAEd6xB,cAAe,CACX14B,KAAM9J,MACNiK,QAASA,IAAO,KAGxBoI,MAAKA,KAIM,CACH0gB,iBAJqB1G,KAKrBxC,WAJenP,KAKfoP,eAJmB3L,OAO3BjR,KAAIA,KACO,CACHykB,QAAS,OAGjBrkB,SAAU,CACN4K,GAAAA,GAAM,IAAA1B,EAEF,QAAmB,QAAXA,EAAA,KAAKC,cAAM,IAAAD,GAAO,QAAPA,EAAXA,EAAa1Q,aAAK,IAAA0Q,OAAA,EAAlBA,EAAoB0B,MAAO,KAAKvT,QAAQ,WAAY,KAChE,EACAshC,cAAAA,GACI,OAAOz0B,GACF9J,QAAOgR,GAAUA,EAAOsO,YACxBtf,QAAOgR,IAAWA,EAAOK,SAAWL,EAAOK,QAAQ,KAAKC,MAAO,KAAKlE,eACpEhQ,MAAK,CAACC,EAAGC,KAAOD,EAAE6R,OAAS,IAAM5R,EAAE4R,OAAS,IACrD,EACAoC,KAAAA,GACI,OAAO,KAAKwpB,cACPt9B,KAAI6V,GAAU,KAAKD,QAAQC,KAC3BrT,OAAOT,QAChB,EACAi/B,mBAAAA,GACI,OAAO,KAAKltB,MAAMiJ,MAAKzI,GAAQA,EAAKiM,SAAW5C,EAAAA,GAAWC,SAC9D,EACAgQ,WAAY,CACRvjB,GAAAA,GACI,MAAwC,WAAjC,KAAKwjB,iBAAiBzG,MACjC,EACA/N,GAAAA,CAAI+N,GACA,KAAKyG,iBAAiBzG,OAASA,EAAS,SAAW,IACvD,GAEJ6Z,aAAAA,GACI,OAAI,KAAKrd,eAAiB,IACf,EAEP,KAAKA,eAAiB,IACf,EAEP,KAAKA,eAAiB,KACf,EAEJ,CACX,GAEJla,QAAS,CAOLkM,OAAAA,CAAQK,GACJ,OAAO,KAAK0O,WAAW/O,QAAQK,EACnC,EACA,mBAAM6b,CAActe,GAChB,MAAME,EAAcF,EAAOE,YAAY,KAAKI,MAAO,KAAKlE,aAClDsxB,EAAmB,KAAK5D,cAC9B,IAEI,KAAK7Q,QAAUjZ,EAAOvB,GACtB,KAAK6B,MAAM1F,SAAQkG,IACfhR,EAAAA,GAAAA,IAAQgR,EAAM,SAAUqJ,EAAAA,GAAWC,QAAQ,IAG/C,MAAM3C,QAAgBzH,EAAOsO,UAAU,KAAKhO,MAAO,KAAKlE,YAAa,KAAKoD,KAE1E,IAAKiI,EAAQ8B,MAAKnf,GAAqB,OAAXA,IAGxB,YADA,KAAKgnB,eAAepL,QAIxB,GAAIyB,EAAQ8B,MAAKnf,IAAqB,IAAXA,IAAmB,CAE1C,MAAMujC,EAAgBD,EACjB1+B,QAAO,CAACqT,EAAQzT,KAA6B,IAAnB6Y,EAAQ7Y,KAEvC,GADA,KAAKwiB,eAAevL,IAAI8nB,GACpBlmB,EAAQ8B,MAAKnf,GAAqB,OAAXA,IAGvB,OAGJ,YADA6M,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,2CAA4C,CAAE4K,gBAE5E,EAEAzE,EAAAA,EAAAA,IAAY,KAAKnG,EAAE,QAAS,qDAAsD,CAAE4K,iBACpF,KAAKkR,eAAepL,OACxB,CACA,MAAOoI,GACHpX,GAAOD,MAAM,+BAAgC,CAAEiJ,SAAQoO,OACvDnX,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,gCAAiC,CAAE4K,gBACjE,CAAC,QAGG,KAAK+Y,QAAU,KACf,KAAK3Y,MAAM1F,SAAQkG,IACfhR,EAAAA,GAAAA,IAAQgR,EAAM,cAAU5Y,EAAU,GAE1C,CACJ,EACAoN,EAAG4B,EAAAA,MCpJgQ,sBCWvQ,GAAU,CAAC,EAEf,GAAQC,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OClB1D,IAAI,IAAY,OACd,IHTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,MAAM,CAACG,YAAY,oDAAoD,CAACH,EAAG,YAAY,CAAC6mB,IAAI,cAAczmB,MAAM,CAAC,WAAaL,EAAIwnB,SAAWxnB,EAAI+7B,oBAAoB,cAAa,EAAK,OAAS/7B,EAAIg8B,cAAc,YAAYh8B,EAAIg8B,eAAiB,EAAIh8B,EAAI6D,EAAE,QAAS,WAAa,KAAK,KAAO7D,EAAI2oB,YAAY/xB,GAAG,CAAC,cAAc,SAAS0J,GAAQN,EAAI2oB,WAAWroB,CAAM,IAAIN,EAAIiK,GAAIjK,EAAI87B,gBAAgB,SAASvtB,GAAQ,OAAOtO,EAAG,iBAAiB,CAACpH,IAAI0V,EAAOvB,GAAGhH,MAAM,iCAAmCuI,EAAOvB,GAAGpW,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAI6sB,cAActe,EAAO,GAAGpE,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEkM,EAAIwnB,UAAYjZ,EAAOvB,GAAI/M,EAAG,gBAAgB,CAACI,MAAM,CAAC,KAAO,MAAMJ,EAAG,mBAAmB,CAACI,MAAM,CAAC,IAAMkO,EAAOG,cAAc1O,EAAI6O,MAAO7O,EAAI2K,gBAAgB,EAAEN,OAAM,IAAO,MAAK,IAAO,CAACrK,EAAIS,GAAG,WAAWT,EAAIU,GAAG6N,EAAOE,YAAYzO,EAAI6O,MAAO7O,EAAI2K,cAAc,WAAW,IAAG,IAAI,EACj+B,GACsB,IGUpB,EACA,KACA,WACA,MAIF,SAAe,GAAiB,QCnBgO,ICkBjPkB,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,mBACNwC,WAAY,CACR0kC,gBAAe,GACfC,qBAAoB,GACpBC,qBAAoB,GACpBC,YAAW,GACXC,4BAA2BA,IAE/Bhd,OAAQ,CACJC,IAEJjgB,MAAO,CACHoL,YAAa,CACThL,KAAM68B,EAAAA,GACNh2B,UAAU,GAEdqwB,cAAe,CACXl3B,KAAMgT,EAAAA,GACNnM,UAAU,GAEdqI,MAAO,CACHlP,KAAM9J,MACN2Q,UAAU,IAGlB0B,MAAKA,KAGM,CACHhB,gBAHoBD,KAIpB0Y,eAHmB3L,OAM3BjR,KAAIA,KACO,CACH05B,UAAS,GACTC,cAAa,GACb5Z,SAAS6Z,EAAAA,EAAAA,MACT9D,cAAe,EACf+D,WAAY,OAGpBz5B,SAAU,CACNwD,UAAAA,GACI,OAAO,KAAKO,gBAAgBP,UAChC,EACAqK,MAAAA,GACI,OAAOsV,SAAS,KAAKha,OAAOjN,OAAOmQ,SAAW,IAClD,EAKA8f,QAAAA,GACI,QAAS,KAAKhjB,OAAO3Q,MAAM4zB,QAC/B,EACApJ,OAAAA,GACI,OAAOpE,GAAc,KAAKlT,MAC9B,EACAimB,gBAAAA,GAEI,QAAI,KAAKnW,eAAiB,MAGnB,KAAK9P,MAAMiJ,MAAKzI,QAAuB5Y,IAAf4Y,EAAK4mB,OACxC,EACAlB,eAAAA,GAEI,QAAI,KAAKpW,eAAiB,MAGnB,KAAK9P,MAAMiJ,MAAKzI,QAAsB5Y,IAAd4Y,EAAKtP,MACxC,EACA88B,aAAAA,GACI,OAAK,KAAKhG,eAAkB,KAAKlsB,YAG1B,IAAI,KAAKmY,SAASnoB,MAAK,CAACC,EAAGC,IAAMD,EAAE6R,MAAQ5R,EAAE4R,QAFzC,EAGf,EACAqsB,OAAAA,GACI,MAAMgE,GAAiBj5B,EAAAA,EAAAA,IAAE,QAAS,8BAC5Bk5B,EAAc,KAAKpyB,YAAYmuB,SAAWgE,EAC1CE,GAAkBn5B,EAAAA,EAAAA,IAAE,QAAS,6CAC7Bo5B,GAAkBp5B,EAAAA,EAAAA,IAAE,QAAS,yHACnC,SAAAvO,OAAUynC,EAAW,MAAAznC,OAAK0nC,EAAe,MAAA1nC,OAAK2nC,EAClD,EACA5E,aAAAA,GACI,OAAO,KAAK1Y,eAAe1L,QAC/B,EACAqkB,cAAAA,GACI,OAAqC,IAA9B,KAAKD,cAAc1iC,MAC9B,GAEJiX,MAAO,CACHoE,OAAQ,CACJsT,OAAAA,CAAQtT,GACJ,KAAKksB,aAAalsB,GAAQ,EAC9B,EACAiT,WAAW,GAEfqL,SAAU,CACNhL,OAAAA,GAEI,KAAKuC,WAAU,KACP,KAAK7V,SACD,KAAKse,SACL,KAAK6N,eAAe,KAAKnsB,QAGzB,KAAKosB,eAEb,GAER,EACAnZ,WAAW,IAGnB7f,OAAAA,GAEwBmE,OAAOmB,SAASC,cAAc,oBACtCsB,iBAAiB,WAAY,KAAK4V,aAC9C1c,EAAAA,EAAAA,IAAU,uBAAwB,KAAKi5B,cAGnC,KAAKpsB,QACL,KAAKqsB,mBAAmB,KAAKrsB,OAErC,EACA3H,aAAAA,GACwBd,OAAOmB,SAASC,cAAc,oBACtCwB,oBAAoB,WAAY,KAAK0V,aACjDyc,EAAAA,EAAAA,IAAY,uBAAwB,KAAKF,aAC7C,EACA34B,QAAS,CAGL44B,kBAAAA,CAAmBrsB,GACf,GAAItH,SAASkb,gBAAgB9F,YAAc,MAAQ,KAAK+X,cAAcrnB,SAAWwB,EAAQ,KAAAkZ,EAGrF,MAAM7a,EAAO,KAAKR,MAAM5B,MAAKgF,GAAKA,EAAEzC,SAAWwB,IAC3C3B,SAAQ8a,IAAsB,QAATD,EAAbC,GAAevb,eAAO,IAAAsb,GAAtBA,EAAA/0B,KAAAg1B,GAAyB,CAAC9a,GAAO,KAAK1E,eAC9CpF,GAAO4H,MAAM,2BAA6BkC,EAAKlQ,KAAM,CAAEkQ,SACvD8a,GAAc9vB,KAAKgV,EAAM,KAAK1E,YAAa,KAAKksB,cAAc13B,MAEtE,CACJ,EACA+9B,YAAAA,CAAalsB,GAAqB,IAAb0M,IAAInnB,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,KAAAA,UAAA,GACrB,GAAIya,EAAQ,CAER,GAAIA,IAAW,KAAK6lB,cAAcrnB,OAC9B,OAEJ,MAAMrS,EAAQ,KAAK0R,MAAMyd,WAAUjd,GAAQA,EAAKG,SAAWwB,IACvD0M,IAAmB,IAAXvgB,GAAgB6T,IAAW,KAAK6lB,cAAcrnB,SACtDhK,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,mBAE9B,KAAKg1B,cAAgBzyB,KAAKsjB,IAAI,EAAGvsB,EACrC,CACJ,EACAigC,YAAAA,GAEyD,IAAAG,EAAhD,KAAKjO,UAAuC,KAA3B9mB,IAAIC,MAAM+E,QAAQ6H,MACpC9M,OAAO+G,IAAI7G,MAAMlK,OAAOgR,UAAU,KAAM,IAAK,KAAKjD,OAAOjN,OAAQmQ,OAAQ5P,OAAgC,QAA1B29B,EAAC,KAAK1G,cAAcrnB,cAAM,IAAA+tB,EAAAA,EAAI,KAAO,KAAKjxB,OAAO3Q,MAExI,EAKAwhC,cAAAA,CAAensB,GACX,GAAe,OAAXA,EACA,OAEJ,MAAM3B,EAAO,KAAKR,MAAM5B,MAAKgF,GAAKA,EAAEzC,SAAWwB,IAC/C,QAAava,IAAT4Y,GAAsBA,EAAK1P,OAAS+S,EAAAA,GAASC,OAC7C,OAEJpN,GAAO4H,MAAM,gBAAkBkC,EAAKlQ,KAAM,CAAEkQ,SAC5C,KAAKutB,WAAa5rB,EAClB,MAAMwsB,GAAgBtW,EAAAA,EAAAA,MAEjB3pB,QAAOgR,KAAYA,UAAAA,EAAQzO,WAE3BvC,QAAQgR,IAAYA,EAAOK,SAAWL,EAAOK,QAAQ,CAACS,GAAO,KAAK1E,eAElEhQ,MAAK,CAACC,EAAGC,KAAOD,EAAE6R,OAAS,IAAM5R,EAAE4R,OAAS,KAE5CgxB,GAAG,GAGRD,SAAAA,EAAenjC,KAAKgV,EAAM,KAAK1E,YAAa,KAAKksB,cAAc13B,KACnE,EACA0hB,UAAAA,CAAWzsB,GAAO,IAAA8sB,EAGd,GADwC,QAArBA,EAAG9sB,EAAM0sB,oBAAY,IAAAI,OAAA,EAAlBA,EAAoBwc,MAAM1hC,SAAS,SAIrD,OAEJ5H,EAAM8R,iBACN9R,EAAM6R,kBACN,MAAM03B,EAAW,KAAKpX,MAAMqX,MAAMn3B,IAAI+iB,wBAAwBK,IACxDgU,EAAcF,EAAW,KAAKpX,MAAMqX,MAAMn3B,IAAI+iB,wBAAwBsU,OAExE1pC,EAAMw1B,QAAU+T,EAAW,IAC3B,KAAKpX,MAAMqX,MAAMn3B,IAAI+0B,UAAY,KAAKjV,MAAMqX,MAAMn3B,IAAI+0B,UAAY,GAIlEpnC,EAAMw1B,QAAUiU,EAAc,KAC9B,KAAKtX,MAAMqX,MAAMn3B,IAAI+0B,UAAY,KAAKjV,MAAMqX,MAAMn3B,IAAI+0B,UAAY,GAE1E,EACA33B,EAACA,EAAAA,sBC/NL,GAAU,CAAC,EAEf,GAAQ6B,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,uBCftD,GAAU,CAAC,EAEf,GAAQL,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCN1D,UAXgB,OACd,IHVW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,cAAc,CAAC6mB,IAAI,QAAQzmB,MAAM,CAAC,iBAAiBL,EAAI2G,WAAWK,UAAYhH,EAAI08B,cAAgB18B,EAAIy8B,UAAU,WAAW,SAAS,eAAez8B,EAAI6O,MAAM,YAAY7O,EAAI2G,WAAWK,UAAU,cAAc,CACjT8tB,iBAAkB90B,EAAI80B,iBACtBC,gBAAiB/0B,EAAI+0B,gBACrBlmB,MAAO7O,EAAI6O,MACX8P,eAAgB3e,EAAI2e,gBACnB,kBAAkB3e,EAAI64B,cAAc,QAAU74B,EAAI84B,SAAS3uB,YAAYnK,EAAIoK,GAAG,CAAGpK,EAAIs4B,eAA8U,KAA9T,CAACz/B,IAAI,iBAAiB/E,GAAG,WAAW,MAAO,CAACmM,EAAG,OAAO,CAACG,YAAY,wBAAwB,CAACJ,EAAIS,GAAGT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,mBAAoB,CAAEk6B,MAAO/9B,EAAIq4B,cAAc1iC,aAAcqK,EAAIS,GAAG,KAAKR,EAAG,8BAA8B,CAACI,MAAM,CAAC,eAAeL,EAAI2K,YAAY,iBAAiB3K,EAAIq4B,iBAAiB,EAAEhuB,OAAM,GAAW,CAACxR,IAAI,SAAS/E,GAAG,WAAW,OAAOkM,EAAIiK,GAAIjK,EAAI68B,eAAe,SAASjG,GAAQ,OAAO32B,EAAG,kBAAkB,CAACpH,IAAI+9B,EAAO5pB,GAAG3M,MAAM,CAAC,iBAAiBL,EAAI62B,cAAc,eAAe72B,EAAI2K,YAAY,OAASisB,IAAS,GAAE,EAAEvsB,OAAM,GAAM,CAACxR,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACmM,EAAG,uBAAuB,CAAC6mB,IAAI,QAAQzmB,MAAM,CAAC,mBAAmBL,EAAI2e,eAAe,qBAAqB3e,EAAI80B,iBAAiB,oBAAoB90B,EAAI+0B,gBAAgB,MAAQ/0B,EAAI6O,SAAS,EAAExE,OAAM,GAAM,CAACxR,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACmM,EAAG,uBAAuB,CAACI,MAAM,CAAC,mBAAmBL,EAAI2e,eAAe,qBAAqB3e,EAAI80B,iBAAiB,oBAAoB90B,EAAI+0B,gBAAgB,MAAQ/0B,EAAI6O,MAAM,QAAU7O,EAAImmB,WAAW,EAAE9b,OAAM,IAAO,MAAK,IAC1nC,GACsB,IGMpB,EACA,KACA,WACA,MAI8B,QCpBgF,GCoBhH,CACEpV,KAAM,oBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,MCff,IAXgB,OACd,ICRW,WAAkB,IAAIE,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,OAAOD,EAAIG,GAAG,CAACC,YAAY,4CAA4CC,MAAM,CAAC,cAAcL,EAAIN,MAAQ,KAAO,OAAO,aAAaM,EAAIN,MAAM,KAAO,OAAO9I,GAAG,CAAC,MAAQ,SAAS0J,GAAQ,OAAON,EAAIO,MAAM,QAASD,EAAO,IAAI,OAAON,EAAIQ,QAAO,GAAO,CAACP,EAAG,MAAM,CAACG,YAAY,4BAA4BC,MAAM,CAAC,KAAOL,EAAIH,UAAU,MAAQG,EAAID,KAAK,OAASC,EAAID,KAAK,QAAU,cAAc,CAACE,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,uJAAuJ,CAAEL,EAAS,MAAEC,EAAG,QAAQ,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAUM,EAAIW,UAC7qB,GACsB,IDSpB,EACA,KACA,KACA,MAI8B,QElBiO,ICUlPkL,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,oBACNwC,WAAY,CACRumC,kBAAiBA,IAErBz+B,MAAO,CACHs3B,cAAe,CACXl3B,KAAMnM,OACNgT,UAAU,IAGlB0B,KAAAA,GACI,MAAM,YAAEyC,GAAgBL,KACxB,MAAO,CACHK,cAER,EACA5H,KAAIA,KACO,CACH0kB,UAAU,IAGlBtkB,SAAU,CAIN86B,SAAAA,GACI,OAAO,KAAKpH,eAA0E,IAAxD,KAAKA,cAAc3nB,YAAcC,EAAAA,GAAWmS,OAC9E,EACA4c,eAAAA,GAAkB,IAAAlH,EACd,OAAqE,KAA5C,QAAlBA,EAAA,KAAKH,qBAAa,IAAAG,GAAY,QAAZA,EAAlBA,EAAoBnf,kBAAU,IAAAmf,OAAA,EAA9BA,EAAiC,yBAC5C,EACAmH,eAAAA,GACI,OAAI,KAAKD,gBACE,KAAKr6B,EAAE,QAAS,mEAEjB,KAAKo6B,UAGR,KAFI,KAAKp6B,EAAE,QAAS,2DAG/B,EAMAu6B,aAAAA,GACI,OAAOnD,MAAS,KACZ,KAAKxT,UAAW,CAAK,GACtB,IACP,GAEJrjB,OAAAA,GAEI,MAAMi6B,EAAc91B,OAAOmB,SAASqf,eAAe,mBACnDsV,EAAYpzB,iBAAiB,WAAY,KAAK4V,YAC9Cwd,EAAYpzB,iBAAiB,YAAa,KAAKmf,aAC/CiU,EAAYpzB,iBAAiB,OAAQ,KAAKqzB,cAC9C,EACAj1B,aAAAA,GACI,MAAMg1B,EAAc91B,OAAOmB,SAASqf,eAAe,mBACnDsV,EAAYlzB,oBAAoB,WAAY,KAAK0V,YACjDwd,EAAYlzB,oBAAoB,YAAa,KAAKif,aAClDiU,EAAYlzB,oBAAoB,OAAQ,KAAKmzB,cACjD,EACA75B,QAAS,CACLoc,UAAAA,CAAWzsB,GAAO,IAAA8sB,EAEd9sB,EAAM8R,kBACkC,QAArBgb,EAAG9sB,EAAM0sB,oBAAY,IAAAI,OAAA,EAAlBA,EAAoBwc,MAAM1hC,SAAS,YAGrD,KAAKyrB,UAAW,EAChB,KAAK2W,gBAEb,EACAhU,WAAAA,CAAYh2B,GAAO,IAAAmqC,EAIf,MAAMlU,EAAgBj2B,EAAMi2B,cACxBA,SAAAA,EAAehF,SAA6B,QAArBkZ,EAAEnqC,EAAMk2B,qBAAa,IAAAiU,EAAAA,EAAInqC,EAAM8V,SAGtD,KAAKud,WACL,KAAKA,UAAW,EAChB,KAAK2W,cAAcj8B,QAE3B,EACAm8B,aAAAA,CAAclqC,GACVmR,GAAO4H,MAAM,kDAAmD,CAAE/Y,UAClEA,EAAM8R,iBACF,KAAKuhB,WACL,KAAKA,UAAW,EAChB,KAAK2W,cAAcj8B,QAE3B,EACA,YAAM8e,CAAO7sB,GAAO,IAAAoqC,EAAArd,EAAApU,EAEhB,GAAI,KAAKoxB,gBAEL,YADA34B,EAAAA,EAAAA,IAAU,KAAK24B,iBAGnB,GAAmC,QAAnCK,EAAI,KAAK/3B,IAAIkD,cAAc,gBAAQ,IAAA60B,GAA/BA,EAAiCnZ,SAASjxB,EAAM8V,QAChD,OAEJ9V,EAAM8R,iBACN9R,EAAM6R,kBAEN,MAAM+W,EAAQ,KAAsB,QAAlBmE,EAAA/sB,EAAM0sB,oBAAY,IAAAK,OAAA,EAAlBA,EAAoBnE,QAAS,IAGzCQ,QAAiBT,GAAuBC,GAExClI,QAAiC,QAAtB/H,EAAM,KAAKpC,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkByN,YAAY,KAAKqc,cAAc13B,OAClEqU,EAASsB,aAAQ,EAARA,EAAUtB,OACzB,IAAKA,EAED,YADAhO,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,0CAK9B,GAAIzP,EAAMmtB,OACN,OAEJhc,GAAO4H,MAAM,UAAW,CAAE/Y,QAAOof,SAAQgK,aAEzC,MAEMihB,SAFgB5gB,GAAoBL,EAAUhK,EAAQsB,EAASA,WAE1C4pB,UAAUzgB,IAAM,IAAA0gB,EAAA,OAAK1gB,EAAO3C,SAAWsjB,GAAAA,EAAa/V,SACvE5K,EAAO5I,KAAKwpB,mBAAmB7iC,SAAS,OAC1B,QAD8B2iC,EAC7C1gB,EAAO/Y,gBAAQ,IAAAy5B,GAAS,QAATA,EAAfA,EAAiB7b,eAAO,IAAA6b,OAAA,EAAxBA,EAA2B,eAEoC,IAA/D1gB,EAAOrN,OAAOpW,QAAQgZ,EAAO5C,OAAQ,IAAIlZ,MAAM,KAAK/B,MAAY,IACvE,QAAmBc,IAAfgoC,EAA0B,CAC1Bl5B,GAAO4H,MAAM,6CAA8C,CAAEsxB,eAC7D,MAAMpL,EAAW,CACbl0B,KAAM,KAAKmN,OAAOnN,KAElBE,OAAQ,IACD,KAAKiN,OAAOjN,OACfmQ,OAAQ5P,OAAO6+B,EAAWv5B,SAAS4d,QAAQ,eAE/CnnB,MAAO,IACA,KAAK2Q,OAAO3Q,eAIhB03B,EAAS13B,MAAM4zB,SACtB,KAAKN,QAAQx6B,KAAK4+B,EACtB,CACA,KAAK5L,UAAW,EAChB,KAAK2W,cAAcj8B,OACvB,EACA0B,EAACA,EAAAA,sBCzJL,GAAU,CAAC,EAEf,GAAQ6B,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,IFTW,WAAkB,IAAI/F,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,MAAM,CAAC4xB,WAAW,CAAC,CAAC58B,KAAK,OAAO68B,QAAQ,SAASz4B,MAAO2G,EAAIynB,SAAUsK,WAAW,aAAa3xB,YAAY,+BAA+BC,MAAM,CAAC,+BAA+B,IAAIzJ,GAAG,CAAC,KAAOoJ,EAAIihB,SAAS,CAAChhB,EAAG,MAAM,CAACG,YAAY,wCAAwC,CAAEJ,EAAIi+B,YAAcj+B,EAAIk+B,gBAAiB,CAACj+B,EAAG,oBAAoB,CAACI,MAAM,CAAC,KAAO,MAAML,EAAIS,GAAG,KAAKR,EAAG,KAAK,CAACG,YAAY,sCAAsC,CAACJ,EAAIS,GAAG,aAAaT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,uCAAuC,eAAe,CAAC5D,EAAG,KAAK,CAACG,YAAY,sCAAsC,CAACJ,EAAIS,GAAG,aAAaT,EAAIU,GAAGV,EAAIm+B,iBAAiB,gBAAgB,IACxuB,GACsB,IEUpB,EACA,KACA,WACA,MAI8B,2BtJoBhC,MAAMW,QAAwDroC,KAApB,QAAjBsoC,IAAAC,EAAAA,GAAAA,YAAiB,IAAAD,QAAA,EAAjBA,GAAmBE,euJvC6M,IvJwC1OpzB,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,YACNwC,WAAY,CACRynC,YAAW,GACXC,kBAAiB,GACjBC,iBAAgB,GAChBxM,SAAQ,KACRyM,aAAY,GACZC,aAAY,KACZzH,SAAQ,KACR0H,eAAc,KACdtzB,iBAAgB,IAChB0f,cAAa,KACb6T,SAAQ,KACRlN,gBAAe,GACfmN,aAAY,KACZC,aAAY,GACZC,uBAAsB,KACtBC,WAAUA,IAEdrgB,OAAQ,CACJC,GACAsY,IAEJ5vB,KAAAA,GAAQ,IAAAG,EACJ,MAAMqX,EAAanP,KACb4B,EAAaD,KACbyN,EAAiB3L,KACjB4L,EAAgBnL,KAChBvN,EAAkBD,KAClB2E,EAAkBP,MAClB,YAAEV,GAAgBL,KAClBpB,EAAmF,QAArEb,GAAInF,EAAAA,EAAAA,GAAU,OAAQ,SAAU,IAAI,yCAAiC,IAAAmF,GAAAA,EACzF,MAAO,CACHsC,cACAsH,EAAC,IACDpO,EAAC,IACD6b,aACAvN,aACAwN,iBACAC,gBACA1Y,kBACA0E,kBACA1C,iBACA+qB,UAASA,GAAAA,EAEjB,EACAlxB,KAAIA,KACO,CACH88B,WAAY,GACZrY,SAAS,EACTliB,MAAO,KACPkW,QAAS,KACTskB,yBAA0BA,SAGlC38B,SAAU,CACNwD,UAAAA,GACI,OAAO,KAAKO,gBAAgBP,UAChC,EACAo5B,WAAAA,GAAc,IAAAC,EAAAjzB,EACV,MAAMrN,EAA8B,QAAzBsgC,EAAmB,QAAnBjzB,EAAG,KAAKpC,mBAAW,IAAAoC,OAAA,EAAhBA,EAAkB9X,YAAI,IAAA+qC,EAAAA,GAAIn8B,EAAAA,EAAAA,GAAE,QAAS,SACnD,YAA2BpN,IAAvB,KAAKogC,eAA4C,MAAb,KAAK9oB,IAClCrO,EAEX,GAAApK,OAAU,KAAKuhC,cAAcja,YAAW,OAAAtnB,OAAMoK,EAClD,EAIAqO,GAAAA,GAAM,IAAA1B,EAEF,QAAmB,QAAXA,EAAA,KAAKC,cAAM,IAAAD,GAAO,QAAPA,EAAXA,EAAa1Q,aAAK,IAAA0Q,GAAK,QAALA,EAAlBA,EAAoB0B,WAAG,IAAA1B,OAAA,EAAvBA,EAAyB1S,aAAc,KAAKa,QAAQ,WAAY,KAC5E,EAIAwW,MAAAA,GAAS,IAAAivB,EAAAC,EACL,MAAMC,EAASrlC,OAAOwrB,SAAmC,QAA3B2Z,EAAY,QAAZC,EAAC,KAAK5zB,cAAM,IAAA4zB,OAAA,EAAXA,EAAa7gC,OAAOmQ,cAAM,IAAAywB,EAAAA,EAAI,IAC7D,OAAOnlC,OAAOM,MAAM+kC,GAAU,KAAOA,CACzC,EAIAtJ,aAAAA,GAAgB,IAAAnW,EACZ,GAAqB,QAAjBA,EAAC,KAAK/V,mBAAW,IAAA+V,IAAhBA,EAAkB1T,GACnB,OAEJ,GAAiB,MAAb,KAAKe,IACL,OAAO,KAAK2R,WAAWxO,QAAQ,KAAKvG,YAAYqC,IAEpD,MAAM4D,EAAS,KAAKuB,WAAWE,QAAQ,KAAK1H,YAAYqC,GAAI,KAAKe,KACjE,YAAetX,IAAXma,EAGG,KAAK8O,WAAW/O,QAAQC,QAH/B,CAIJ,EAIAwvB,iBAAAA,GAAoB,IAAAhf,EAChB,IAAK,KAAKzW,YACN,MAAO,GAEX,IAAI01B,EAAqB,IAAI,KAAKC,aAE9B,KAAKT,aACLQ,EAAqBA,EAAmB9iC,QAAO8R,GACpCA,EAAKqH,SAASnb,cAAcS,SAAS,KAAK6jC,WAAWtkC,iBAEhEyb,GAAQ7J,MAAM,sBAAuBkzB,IAEzC,MAAME,IAAgC,QAAhBnf,EAAA,KAAKzW,mBAAW,IAAAyW,OAAA,EAAhBA,EAAkBmU,UAAW,IAC9CtoB,MAAKwpB,GAAUA,EAAOzpB,KAAO,KAAKoqB,cAEvC,GAAImJ,SAAAA,EAAc5lC,MAAqC,mBAAtB4lC,EAAa5lC,KAAqB,CAC/D,MAAMqb,EAAU,IAAI,KAAKsqB,aAAa3lC,KAAK4lC,EAAa5lC,MACxD,OAAO,KAAK68B,aAAexhB,EAAUA,EAAQwqB,SACjD,CACA,OAAOC,EAAAA,EAAAA,IAAUJ,EAAoB,CACjCK,mBAAoB,KAAK/5B,WAAWG,qBACpC65B,iBAAkB,KAAKh6B,WAAWI,mBAClCqwB,YAAa,KAAKA,YAClBwJ,aAAc,KAAKpJ,aAAe,MAAQ,QAElD,EACA8I,WAAAA,GAAc,IAAAO,EAAA7J,EACV,MAAM8J,EAAiC,QAAvBD,EAAG,KAAK35B,uBAAe,IAAA25B,OAAA,EAApBA,EAAsBl6B,WAAWC,YACpD,QAA0B,QAAlBowB,EAAA,KAAKH,qBAAa,IAAAG,OAAA,EAAlBA,EAAoBpjB,YAAa,IACpC7Y,IAAI,KAAK4V,SACTpT,QAAO8X,IACS,IAAA0rB,EAAjB,OAAKD,IAGIzrB,EAFEA,IAAqC,KAA7BA,SAAgB,QAAZ0rB,EAAJ1rB,EAAMwC,kBAAU,IAAAkpB,OAAA,EAAhBA,EAAkBC,WAAoB3rB,SAAAA,EAAMqB,SAASzH,WAAW,KAEtE,GAErB,EAIAgyB,UAAAA,GACI,OAAmC,IAA5B,KAAKX,YAAY3qC,MAC5B,EAMAurC,YAAAA,GACI,YAA8BzqC,IAAvB,KAAKogC,gBACJ,KAAKoK,YACN,KAAKzZ,OAChB,EAIA2Z,aAAAA,GACI,MAAMpzB,EAAM,KAAKA,IAAIrW,MAAM,KAAKtC,MAAM,GAAI,GAAGwC,KAAK,MAAQ,IAC1D,MAAO,IAAK,KAAK0U,OAAQ3Q,MAAO,CAAEoS,OACtC,EACAqzB,eAAAA,GAAkB,IAAAC,EAAAC,EACd,GAAuB,QAAnBD,EAAC,KAAKxK,qBAAa,IAAAwK,GAAY,QAAZA,EAAlBA,EAAoBxpB,kBAAU,IAAAwpB,GAA9BA,EAAiC,eAGtC,OAAO7tC,OAAOyd,QAAyB,QAAlBqwB,EAAA,KAAKzK,qBAAa,IAAAyK,GAAY,QAAZA,EAAlBA,EAAoBzpB,kBAAU,IAAAypB,OAAA,EAA9BA,EAAiC,iBAAkB,CAAC,GAAGhlC,MAChF,EACAilC,gBAAAA,GACI,OAAK,KAAKH,gBAGN,KAAKI,kBAAoBvN,GAAAA,EAAUwN,KAC5B,KAAK59B,EAAE,QAAS,kBAEpB,KAAKA,EAAE,QAAS,UALZ,KAAKA,EAAE,QAAS,QAM/B,EACA29B,eAAAA,GACI,OAAK,KAAKJ,gBAIN,KAAKA,gBAAgBtpB,MAAKnY,GAAQA,IAASs0B,GAAAA,EAAUwN,OAC9CxN,GAAAA,EAAUwN,KAEdxN,GAAAA,EAAUyN,KANN,IAOf,EACAC,mBAAAA,GACI,OAAO,KAAKh7B,WAAWK,UACjB,KAAKnD,EAAE,QAAS,uBAChB,KAAKA,EAAE,QAAS,sBAC1B,EAIAo6B,SAAAA,GACI,OAAO,KAAKpH,eAA0E,IAAxD,KAAKA,cAAc3nB,YAAcC,EAAAA,GAAWmS,OAC9E,EACA4c,eAAAA,GAAkB,IAAA0D,EACd,OAAqE,KAA5C,QAAlBA,EAAA,KAAK/K,qBAAa,IAAA+K,GAAY,QAAZA,EAAlBA,EAAoB/pB,kBAAU,IAAA+pB,OAAA,EAA9BA,EAAiC,yBAC5C,EACAzD,eAAAA,GACI,OAAI,KAAKD,gBACE,KAAKr6B,EAAE,QAAS,mEAEpB,KAAKA,EAAE,QAAS,2DAC3B,EAIAg+B,QAAAA,GACI,OAAO/C,IACA,KAAKjI,eAAyE,IAAvD,KAAKA,cAAc3nB,YAAcC,EAAAA,GAAW2yB,MAC9E,EAMAC,QAAAA,GACI,OAAO9G,MAAU+G,IACbhrB,GAAQ7J,MAAM,yDAA0D60B,GACxE,KAAKnC,WAAamC,EAAYrmC,KAAK,GACpC,IACP,GAEJiR,MAAO,CAIHmzB,WAAAA,GAAc,IAAAkC,EAAAC,EACVx4B,SAAShK,MAAK,GAAApK,OAAM,KAAKyqC,YAAW,OAAAzqC,OAA4C,QAA5C2sC,EAA+B,QAA/BC,GAAMlD,EAAAA,GAAAA,KAAkBmD,eAAO,IAAAD,OAAA,EAAzBA,EAA2BE,mBAAW,IAAAH,EAAAA,EAAI,YACxF,EACAt3B,WAAAA,CAAYkC,EAASC,IACbD,aAAO,EAAPA,EAASG,OAAOF,aAAO,EAAPA,EAASE,MAG7BzH,GAAO4H,MAAM,eAAgB,CAAEN,UAASC,YACxC,KAAK6S,eAAepL,QACpB,KAAK8tB,cACL,KAAKC,eACT,EACAv0B,GAAAA,CAAIw0B,EAAQC,GAAQ,IAAAC,EAAAvZ,EAChB3jB,GAAO4H,MAAM,oBAAqB,CAAEo1B,SAAQC,WAE5C,KAAK7iB,eAAepL,QACpB,KAAK8tB,cACuB,QAA5BI,EAAIl6B,OAAOC,IAAIC,MAAM+E,eAAO,IAAAi1B,GAAxBA,EAA0Bn5B,OAC1Bf,OAAOC,IAAIC,MAAM+E,QAAQlE,QAE7B,KAAKg5B,eAEL,MAAMI,EAA6B,QAAbxZ,EAAG,KAAK3C,aAAK,IAAA2C,OAAA,EAAVA,EAAYwZ,iBACjCA,SAAAA,EAAkBj8B,MAClBi8B,EAAiBj8B,IAAI+0B,UAAY,EAEzC,EACA8E,WAAAA,CAAYxrB,GACRvP,GAAO4H,MAAM,6BAA8B,CAAE7N,KAAM,KAAKqL,YAAa6I,OAAQ,KAAKqjB,cAAe/hB,cACjG/e,EAAAA,EAAAA,IAAK,qBAAsB,CAAEuJ,KAAM,KAAKqL,YAAa6I,OAAQ,KAAKqjB,cAAe/hB,YACrF,GAEJ1Q,OAAAA,GACI,KAAKk+B,gBACLn+B,EAAAA,EAAAA,IAAU,qBAAsB,KAAKw+B,gBACrCx+B,EAAAA,EAAAA,IAAU,qBAAsB,KAAK0N,gBACrC1N,EAAAA,EAAAA,IAAU,kCAAmC,KAAK49B,WAClD59B,EAAAA,EAAAA,IAAU,iCAAkC,KAAKk+B,aAEjD,KAAKvC,yBAA2B,KAAK54B,gBAAgB07B,YAAW,IAAM,KAAKN,gBAAgB,CAAEO,MAAM,GACvG,EACAjd,SAAAA,IACI0X,EAAAA,EAAAA,IAAY,qBAAsB,KAAKqF,gBACvCrF,EAAAA,EAAAA,IAAY,qBAAsB,KAAKzrB,gBACvCyrB,EAAAA,EAAAA,IAAY,kCAAmC,KAAKyE,WACpDzE,EAAAA,EAAAA,IAAY,iCAAkC,KAAK+E,aACnD,KAAKvC,0BACT,EACAr7B,QAAS,CACL,kBAAM69B,GACF,KAAK9a,SAAU,EACf,KAAKliB,MAAQ,KACb,MAAMyI,EAAM,KAAKA,IACXpD,EAAc,KAAKA,YACzB,GAAKA,EAAL,CAKI,KAAK6Q,SAAW,WAAY,KAAKA,UACjC,KAAKA,QAAQnZ,SACbkD,GAAO4H,MAAM,qCAGjB,KAAKqO,QAAU7Q,EAAY6P,YAAYzM,GACvC,IACI,MAAM,OAAEyF,EAAM,SAAEsB,SAAmB,KAAK0G,QACxCjW,GAAO4H,MAAM,mBAAoB,CAAEY,MAAKyF,SAAQsB,aAEhD,KAAK4K,WAAWtO,YAAY0D,GAG5B,KAAKiY,KAAKvZ,EAAQ,YAAasB,EAAS/Z,KAAIsU,GAAQA,EAAKuB,UAE7C,MAAR7C,EACA,KAAK2R,WAAWlO,QAAQ,CAAEL,QAASxG,EAAYqC,GAAIgC,KAAMwE,IAIrDA,EAAOhE,QACP,KAAKkQ,WAAWtO,YAAY,CAACoC,IAC7B,KAAKrB,WAAWG,QAAQ,CAAEnB,QAASxG,EAAYqC,GAAI4D,OAAQ4C,EAAO5C,OAAQzR,KAAM4O,KAIhFxI,GAAOD,MAAM,+BAAgC,CAAEyI,MAAKyF,SAAQ7I,gBAIpDmK,EAASvX,QAAO8R,GAAsB,WAAdA,EAAK1P,OACrCwJ,SAAQkG,IACZ,KAAK8C,WAAWG,QAAQ,CAAEnB,QAASxG,EAAYqC,GAAI4D,OAAQvB,EAAKuB,OAAQzR,MAAMvH,EAAAA,GAAAA,MAAKmW,EAAKsB,EAAKqH,WAAY,GAEjH,CACA,MAAOpR,GACHC,GAAOD,MAAM,+BAAgC,CAAEA,UAC/C,KAAKA,MwJ1Vd,SAA6BA,GAChC,GAAIA,aAAiBD,MAAO,CACxB,GAVR,SAA6BC,GACzB,OAAOA,aAAiBD,OAAS,WAAYC,GAAS,aAAcA,CACxE,CAQYw9B,CAAoBx9B,GAAQ,KAAAqV,EAC5B,MAAMW,EAAShW,EAAMgW,SAAwB,QAAlBX,EAAIrV,EAAMJ,gBAAQ,IAAAyV,OAAA,EAAdA,EAAgBW,SAAU,EACzD,GAAI,CAAC,IAAK,IAAK,KAAKtf,SAASsf,GACzB,OAAOzX,EAAAA,EAAAA,GAAE,QAAS,oBAEjB,GAAe,MAAXyX,EACL,OAAOzX,EAAAA,EAAAA,GAAE,QAAS,+BAEjB,GAAe,MAAXyX,EACL,OAAOzX,EAAAA,EAAAA,GAAE,QAAS,qFAEjB,GAAe,MAAXyX,EACL,OAAOzX,EAAAA,EAAAA,GAAE,QAAS,uCAE1B,CACA,OAAOA,EAAAA,EAAAA,GAAE,QAAS,4BAA6B,CAAEyB,MAAOA,EAAMyV,SAClE,CACA,OAAOlX,EAAAA,EAAAA,GAAE,QAAS,gBACtB,CxJsU6Bk/B,CAAoBz9B,EACrC,CAAC,QAEG,KAAKkiB,SAAU,CACnB,CA3CA,MAFIjiB,GAAO4H,MAAM,mDAAqD,CAAExC,eA8C5E,EAOAgG,OAAAA,CAAQK,GACJ,OAAO,KAAK0O,WAAW/O,QAAQK,EACnC,EAKA2xB,aAAAA,CAActzB,GACsC,IAAA2zB,EACIC,EAAAC,EADhD7zB,EAAKG,QAAUH,EAAKG,SAAW,KAAKwB,SAChC3B,EAAKG,UAA6B,QAAvBwzB,EAAK,KAAKnM,qBAAa,IAAAmM,OAAA,EAAlBA,EAAoBxzB,QAGpCjH,OAAO+G,IAAI7G,MAAMlK,OAAOgR,UAAU,KAAM,CAAEjQ,KAAM,KAAKgN,OAAOjN,OAAOC,MAAQ,CAAEyO,IAAgC,QAA7Bk1B,EAAoB,QAApBC,EAAE,KAAKrM,qBAAa,IAAAqM,OAAA,EAAlBA,EAAoB3vB,eAAO,IAAA0vB,EAAAA,EAAI,MAIjH16B,OAAO+G,IAAI7G,MAAMlK,OAAOgR,UAAU,KAAM,IAAK,KAAKjD,OAAOjN,OAAQmQ,YAAQ/Y,GAAa,IAAK,KAAK6V,OAAO3Q,MAAO4zB,cAAU94B,IAGpI,EAKA0sC,QAAAA,CAASllB,GAAQ,IAAAmlB,GAGa7vB,EAAAA,GAAAA,SAAQ0K,EAAOrN,WACoB,QAAvBwyB,EAAK,KAAKvM,qBAAa,IAAAuM,OAAA,EAAlBA,EAAoBxyB,SAK3D,KAAK0xB,cAEb,EACA,kBAAMe,CAAaplB,GAAQ,IAAA0gB,EACvB,MAAMrjB,GAAwB,QAAfqjB,EAAA1gB,EAAO/Y,gBAAQ,IAAAy5B,OAAA,EAAfA,EAAiBrjB,SAAU,EAE1C,GAAe,MAAXA,EAIC,GAAe,MAAXA,GAA6B,MAAXA,EAItB,GAAe,MAAXA,EAAJ,CAKL,IAAI,IAAAgoB,EACA,MAAMzoB,EAAS,IAAI0oB,GAAAA,OAAO,CAAEloC,MAAM,EAAMmoC,cAAc,IAEhDzoB,SADiBF,EAAO4oB,mBAAkC,QAAhBH,EAACrlB,EAAO/Y,gBAAQ,IAAAo+B,OAAA,EAAfA,EAAiBvgC,OACzC,aAAa,GACtC,GAAuB,iBAAZgY,GAA2C,KAAnBA,EAAQ1f,OAGvC,YADAmK,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,iCAAkC,CAAEkX,YAGtE,CACA,MAAOzV,GACHC,GAAOD,MAAM,sBAAuB,CAAEA,SAC1C,CAEe,IAAXgW,GAIJ9V,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,iCAHtB2B,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,4CAA6C,CAAEyX,WAjB7E,MAFI9V,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,gDAJ1B2B,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,+CAJ1B2B,EAAAA,EAAAA,IAAU,KAAK3B,EAAE,QAAS,yBA+BlC,EAMAgO,aAAAA,CAAcxC,GAAM,IAAAq0B,GACZr0B,aAAI,EAAJA,EAAMG,WAA6B,QAAvBk0B,EAAK,KAAK7M,qBAAa,IAAA6M,OAAA,EAAlBA,EAAoBl0B,SACrC,KAAK8yB,cAEb,EAIAD,WAAAA,GAEI,KAAKN,SAAS5/B,QAEd,KAAK09B,WAAa,EACtB,EACA8D,kBAAAA,GAAqB,IAAA70B,EACZ,KAAK+nB,eAIA,QAAV/nB,EAAIvG,cAAM,IAAAuG,GAAK,QAALA,EAANA,EAAQtG,WAAG,IAAAsG,GAAO,QAAPA,EAAXA,EAAarG,aAAK,IAAAqG,GAAS,QAATA,EAAlBA,EAAoBtB,eAAO,IAAAsB,GAA3BA,EAA6B80B,cAC7Br7B,OAAOC,IAAIC,MAAM+E,QAAQo2B,aAAa,WAE1CzZ,GAAc9vB,KAAK,KAAKw8B,cAAe,KAAKlsB,YAAa,KAAKksB,cAAc13B,OANxEoG,GAAO4H,MAAM,sDAOrB,EACA02B,cAAAA,GACI,KAAK38B,gBAAgBK,OAAO,aAAc,KAAKZ,WAAWK,UAC9D,oByJpdJ,GAAU,CAAC,EAEf,GAAQtB,kBAAoB,KAC5B,GAAQC,cAAgB,KAElB,GAAQC,OAAS,UAAc,KAAM,QAE3C,GAAQC,OAAS,KACjB,GAAQC,mBAAqB,KAEhB,KAAI,KAAS,IAKJ,MAAW,KAAQC,QAAS,KAAQA,OCP1D,UAXgB,OACd,I1JTW,WAAiB,IAAA2wB,EAAAoN,EAAK9jC,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,eAAe,CAACI,MAAM,CAAC,eAAeL,EAAI+/B,YAAY,wBAAwB,KAAK,CAAC9/B,EAAG,MAAM,CAACG,YAAY,sBAAsB,CAACH,EAAG,cAAc,CAACI,MAAM,CAAC,KAAOL,EAAI+N,KAAKnX,GAAG,CAAC,OAASoJ,EAAIsiC,cAAcn4B,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,UAAU/E,GAAG,WAAW,MAAO,CAAEkM,EAAI6hC,UAAY7hC,EAAI2e,gBAAkB,IAAK1e,EAAG,WAAW,CAACG,YAAY,kCAAkC4F,MAAM,CAAE,0CAA2ChG,EAAIwhC,iBAAkBnhC,MAAM,CAAC,aAAaL,EAAIuhC,iBAAiB,MAAQvhC,EAAIuhC,iBAAiB,KAAO,YAAY3qC,GAAG,CAAC,MAAQoJ,EAAI2jC,oBAAoBx5B,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEkM,EAAIwhC,kBAAoBxhC,EAAIi0B,UAAUwN,KAAMxhC,EAAG,YAAYA,EAAG,kBAAkB,CAACI,MAAM,CAAC,KAAO,MAAM,EAAEgK,OAAM,IAAO,MAAK,EAAM,cAAcrK,EAAIW,KAAKX,EAAIS,GAAG,MAAOT,EAAIi+B,WAAaj+B,EAAIk+B,gBAAiBj+B,EAAG,WAAW,CAACG,YAAY,6CAA6CC,MAAM,CAAC,aAAaL,EAAIm+B,gBAAgB,MAAQn+B,EAAIm+B,gBAAgB,UAAW,EAAK,KAAO,aAAah0B,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACmM,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,MAAM,EAAEgK,OAAM,IAAO,MAAK,EAAM,aAAa,CAACrK,EAAIS,GAAG,eAAeT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,QAAQ,gBAAiB7D,EAAI62B,cAAe52B,EAAG,eAAe,CAACG,YAAY,mCAAmCC,MAAM,CAAC,QAAUL,EAAIsgC,YAAY,YAActgC,EAAI62B,cAAc,UAAW,GAAMjgC,GAAG,CAAC,OAASoJ,EAAIqjC,aAAa,SAAWrjC,EAAImjC,YAAYnjC,EAAIW,KAAK,EAAE0J,OAAM,OAAUrK,EAAIS,GAAG,KAAMT,EAAI2e,gBAAkB,KAAO3e,EAAIkJ,eAAgBjJ,EAAG,WAAW,CAACG,YAAY,iCAAiCC,MAAM,CAAC,aAAaL,EAAI2hC,oBAAoB,MAAQ3hC,EAAI2hC,oBAAoB,KAAO,YAAY/qC,GAAG,CAAC,MAAQoJ,EAAI6jC,gBAAgB15B,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAAEkM,EAAI2G,WAAWK,UAAW/G,EAAG,gBAAgBA,EAAG,gBAAgB,EAAEoK,OAAM,IAAO,MAAK,EAAM,cAAcrK,EAAIW,KAAKX,EAAIS,GAAG,KAAMT,EAAIkhC,aAAcjhC,EAAG,gBAAgB,CAACG,YAAY,6BAA6BJ,EAAIW,MAAM,GAAGX,EAAIS,GAAG,MAAOT,EAAIwnB,SAAWxnB,EAAIi+B,UAAWh+B,EAAG,oBAAoB,CAACI,MAAM,CAAC,iBAAiBL,EAAI62B,iBAAiB72B,EAAIW,KAAKX,EAAIS,GAAG,KAAMT,EAAIwnB,UAAYxnB,EAAIkhC,aAAcjhC,EAAG,gBAAgB,CAACG,YAAY,2BAA2BC,MAAM,CAAC,KAAO,GAAG,KAAOL,EAAI6D,EAAE,QAAS,8BAA+B7D,EAAIwnB,SAAWxnB,EAAIihC,WAAY,CAAEjhC,EAAIsF,MAAOrF,EAAG,iBAAiB,CAACI,MAAM,CAAC,KAAOL,EAAIsF,MAAM,8BAA8B,IAAI6E,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACmM,EAAG,WAAW,CAACI,MAAM,CAAC,KAAO,aAAazJ,GAAG,CAAC,MAAQoJ,EAAIsiC,cAAcn4B,YAAYnK,EAAIoK,GAAG,CAAC,CAACvR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACmM,EAAG,aAAa,CAACI,MAAM,CAAC,KAAO,MAAM,EAAEgK,OAAM,IAAO,MAAK,EAAM,aAAa,CAACrK,EAAIS,GAAG,eAAeT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,UAAU,gBAAgB,EAAEwG,OAAM,GAAM,CAACxR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACmM,EAAG,0BAA0B,EAAEoK,OAAM,IAAO,MAAK,EAAM,cAAcpK,EAAG,iBAAiB,CAACI,MAAM,CAAC,MAAsB,QAAfq2B,EAAA12B,EAAI2K,mBAAW,IAAA+rB,OAAA,EAAfA,EAAiBqN,aAAc/jC,EAAI6D,EAAE,QAAS,oBAAoB,aAA6B,QAAfigC,EAAA9jC,EAAI2K,mBAAW,IAAAm5B,OAAA,EAAfA,EAAiBE,eAAgBhkC,EAAI6D,EAAE,QAAS,kDAAkD,8BAA8B,IAAIsG,YAAYnK,EAAIoK,GAAG,CAAc,MAAZpK,EAAI+N,IAAa,CAAClV,IAAI,SAAS/E,GAAG,WAAW,MAAO,CAACmM,EAAG,WAAW,CAACI,MAAM,CAAC,aAAaL,EAAI6D,EAAE,QAAS,6BAA6B,KAAO,UAAU,GAAK7D,EAAImhC,gBAAgB,CAACnhC,EAAIS,GAAG,eAAeT,EAAIU,GAAGV,EAAI6D,EAAE,QAAS,YAAY,gBAAgB,EAAEwG,OAAM,GAAM,KAAK,CAACxR,IAAI,OAAO/E,GAAG,WAAW,MAAO,CAACmM,EAAG,mBAAmB,CAACI,MAAM,CAAC,IAAML,EAAI2K,YAAY0D,QAAQ,EAAEhE,OAAM,IAAO,MAAK,MAASpK,EAAG,mBAAmB,CAAC6mB,IAAI,mBAAmBzmB,MAAM,CAAC,iBAAiBL,EAAI62B,cAAc,eAAe72B,EAAI2K,YAAY,MAAQ3K,EAAIogC,sBAAsB,EAC7pH,GACsB,I0JUpB,EACA,KACA,WACA,MAI8B,QCnB+M,I/LIhOv0B,EAAAA,EAAAA,IAAgB,CAC3B5W,KAAM,WACNwC,WAAY,CACRwsC,UAAS,IACTC,UAAS,GACTC,WAAUA,MgMSlB,IAXgB,OACd,IhMRW,WAAkB,IAAInkC,EAAI/L,KAAKgM,EAAGD,EAAIE,MAAMD,GAAgC,OAAtBD,EAAIE,MAAMgO,YAAmBjO,EAAG,YAAY,CAACI,MAAM,CAAC,WAAW,UAAU,CAACJ,EAAG,cAAcD,EAAIS,GAAG,KAAKR,EAAG,cAAc,EAC3L,GACsB,IgMSpB,EACA,KACA,KACA,MAI8B,kBCRhCmkC,EAAAA,GAAoBC,MAAKC,EAAAA,EAAAA,OAEzB/7B,OAAOC,IAAIC,MAAwB,QAAnB87B,GAAGh8B,OAAOC,IAAIC,aAAK,IAAA87B,GAAAA,GAAI,CAAC,EACxCh8B,OAAO+G,IAAI7G,MAAwB,QAAnB+7B,GAAGj8B,OAAO+G,IAAI7G,aAAK,IAAA+7B,GAAAA,GAAI,CAAC,EAExC,MAAMjmC,GAAS,ICfA,MAEXsW,WAAAA,CAAY4vB,eAAQ,8ZAChBxwC,KAAKywC,QAAUD,CACnB,CACA,QAAIxvC,GACA,OAAOhB,KAAKywC,QAAQxV,aAAaj6B,IACrC,CACA,SAAI0G,GACA,OAAO1H,KAAKywC,QAAQxV,aAAavzB,OAAS,CAAC,CAC/C,CACA,UAAI0D,GACA,OAAOpL,KAAKywC,QAAQxV,aAAa7vB,QAAU,CAAC,CAChD,CAQAslC,IAAAA,CAAKxlC,GAAuB,IAAjB3E,EAAOjE,UAAAZ,OAAA,QAAAc,IAAAF,UAAA,IAAAA,UAAA,GACd,OAAOtC,KAAKywC,QAAQjwC,KAAK,CACrB0K,OACA3E,WAER,CAUA+U,SAAAA,CAAUta,EAAMoK,EAAQ1D,EAAOnB,GAC3B,OAAOvG,KAAKywC,QAAQjwC,KAAK,CACrBQ,OACA0G,QACA0D,SACA7E,WAER,GD5B6BiqC,GACjCjxC,OAAOmyB,OAAOpd,OAAO+G,IAAI7G,MAAO,CAAElK,YAElCF,EAAAA,GAAIC,IAAIsmC,EAAAA,IAER,MAAMl8B,GAAW,IEEF,MAIdmM,WAAAA,eAAc,gaACb5gB,KAAK4wC,UAAY,GACjB7tB,EAAQ7J,MAAM,iCACf,CASA6W,QAAAA,CAAS1kB,GACR,OAAIrL,KAAK4wC,UAAUtnC,QAAOof,GAAKA,EAAE1nB,OAASqK,EAAKrK,OAAMU,OAAS,GAC7DqhB,EAAQ1R,MAAM,uDACP,IAERrR,KAAK4wC,UAAUpwC,KAAK6K,IACb,EACR,CAOA,YAAIgJ,GACH,OAAOrU,KAAK4wC,SACb,GFjCDrxC,OAAOmyB,OAAOpd,OAAOC,IAAIC,MAAO,CAAEC,SAAQA,KAC1ClV,OAAOmyB,OAAOpd,OAAOC,IAAIC,MAAMC,SAAU,CAAEV,QGC5B,MAiBd6M,WAAAA,CAAY5f,EAAI+L,GAAuB,IAArB,GAAEsF,EAAE,KAAE2B,EAAI,MAAEqB,GAAOtI,EAAA8jC,EAAA,sBAAAA,EAAA,mBAAAA,EAAA,qBAAAA,EAAA,qBACpC7wC,KAAK8wC,MAAQ9vC,EACbhB,KAAK+wC,IAAM1+B,EACXrS,KAAKgxC,MAAQh9B,EACbhU,KAAKixC,OAAS57B,EAEY,mBAAfrV,KAAKgxC,QACfhxC,KAAKgxC,MAAQ,QAGa,mBAAhBhxC,KAAKixC,SACfjxC,KAAKixC,OAAS,OAEhB,CAEA,QAAIjwC,GACH,OAAOhB,KAAK8wC,KACb,CAEA,MAAIz+B,GACH,OAAOrS,KAAK+wC,GACb,CAEA,QAAI/8B,GACH,OAAOhU,KAAKgxC,KACb,CAEA,SAAI37B,GACH,OAAOrV,KAAKixC,MACb,KH7CD,IADoB7mC,EAAAA,GAAIqgB,OAAOymB,IAC/B,CAAgB,CACZV,OAAM,EACNvtC,MAAKA,IACNyzB,OAAO,8FIxBNya,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,s0BAqCrC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6EAA6E,MAAQ,GAAG,SAAW,+TAA+T,eAAiB,CAAC,u0BAAu0B,WAAa,MAEvyC,4FCzCIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,8UAA+U,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yDAAyD,MAAQ,GAAG,SAAW,mHAAmH,eAAiB,CAAC,2XAA2X,WAAa,MAE/+B,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,+jBAAgkB,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+DAA+D,MAAQ,GAAG,SAAW,wOAAwO,eAAiB,CAAC,sqBAAsqB,WAAa,MAEtoD,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,omCAAqmC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,gEAAgE,MAAQ,GAAG,SAAW,gYAAgY,eAAiB,CAAC,23CAA23C,WAAa,MAEzhG,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,4ZAA6Z,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,oEAAoE,MAAQ,GAAG,SAAW,6IAA6I,eAAiB,CAAC,2tBAA2tB,WAAa,MAEl8C,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,2ZAA4Z,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,MAAQ,GAAG,SAAW,oDAAoD,eAAiB,CAAC,kkBAAskB,WAAa,MAEvtC,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,uMAAwM,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,MAAQ,GAAG,SAAW,oCAAoC,eAAiB,CAAC,kOAAkO,WAAa,MAE/oB,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,sMAAuM,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,qEAAqE,MAAQ,GAAG,SAAW,yDAAyD,eAAiB,CAAC,oOAAoO,WAAa,MAElqB,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,oRAAqR,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kEAAkE,MAAQ,GAAG,SAAW,gFAAgF,eAAiB,CAAC,gaAAga,WAAa,MAEh8B,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,sKAAuK,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kEAAkE,MAAQ,GAAG,SAAW,8CAA8C,eAAiB,CAAC,wNAAwN,WAAa,MAExmB,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,2FAA4F,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,yEAAyE,MAAQ,GAAG,SAAW,6BAA6B,eAAiB,CAAC,6FAA6F,WAAa,MAExZ,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,q5BAAs5B,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,wEAAwE,MAAQ,GAAG,SAAW,4IAA4I,eAAiB,CAAC,ilBAAilB,WAAa,MAEpzD,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,ihQAAkhQ,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8DAA8D,MAAQ,GAAG,SAAW,66DAA66D,eAAiB,CAAC,40SAA40S,WAAa,MAEl8mB,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,isDAAksD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,8DAA8D,MAAQ,GAAG,SAAW,8iBAA8iB,eAAiB,CAAC,69DAA69D,WAAa,MAEp4I,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,mQAAoQ,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6DAA6D,MAAQ,GAAG,SAAW,mEAAmE,eAAiB,CAAC,+UAA+U,WAAa,MAE50B,2FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,s0BAAu0B,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,kDAAkD,MAAQ,GAAG,SAAW,kQAAkQ,eAAiB,CAAC,8sCAA8sC,WAAa,MAEl8E,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,sfAAuf,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,mDAAmD,MAAQ,GAAG,SAAW,iHAAiH,eAAiB,CAAC,mrBAAmrB,WAAa,MAEv8C,4FCJIo4B,QAA0B,GAA4B,KAE1DA,EAAwB3wC,KAAK,CAACuC,EAAOgW,GAAI,kEAAmE,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,iDAAiD,MAAQ,GAAG,SAAW,mBAAmB,eAAiB,CAAC,+DAA+D,WAAa,MAE/T,kCCLA,MAAMq4B,EAAW,IAAI1xB,IAAI,CACxB,YACA,cAGA,4BACA,oBACA,mCACA,kCACA,qCACA,yBACA,wBACA,qBACA,mBACA,oBACA,kBACA,iCACA,gCACA,iCACA,iCACA,aACA,8BACA,4BACA,oCACA,kCACA,sBACA,eACA,aACA,uBACA,kBACA,iBACA,gBACA,sBAID3c,EAAOC,QAAUqO,IAAU+/B,EAAS9xC,IAAI+R,GAASA,EAAMggC,8CCtCtD,SAAWC,GACVA,EAAI1qB,OAAS,SAAU3gB,EAAQsrC,GAAO,OAAO,IAAIC,EAAUvrC,EAAQsrC,EAAK,EACxED,EAAIE,UAAYA,EAChBF,EAAIG,UAAYA,EAChBH,EAAII,aAwKJ,SAAuBzrC,EAAQsrC,GAC7B,OAAO,IAAIE,EAAUxrC,EAAQsrC,EAC/B,EA/JAD,EAAIK,kBAAoB,MAExB,IA+IIC,EA/IAC,EAAU,CACZ,UAAW,WAAY,WAAY,UAAW,UAC9C,eAAgB,eAAgB,SAAU,aAC1C,cAAe,QAAS,UAwB1B,SAASL,EAAWvrC,EAAQsrC,GAC1B,KAAMvxC,gBAAgBwxC,GACpB,OAAO,IAAIA,EAAUvrC,EAAQsrC,GAG/B,IAAI3qB,EAAS5mB,MAqFf,SAAuB4mB,GACrB,IAAK,IAAIplB,EAAI,EAAGC,EAAIowC,EAAQnwC,OAAQF,EAAIC,EAAGD,IACzColB,EAAOirB,EAAQrwC,IAAM,EAEzB,CAxFEswC,CAAalrB,GACbA,EAAOmrB,EAAInrB,EAAOorB,EAAI,GACtBprB,EAAOqrB,oBAAsBX,EAAIK,kBACjC/qB,EAAO2qB,IAAMA,GAAO,CAAC,EACrB3qB,EAAO2qB,IAAIW,UAAYtrB,EAAO2qB,IAAIW,WAAatrB,EAAO2qB,IAAIY,cAC1DvrB,EAAOwrB,UAAYxrB,EAAO2qB,IAAIW,UAAY,cAAgB,cAC1DtrB,EAAOyrB,KAAO,GACdzrB,EAAO0rB,OAAS1rB,EAAO2rB,WAAa3rB,EAAO4rB,SAAU,EACrD5rB,EAAOmX,IAAMnX,EAAOvV,MAAQ,KAC5BuV,EAAO3gB,SAAWA,EAClB2gB,EAAO6rB,YAAcxsC,IAAU2gB,EAAO2qB,IAAIkB,UAC1C7rB,EAAOzT,MAAQu/B,EAAEC,MACjB/rB,EAAOgsB,eAAiBhsB,EAAO2qB,IAAIqB,eACnChsB,EAAOisB,SAAWjsB,EAAOgsB,eAAiBrzC,OAAOqB,OAAO0wC,EAAIwB,cAAgBvzC,OAAOqB,OAAO0wC,EAAIuB,UAC9FjsB,EAAOmsB,WAAa,GAKhBnsB,EAAO2qB,IAAIyB,QACbpsB,EAAOqsB,GAAK1zC,OAAOqB,OAAOsyC,IAI5BtsB,EAAOusB,eAAwC,IAAxBvsB,EAAO2qB,IAAI6B,SAC9BxsB,EAAOusB,gBACTvsB,EAAOwsB,SAAWxsB,EAAOysB,KAAOzsB,EAAO4b,OAAS,GAElD1gC,EAAK8kB,EAAQ,UACf,CAxDA0qB,EAAIgC,OAAS,CACX,OACA,wBACA,kBACA,UACA,UACA,eACA,YACA,UACA,WACA,YACA,QACA,aACA,QACA,MACA,QACA,SACA,gBACA,kBAwCG/zC,OAAOqB,SACVrB,OAAOqB,OAAS,SAAU2yC,GACxB,SAASC,IAAM,CAGf,OAFAA,EAAEh0C,UAAY+zC,EACH,IAAIC,CAEjB,GAGGj0C,OAAO+G,OACV/G,OAAO+G,KAAO,SAAUitC,GACtB,IAAI5sC,EAAI,GACR,IAAK,IAAInF,KAAK+xC,EAAOA,EAAE9zC,eAAe+B,IAAImF,EAAEnG,KAAKgB,GACjD,OAAOmF,CACT,GAyDF6qC,EAAUhyC,UAAY,CACpB86B,IAAK,WAAcA,EAAIt6B,KAAM,EAC7ByzC,MA2yBF,SAAgBC,GACd,IAAI9sB,EAAS5mB,KACb,GAAIA,KAAKqR,MACP,MAAMrR,KAAKqR,MAEb,GAAIuV,EAAO0rB,OACT,OAAOjhC,EAAMuV,EACX,wDAEJ,GAAc,OAAV8sB,EACF,OAAOpZ,EAAI1T,GAEQ,iBAAV8sB,IACTA,EAAQA,EAAMhuC,YAIhB,IAFA,IAAIlE,EAAI,EACJwwC,EAAI,GAENA,EAAI2B,EAAOD,EAAOlyC,KAClBolB,EAAOorB,EAAIA,EAENA,GAcL,OAVIprB,EAAOusB,gBACTvsB,EAAOwsB,WACG,OAANpB,GACFprB,EAAOysB,OACPzsB,EAAO4b,OAAS,GAEhB5b,EAAO4b,UAIH5b,EAAOzT,OACb,KAAKu/B,EAAEC,MAEL,GADA/rB,EAAOzT,MAAQu/B,EAAEkB,iBACP,WAAN5B,EACF,SAEF6B,EAAgBjtB,EAAQorB,GACxB,SAEF,KAAKU,EAAEkB,iBACLC,EAAgBjtB,EAAQorB,GACxB,SAEF,KAAKU,EAAEoB,KACL,GAAIltB,EAAO4rB,UAAY5rB,EAAO2rB,WAAY,CAExC,IADA,IAAIwB,EAASvyC,EAAI,EACVwwC,GAAW,MAANA,GAAmB,MAANA,IACvBA,EAAI2B,EAAOD,EAAOlyC,OACTolB,EAAOusB,gBACdvsB,EAAOwsB,WACG,OAANpB,GACFprB,EAAOysB,OACPzsB,EAAO4b,OAAS,GAEhB5b,EAAO4b,UAIb5b,EAAOotB,UAAYN,EAAMO,UAAUF,EAAQvyC,EAAI,EACjD,CACU,MAANwwC,GAAeprB,EAAO4rB,SAAW5rB,EAAO2rB,aAAe3rB,EAAO3gB,QAI3DiuC,EAAalC,IAAQprB,EAAO4rB,UAAW5rB,EAAO2rB,YACjD4B,EAAWvtB,EAAQ,mCAEX,MAANorB,EACFprB,EAAOzT,MAAQu/B,EAAE0B,YAEjBxtB,EAAOotB,UAAYhC,IATrBprB,EAAOzT,MAAQu/B,EAAE2B,UACjBztB,EAAO0tB,iBAAmB1tB,EAAOwsB,UAWnC,SAEF,KAAKV,EAAE6B,OAEK,MAANvC,EACFprB,EAAOzT,MAAQu/B,EAAE8B,cAEjB5tB,EAAO6tB,QAAUzC,EAEnB,SAEF,KAAKU,EAAE8B,cACK,MAANxC,EACFprB,EAAOzT,MAAQu/B,EAAEgC,WAEjB9tB,EAAO6tB,QAAU,IAAMzC,EACvBprB,EAAOzT,MAAQu/B,EAAE6B,QAEnB,SAEF,KAAK7B,EAAE2B,UAEL,GAAU,MAANrC,EACFprB,EAAOzT,MAAQu/B,EAAEiC,UACjB/tB,EAAOguB,SAAW,QACb,GAAIV,EAAalC,SAEjB,GAAI6C,EAAQC,EAAW9C,GAC5BprB,EAAOzT,MAAQu/B,EAAEqC,SACjBnuB,EAAOuK,QAAU6gB,OACZ,GAAU,MAANA,EACTprB,EAAOzT,MAAQu/B,EAAEgC,UACjB9tB,EAAOuK,QAAU,QACZ,GAAU,MAAN6gB,EACTprB,EAAOzT,MAAQu/B,EAAEsC,UACjBpuB,EAAOquB,aAAeruB,EAAOsuB,aAAe,OACvC,CAGL,GAFAf,EAAWvtB,EAAQ,eAEfA,EAAO0tB,iBAAmB,EAAI1tB,EAAOwsB,SAAU,CACjD,IAAI+B,EAAMvuB,EAAOwsB,SAAWxsB,EAAO0tB,iBACnCtC,EAAI,IAAIpwC,MAAMuzC,GAAKxxC,KAAK,KAAOquC,CACjC,CACAprB,EAAOotB,UAAY,IAAMhC,EACzBprB,EAAOzT,MAAQu/B,EAAEoB,IACnB,CACA,SAEF,KAAKpB,EAAEiC,WACA/tB,EAAOguB,SAAW5C,GAAGrsC,gBAAkByvC,GAC1CC,EAASzuB,EAAQ,eACjBA,EAAOzT,MAAQu/B,EAAE0C,MACjBxuB,EAAOguB,SAAW,GAClBhuB,EAAO0uB,MAAQ,IACN1uB,EAAOguB,SAAW5C,IAAM,MACjCprB,EAAOzT,MAAQu/B,EAAE6C,QACjB3uB,EAAO4uB,QAAU,GACjB5uB,EAAOguB,SAAW,KACRhuB,EAAOguB,SAAW5C,GAAGrsC,gBAAkB8vC,GACjD7uB,EAAOzT,MAAQu/B,EAAE+C,SACb7uB,EAAO8uB,SAAW9uB,EAAO4rB,UAC3B2B,EAAWvtB,EACT,+CAEJA,EAAO8uB,QAAU,GACjB9uB,EAAOguB,SAAW,IACH,MAAN5C,GACTqD,EAASzuB,EAAQ,oBAAqBA,EAAOguB,UAC7ChuB,EAAOguB,SAAW,GAClBhuB,EAAOzT,MAAQu/B,EAAEoB,MACR6B,EAAQ3D,IACjBprB,EAAOzT,MAAQu/B,EAAEkD,iBACjBhvB,EAAOguB,UAAY5C,GAEnBprB,EAAOguB,UAAY5C,EAErB,SAEF,KAAKU,EAAEkD,iBACD5D,IAAMprB,EAAOmrB,IACfnrB,EAAOzT,MAAQu/B,EAAEiC,UACjB/tB,EAAOmrB,EAAI,IAEbnrB,EAAOguB,UAAY5C,EACnB,SAEF,KAAKU,EAAE+C,QACK,MAANzD,GACFprB,EAAOzT,MAAQu/B,EAAEoB,KACjBuB,EAASzuB,EAAQ,YAAaA,EAAO8uB,SACrC9uB,EAAO8uB,SAAU,IAEjB9uB,EAAO8uB,SAAW1D,EACR,MAANA,EACFprB,EAAOzT,MAAQu/B,EAAEmD,YACRF,EAAQ3D,KACjBprB,EAAOzT,MAAQu/B,EAAEoD,eACjBlvB,EAAOmrB,EAAIC,IAGf,SAEF,KAAKU,EAAEoD,eACLlvB,EAAO8uB,SAAW1D,EACdA,IAAMprB,EAAOmrB,IACfnrB,EAAOmrB,EAAI,GACXnrB,EAAOzT,MAAQu/B,EAAE+C,SAEnB,SAEF,KAAK/C,EAAEmD,YACLjvB,EAAO8uB,SAAW1D,EACR,MAANA,EACFprB,EAAOzT,MAAQu/B,EAAE+C,QACRE,EAAQ3D,KACjBprB,EAAOzT,MAAQu/B,EAAEqD,mBACjBnvB,EAAOmrB,EAAIC,GAEb,SAEF,KAAKU,EAAEqD,mBACLnvB,EAAO8uB,SAAW1D,EACdA,IAAMprB,EAAOmrB,IACfnrB,EAAOzT,MAAQu/B,EAAEmD,YACjBjvB,EAAOmrB,EAAI,IAEb,SAEF,KAAKW,EAAE6C,QACK,MAANvD,EACFprB,EAAOzT,MAAQu/B,EAAEsD,eAEjBpvB,EAAO4uB,SAAWxD,EAEpB,SAEF,KAAKU,EAAEsD,eACK,MAANhE,GACFprB,EAAOzT,MAAQu/B,EAAEuD,cACjBrvB,EAAO4uB,QAAUU,EAAStvB,EAAO2qB,IAAK3qB,EAAO4uB,SACzC5uB,EAAO4uB,SACTH,EAASzuB,EAAQ,YAAaA,EAAO4uB,SAEvC5uB,EAAO4uB,QAAU,KAEjB5uB,EAAO4uB,SAAW,IAAMxD,EACxBprB,EAAOzT,MAAQu/B,EAAE6C,SAEnB,SAEF,KAAK7C,EAAEuD,cACK,MAANjE,GACFmC,EAAWvtB,EAAQ,qBAGnBA,EAAO4uB,SAAW,KAAOxD,EACzBprB,EAAOzT,MAAQu/B,EAAE6C,SAEjB3uB,EAAOzT,MAAQu/B,EAAEoB,KAEnB,SAEF,KAAKpB,EAAE0C,MACK,MAANpD,EACFprB,EAAOzT,MAAQu/B,EAAEyD,aAEjBvvB,EAAO0uB,OAAStD,EAElB,SAEF,KAAKU,EAAEyD,aACK,MAANnE,EACFprB,EAAOzT,MAAQu/B,EAAE0D,gBAEjBxvB,EAAO0uB,OAAS,IAAMtD,EACtBprB,EAAOzT,MAAQu/B,EAAE0C,OAEnB,SAEF,KAAK1C,EAAE0D,eACK,MAANpE,GACEprB,EAAO0uB,OACTD,EAASzuB,EAAQ,UAAWA,EAAO0uB,OAErCD,EAASzuB,EAAQ,gBACjBA,EAAO0uB,MAAQ,GACf1uB,EAAOzT,MAAQu/B,EAAEoB,MACF,MAAN9B,EACTprB,EAAO0uB,OAAS,KAEhB1uB,EAAO0uB,OAAS,KAAOtD,EACvBprB,EAAOzT,MAAQu/B,EAAE0C,OAEnB,SAEF,KAAK1C,EAAEsC,UACK,MAANhD,EACFprB,EAAOzT,MAAQu/B,EAAE2D,iBACRnC,EAAalC,GACtBprB,EAAOzT,MAAQu/B,EAAE4D,eAEjB1vB,EAAOquB,cAAgBjD,EAEzB,SAEF,KAAKU,EAAE4D,eACL,IAAK1vB,EAAOsuB,cAAgBhB,EAAalC,GACvC,SACe,MAANA,EACTprB,EAAOzT,MAAQu/B,EAAE2D,iBAEjBzvB,EAAOsuB,cAAgBlD,EAEzB,SAEF,KAAKU,EAAE2D,iBACK,MAANrE,GACFqD,EAASzuB,EAAQ,0BAA2B,CAC1C5lB,KAAM4lB,EAAOquB,aACbvkB,KAAM9J,EAAOsuB,eAEftuB,EAAOquB,aAAeruB,EAAOsuB,aAAe,GAC5CtuB,EAAOzT,MAAQu/B,EAAEoB,OAEjBltB,EAAOsuB,cAAgB,IAAMlD,EAC7BprB,EAAOzT,MAAQu/B,EAAE4D,gBAEnB,SAEF,KAAK5D,EAAEqC,SACDF,EAAQ0B,EAAUvE,GACpBprB,EAAOuK,SAAW6gB,GAElBwE,EAAO5vB,GACG,MAANorB,EACFyE,EAAQ7vB,GACO,MAANorB,EACTprB,EAAOzT,MAAQu/B,EAAEgE,gBAEZxC,EAAalC,IAChBmC,EAAWvtB,EAAQ,iCAErBA,EAAOzT,MAAQu/B,EAAEiE,SAGrB,SAEF,KAAKjE,EAAEgE,eACK,MAAN1E,GACFyE,EAAQ7vB,GAAQ,GAChBgwB,EAAShwB,KAETutB,EAAWvtB,EAAQ,kDACnBA,EAAOzT,MAAQu/B,EAAEiE,QAEnB,SAEF,KAAKjE,EAAEiE,OAEL,GAAIzC,EAAalC,GACf,SACe,MAANA,EACTyE,EAAQ7vB,GACO,MAANorB,EACTprB,EAAOzT,MAAQu/B,EAAEgE,eACR7B,EAAQC,EAAW9C,IAC5BprB,EAAOiwB,WAAa7E,EACpBprB,EAAOkwB,YAAc,GACrBlwB,EAAOzT,MAAQu/B,EAAEqE,aAEjB5C,EAAWvtB,EAAQ,0BAErB,SAEF,KAAK8rB,EAAEqE,YACK,MAAN/E,EACFprB,EAAOzT,MAAQu/B,EAAEsE,aACF,MAANhF,GACTmC,EAAWvtB,EAAQ,2BACnBA,EAAOkwB,YAAclwB,EAAOiwB,WAC5BI,EAAOrwB,GACP6vB,EAAQ7vB,IACCstB,EAAalC,GACtBprB,EAAOzT,MAAQu/B,EAAEwE,sBACRrC,EAAQ0B,EAAUvE,GAC3BprB,EAAOiwB,YAAc7E,EAErBmC,EAAWvtB,EAAQ,0BAErB,SAEF,KAAK8rB,EAAEwE,sBACL,GAAU,MAANlF,EACFprB,EAAOzT,MAAQu/B,EAAEsE,iBACZ,IAAI9C,EAAalC,GACtB,SAEAmC,EAAWvtB,EAAQ,2BACnBA,EAAOmX,IAAIna,WAAWgD,EAAOiwB,YAAc,GAC3CjwB,EAAOkwB,YAAc,GACrBzB,EAASzuB,EAAQ,cAAe,CAC9B5lB,KAAM4lB,EAAOiwB,WACbzxC,MAAO,KAETwhB,EAAOiwB,WAAa,GACV,MAAN7E,EACFyE,EAAQ7vB,GACCiuB,EAAQC,EAAW9C,IAC5BprB,EAAOiwB,WAAa7E,EACpBprB,EAAOzT,MAAQu/B,EAAEqE,cAEjB5C,EAAWvtB,EAAQ,0BACnBA,EAAOzT,MAAQu/B,EAAEiE,OAErB,CACA,SAEF,KAAKjE,EAAEsE,aACL,GAAI9C,EAAalC,GACf,SACS2D,EAAQ3D,IACjBprB,EAAOmrB,EAAIC,EACXprB,EAAOzT,MAAQu/B,EAAEyE,sBAEjBhD,EAAWvtB,EAAQ,4BACnBA,EAAOzT,MAAQu/B,EAAE0E,sBACjBxwB,EAAOkwB,YAAc9E,GAEvB,SAEF,KAAKU,EAAEyE,oBACL,GAAInF,IAAMprB,EAAOmrB,EAAG,CACR,MAANC,EACFprB,EAAOzT,MAAQu/B,EAAE2E,sBAEjBzwB,EAAOkwB,aAAe9E,EAExB,QACF,CACAiF,EAAOrwB,GACPA,EAAOmrB,EAAI,GACXnrB,EAAOzT,MAAQu/B,EAAE4E,oBACjB,SAEF,KAAK5E,EAAE4E,oBACDpD,EAAalC,GACfprB,EAAOzT,MAAQu/B,EAAEiE,OACF,MAAN3E,EACTyE,EAAQ7vB,GACO,MAANorB,EACTprB,EAAOzT,MAAQu/B,EAAEgE,eACR7B,EAAQC,EAAW9C,IAC5BmC,EAAWvtB,EAAQ,oCACnBA,EAAOiwB,WAAa7E,EACpBprB,EAAOkwB,YAAc,GACrBlwB,EAAOzT,MAAQu/B,EAAEqE,aAEjB5C,EAAWvtB,EAAQ,0BAErB,SAEF,KAAK8rB,EAAE0E,sBACL,IAAKG,EAAYvF,GAAI,CACT,MAANA,EACFprB,EAAOzT,MAAQu/B,EAAE8E,sBAEjB5wB,EAAOkwB,aAAe9E,EAExB,QACF,CACAiF,EAAOrwB,GACG,MAANorB,EACFyE,EAAQ7vB,GAERA,EAAOzT,MAAQu/B,EAAEiE,OAEnB,SAEF,KAAKjE,EAAEgC,UACL,GAAK9tB,EAAOuK,QAaK,MAAN6gB,EACT4E,EAAShwB,GACAiuB,EAAQ0B,EAAUvE,GAC3BprB,EAAOuK,SAAW6gB,EACTprB,EAAO6tB,QAChB7tB,EAAO6tB,QAAU,KAAO7tB,EAAOuK,QAC/BvK,EAAOuK,QAAU,GACjBvK,EAAOzT,MAAQu/B,EAAE6B,SAEZL,EAAalC,IAChBmC,EAAWvtB,EAAQ,kCAErBA,EAAOzT,MAAQu/B,EAAE+E,yBAzBE,CACnB,GAAIvD,EAAalC,GACf,SACS0F,EAAS5C,EAAW9C,GACzBprB,EAAO6tB,QACT7tB,EAAO6tB,QAAU,KAAOzC,EACxBprB,EAAOzT,MAAQu/B,EAAE6B,QAEjBJ,EAAWvtB,EAAQ,mCAGrBA,EAAOuK,QAAU6gB,CAErB,CAcA,SAEF,KAAKU,EAAE+E,oBACL,GAAIvD,EAAalC,GACf,SAEQ,MAANA,EACF4E,EAAShwB,GAETutB,EAAWvtB,EAAQ,qCAErB,SAEF,KAAK8rB,EAAE0B,YACP,KAAK1B,EAAE2E,sBACP,KAAK3E,EAAE8E,sBACL,IAAIG,EACAC,EACJ,OAAQhxB,EAAOzT,OACb,KAAKu/B,EAAE0B,YACLuD,EAAcjF,EAAEoB,KAChB8D,EAAS,WACT,MAEF,KAAKlF,EAAE2E,sBACLM,EAAcjF,EAAEyE,oBAChBS,EAAS,cACT,MAEF,KAAKlF,EAAE8E,sBACLG,EAAcjF,EAAE0E,sBAChBQ,EAAS,cAIb,GAAU,MAAN5F,EACF,GAAIprB,EAAO2qB,IAAIsG,iBAAkB,CAC/B,IAAIC,EAAeC,EAAYnxB,GAC/BA,EAAOoxB,OAAS,GAChBpxB,EAAOzT,MAAQwkC,EACf/wB,EAAO6sB,MAAMqE,EACf,MACElxB,EAAOgxB,IAAWG,EAAYnxB,GAC9BA,EAAOoxB,OAAS,GAChBpxB,EAAOzT,MAAQwkC,OAER9C,EAAQjuB,EAAOoxB,OAAOt2C,OAASu2C,EAAaC,EAAalG,GAClEprB,EAAOoxB,QAAUhG,GAEjBmC,EAAWvtB,EAAQ,oCACnBA,EAAOgxB,IAAW,IAAMhxB,EAAOoxB,OAAShG,EACxCprB,EAAOoxB,OAAS,GAChBpxB,EAAOzT,MAAQwkC,GAGjB,SAEF,QACE,MAAM,IAAIvmC,MAAMwV,EAAQ,kBAAoBA,EAAOzT,OAQzD,OAHIyT,EAAOwsB,UAAYxsB,EAAOqrB,qBAt4ChC,SAA4BrrB,GAG1B,IAFA,IAAIuxB,EAAahmC,KAAKsjB,IAAI6b,EAAIK,kBAAmB,IAC7CyG,EAAY,EACP52C,EAAI,EAAGC,EAAIowC,EAAQnwC,OAAQF,EAAIC,EAAGD,IAAK,CAC9C,IAAIa,EAAMukB,EAAOirB,EAAQrwC,IAAIE,OAC7B,GAAIW,EAAM81C,EAKR,OAAQtG,EAAQrwC,IACd,IAAK,WACH62C,EAAUzxB,GACV,MAEF,IAAK,QACHyuB,EAASzuB,EAAQ,UAAWA,EAAO0uB,OACnC1uB,EAAO0uB,MAAQ,GACf,MAEF,IAAK,SACHD,EAASzuB,EAAQ,WAAYA,EAAO6tB,QACpC7tB,EAAO6tB,OAAS,GAChB,MAEF,QACEpjC,EAAMuV,EAAQ,+BAAiCirB,EAAQrwC,IAG7D42C,EAAYjmC,KAAKsjB,IAAI2iB,EAAW/1C,EAClC,CAEA,IAAIi2C,EAAIhH,EAAIK,kBAAoByG,EAChCxxB,EAAOqrB,oBAAsBqG,EAAI1xB,EAAOwsB,QAC1C,CAq2CImF,CAAkB3xB,GAEbA,CACT,EAj1CE4xB,OAAQ,WAAiC,OAAnBx4C,KAAKqR,MAAQ,KAAarR,IAAK,EACrDqV,MAAO,WAAc,OAAOrV,KAAKyzC,MAAM,KAAM,EAC7CxjB,MAAO,WAjBT,IAAuBrJ,EACrByxB,EADqBzxB,EAiBa5mB,MAfb,KAAjB4mB,EAAO0uB,QACTD,EAASzuB,EAAQ,UAAWA,EAAO0uB,OACnC1uB,EAAO0uB,MAAQ,IAEK,KAAlB1uB,EAAO6tB,SACTY,EAASzuB,EAAQ,WAAYA,EAAO6tB,QACpC7tB,EAAO6tB,OAAS,GASsB,GAI1C,IACE7C,EAAS,eACX,CAAE,MAAO6G,GACP7G,EAAS,WAAa,CACxB,CACKA,IAAQA,EAAS,WAAa,GAEnC,IAAI8G,EAAcpH,EAAIgC,OAAOhqC,QAAO,SAAUqvC,GAC5C,MAAc,UAAPA,GAAyB,QAAPA,CAC3B,IAMA,SAASlH,EAAWxrC,EAAQsrC,GAC1B,KAAMvxC,gBAAgByxC,GACpB,OAAO,IAAIA,EAAUxrC,EAAQsrC,GAG/BK,EAAOnvC,MAAMzC,MAEbA,KAAK44C,QAAU,IAAIpH,EAAUvrC,EAAQsrC,GACrCvxC,KAAK64C,UAAW,EAChB74C,KAAK84C,UAAW,EAEhB,IAAIC,EAAK/4C,KAETA,KAAK44C,QAAQI,MAAQ,WACnBD,EAAGj3C,KAAK,MACV,EAEA9B,KAAK44C,QAAQK,QAAU,SAAUC,GAC/BH,EAAGj3C,KAAK,QAASo3C,GAIjBH,EAAGH,QAAQvnC,MAAQ,IACrB,EAEArR,KAAKm5C,SAAW,KAEhBT,EAAYxjC,SAAQ,SAAUyjC,GAC5Bp5C,OAAOyF,eAAe+zC,EAAI,KAAOJ,EAAI,CACnCxnC,IAAK,WACH,OAAO4nC,EAAGH,QAAQ,KAAOD,EAC3B,EACAx4B,IAAK,SAAUi5B,GACb,IAAKA,EAGH,OAFAL,EAAGn2C,mBAAmB+1C,GACtBI,EAAGH,QAAQ,KAAOD,GAAMS,EACjBA,EAETL,EAAGp2C,GAAGg2C,EAAIS,EACZ,EACAr0C,YAAY,EACZs0C,cAAc,GAElB,GACF,CAEA5H,EAAUjyC,UAAYD,OAAOqB,OAAOgxC,EAAOpyC,UAAW,CACpDohB,YAAa,CACXxb,MAAOqsC,KAIXA,EAAUjyC,UAAUi0C,MAAQ,SAAU3kC,GACpC,GAAsB,mBAAXwqC,GACkB,mBAApBA,EAAOC,UACdD,EAAOC,SAASzqC,GAAO,CACvB,IAAK9O,KAAKm5C,SAAU,CAClB,IAAIK,EAAK,WACTx5C,KAAKm5C,SAAW,IAAIK,EAAG,OACzB,CACA1qC,EAAO9O,KAAKm5C,SAAS1F,MAAM3kC,EAC7B,CAIA,OAFA9O,KAAK44C,QAAQnF,MAAM3kC,EAAKpJ,YACxB1F,KAAK8B,KAAK,OAAQgN,IACX,CACT,EAEA2iC,EAAUjyC,UAAU86B,IAAM,SAAUoZ,GAKlC,OAJIA,GAASA,EAAMhyC,QACjB1B,KAAKyzC,MAAMC,GAEb1zC,KAAK44C,QAAQte,OACN,CACT,EAEAmX,EAAUjyC,UAAUmD,GAAK,SAAUg2C,EAAItoB,GACrC,IAAI0oB,EAAK/4C,KAST,OARK+4C,EAAGH,QAAQ,KAAOD,KAAoC,IAA7BD,EAAYp0C,QAAQq0C,KAChDI,EAAGH,QAAQ,KAAOD,GAAM,WACtB,IAAIv2C,EAA4B,IAArBE,UAAUZ,OAAe,CAACY,UAAU,IAAMV,MAAMa,MAAM,KAAMH,WACvEF,EAAKq3C,OAAO,EAAG,EAAGd,GAClBI,EAAGj3C,KAAKW,MAAMs2C,EAAI32C,EACpB,GAGKwvC,EAAOpyC,UAAUmD,GAAGzB,KAAK63C,EAAIJ,EAAItoB,EAC1C,EAIA,IAAI+kB,EAAQ,UACRK,EAAU,UACViE,EAAgB,uCAChBC,EAAkB,gCAClBzG,EAAS,CAAE0G,IAAKF,EAAe1G,MAAO2G,GAQtC7E,EAAY,4JAEZyB,EAAW,gMAEX2B,EAAc,6JACdD,EAAa,iMAEjB,SAAS/D,EAAclC,GACrB,MAAa,MAANA,GAAmB,OAANA,GAAoB,OAANA,GAAoB,OAANA,CAClD,CAEA,SAAS2D,EAAS3D,GAChB,MAAa,MAANA,GAAmB,MAANA,CACtB,CAEA,SAASuF,EAAavF,GACpB,MAAa,MAANA,GAAakC,EAAalC,EACnC,CAEA,SAAS6C,EAASgF,EAAO7H,GACvB,OAAO6H,EAAM1xC,KAAK6pC,EACpB,CAEA,SAAS0F,EAAUmC,EAAO7H,GACxB,OAAQ6C,EAAQgF,EAAO7H,EACzB,CAEA,IAgsCQ8H,EACArU,EACAsU,EAlsCJrH,EAAI,EAsTR,IAAK,IAAIsH,KArTT1I,EAAI2I,MAAQ,CACVtH,MAAOD,IACPkB,iBAAkBlB,IAClBoB,KAAMpB,IACN0B,YAAa1B,IACb2B,UAAW3B,IACXiC,UAAWjC,IACXkD,iBAAkBlD,IAClB+C,QAAS/C,IACToD,eAAgBpD,IAChBmD,YAAanD,IACbqD,mBAAoBrD,IACpBwH,iBAAkBxH,IAClB6C,QAAS7C,IACTsD,eAAgBtD,IAChBuD,cAAevD,IACf0C,MAAO1C,IACPyD,aAAczD,IACd0D,eAAgB1D,IAChBsC,UAAWtC,IACX4D,eAAgB5D,IAChB2D,iBAAkB3D,IAClBqC,SAAUrC,IACVgE,eAAgBhE,IAChBiE,OAAQjE,IACRqE,YAAarE,IACbwE,sBAAuBxE,IACvBsE,aAActE,IACdyE,oBAAqBzE,IACrB4E,oBAAqB5E,IACrB0E,sBAAuB1E,IACvB2E,sBAAuB3E,IACvB8E,sBAAuB9E,IACvBgC,UAAWhC,IACX+E,oBAAqB/E,IACrB6B,OAAQ7B,IACR8B,cAAe9B,KAGjBpB,EAAIwB,aAAe,CACjB,IAAO,IACP,GAAM,IACN,GAAM,IACN,KAAQ,IACR,KAAQ,KAGVxB,EAAIuB,SAAW,CACb,IAAO,IACP,GAAM,IACN,GAAM,IACN,KAAQ,IACR,KAAQ,IACR,MAAS,IACT,OAAU,IACV,MAAS,IACT,OAAU,IACV,MAAS,IACT,OAAU,IACV,KAAQ,IACR,OAAU,IACV,IAAO,IACP,OAAU,IACV,MAAS,IACT,OAAU,IACV,KAAQ,IACR,OAAU,IACV,MAAS,IACT,OAAU,IACV,KAAQ,IACR,OAAU,IACV,OAAU,IACV,MAAS,IACT,OAAU,IACV,OAAU,IACV,OAAU,IACV,KAAQ,IACR,MAAS,IACT,OAAU,IACV,MAAS,IACT,OAAU,IACV,KAAQ,IACR,OAAU,IACV,OAAU,IACV,MAAS,IACT,MAAS,IACT,OAAU,IACV,MAAS,IACT,OAAU,IACV,KAAQ,IACR,OAAU,IACV,OAAU,IACV,MAAS,IACT,OAAU,IACV,IAAO,IACP,KAAQ,IACR,OAAU,IACV,MAAS,IACT,OAAU,IACV,KAAQ,IACR,OAAU,IACV,OAAU,IACV,MAAS,IACT,OAAU,IACV,OAAU,IACV,OAAU,IACV,KAAQ,IACR,MAAS,IACT,MAAS,IACT,OAAU,IACV,MAAS,IACT,OAAU,IACV,KAAQ,IACR,OAAU,IACV,KAAQ,IACR,KAAQ,IACR,IAAO,IACP,KAAQ,IACR,MAAS,IACT,KAAQ,IACR,MAAS,IACT,OAAU,IACV,IAAO,IACP,OAAU,IACV,KAAQ,IACR,IAAO,IACP,KAAQ,IACR,MAAS,IACT,IAAO,IACP,IAAO,IACP,KAAQ,IACR,IAAO,IACP,OAAU,IACV,KAAQ,IACR,KAAQ,IACR,KAAQ,IACR,MAAS,IACT,MAAS,IACT,KAAQ,IACR,OAAU,IACV,MAAS,IACT,KAAQ,IACR,MAAS,IACT,OAAU,IACV,OAAU,IACV,OAAU,IACV,OAAU,IACV,MAAS,IACT,OAAU,IACV,MAAS,IACT,MAAS,IACT,OAAU,IACV,OAAU,IACV,KAAQ,IACR,KAAQ,IACR,KAAQ,IACR,MAAS,IACT,MAAS,IACT,KAAQ,IACR,MAAS,IACT,MAAS,IACT,QAAW,IACX,KAAQ,IACR,IAAO,IACP,MAAS,IACT,KAAQ,IACR,MAAS,IACT,OAAU,IACV,GAAM,IACN,GAAM,IACN,GAAM,IACN,QAAW,IACX,GAAM,IACN,IAAO,IACP,MAAS,IACT,IAAO,IACP,QAAW,IACX,IAAO,IACP,IAAO,IACP,IAAO,IACP,MAAS,IACT,MAAS,IACT,KAAQ,IACR,MAAS,IACT,MAAS,IACT,QAAW,IACX,KAAQ,IACR,IAAO,IACP,MAAS,IACT,KAAQ,IACR,MAAS,IACT,OAAU,IACV,GAAM,IACN,GAAM,IACN,GAAM,IACN,QAAW,IACX,GAAM,IACN,IAAO,IACP,OAAU,IACV,MAAS,IACT,IAAO,IACP,QAAW,IACX,IAAO,IACP,IAAO,IACP,IAAO,IACP,MAAS,IACT,SAAY,IACZ,MAAS,IACT,IAAO,IACP,KAAQ,KACR,KAAQ,KACR,OAAU,KACV,KAAQ,KACR,IAAO,KACP,IAAO,KACP,IAAO,KACP,MAAS,KACT,MAAS,KACT,MAAS,KACT,MAAS,KACT,MAAS,KACT,MAAS,KACT,MAAS,KACT,MAAS,KACT,OAAU,KACV,OAAU,KACV,KAAQ,KACR,OAAU,KACV,OAAU,KACV,MAAS,KACT,MAAS,KACT,OAAU,KACV,OAAU,KACV,MAAS,KACT,MAAS,KACT,KAAQ,KACR,MAAS,KACT,OAAU,KACV,KAAQ,KACR,MAAS,KACT,QAAW,KACX,KAAQ,KACR,KAAQ,KACR,KAAQ,KACR,KAAQ,KACR,KAAQ,KACR,MAAS,KACT,KAAQ,KACR,KAAQ,KACR,KAAQ,KACR,KAAQ,KACR,KAAQ,KACR,OAAU,KACV,KAAQ,KACR,MAAS,KACT,MAAS,KACT,MAAS,KACT,KAAQ,KACR,MAAS,KACT,GAAM,KACN,KAAQ,KACR,IAAO,KACP,MAAS,KACT,OAAU,KACV,MAAS,KACT,KAAQ,KACR,MAAS,KACT,IAAO,KACP,IAAO,KACP,GAAM,KACN,IAAO,KACP,IAAO,KACP,IAAO,KACP,OAAU,KACV,IAAO,KACP,KAAQ,KACR,MAAS,KACT,GAAM,KACN,MAAS,KACT,GAAM,KACN,GAAM,KACN,IAAO,KACP,IAAO,KACP,KAAQ,KACR,KAAQ,KACR,KAAQ,KACR,MAAS,KACT,OAAU,KACV,KAAQ,KACR,KAAQ,KACR,MAAS,KACT,MAAS,KACT,OAAU,KACV,OAAU,KACV,KAAQ,KACR,KAAQ,KACR,IAAO,KACP,OAAU,KACV,MAAS,KACT,OAAU,KACV,MAAS,MAGXtzC,OAAO+G,KAAKgrC,EAAIuB,UAAU39B,SAAQ,SAAUtQ,GAC1C,IAAI8jB,EAAI4oB,EAAIuB,SAASjuC,GACjBo1C,EAAiB,iBAANtxB,EAAiB/c,OAAOwuC,aAAazxB,GAAKA,EACzD4oB,EAAIuB,SAASjuC,GAAOo1C,CACtB,IAEc1I,EAAI2I,MAChB3I,EAAI2I,MAAM3I,EAAI2I,MAAMD,IAAMA,EAM5B,SAASl4C,EAAM8kB,EAAQzmB,EAAO2O,GAC5B8X,EAAOzmB,IAAUymB,EAAOzmB,GAAO2O,EACjC,CAEA,SAASumC,EAAUzuB,EAAQwzB,EAAUtrC,GAC/B8X,EAAOotB,UAAUqE,EAAUzxB,GAC/B9kB,EAAK8kB,EAAQwzB,EAAUtrC,EACzB,CAEA,SAASupC,EAAWzxB,GAClBA,EAAOotB,SAAWkC,EAAStvB,EAAO2qB,IAAK3qB,EAAOotB,UAC1CptB,EAAOotB,UAAUlyC,EAAK8kB,EAAQ,SAAUA,EAAOotB,UACnDptB,EAAOotB,SAAW,EACpB,CAEA,SAASkC,EAAU3E,EAAK3sB,GAGtB,OAFI2sB,EAAInqC,OAAMwd,EAAOA,EAAKxd,QACtBmqC,EAAI8I,YAAWz1B,EAAOA,EAAKre,QAAQ,OAAQ,MACxCqe,CACT,CAEA,SAASvT,EAAOuV,EAAQsyB,GAUtB,OATAb,EAAUzxB,GACNA,EAAOusB,gBACT+F,GAAM,WAAatyB,EAAOysB,KACxB,aAAezsB,EAAO4b,OACtB,WAAa5b,EAAOorB,GAExBkH,EAAK,IAAI9nC,MAAM8nC,GACftyB,EAAOvV,MAAQ6nC,EACfp3C,EAAK8kB,EAAQ,UAAWsyB,GACjBtyB,CACT,CAEA,SAAS0T,EAAK1T,GAYZ,OAXIA,EAAO4rB,UAAY5rB,EAAO2rB,YAAY4B,EAAWvtB,EAAQ,qBACxDA,EAAOzT,QAAUu/B,EAAEC,OACrB/rB,EAAOzT,QAAUu/B,EAAEkB,kBACnBhtB,EAAOzT,QAAUu/B,EAAEoB,MACpBziC,EAAMuV,EAAQ,kBAEhByxB,EAAUzxB,GACVA,EAAOorB,EAAI,GACXprB,EAAO0rB,QAAS,EAChBxwC,EAAK8kB,EAAQ,SACb4qB,EAAUtwC,KAAK0lB,EAAQA,EAAO3gB,OAAQ2gB,EAAO2qB,KACtC3qB,CACT,CAEA,SAASutB,EAAYvtB,EAAQE,GAC3B,GAAsB,iBAAXF,KAAyBA,aAAkB4qB,GACpD,MAAM,IAAIpgC,MAAM,0BAEdwV,EAAO3gB,QACToL,EAAMuV,EAAQE,EAElB,CAEA,SAAS0vB,EAAQ5vB,GACVA,EAAO3gB,SAAQ2gB,EAAOuK,QAAUvK,EAAOuK,QAAQvK,EAAOwrB,cAC3D,IAAI75B,EAASqO,EAAOyrB,KAAKzrB,EAAOyrB,KAAK3wC,OAAS,IAAMklB,EAChDmX,EAAMnX,EAAOmX,IAAM,CAAE/8B,KAAM4lB,EAAOuK,QAASvN,WAAY,CAAC,GAGxDgD,EAAO2qB,IAAIyB,QACbjV,EAAIkV,GAAK16B,EAAO06B,IAElBrsB,EAAOmsB,WAAWrxC,OAAS,EAC3B2zC,EAASzuB,EAAQ,iBAAkBmX,EACrC,CAEA,SAASuc,EAAOt5C,EAAM8iB,GACpB,IACIy2B,EADIv5C,EAAKsD,QAAQ,KACF,EAAI,CAAE,GAAItD,GAASA,EAAKyC,MAAM,KAC7C/D,EAAS66C,EAAS,GAClBC,EAAQD,EAAS,GAQrB,OALIz2B,GAAsB,UAAT9iB,IACftB,EAAS,QACT86C,EAAQ,IAGH,CAAE96C,OAAQA,EAAQ86C,MAAOA,EAClC,CAEA,SAASvD,EAAQrwB,GAKf,GAJKA,EAAO3gB,SACV2gB,EAAOiwB,WAAajwB,EAAOiwB,WAAWjwB,EAAOwrB,eAGO,IAAlDxrB,EAAOmsB,WAAWzuC,QAAQsiB,EAAOiwB,aACnCjwB,EAAOmX,IAAIna,WAAWnkB,eAAemnB,EAAOiwB,YAC5CjwB,EAAOiwB,WAAajwB,EAAOkwB,YAAc,OAF3C,CAMA,GAAIlwB,EAAO2qB,IAAIyB,MAAO,CACpB,IAAIyH,EAAKH,EAAM1zB,EAAOiwB,YAAY,GAC9Bn3C,EAAS+6C,EAAG/6C,OACZ86C,EAAQC,EAAGD,MAEf,GAAe,UAAX96C,EAEF,GAAc,QAAV86C,GAAmB5zB,EAAOkwB,cAAgB4C,EAC5CvF,EAAWvtB,EACT,gCAAkC8yB,EAAlC,aACa9yB,EAAOkwB,kBACjB,GAAc,UAAV0D,GAAqB5zB,EAAOkwB,cAAgB6C,EACrDxF,EAAWvtB,EACT,kCAAoC+yB,EAApC,aACa/yB,EAAOkwB,iBACjB,CACL,IAAI/Y,EAAMnX,EAAOmX,IACbxlB,EAASqO,EAAOyrB,KAAKzrB,EAAOyrB,KAAK3wC,OAAS,IAAMklB,EAChDmX,EAAIkV,KAAO16B,EAAO06B,KACpBlV,EAAIkV,GAAK1zC,OAAOqB,OAAO2X,EAAO06B,KAEhClV,EAAIkV,GAAGuH,GAAS5zB,EAAOkwB,WACzB,CAMFlwB,EAAOmsB,WAAWvyC,KAAK,CAAComB,EAAOiwB,WAAYjwB,EAAOkwB,aACpD,MAEElwB,EAAOmX,IAAIna,WAAWgD,EAAOiwB,YAAcjwB,EAAOkwB,YAClDzB,EAASzuB,EAAQ,cAAe,CAC9B5lB,KAAM4lB,EAAOiwB,WACbzxC,MAAOwhB,EAAOkwB,cAIlBlwB,EAAOiwB,WAAajwB,EAAOkwB,YAAc,EAxCzC,CAyCF,CAEA,SAASL,EAAS7vB,EAAQ8zB,GACxB,GAAI9zB,EAAO2qB,IAAIyB,MAAO,CAEpB,IAAIjV,EAAMnX,EAAOmX,IAGb0c,EAAKH,EAAM1zB,EAAOuK,SACtB4M,EAAIr+B,OAAS+6C,EAAG/6C,OAChBq+B,EAAIyc,MAAQC,EAAGD,MACfzc,EAAI4c,IAAM5c,EAAIkV,GAAGwH,EAAG/6C,SAAW,GAE3Bq+B,EAAIr+B,SAAWq+B,EAAI4c,MACrBxG,EAAWvtB,EAAQ,6BACjBjD,KAAK7a,UAAU8d,EAAOuK,UACxB4M,EAAI4c,IAAMF,EAAG/6C,QAGf,IAAI6Y,EAASqO,EAAOyrB,KAAKzrB,EAAOyrB,KAAK3wC,OAAS,IAAMklB,EAChDmX,EAAIkV,IAAM16B,EAAO06B,KAAOlV,EAAIkV,IAC9B1zC,OAAO+G,KAAKy3B,EAAIkV,IAAI/9B,SAAQ,SAAU0lC,GACpCvF,EAASzuB,EAAQ,kBAAmB,CAClClnB,OAAQk7C,EACRD,IAAK5c,EAAIkV,GAAG2H,IAEhB,IAMF,IAAK,IAAIp5C,EAAI,EAAGC,EAAImlB,EAAOmsB,WAAWrxC,OAAQF,EAAIC,EAAGD,IAAK,CACxD,IAAIq5C,EAAKj0B,EAAOmsB,WAAWvxC,GACvBR,EAAO65C,EAAG,GACVz1C,EAAQy1C,EAAG,GACXN,EAAWD,EAAMt5C,GAAM,GACvBtB,EAAS66C,EAAS76C,OAClB86C,EAAQD,EAASC,MACjBG,EAAiB,KAAXj7C,EAAgB,GAAMq+B,EAAIkV,GAAGvzC,IAAW,GAC9CiH,EAAI,CACN3F,KAAMA,EACNoE,MAAOA,EACP1F,OAAQA,EACR86C,MAAOA,EACPG,IAAKA,GAKHj7C,GAAqB,UAAXA,IAAuBi7C,IACnCxG,EAAWvtB,EAAQ,6BACjBjD,KAAK7a,UAAUpJ,IACjBiH,EAAEg0C,IAAMj7C,GAEVknB,EAAOmX,IAAIna,WAAW5iB,GAAQ2F,EAC9B0uC,EAASzuB,EAAQ,cAAejgB,EAClC,CACAigB,EAAOmsB,WAAWrxC,OAAS,CAC7B,CAEAklB,EAAOmX,IAAI+c,gBAAkBJ,EAG7B9zB,EAAO4rB,SAAU,EACjB5rB,EAAOyrB,KAAK7xC,KAAKomB,EAAOmX,KACxBsX,EAASzuB,EAAQ,YAAaA,EAAOmX,KAChC2c,IAEE9zB,EAAO6rB,UAA6C,WAAjC7rB,EAAOuK,QAAQ7pB,cAGrCsf,EAAOzT,MAAQu/B,EAAEoB,KAFjBltB,EAAOzT,MAAQu/B,EAAE6B,OAInB3tB,EAAOmX,IAAM,KACbnX,EAAOuK,QAAU,IAEnBvK,EAAOiwB,WAAajwB,EAAOkwB,YAAc,GACzClwB,EAAOmsB,WAAWrxC,OAAS,CAC7B,CAEA,SAASk1C,EAAUhwB,GACjB,IAAKA,EAAOuK,QAIV,OAHAgjB,EAAWvtB,EAAQ,0BACnBA,EAAOotB,UAAY,WACnBptB,EAAOzT,MAAQu/B,EAAEoB,MAInB,GAAIltB,EAAO6tB,OAAQ,CACjB,GAAuB,WAAnB7tB,EAAOuK,QAIT,OAHAvK,EAAO6tB,QAAU,KAAO7tB,EAAOuK,QAAU,IACzCvK,EAAOuK,QAAU,QACjBvK,EAAOzT,MAAQu/B,EAAE6B,QAGnBc,EAASzuB,EAAQ,WAAYA,EAAO6tB,QACpC7tB,EAAO6tB,OAAS,EAClB,CAIA,IAAI7kC,EAAIgX,EAAOyrB,KAAK3wC,OAChByvB,EAAUvK,EAAOuK,QAChBvK,EAAO3gB,SACVkrB,EAAUA,EAAQvK,EAAOwrB,cAG3B,IADA,IAAI2I,EAAU5pB,EACPvhB,KACOgX,EAAOyrB,KAAKziC,GACd5O,OAAS+5C,GAEjB5G,EAAWvtB,EAAQ,wBAOvB,GAAIhX,EAAI,EAIN,OAHAukC,EAAWvtB,EAAQ,0BAA4BA,EAAOuK,SACtDvK,EAAOotB,UAAY,KAAOptB,EAAOuK,QAAU,SAC3CvK,EAAOzT,MAAQu/B,EAAEoB,MAGnBltB,EAAOuK,QAAUA,EAEjB,IADA,IAAI6oB,EAAIpzB,EAAOyrB,KAAK3wC,OACbs4C,KAAMpqC,GAAG,CACd,IAAImuB,EAAMnX,EAAOmX,IAAMnX,EAAOyrB,KAAKrM,MACnCpf,EAAOuK,QAAUvK,EAAOmX,IAAI/8B,KAC5Bq0C,EAASzuB,EAAQ,aAAcA,EAAOuK,SAEtC,IAAI3rB,EAAI,CAAC,EACT,IAAK,IAAIhE,KAAKu8B,EAAIkV,GAChBztC,EAAEhE,GAAKu8B,EAAIkV,GAAGzxC,GAGhB,IAAI+W,EAASqO,EAAOyrB,KAAKzrB,EAAOyrB,KAAK3wC,OAAS,IAAMklB,EAChDA,EAAO2qB,IAAIyB,OAASjV,EAAIkV,KAAO16B,EAAO06B,IAExC1zC,OAAO+G,KAAKy3B,EAAIkV,IAAI/9B,SAAQ,SAAU0lC,GACpC,IAAI58B,EAAI+f,EAAIkV,GAAG2H,GACfvF,EAASzuB,EAAQ,mBAAoB,CAAElnB,OAAQk7C,EAAGD,IAAK38B,GACzD,GAEJ,CACU,IAANpO,IAASgX,EAAO2rB,YAAa,GACjC3rB,EAAOuK,QAAUvK,EAAOkwB,YAAclwB,EAAOiwB,WAAa,GAC1DjwB,EAAOmsB,WAAWrxC,OAAS,EAC3BklB,EAAOzT,MAAQu/B,EAAEoB,IACnB,CAEA,SAASiE,EAAanxB,GACpB,IAEIo0B,EAFAhD,EAASpxB,EAAOoxB,OAChBiD,EAAWjD,EAAO1wC,cAElB4zC,EAAS,GAEb,OAAIt0B,EAAOisB,SAASmF,GACXpxB,EAAOisB,SAASmF,GAErBpxB,EAAOisB,SAASoI,GACXr0B,EAAOisB,SAASoI,IAGA,OADzBjD,EAASiD,GACEtH,OAAO,KACS,MAArBqE,EAAOrE,OAAO,IAChBqE,EAASA,EAAO72C,MAAM,GAEtB+5C,GADAF,EAAM3oB,SAAS2lB,EAAQ,KACVtyC,SAAS,MAEtBsyC,EAASA,EAAO72C,MAAM,GAEtB+5C,GADAF,EAAM3oB,SAAS2lB,EAAQ,KACVtyC,SAAS,MAG1BsyC,EAASA,EAAOzxC,QAAQ,MAAO,IAC3BY,MAAM6zC,IAAQE,EAAO5zC,gBAAkB0wC,GACzC7D,EAAWvtB,EAAQ,4BACZ,IAAMA,EAAOoxB,OAAS,KAGxBrsC,OAAOouC,cAAciB,GAC9B,CAEA,SAASnH,EAAiBjtB,EAAQorB,GACtB,MAANA,GACFprB,EAAOzT,MAAQu/B,EAAE2B,UACjBztB,EAAO0tB,iBAAmB1tB,EAAOwsB,UACvBc,EAAalC,KAGvBmC,EAAWvtB,EAAQ,oCACnBA,EAAOotB,SAAWhC,EAClBprB,EAAOzT,MAAQu/B,EAAEoB,KAErB,CAEA,SAASH,EAAQD,EAAOlyC,GACtB,IAAIkD,EAAS,GAIb,OAHIlD,EAAIkyC,EAAMhyC,SACZgD,EAASgvC,EAAMC,OAAOnyC,IAEjBkD,CACT,CAtVAguC,EAAIpB,EAAI2I,MAm4BHtuC,OAAOouC,gBAEJD,EAAqBnuC,OAAOwuC,aAC5B1U,EAAQtzB,KAAKszB,MACbsU,EAAgB,WAClB,IAEIoB,EACAC,EAFAC,EAAY,GAGZnyC,GAAS,EACTxH,EAASY,UAAUZ,OACvB,IAAKA,EACH,MAAO,GAGT,IADA,IAAIgD,EAAS,KACJwE,EAAQxH,GAAQ,CACvB,IAAI45C,EAAYz0C,OAAOvE,UAAU4G,IACjC,IACGqyC,SAASD,IACVA,EAAY,GACZA,EAAY,SACZ7V,EAAM6V,KAAeA,EAErB,MAAME,WAAW,uBAAyBF,GAExCA,GAAa,MACfD,EAAU76C,KAAK86C,IAIfH,EAAoC,QADpCG,GAAa,QACiB,IAC9BF,EAAgBE,EAAY,KAAS,MACrCD,EAAU76C,KAAK26C,EAAeC,KAE5BlyC,EAAQ,IAAMxH,GAAU25C,EAAU35C,OA7BzB,SA8BXgD,GAAUo1C,EAAmBr3C,MAAM,KAAM44C,GACzCA,EAAU35C,OAAS,EAEvB,CACA,OAAOgD,CACT,EAEInF,OAAOyF,eACTzF,OAAOyF,eAAe2G,OAAQ,gBAAiB,CAC7CvG,MAAO20C,EACPV,cAAc,EACdR,UAAU,IAGZltC,OAAOouC,cAAgBA,EAI9B,CAriDA,CAqiDmD/2C,0CCriDnD,SAAU6uB,EAAQrvB,GACf,aAEA,IAAIqvB,EAAO4pB,aAAX,CAIA,IAIIC,EA6HIC,EAZAC,EArBAC,EACAC,EAjGJC,EAAa,EACbC,EAAgB,CAAC,EACjBC,GAAwB,EACxBC,EAAMrqB,EAAOpc,SAoJb0mC,EAAW58C,OAAO68C,gBAAkB78C,OAAO68C,eAAevqB,GAC9DsqB,EAAWA,GAAYA,EAAShuC,WAAaguC,EAAWtqB,EAGf,qBAArC,CAAC,EAAEnsB,SAASxE,KAAK2wB,EAAOwqB,SApFxBX,EAAoB,SAASY,GACzBD,EAAQE,UAAS,WAAcC,EAAaF,EAAS,GACzD,EAGJ,WAGI,GAAIzqB,EAAO4qB,cAAgB5qB,EAAO6qB,cAAe,CAC7C,IAAIC,GAA4B,EAC5BC,EAAe/qB,EAAOgrB,UAM1B,OALAhrB,EAAOgrB,UAAY,WACfF,GAA4B,CAChC,EACA9qB,EAAO4qB,YAAY,GAAI,KACvB5qB,EAAOgrB,UAAYD,EACZD,CACX,CACJ,CAsEWG,IA/DHjB,EAAgB,gBAAkB1pC,KAAK8zB,SAAW,IAClD6V,EAAkB,SAAS37C,GACvBA,EAAMwc,SAAWkV,GACK,iBAAf1xB,EAAM2O,MACyB,IAAtC3O,EAAM2O,KAAKxK,QAAQu3C,IACnBW,GAAcr8C,EAAM2O,KAAK3N,MAAM06C,EAAcn6C,QAErD,EAEImwB,EAAO7a,iBACP6a,EAAO7a,iBAAiB,UAAW8kC,GAAiB,GAEpDjqB,EAAOkrB,YAAY,YAAajB,GAGpCJ,EAAoB,SAASY,GACzBzqB,EAAO4qB,YAAYZ,EAAgBS,EAAQ,IAC/C,GAkDOzqB,EAAOmrB,iBA9CVpB,EAAU,IAAIoB,gBACVC,MAAMJ,UAAY,SAAS18C,GAE/Bq8C,EADar8C,EAAM2O,KAEvB,EAEA4sC,EAAoB,SAASY,GACzBV,EAAQsB,MAAMT,YAAYH,EAC9B,GA0COJ,GAAO,uBAAwBA,EAAIiB,cAAc,WAtCpDxB,EAAOO,EAAIvrB,gBACf+qB,EAAoB,SAASY,GAGzB,IAAI7H,EAASyH,EAAIiB,cAAc,UAC/B1I,EAAO2I,mBAAqB,WACxBZ,EAAaF,GACb7H,EAAO2I,mBAAqB,KAC5BzB,EAAK0B,YAAY5I,GACjBA,EAAS,IACb,EACAkH,EAAKlpC,YAAYgiC,EACrB,GAIAiH,EAAoB,SAASY,GACzBnuC,WAAWquC,EAAc,EAAGF,EAChC,EA6BJH,EAASV,aA1KT,SAAsB5uC,GAEI,mBAAbA,IACTA,EAAW,IAAIyF,SAAS,GAAKzF,IAI/B,IADA,IAAIzK,EAAO,IAAIR,MAAMU,UAAUZ,OAAS,GAC/BF,EAAI,EAAGA,EAAIY,EAAKV,OAAQF,IAC7BY,EAAKZ,GAAKc,UAAUd,EAAI,GAG5B,IAAI87C,EAAO,CAAEzwC,SAAUA,EAAUzK,KAAMA,GAGvC,OAFA45C,EAAcD,GAAcuB,EAC5B5B,EAAkBK,GACXA,GACT,EA4JAI,EAASoB,eAAiBA,CAnL1B,CAyBA,SAASA,EAAejB,UACbN,EAAcM,EACzB,CAwBA,SAASE,EAAaF,GAGlB,GAAIL,EAGA9tC,WAAWquC,EAAc,EAAGF,OACzB,CACH,IAAIgB,EAAOtB,EAAcM,GACzB,GAAIgB,EAAM,CACNrB,GAAwB,EACxB,KAjCZ,SAAaqB,GACT,IAAIzwC,EAAWywC,EAAKzwC,SAChBzK,EAAOk7C,EAAKl7C,KAChB,OAAQA,EAAKV,QACb,KAAK,EACDmL,IACA,MACJ,KAAK,EACDA,EAASzK,EAAK,IACd,MACJ,KAAK,EACDyK,EAASzK,EAAK,GAAIA,EAAK,IACvB,MACJ,KAAK,EACDyK,EAASzK,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAChC,MACJ,QACIyK,EAASpK,MAnDrB,UAmDsCL,GAGlC,CAcgB24B,CAAIuiB,EACR,CAAE,QACEC,EAAejB,GACfL,GAAwB,CAC5B,CACJ,CACJ,CACJ,CA8GJ,CAzLA,CAyLkB,oBAATnuC,UAAyC,IAAX,EAAA0vC,EAAyBx9C,KAAO,EAAAw9C,EAAS1vC,iBCtKhF,SAAS2vC,EAAcj4C,EAAWk4C,GAChC,OAAO,MAACl4C,EAAiCk4C,EAAIl4C,CAC/C,CA8EAzC,EAAOC,QA5EP,SAAiBgD,GAEf,IAbyB23C,EAarBloB,EAAMgoB,GADVz3C,EAAUA,GAAW,CAAC,GACAyvB,IAAK,GACvBrjB,EAAMqrC,EAAIz3C,EAAQoM,IAAK,GACvBwrC,EAAYH,EAAIz3C,EAAQ43C,WAAW,GACnCC,EAAqBJ,EAAIz3C,EAAQ63C,oBAAoB,GAErDC,EAA2B,KAC3BC,EAAoC,KACpCC,EAAmC,KAEnC10C,GAtBqBq0C,EAsBMF,EAAIz3C,EAAQi4C,oBAAqB,KArBzD,SAAUC,EAAgBn6C,EAAOo6C,GAEtC,OAAOD,EADOC,GAAMA,EAAKR,IACQ55C,EAAQm6C,EAC3C,GAoBA,SAASh0B,IACPk0B,EAAOhsC,EACT,CAWA,SAASgsC,EAAOC,EAAwBC,GAKtC,GAJyB,iBAAdA,IACTA,EAAYtwC,KAAKC,OAGf8vC,IAAkBO,KAClBT,GAAsBG,IAAiBK,GAA3C,CAEA,GAAsB,OAAlBN,GAA2C,OAAjBC,EAG5B,OAFAA,EAAeK,OACfN,EAAgBO,GAIlB,IACIC,EAAiB,MAASD,EAAYP,GACtCS,GAFgBH,EAAWL,GAEGO,EAElCT,EAAgB,OAATA,EACHU,EACAl1C,EAAOw0C,EAAMU,EAAaD,GAC9BP,EAAeK,EACfN,EAAgBO,CAhB+C,CAiBjE,CAkBA,MAAO,CACLp0B,MAAOA,EACP5J,MApDF,WACEw9B,EAAO,KACPC,EAAgB,KAChBC,EAAe,KACXJ,GACF1zB,GAEJ,EA8CEk0B,OAAQA,EACRK,SApBF,SAAkBH,GAChB,GAAqB,OAAjBN,EAAyB,OAAOU,IACpC,GAAIV,GAAgBvoB,EAAO,OAAO,EAClC,GAAa,OAATqoB,EAAiB,OAAOY,IAE5B,IAAIC,GAAiBlpB,EAAMuoB,GAAgBF,EAI3C,MAHyB,iBAAdQ,GAAmD,iBAAlBP,IAC1CY,GAA+C,MAA7BL,EAAYP,IAEzB5rC,KAAKsjB,IAAI,EAAGkpB,EACrB,EAWEb,KATF,WACE,OAAgB,OAATA,EAAgB,EAAIA,CAC7B,EASF,yBCjGA,IAAI/5B,OAA2B,IAAX,EAAAy5B,GAA0B,EAAAA,GACjB,oBAAT1vC,MAAwBA,MAChCwG,OACR7R,EAAQ6P,SAAS9S,UAAUiD,MAiB/B,SAASm8C,EAAQ7lC,EAAI8lC,GACnB7+C,KAAK8+C,IAAM/lC,EACX/Y,KAAK++C,SAAWF,CAClB,CAhBA77C,EAAQmL,WAAa,WACnB,OAAO,IAAIywC,EAAQn8C,EAAMvB,KAAKiN,WAAY4V,EAAOzhB,WAAYmL,aAC/D,EACAzK,EAAQgN,YAAc,WACpB,OAAO,IAAI4uC,EAAQn8C,EAAMvB,KAAK8O,YAAa+T,EAAOzhB,WAAY08C,cAChE,EACAh8C,EAAQyK,aACRzK,EAAQg8C,cAAgB,SAASj6B,GAC3BA,GACFA,EAAQ1P,OAEZ,EAMAupC,EAAQp/C,UAAUy/C,MAAQL,EAAQp/C,UAAUqzB,IAAM,WAAY,EAC9D+rB,EAAQp/C,UAAU6V,MAAQ,WACxBrV,KAAK++C,SAAS79C,KAAK6iB,EAAO/jB,KAAK8+C,IACjC,EAGA97C,EAAQk8C,OAAS,SAASh3C,EAAMi3C,GAC9B1xC,aAAavF,EAAKk3C,gBAClBl3C,EAAKm3C,aAAeF,CACtB,EAEAn8C,EAAQs8C,SAAW,SAASp3C,GAC1BuF,aAAavF,EAAKk3C,gBAClBl3C,EAAKm3C,cAAgB,CACvB,EAEAr8C,EAAQu8C,aAAev8C,EAAQ2T,OAAS,SAASzO,GAC/CuF,aAAavF,EAAKk3C,gBAElB,IAAID,EAAQj3C,EAAKm3C,aACbF,GAAS,IACXj3C,EAAKk3C,eAAiBjxC,YAAW,WAC3BjG,EAAKs3C,YACPt3C,EAAKs3C,YACT,GAAGL,GAEP,EAGA,EAAQ,OAIRn8C,EAAQy4C,aAAgC,oBAAT3tC,MAAwBA,KAAK2tC,mBAClB,IAAX,EAAA+B,GAA0B,EAAAA,EAAO/B,cACxCz7C,MAAQA,KAAKy7C,aACrCz4C,EAAQu6C,eAAkC,oBAATzvC,MAAwBA,KAAKyvC,qBAClB,IAAX,EAAAC,GAA0B,EAAAA,EAAOD,gBACxCv9C,MAAQA,KAAKu9C,qCC7DvC,WACE,aACAv6C,EAAQy8C,SAAW,SAASzrB,GAC1B,MAAe,WAAXA,EAAI,GACCA,EAAIigB,UAAU,GAEdjgB,CAEX,CAED,GAAE9yB,KAAKlB,8BCVR,WACE,aACA,IAAI0/C,EAASC,EAAUC,EAAaC,EAAeC,EACjDC,EAAU,CAAC,EAAEtgD,eAEfigD,EAAU,EAAQ,OAElBC,EAAW,kBAEXE,EAAgB,SAASx+B,GACvB,MAAwB,iBAAVA,IAAuBA,EAAM/c,QAAQ,MAAQ,GAAK+c,EAAM/c,QAAQ,MAAQ,GAAK+c,EAAM/c,QAAQ,MAAQ,EACnH,EAEAw7C,EAAY,SAASz+B,GACnB,MAAO,YAAeu+B,EAAYv+B,GAAU,KAC9C,EAEAu+B,EAAc,SAASv+B,GACrB,OAAOA,EAAM9a,QAAQ,MAAO,kBAC9B,EAEAvD,EAAQg9C,QAAU,WAChB,SAASA,EAAQC,GACf,IAAIr7C,EAAKiuB,EAAKztB,EAGd,IAAKR,KAFL5E,KAAKgG,QAAU,CAAC,EAChB6sB,EAAM8sB,EAAS,IAERI,EAAQ7+C,KAAK2xB,EAAKjuB,KACvBQ,EAAQytB,EAAIjuB,GACZ5E,KAAKgG,QAAQpB,GAAOQ,GAEtB,IAAKR,KAAOq7C,EACLF,EAAQ7+C,KAAK++C,EAAMr7C,KACxBQ,EAAQ66C,EAAKr7C,GACb5E,KAAKgG,QAAQpB,GAAOQ,EAExB,CAqFA,OAnFA46C,EAAQxgD,UAAU0gD,YAAc,SAASC,GACvC,IAAIC,EAASC,EAASnpB,EAAQopB,EAAaC,EASxBC,EAsEnB,OA9EAJ,EAAUpgD,KAAKgG,QAAQo6C,QACvBC,EAAUrgD,KAAKgG,QAAQq6C,QACc,IAAhC9gD,OAAO+G,KAAK65C,GAASz+C,QAAkB1B,KAAKgG,QAAQu6C,WAAaZ,EAAS,IAAOY,SAEpFJ,EAAUA,EADVI,EAAWhhD,OAAO+G,KAAK65C,GAAS,IAGhCI,EAAWvgD,KAAKgG,QAAQu6C,SAEPC,EAiEhBxgD,KAjEHk3B,EACS,SAASE,EAASqpB,GACvB,IAAIC,EAAMrmC,EAAOgH,EAAOnY,EAAOtE,EAAKQ,EACpC,GAAmB,iBAARq7C,EACLD,EAAMx6C,QAAQsvC,OAASuK,EAAcY,GACvCrpB,EAAQupB,IAAIb,EAAUW,IAEtBrpB,EAAQwpB,IAAIH,QAET,GAAI7+C,MAAM+C,QAAQ87C,IACvB,IAAKv3C,KAASu3C,EACZ,GAAKV,EAAQ7+C,KAAKu/C,EAAKv3C,GAEvB,IAAKtE,KADLyV,EAAQomC,EAAIv3C,GAEVmY,EAAQhH,EAAMzV,GACdwyB,EAAUF,EAAOE,EAAQypB,IAAIj8C,GAAMyc,GAAOy/B,UAI9C,IAAKl8C,KAAO67C,EACV,GAAKV,EAAQ7+C,KAAKu/C,EAAK77C,GAEvB,GADAyV,EAAQomC,EAAI77C,GACRA,IAAQw7C,GACV,GAAqB,iBAAV/lC,EACT,IAAKqmC,KAAQrmC,EACXjV,EAAQiV,EAAMqmC,GACdtpB,EAAUA,EAAQ2pB,IAAIL,EAAMt7C,QAG3B,GAAIR,IAAQy7C,EAEfjpB,EADEopB,EAAMx6C,QAAQsvC,OAASuK,EAAcxlC,GAC7B+c,EAAQupB,IAAIb,EAAUzlC,IAEtB+c,EAAQwpB,IAAIvmC,QAEnB,GAAIzY,MAAM+C,QAAQ0V,GACvB,IAAKnR,KAASmR,EACP0lC,EAAQ7+C,KAAKmZ,EAAOnR,KAIrBkuB,EAFiB,iBADrB/V,EAAQhH,EAAMnR,IAERs3C,EAAMx6C,QAAQsvC,OAASuK,EAAcx+B,GAC7B+V,EAAQypB,IAAIj8C,GAAK+7C,IAAIb,EAAUz+B,IAAQy/B,KAEvC1pB,EAAQypB,IAAIj8C,EAAKyc,GAAOy/B,KAG1B5pB,EAAOE,EAAQypB,IAAIj8C,GAAMyc,GAAOy/B,UAGpB,iBAAVzmC,EAChB+c,EAAUF,EAAOE,EAAQypB,IAAIj8C,GAAMyV,GAAOymC,KAErB,iBAAVzmC,GAAsBmmC,EAAMx6C,QAAQsvC,OAASuK,EAAcxlC,GACpE+c,EAAUA,EAAQypB,IAAIj8C,GAAK+7C,IAAIb,EAAUzlC,IAAQymC,MAEpC,MAATzmC,IACFA,EAAQ,IAEV+c,EAAUA,EAAQypB,IAAIj8C,EAAKyV,EAAM3U,YAAYo7C,MAKrD,OAAO1pB,CACT,EAEFkpB,EAAcZ,EAAQ9+C,OAAO2/C,EAAUvgD,KAAKgG,QAAQg7C,OAAQhhD,KAAKgG,QAAQ0vC,QAAS,CAChFuL,SAAUjhD,KAAKgG,QAAQi7C,SACvBC,oBAAqBlhD,KAAKgG,QAAQk7C,sBAE7BhqB,EAAOopB,EAAaH,GAAS7lB,IAAIt6B,KAAKgG,QAAQm7C,WACvD,EAEOnB,CAER,CAtGiB,EAwGnB,GAAE9+C,KAAKlB,4BC7HR,WACEgD,EAAQ28C,SAAW,CACjB,GAAO,CACLyB,iBAAiB,EACjBh6C,MAAM,EACNizC,WAAW,EACXgH,eAAe,EACfjB,QAAS,IACTC,QAAS,IACTiB,eAAe,EACfC,aAAa,EACbC,YAAY,EACZjS,cAAc,EACdkS,UAAW,KACXzO,OAAO,EACP0O,kBAAkB,EAClBC,SAAU,KACVC,iBAAiB,EACjBC,mBAAmB,EACnB9lC,OAAO,EACP9V,QAAQ,EACR67C,mBAAoB,KACpBC,oBAAqB,KACrBC,kBAAmB,KACnBC,gBAAiB,KACjBC,SAAU,IAEZ,GAAO,CACLd,iBAAiB,EACjBh6C,MAAM,EACNizC,WAAW,EACXgH,eAAe,EACfjB,QAAS,IACTC,QAAS,IACTiB,eAAe,EACfC,aAAa,EACbC,YAAY,EACZjS,cAAc,EACdkS,UAAW,KACXzO,OAAO,EACP0O,kBAAkB,EAClBS,uBAAuB,EACvBR,SAAU,KACVC,iBAAiB,EACjBC,mBAAmB,EACnB9lC,OAAO,EACP9V,QAAQ,EACR67C,mBAAoB,KACpBC,oBAAqB,KACrBC,kBAAmB,KACnBC,gBAAiB,KACjB1B,SAAU,OACVS,OAAQ,CACN,QAAW,MACX,SAAY,QACZ,YAAc,GAEhBtL,QAAS,KACTyL,WAAY,CACV,QAAU,EACV,OAAU,KACV,QAAW,MAEbF,UAAU,EACVmB,UAAW,IACXF,SAAU,GACV5M,OAAO,GAIZ,GAAEp0C,KAAKlB,8BCtER,WACE,aACA,IAAIqiD,EAAK1C,EAAU36C,EAAgBjE,EAAQuhD,EAASC,EAAaC,EAAYlR,EAAKmK,EAChFgH,EAAO,SAAS5iD,EAAIk5C,GAAK,OAAO,WAAY,OAAOl5C,EAAG4C,MAAMs2C,EAAIz2C,UAAY,CAAG,EAE/Ey9C,EAAU,CAAC,EAAEtgD,eAEf6xC,EAAM,EAAQ,OAEdvwC,EAAS,EAAQ,OAEjBshD,EAAM,EAAQ,OAEdG,EAAa,EAAQ,OAErB/G,EAAe,sBAEfkE,EAAW,kBAEX2C,EAAU,SAASI,GACjB,MAAwB,iBAAVA,GAAgC,MAATA,GAAgD,IAA9BnjD,OAAO+G,KAAKo8C,GAAOhhD,MAC5E,EAEA6gD,EAAc,SAASC,EAAYt6C,EAAMtD,GACvC,IAAIpD,EAAGa,EACP,IAAKb,EAAI,EAAGa,EAAMmgD,EAAW9gD,OAAQF,EAAIa,EAAKb,IAE5C0G,GADAm0C,EAAUmG,EAAWhhD,IACN0G,EAAMtD,GAEvB,OAAOsD,CACT,EAEAlD,EAAiB,SAASy7C,EAAK77C,EAAKQ,GAClC,IAAIP,EAMJ,OALAA,EAAatF,OAAOqB,OAAO,OAChBwE,MAAQA,EACnBP,EAAWg0C,UAAW,EACtBh0C,EAAWE,YAAa,EACxBF,EAAWw0C,cAAe,EACnB95C,OAAOyF,eAAey7C,EAAK77C,EAAKC,EACzC,EAEA7B,EAAQssC,OAAS,SAAUqT,GAGzB,SAASrT,EAAO2Q,GAMd,IAAIr7C,EAAKiuB,EAAKztB,EACd,GANApF,KAAKwvC,mBAAqBiT,EAAKziD,KAAKwvC,mBAAoBxvC,MACxDA,KAAK4iD,YAAcH,EAAKziD,KAAK4iD,YAAa5iD,MAC1CA,KAAKsgB,MAAQmiC,EAAKziD,KAAKsgB,MAAOtgB,MAC9BA,KAAK6iD,aAAeJ,EAAKziD,KAAK6iD,aAAc7iD,MAC5CA,KAAK8iD,aAAeL,EAAKziD,KAAK8iD,aAAc9iD,QAEtCA,gBAAgBgD,EAAQssC,QAC5B,OAAO,IAAItsC,EAAQssC,OAAO2Q,GAI5B,IAAKr7C,KAFL5E,KAAKgG,QAAU,CAAC,EAChB6sB,EAAM8sB,EAAS,IAERI,EAAQ7+C,KAAK2xB,EAAKjuB,KACvBQ,EAAQytB,EAAIjuB,GACZ5E,KAAKgG,QAAQpB,GAAOQ,GAEtB,IAAKR,KAAOq7C,EACLF,EAAQ7+C,KAAK++C,EAAMr7C,KACxBQ,EAAQ66C,EAAKr7C,GACb5E,KAAKgG,QAAQpB,GAAOQ,GAElBpF,KAAKgG,QAAQgtC,QACfhzC,KAAKgG,QAAQ+8C,SAAW/iD,KAAKgG,QAAQo6C,QAAU,MAE7CpgD,KAAKgG,QAAQq7C,gBACVrhD,KAAKgG,QAAQg8C,oBAChBhiD,KAAKgG,QAAQg8C,kBAAoB,IAEnChiD,KAAKgG,QAAQg8C,kBAAkBgB,QAAQR,EAAWnI,YAEpDr6C,KAAKsgB,OACP,CA4RA,OArWS,SAASjG,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAuCzRirB,CAAO6kB,EAAQqT,GAoCfrT,EAAO9vC,UAAUsjD,aAAe,WAC9B,IAAIpP,EAAO9oC,EACX,IACE,OAAI5K,KAAKmjD,UAAUzhD,QAAU1B,KAAKgG,QAAQo8C,WACxC1O,EAAQ1zC,KAAKmjD,UACbnjD,KAAKmjD,UAAY,GACjBnjD,KAAKojD,UAAYpjD,KAAKojD,UAAU3P,MAAMC,GAC/B1zC,KAAKojD,UAAU/tC,UAEtBq+B,EAAQ1zC,KAAKmjD,UAAUjd,OAAO,EAAGlmC,KAAKgG,QAAQo8C,WAC9CpiD,KAAKmjD,UAAYnjD,KAAKmjD,UAAUjd,OAAOlmC,KAAKgG,QAAQo8C,UAAWpiD,KAAKmjD,UAAUzhD,QAC9E1B,KAAKojD,UAAYpjD,KAAKojD,UAAU3P,MAAMC,GAC/B+H,EAAaz7C,KAAK8iD,cAE7B,CAAE,MAAOO,GAEP,GADAz4C,EAAMy4C,GACDrjD,KAAKojD,UAAUE,UAElB,OADAtjD,KAAKojD,UAAUE,WAAY,EACpBtjD,KAAK8B,KAAK8I,EAErB,CACF,EAEA0kC,EAAO9vC,UAAUqjD,aAAe,SAASpC,EAAK77C,EAAKqD,GACjD,OAAMrD,KAAO67C,GAOLA,EAAI77C,aAAgBhD,OACxBoD,EAAey7C,EAAK77C,EAAK,CAAC67C,EAAI77C,KAEzB67C,EAAI77C,GAAKpE,KAAKyH,IAThBjI,KAAKgG,QAAQs7C,cAGTt8C,EAAey7C,EAAK77C,EAAK,CAACqD,IAF1BjD,EAAey7C,EAAK77C,EAAKqD,EAUtC,EAEAqnC,EAAO9vC,UAAU8gB,MAAQ,WACvB,IAAI8/B,EAASC,EAASkD,EAAQC,EAQKhD,EA8KnC,OArLAxgD,KAAK4C,qBACL5C,KAAKojD,UAAY9R,EAAI1qB,OAAO5mB,KAAKgG,QAAQC,OAAQ,CAC/CmB,MAAM,EACNizC,WAAW,EACXrH,MAAOhzC,KAAKgG,QAAQgtC,QAEtBhzC,KAAKojD,UAAUE,WAAY,EAC3BtjD,KAAKojD,UAAUnK,SAAoBuH,EAQhCxgD,KAPM,SAASqR,GAEd,GADAmvC,EAAM4C,UAAU5K,UACXgI,EAAM4C,UAAUE,UAEnB,OADA9C,EAAM4C,UAAUE,WAAY,EACrB9C,EAAM1+C,KAAK,QAASuP,EAE/B,GAEFrR,KAAKojD,UAAUpK,MAAQ,SAAUwH,GAC/B,OAAO,WACL,IAAKA,EAAM4C,UAAUK,MAEnB,OADAjD,EAAM4C,UAAUK,OAAQ,EACjBjD,EAAM1+C,KAAK,MAAO0+C,EAAMkD,aAEnC,CACD,CAPsB,CAOpB1jD,MACHA,KAAKojD,UAAUK,OAAQ,EACvBzjD,KAAK2jD,iBAAmB3jD,KAAKgG,QAAQo7C,gBACrCphD,KAAK0jD,aAAe,KACpBF,EAAQ,GACRpD,EAAUpgD,KAAKgG,QAAQo6C,QACvBC,EAAUrgD,KAAKgG,QAAQq6C,QACvBrgD,KAAKojD,UAAUQ,UAAY,SAAUpD,GACnC,OAAO,SAASplC,GACd,IAAIxW,EAAKqD,EAAUw4C,EAAKoD,EAAchxB,EAGtC,IAFA4tB,EAAM,CAAC,GACHJ,GAAW,IACVG,EAAMx6C,QAAQu7C,YAEjB,IAAK38C,KADLiuB,EAAMzX,EAAKwI,WAEJm8B,EAAQ7+C,KAAK2xB,EAAKjuB,KACjBw7C,KAAWK,GAASD,EAAMx6C,QAAQw7C,aACtCf,EAAIL,GAAW,CAAC,GAElBn4C,EAAWu4C,EAAMx6C,QAAQ+7C,oBAAsBQ,EAAY/B,EAAMx6C,QAAQ+7C,oBAAqB3mC,EAAKwI,WAAWhf,GAAMA,GAAOwW,EAAKwI,WAAWhf,GAC3Ii/C,EAAerD,EAAMx6C,QAAQ87C,mBAAqBS,EAAY/B,EAAMx6C,QAAQ87C,mBAAoBl9C,GAAOA,EACnG47C,EAAMx6C,QAAQw7C,WAChBhB,EAAMqC,aAAapC,EAAKoD,EAAc57C,GAEtCjD,EAAey7C,EAAIL,GAAUyD,EAAc57C,IAWjD,OAPAw4C,EAAI,SAAWD,EAAMx6C,QAAQg8C,kBAAoBO,EAAY/B,EAAMx6C,QAAQg8C,kBAAmB5mC,EAAKpa,MAAQoa,EAAKpa,KAC5Gw/C,EAAMx6C,QAAQgtC,QAChByN,EAAID,EAAMx6C,QAAQ+8C,UAAY,CAC5BpI,IAAKv/B,EAAKu/B,IACVH,MAAOp/B,EAAKo/B,QAGTgJ,EAAMhjD,KAAKigD,EACpB,CACD,CA9B0B,CA8BxBzgD,MACHA,KAAKojD,UAAUU,WAAa,SAAUtD,GACpC,OAAO,WACL,IAAIlL,EAAOyO,EAAUn/C,EAAKwW,EAAM4oC,EAAUvD,EAAKwD,EAAUC,EAAKlK,EAAGmK,EAqDjE,GApDA1D,EAAM+C,EAAMxd,MACZge,EAAWvD,EAAI,SACVD,EAAMx6C,QAAQ07C,kBAAqBlB,EAAMx6C,QAAQm8C,8BAC7C1B,EAAI,UAEK,IAAdA,EAAInL,QACNA,EAAQmL,EAAInL,aACLmL,EAAInL,OAEb0E,EAAIwJ,EAAMA,EAAM9hD,OAAS,GACrB++C,EAAIJ,GAASp8C,MAAM,WAAaqxC,GAClCyO,EAAWtD,EAAIJ,UACRI,EAAIJ,KAEPG,EAAMx6C,QAAQoB,OAChBq5C,EAAIJ,GAAWI,EAAIJ,GAASj5C,QAE1Bo5C,EAAMx6C,QAAQq0C,YAChBoG,EAAIJ,GAAWI,EAAIJ,GAAS95C,QAAQ,UAAW,KAAKa,QAEtDq5C,EAAIJ,GAAWG,EAAMx6C,QAAQi8C,gBAAkBM,EAAY/B,EAAMx6C,QAAQi8C,gBAAiBxB,EAAIJ,GAAU2D,GAAYvD,EAAIJ,GACxF,IAA5B9gD,OAAO+G,KAAKm6C,GAAK/+C,QAAgB2+C,KAAWI,IAAQD,EAAMmD,mBAC5DlD,EAAMA,EAAIJ,KAGViC,EAAQ7B,KAERA,EADoC,mBAA3BD,EAAMx6C,QAAQk8C,SACjB1B,EAAMx6C,QAAQk8C,WAEa,KAA3B1B,EAAMx6C,QAAQk8C,SAAkB1B,EAAMx6C,QAAQk8C,SAAW6B,GAGpC,MAA3BvD,EAAMx6C,QAAQy7C,YAChB0C,EAAQ,IAAO,WACb,IAAI3iD,EAAGa,EAAK0f,EAEZ,IADAA,EAAU,GACLvgB,EAAI,EAAGa,EAAMmhD,EAAM9hD,OAAQF,EAAIa,EAAKb,IACvC4Z,EAAOooC,EAAMhiD,GACbugB,EAAQvhB,KAAK4a,EAAK,UAEpB,OAAO2G,CACR,CARa,GAQR1gB,OAAO2iD,GAAUrgD,KAAK,KAC5B,WACE,IAAIiH,EACJ,IACE,OAAO61C,EAAMD,EAAMx6C,QAAQy7C,UAAU0C,EAAOnK,GAAKA,EAAEgK,GAAWvD,EAChE,CAAE,MAAO4C,GAEP,OADAz4C,EAAMy4C,EACC7C,EAAM1+C,KAAK,QAAS8I,EAC7B,CACD,CARD,IAUE41C,EAAMx6C,QAAQ07C,mBAAqBlB,EAAMx6C,QAAQw7C,YAA6B,iBAARf,EACxE,GAAKD,EAAMx6C,QAAQm8C,uBAcZ,GAAInI,EAAG,CAGZ,IAAKp1C,KAFLo1C,EAAEwG,EAAMx6C,QAAQ27C,UAAY3H,EAAEwG,EAAMx6C,QAAQ27C,WAAa,GACzDsC,EAAW,CAAC,EACAxD,EACLV,EAAQ7+C,KAAKu/C,EAAK77C,IACvBI,EAAei/C,EAAUr/C,EAAK67C,EAAI77C,IAEpCo1C,EAAEwG,EAAMx6C,QAAQ27C,UAAUnhD,KAAKyjD,UACxBxD,EAAI,SACqB,IAA5BlhD,OAAO+G,KAAKm6C,GAAK/+C,QAAgB2+C,KAAWI,IAAQD,EAAMmD,mBAC5DlD,EAAMA,EAAIJ,GAEd,OAzBEjlC,EAAO,CAAC,EACJolC,EAAMx6C,QAAQo6C,WAAWK,IAC3BrlC,EAAKolC,EAAMx6C,QAAQo6C,SAAWK,EAAID,EAAMx6C,QAAQo6C,gBACzCK,EAAID,EAAMx6C,QAAQo6C,WAEtBI,EAAMx6C,QAAQ47C,iBAAmBpB,EAAMx6C,QAAQq6C,WAAWI,IAC7DrlC,EAAKolC,EAAMx6C,QAAQq6C,SAAWI,EAAID,EAAMx6C,QAAQq6C,gBACzCI,EAAID,EAAMx6C,QAAQq6C,UAEvB9gD,OAAO6kD,oBAAoB3D,GAAK/+C,OAAS,IAC3C0Z,EAAKolC,EAAMx6C,QAAQ27C,UAAYlB,GAEjCA,EAAMrlC,EAeV,OAAIooC,EAAM9hD,OAAS,EACV8+C,EAAMqC,aAAa7I,EAAGgK,EAAUvD,IAEnCD,EAAMx6C,QAAQupC,eAChB2U,EAAMzD,EAENz7C,EADAy7C,EAAM,CAAC,EACauD,EAAUE,IAEhC1D,EAAMkD,aAAejD,EACrBD,EAAM4C,UAAUK,OAAQ,EACjBjD,EAAM1+C,KAAK,MAAO0+C,EAAMkD,cAEnC,CACD,CAjG2B,CAiGzB1jD,MACHujD,EAAS,SAAU/C,GACjB,OAAO,SAAS57B,GACd,IAAIy/B,EAAWrK,EAEf,GADAA,EAAIwJ,EAAMA,EAAM9hD,OAAS,GAcvB,OAZAs4C,EAAEqG,IAAYz7B,EACV47B,EAAMx6C,QAAQ07C,kBAAoBlB,EAAMx6C,QAAQm8C,uBAAyB3B,EAAMx6C,QAAQ47C,kBAAoBpB,EAAMx6C,QAAQ67C,mBAAyD,KAApCj9B,EAAKre,QAAQ,OAAQ,IAAIa,UACzK4yC,EAAEwG,EAAMx6C,QAAQ27C,UAAY3H,EAAEwG,EAAMx6C,QAAQ27C,WAAa,IACzD0C,EAAY,CACV,QAAS,aAEDhE,GAAWz7B,EACjB47B,EAAMx6C,QAAQq0C,YAChBgK,EAAUhE,GAAWgE,EAAUhE,GAAS95C,QAAQ,UAAW,KAAKa,QAElE4yC,EAAEwG,EAAMx6C,QAAQ27C,UAAUnhD,KAAK6jD,IAE1BrK,CAEX,CACD,CApBQ,CAoBNh6C,MACHA,KAAKojD,UAAUG,OAASA,EACjBvjD,KAAKojD,UAAUkB,QACb,SAAS1/B,GACd,IAAIo1B,EAEJ,GADAA,EAAIuJ,EAAO3+B,GAET,OAAOo1B,EAAE1E,OAAQ,CAErB,CAEJ,EAEAhG,EAAO9vC,UAAUojD,YAAc,SAAS5uB,EAAKuwB,GAC3C,IAAI35C,EACO,MAAN25C,GAA6B,mBAAPA,IACzBvkD,KAAK2C,GAAG,OAAO,SAAS+B,GAEtB,OADA1E,KAAKsgB,QACEikC,EAAG,KAAM7/C,EAClB,IACA1E,KAAK2C,GAAG,SAAS,SAASiI,GAExB,OADA5K,KAAKsgB,QACEikC,EAAG35C,EACZ,KAEF,IAEE,MAAmB,MADnBopB,EAAMA,EAAItuB,YACF0B,QACNpH,KAAK8B,KAAK,MAAO,OACV,IAETkyB,EAAMquB,EAAI5C,SAASzrB,GACfh0B,KAAKgG,QAAQ+V,OACf/b,KAAKmjD,UAAYnvB,EACjBynB,EAAaz7C,KAAK8iD,cACX9iD,KAAKojD,WAEPpjD,KAAKojD,UAAU3P,MAAMzf,GAAK3e,QACnC,CAAE,MAAOguC,GAEP,GADAz4C,EAAMy4C,GACArjD,KAAKojD,UAAUE,YAAatjD,KAAKojD,UAAUK,MAE/C,OADAzjD,KAAK8B,KAAK,QAAS8I,GACZ5K,KAAKojD,UAAUE,WAAY,EAC7B,GAAItjD,KAAKojD,UAAUK,MACxB,MAAM74C,CAEV,CACF,EAEA0kC,EAAO9vC,UAAUgwC,mBAAqB,SAASxb,GAC7C,OAAO,IAAInW,SAAkB2iC,EAU1BxgD,KATM,SAASwhB,EAASC,GACvB,OAAO++B,EAAMoC,YAAY5uB,GAAK,SAASppB,EAAKxF,GAC1C,OAAIwF,EACK6W,EAAO7W,GAEP4W,EAAQpc,EAEnB,GACF,IATiB,IAAUo7C,CAW/B,EAEOlR,CAER,CAjUgB,CAiUdvuC,GAEHiC,EAAQ4/C,YAAc,SAAS5uB,EAAKrtB,EAAGC,GACrC,IAAI29C,EAAIv+C,EAeR,OAdS,MAALY,GACe,mBAANA,IACT29C,EAAK39C,GAEU,iBAAND,IACTX,EAAUW,KAGK,mBAANA,IACT49C,EAAK59C,GAEPX,EAAU,CAAC,GAEJ,IAAIhD,EAAQssC,OAAOtpC,GACd48C,YAAY5uB,EAAKuwB,EACjC,EAEAvhD,EAAQwsC,mBAAqB,SAASxb,EAAKrtB,GACzC,IAAIX,EAKJ,MAJiB,iBAANW,IACTX,EAAUW,GAEH,IAAI3D,EAAQssC,OAAOtpC,GACdwpC,mBAAmBxb,EACnC,CAED,GAAE9yB,KAAKlB,4BCzYR,WACE,aACA,IAAIwkD,EAEJA,EAAc,IAAInhD,OAAO,iBAEzBL,EAAQq3C,UAAY,SAASrmB,GAC3B,OAAOA,EAAI1sB,aACb,EAEAtE,EAAQyhD,mBAAqB,SAASzwB,GACpC,OAAOA,EAAI2f,OAAO,GAAGrsC,cAAgB0sB,EAAI7yB,MAAM,EACjD,EAEA6B,EAAQ0hD,YAAc,SAAS1wB,GAC7B,OAAOA,EAAIztB,QAAQi+C,EAAa,GAClC,EAEAxhD,EAAQkE,aAAe,SAAS8sB,GAI9B,OAHK7sB,MAAM6sB,KACTA,EAAMA,EAAM,GAAM,EAAI3B,SAAS2B,EAAK,IAAM2wB,WAAW3wB,IAEhDA,CACT,EAEAhxB,EAAQqE,cAAgB,SAAS2sB,GAI/B,MAHI,oBAAoB7rB,KAAK6rB,KAC3BA,EAA4B,SAAtBA,EAAI1sB,eAEL0sB,CACT,CAED,GAAE9yB,KAAKlB,8BChCR,WACE,aACA,IAAI0/C,EAASC,EAAU/4B,EAAQ47B,EAE7BzC,EAAU,CAAC,EAAEtgD,eAEfkgD,EAAW,EAAQ,OAEnBD,EAAU,EAAQ,OAElB94B,EAAS,EAAQ,OAEjB47B,EAAa,EAAQ,OAErBx/C,EAAQ28C,SAAWA,EAASA,SAE5B38C,EAAQw/C,WAAaA,EAErBx/C,EAAQ4hD,gBAAkB,SAAUjC,GAGlC,SAASiC,EAAgB99B,GACvB9mB,KAAK8mB,QAAUA,CACjB,CAEA,OAtBS,SAASzM,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAgBzRirB,CAAOm6B,EAQNxzC,OAFMwzC,CAER,CATyB,GAW1B5hD,EAAQg9C,QAAUN,EAAQM,QAE1Bh9C,EAAQssC,OAAS1oB,EAAO0oB,OAExBtsC,EAAQ4/C,YAAch8B,EAAOg8B,YAE7B5/C,EAAQwsC,mBAAqB5oB,EAAO4oB,kBAErC,GAAEtuC,KAAKlB,0BCrCR,WACE+C,EAAOC,QAAU,CACf6hD,aAAc,EACdC,UAAW,EACXC,UAAW,EACXC,SAAU,EACVC,YAAa,GACbC,uBAAwB,GAG3B,GAAEhkD,KAAKlB,0BCVR,WACE+C,EAAOC,QAAU,CACfmiD,QAAS,EACTC,UAAW,EACXC,KAAM,EACNC,MAAO,EACPC,gBAAiB,EACjBC,kBAAmB,EACnBC,sBAAuB,EACvBC,QAAS,EACTC,SAAU,EACVC,QAAS,GACTC,iBAAkB,GAClBC,oBAAqB,GACrBC,YAAa,IACbC,IAAK,IACLC,qBAAsB,IACtBC,mBAAoB,IACpBC,MAAO,IAGV,GAAEjlD,KAAKlB,0BCrBR,WACE,IAAI0xB,EAAQ00B,EAAUzhD,EAAS29C,EAAS+D,EAAYC,EAAUC,EAC5DplD,EAAQ,GAAGA,MACX4+C,EAAU,CAAC,EAAEtgD,eAEfiyB,EAAS,WACP,IAAIlwB,EAAGoD,EAAKvC,EAAKsa,EAAQE,EAAS5G,EAElC,GADAA,EAAS3T,UAAU,GAAIua,EAAU,GAAKva,UAAUZ,OAASP,EAAMD,KAAKoB,UAAW,GAAK,GAChF+jD,EAAW9mD,OAAOmyB,QACpBnyB,OAAOmyB,OAAOjvB,MAAM,KAAMH,gBAE1B,IAAKd,EAAI,EAAGa,EAAMwa,EAAQnb,OAAQF,EAAIa,EAAKb,IAEzC,GAAc,OADdmb,EAASE,EAAQrb,IAEf,IAAKoD,KAAO+X,EACLojC,EAAQ7+C,KAAKyb,EAAQ/X,KAC1BqR,EAAOrR,GAAO+X,EAAO/X,IAK7B,OAAOqR,CACT,EAEAowC,EAAa,SAASG,GACpB,QAASA,GAA+C,sBAAxCjnD,OAAOC,UAAUkG,SAASxE,KAAKslD,EACjD,EAEAF,EAAW,SAASE,GAClB,IAAI3zB,EACJ,QAAS2zB,IAA+B,aAAtB3zB,SAAa2zB,IAA+B,WAAR3zB,EACxD,EAEAluB,EAAU,SAAS6hD,GACjB,OAAIH,EAAWzkD,MAAM+C,SACZ/C,MAAM+C,QAAQ6hD,GAE0B,mBAAxCjnD,OAAOC,UAAUkG,SAASxE,KAAKslD,EAE1C,EAEAlE,EAAU,SAASkE,GACjB,IAAI5hD,EACJ,GAAID,EAAQ6hD,GACV,OAAQA,EAAI9kD,OAEZ,IAAKkD,KAAO4hD,EACV,GAAKzG,EAAQ7+C,KAAKslD,EAAK5hD,GACvB,OAAO,EAET,OAAO,CAEX,EAEA2hD,EAAgB,SAASC,GACvB,IAAIvD,EAAMwD,EACV,OAAOH,EAASE,KAASC,EAAQlnD,OAAO68C,eAAeoK,MAAUvD,EAAOwD,EAAM7lC,cAAiC,mBAATqiC,GAAyBA,aAAgBA,GAAU3wC,SAAS9S,UAAUkG,SAASxE,KAAK+hD,KAAU3wC,SAAS9S,UAAUkG,SAASxE,KAAK3B,OACvO,EAEA6mD,EAAW,SAAS3F,GAClB,OAAI4F,EAAW5F,EAAIiG,SACVjG,EAAIiG,UAEJjG,CAEX,EAEA19C,EAAOC,QAAQ0uB,OAASA,EAExB3uB,EAAOC,QAAQqjD,WAAaA,EAE5BtjD,EAAOC,QAAQsjD,SAAWA,EAE1BvjD,EAAOC,QAAQ2B,QAAUA,EAEzB5B,EAAOC,QAAQs/C,QAAUA,EAEzBv/C,EAAOC,QAAQujD,cAAgBA,EAE/BxjD,EAAOC,QAAQojD,SAAWA,CAE3B,GAAEllD,KAAKlB,0BCjFR,WACE+C,EAAOC,QAAU,CACf2jD,KAAM,EACNC,QAAS,EACTC,UAAW,EACXC,SAAU,EAGb,GAAE5lD,KAAKlB,8BCRR,WACE,IAAI+mD,EAEJA,EAAW,EAAQ,OAET,EAAQ,OAElBhkD,EAAOC,QAAyB,WAC9B,SAASgkD,EAAazuC,EAAQvX,EAAMoE,GAMlC,GALApF,KAAKuY,OAASA,EACVvY,KAAKuY,SACPvY,KAAKgG,QAAUhG,KAAKuY,OAAOvS,QAC3BhG,KAAK8I,UAAY9I,KAAKuY,OAAOzP,WAEnB,MAAR9H,EACF,MAAM,IAAIoQ,MAAM,2BAA6BpR,KAAKinD,UAAUjmD,IAE9DhB,KAAKgB,KAAOhB,KAAK8I,UAAU9H,KAAKA,GAChChB,KAAKoF,MAAQpF,KAAK8I,UAAUo+C,SAAS9hD,GACrCpF,KAAK0L,KAAOq7C,EAAS3B,UACrBplD,KAAKmnD,MAAO,EACZnnD,KAAKonD,eAAiB,IACxB,CAgFA,OA9EA7nD,OAAOyF,eAAegiD,EAAaxnD,UAAW,WAAY,CACxD2R,IAAK,WACH,OAAOnR,KAAK0L,IACd,IAGFnM,OAAOyF,eAAegiD,EAAaxnD,UAAW,eAAgB,CAC5D2R,IAAK,WACH,OAAOnR,KAAKuY,MACd,IAGFhZ,OAAOyF,eAAegiD,EAAaxnD,UAAW,cAAe,CAC3D2R,IAAK,WACH,OAAOnR,KAAKoF,KACd,EACA+a,IAAK,SAAS/a,GACZ,OAAOpF,KAAKoF,MAAQA,GAAS,EAC/B,IAGF7F,OAAOyF,eAAegiD,EAAaxnD,UAAW,eAAgB,CAC5D2R,IAAK,WACH,MAAO,EACT,IAGF5R,OAAOyF,eAAegiD,EAAaxnD,UAAW,SAAU,CACtD2R,IAAK,WACH,MAAO,EACT,IAGF5R,OAAOyF,eAAegiD,EAAaxnD,UAAW,YAAa,CACzD2R,IAAK,WACH,OAAOnR,KAAKgB,IACd,IAGFzB,OAAOyF,eAAegiD,EAAaxnD,UAAW,YAAa,CACzD2R,IAAK,WACH,OAAO,CACT,IAGF61C,EAAaxnD,UAAU6nD,MAAQ,WAC7B,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEAgnD,EAAaxnD,UAAUkG,SAAW,SAASM,GACzC,OAAOhG,KAAKgG,QAAQshD,OAAOxjC,UAAU9jB,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC/E,EAEAghD,EAAaxnD,UAAUynD,UAAY,SAASjmD,GAE1C,OAAY,OADZA,EAAOA,GAAQhB,KAAKgB,MAEX,YAAchB,KAAKuY,OAAOvX,KAAO,IAEjC,eAAiBA,EAAO,eAAiBhB,KAAKuY,OAAOvX,KAAO,GAEvE,EAEAgmD,EAAaxnD,UAAUgoD,YAAc,SAASpsC,GAC5C,OAAIA,EAAKqsC,eAAiBznD,KAAKynD,cAG3BrsC,EAAK1b,SAAWM,KAAKN,QAGrB0b,EAAKssC,YAAc1nD,KAAK0nD,WAGxBtsC,EAAKhW,QAAUpF,KAAKoF,KAI1B,EAEO4hD,CAER,CAjG+B,EAmGjC,GAAE9lD,KAAKlB,8BC1GR,WACE,IAAI+mD,EAAoBY,EAEtB5H,EAAU,CAAC,EAAEtgD,eAEfsnD,EAAW,EAAQ,OAEnBY,EAAmB,EAAQ,OAE3B5kD,EAAOC,QAAqB,SAAU2/C,GAGpC,SAASiF,EAASrvC,EAAQqM,GAExB,GADAgjC,EAAS1E,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC9B,MAARqM,EACF,MAAM,IAAIxT,MAAM,uBAAyBpR,KAAKinD,aAEhDjnD,KAAKgB,KAAO,iBACZhB,KAAK0L,KAAOq7C,EAASzB,MACrBtlD,KAAKoF,MAAQpF,KAAK8I,UAAUwsC,MAAM1wB,EACpC,CAUA,OA5BS,SAASvK,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAOm9B,EAAUjF,GAYjBiF,EAASpoD,UAAU6nD,MAAQ,WACzB,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEA4nD,EAASpoD,UAAUkG,SAAW,SAASM,GACrC,OAAOhG,KAAKgG,QAAQshD,OAAOhS,MAAMt1C,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC3E,EAEO4hD,CAER,CAvB2B,CAuBzBD,EAEJ,GAAEzmD,KAAKlB,8BClCR,WACE,IAAsB6nD,EAEpB9H,EAAU,CAAC,EAAEtgD,eAEfooD,EAAU,EAAQ,OAElB9kD,EAAOC,QAA6B,SAAU2/C,GAG5C,SAASgF,EAAiBpvC,GACxBovC,EAAiBzE,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAClDvY,KAAKoF,MAAQ,EACf,CA4DA,OAvES,SAASiV,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAMzRirB,CAAOk9B,EAAkBhF,GAOzBpjD,OAAOyF,eAAe2iD,EAAiBnoD,UAAW,OAAQ,CACxD2R,IAAK,WACH,OAAOnR,KAAKoF,KACd,EACA+a,IAAK,SAAS/a,GACZ,OAAOpF,KAAKoF,MAAQA,GAAS,EAC/B,IAGF7F,OAAOyF,eAAe2iD,EAAiBnoD,UAAW,SAAU,CAC1D2R,IAAK,WACH,OAAOnR,KAAKoF,MAAM1D,MACpB,IAGFnC,OAAOyF,eAAe2iD,EAAiBnoD,UAAW,cAAe,CAC/D2R,IAAK,WACH,OAAOnR,KAAKoF,KACd,EACA+a,IAAK,SAAS/a,GACZ,OAAOpF,KAAKoF,MAAQA,GAAS,EAC/B,IAGFuiD,EAAiBnoD,UAAU6nD,MAAQ,WACjC,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEA2nD,EAAiBnoD,UAAUsoD,cAAgB,SAASC,EAAQje,GAC1D,MAAM,IAAI14B,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAU,EAAiBnoD,UAAUwoD,WAAa,SAASC,GAC/C,MAAM,IAAI72C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAU,EAAiBnoD,UAAU0oD,WAAa,SAASH,EAAQE,GACvD,MAAM,IAAI72C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAU,EAAiBnoD,UAAU2oD,WAAa,SAASJ,EAAQje,GACvD,MAAM,IAAI14B,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAU,EAAiBnoD,UAAU4oD,YAAc,SAASL,EAAQje,EAAOme,GAC/D,MAAM,IAAI72C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAU,EAAiBnoD,UAAUgoD,YAAc,SAASpsC,GAChD,QAAKusC,EAAiBzE,UAAUsE,YAAY/kD,MAAMzC,KAAMsC,WAAWklD,YAAYpsC,IAG3EA,EAAKtM,OAAS9O,KAAK8O,IAIzB,EAEO64C,CAER,CApEmC,CAoEjCE,EAEJ,GAAE3mD,KAAKlB,8BC7ER,WACE,IAAI+mD,EAAUY,EAEZ5H,EAAU,CAAC,EAAEtgD,eAEfsnD,EAAW,EAAQ,OAEnBY,EAAmB,EAAQ,OAE3B5kD,EAAOC,QAAuB,SAAU2/C,GAGtC,SAAS0F,EAAW9vC,EAAQqM,GAE1B,GADAyjC,EAAWnF,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAChC,MAARqM,EACF,MAAM,IAAIxT,MAAM,yBAA2BpR,KAAKinD,aAElDjnD,KAAKgB,KAAO,WACZhB,KAAK0L,KAAOq7C,EAASrB,QACrB1lD,KAAKoF,MAAQpF,KAAK8I,UAAU0sC,QAAQ5wB,EACtC,CAUA,OA5BS,SAASvK,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAO49B,EAAY1F,GAYnB0F,EAAW7oD,UAAU6nD,MAAQ,WAC3B,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEAqoD,EAAW7oD,UAAUkG,SAAW,SAASM,GACvC,OAAOhG,KAAKgG,QAAQshD,OAAO9R,QAAQx1C,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC7E,EAEOqiD,CAER,CAvB6B,CAuB3BV,EAEJ,GAAEzmD,KAAKlB,8BClCR,WACE,IAAyBsoD,EAAoBC,EAE7CD,EAAqB,EAAQ,OAE7BC,EAAmB,EAAQ,OAE3BxlD,EAAOC,QAAgC,WACrC,SAASwlD,IAEPxoD,KAAKyoD,cAAgB,CACnB,kBAAkB,EAClB,kBAAkB,EAClB,UAAY,EACZ,0BAA0B,EAC1B,8BAA8B,EAC9B,UAAY,EACZ,gBAAiB,IAAIH,EACrB,SAAW,EACX,sBAAsB,EACtB,YAAc,EACd,0BAA0B,EAC1B,wBAAwB,EACxB,kBAAmB,GACnB,cAAe,GACf,wBAAwB,EACxB,UAAY,EACZ,eAAe,GAEjBtoD,KAAKoL,OAAsB7L,OAAOqB,OAAOZ,KAAKyoD,cAChD,CA4BA,OA1BAlpD,OAAOyF,eAAewjD,EAAoBhpD,UAAW,iBAAkB,CACrE2R,IAAK,WACH,OAAO,IAAIo3C,EAAiBhpD,OAAO+G,KAAKtG,KAAKyoD,eAC/C,IAGFD,EAAoBhpD,UAAUkpD,aAAe,SAAS1nD,GACpD,OAAIhB,KAAKoL,OAAO3L,eAAeuB,GACtBhB,KAAKoL,OAAOpK,GAEZ,IAEX,EAEAwnD,EAAoBhpD,UAAUmpD,gBAAkB,SAAS3nD,EAAMoE,GAC7D,OAAO,CACT,EAEAojD,EAAoBhpD,UAAUopD,aAAe,SAAS5nD,EAAMoE,GAC1D,OAAa,MAATA,EACKpF,KAAKoL,OAAOpK,GAAQoE,SAEbpF,KAAKoL,OAAOpK,EAE9B,EAEOwnD,CAER,CArDsC,EAuDxC,GAAEtnD,KAAKlB,0BC9DR,WAGE+C,EAAOC,QAA+B,WACpC,SAASslD,IAAsB,CAM/B,OAJAA,EAAmB9oD,UAAUqpD,YAAc,SAASx3C,GAClD,MAAM,IAAID,MAAMC,EAClB,EAEOi3C,CAER,CATqC,EAWvC,GAAEpnD,KAAKlB,0BCdR,WAGE+C,EAAOC,QAAiC,WACtC,SAAS8lD,IAAwB,CAsBjC,OApBAA,EAAqBtpD,UAAUupD,WAAa,SAASC,EAASC,GAC5D,OAAO,CACT,EAEAH,EAAqBtpD,UAAU0pD,mBAAqB,SAASC,EAAeC,EAAUC,GACpF,MAAM,IAAIj4C,MAAM,sCAClB,EAEA03C,EAAqBtpD,UAAU8pD,eAAiB,SAAS7B,EAAc0B,EAAezT,GACpF,MAAM,IAAItkC,MAAM,sCAClB,EAEA03C,EAAqBtpD,UAAU+pD,mBAAqB,SAAS99C,GAC3D,MAAM,IAAI2F,MAAM,sCAClB,EAEA03C,EAAqBtpD,UAAUgqD,WAAa,SAASR,EAASC,GAC5D,MAAM,IAAI73C,MAAM,sCAClB,EAEO03C,CAER,CAzBuC,EA2BzC,GAAE5nD,KAAKlB,0BC9BR,WAGE+C,EAAOC,QAA6B,WAClC,SAASulD,EAAiB/vB,GACxBx4B,KAAKw4B,IAAMA,GAAO,EACpB,CAgBA,OAdAj5B,OAAOyF,eAAeujD,EAAiB/oD,UAAW,SAAU,CAC1D2R,IAAK,WACH,OAAOnR,KAAKw4B,IAAI92B,MAClB,IAGF6mD,EAAiB/oD,UAAU0I,KAAO,SAASgB,GACzC,OAAOlJ,KAAKw4B,IAAItvB,IAAU,IAC5B,EAEAq/C,EAAiB/oD,UAAU4xB,SAAW,SAAS4C,GAC7C,OAAkC,IAA3Bh0B,KAAKw4B,IAAIl0B,QAAQ0vB,EAC1B,EAEOu0B,CAER,CArBmC,EAuBrC,GAAErnD,KAAKlB,8BC1BR,WACE,IAAI+mD,EAAyBc,EAE3B9H,EAAU,CAAC,EAAEtgD,eAEfooD,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBhkD,EAAOC,QAA0B,SAAU2/C,GAGzC,SAAS8G,EAAclxC,EAAQmxC,EAAaC,EAAeC,EAAeC,EAAkBC,GAE1F,GADAL,EAAcvG,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC5B,MAAfmxC,EACF,MAAM,IAAIt4C,MAAM,6BAA+BpR,KAAKinD,aAEtD,GAAqB,MAAjB0C,EACF,MAAM,IAAIv4C,MAAM,+BAAiCpR,KAAKinD,UAAUyC,IAElE,IAAKE,EACH,MAAM,IAAIx4C,MAAM,+BAAiCpR,KAAKinD,UAAUyC,IAElE,IAAKG,EACH,MAAM,IAAIz4C,MAAM,kCAAoCpR,KAAKinD,UAAUyC,IAKrE,GAHsC,IAAlCG,EAAiBvlD,QAAQ,OAC3BulD,EAAmB,IAAMA,IAEtBA,EAAiB5lD,MAAM,0CAC1B,MAAM,IAAImN,MAAM,kFAAoFpR,KAAKinD,UAAUyC,IAErH,GAAII,IAAiBD,EAAiB5lD,MAAM,uBAC1C,MAAM,IAAImN,MAAM,qDAAuDpR,KAAKinD,UAAUyC,IAExF1pD,KAAK0pD,YAAc1pD,KAAK8I,UAAU9H,KAAK0oD,GACvC1pD,KAAK0L,KAAOq7C,EAASd,qBACrBjmD,KAAK2pD,cAAgB3pD,KAAK8I,UAAU9H,KAAK2oD,GACzC3pD,KAAK4pD,cAAgB5pD,KAAK8I,UAAUihD,WAAWH,GAC3CE,IACF9pD,KAAK8pD,aAAe9pD,KAAK8I,UAAUkhD,cAAcF,IAEnD9pD,KAAK6pD,iBAAmBA,CAC1B,CAMA,OA/CS,SAASxvC,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAOg/B,EAAe9G,GAmCtB8G,EAAcjqD,UAAUkG,SAAW,SAASM,GAC1C,OAAOhG,KAAKgG,QAAQshD,OAAO2C,WAAWjqD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAChF,EAEOyjD,CAER,CA1CgC,CA0C9B5B,EAEJ,GAAE3mD,KAAKlB,8BCrDR,WACE,IAAI+mD,EAAyBc,EAE3B9H,EAAU,CAAC,EAAEtgD,eAEfooD,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBhkD,EAAOC,QAA0B,SAAU2/C,GAGzC,SAASuH,EAAc3xC,EAAQvX,EAAMoE,GAEnC,GADA8kD,EAAchH,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GACnC,MAARvX,EACF,MAAM,IAAIoQ,MAAM,6BAA+BpR,KAAKinD,aAEjD7hD,IACHA,EAAQ,aAENxD,MAAM+C,QAAQS,KAChBA,EAAQ,IAAMA,EAAMzB,KAAK,KAAO,KAElC3D,KAAKgB,KAAOhB,KAAK8I,UAAU9H,KAAKA,GAChChB,KAAK0L,KAAOq7C,EAASb,mBACrBlmD,KAAKoF,MAAQpF,KAAK8I,UAAUqhD,gBAAgB/kD,EAC9C,CAMA,OA9BS,SAASiV,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAOy/B,EAAevH,GAkBtBuH,EAAc1qD,UAAUkG,SAAW,SAASM,GAC1C,OAAOhG,KAAKgG,QAAQshD,OAAO8C,WAAWpqD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAChF,EAEOkkD,CAER,CAzBgC,CAyB9BrC,EAEJ,GAAE3mD,KAAKlB,6BCpCR,WACE,IAAI+mD,EAAwBc,EAASvB,EAEnCvG,EAAU,CAAC,EAAEtgD,eAEf6mD,EAAW,kBAEXuB,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBhkD,EAAOC,QAAyB,SAAU2/C,GAGxC,SAAS0H,EAAa9xC,EAAQ+xC,EAAItpD,EAAMoE,GAEtC,GADAilD,EAAanH,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAClC,MAARvX,EACF,MAAM,IAAIoQ,MAAM,4BAA8BpR,KAAKinD,UAAUjmD,IAE/D,GAAa,MAAToE,EACF,MAAM,IAAIgM,MAAM,6BAA+BpR,KAAKinD,UAAUjmD,IAKhE,GAHAhB,KAAKsqD,KAAOA,EACZtqD,KAAKgB,KAAOhB,KAAK8I,UAAU9H,KAAKA,GAChChB,KAAK0L,KAAOq7C,EAASvB,kBAChBc,EAASlhD,GAGP,CACL,IAAKA,EAAMmlD,QAAUnlD,EAAMolD,MACzB,MAAM,IAAIp5C,MAAM,yEAA2EpR,KAAKinD,UAAUjmD,IAE5G,GAAIoE,EAAMmlD,QAAUnlD,EAAMolD,MACxB,MAAM,IAAIp5C,MAAM,+DAAiEpR,KAAKinD,UAAUjmD,IAYlG,GAVAhB,KAAKyqD,UAAW,EACG,MAAfrlD,EAAMmlD,QACRvqD,KAAKuqD,MAAQvqD,KAAK8I,UAAU4hD,SAAStlD,EAAMmlD,QAE1B,MAAfnlD,EAAMolD,QACRxqD,KAAKwqD,MAAQxqD,KAAK8I,UAAU6hD,SAASvlD,EAAMolD,QAE1B,MAAfplD,EAAMwlD,QACR5qD,KAAK4qD,MAAQ5qD,KAAK8I,UAAU+hD,SAASzlD,EAAMwlD,QAEzC5qD,KAAKsqD,IAAMtqD,KAAK4qD,MAClB,MAAM,IAAIx5C,MAAM,8DAAgEpR,KAAKinD,UAAUjmD,GAEnG,MAtBEhB,KAAKoF,MAAQpF,KAAK8I,UAAUgiD,eAAe1lD,GAC3CpF,KAAKyqD,UAAW,CAsBpB,CA0CA,OAzFS,SAASpwC,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAUzRirB,CAAO4/B,EAAc1H,GAuCrBpjD,OAAOyF,eAAeqlD,EAAa7qD,UAAW,WAAY,CACxD2R,IAAK,WACH,OAAOnR,KAAKuqD,KACd,IAGFhrD,OAAOyF,eAAeqlD,EAAa7qD,UAAW,WAAY,CACxD2R,IAAK,WACH,OAAOnR,KAAKwqD,KACd,IAGFjrD,OAAOyF,eAAeqlD,EAAa7qD,UAAW,eAAgB,CAC5D2R,IAAK,WACH,OAAOnR,KAAK4qD,OAAS,IACvB,IAGFrrD,OAAOyF,eAAeqlD,EAAa7qD,UAAW,gBAAiB,CAC7D2R,IAAK,WACH,OAAO,IACT,IAGF5R,OAAOyF,eAAeqlD,EAAa7qD,UAAW,cAAe,CAC3D2R,IAAK,WACH,OAAO,IACT,IAGF5R,OAAOyF,eAAeqlD,EAAa7qD,UAAW,aAAc,CAC1D2R,IAAK,WACH,OAAO,IACT,IAGFk5C,EAAa7qD,UAAUkG,SAAW,SAASM,GACzC,OAAOhG,KAAKgG,QAAQshD,OAAOyD,UAAU/qD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC/E,EAEOqkD,CAER,CAlF+B,CAkF7BxC,EAEJ,GAAE3mD,KAAKlB,8BC/FR,WACE,IAAI+mD,EAA0Bc,EAE5B9H,EAAU,CAAC,EAAEtgD,eAEfooD,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBhkD,EAAOC,QAA2B,SAAU2/C,GAG1C,SAASqI,EAAezyC,EAAQvX,EAAMoE,GAEpC,GADA4lD,EAAe9H,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GACpC,MAARvX,EACF,MAAM,IAAIoQ,MAAM,8BAAgCpR,KAAKinD,UAAUjmD,IAEjE,IAAKoE,EAAMmlD,QAAUnlD,EAAMolD,MACzB,MAAM,IAAIp5C,MAAM,qEAAuEpR,KAAKinD,UAAUjmD,IAExGhB,KAAKgB,KAAOhB,KAAK8I,UAAU9H,KAAKA,GAChChB,KAAK0L,KAAOq7C,EAASjB,oBACF,MAAf1gD,EAAMmlD,QACRvqD,KAAKuqD,MAAQvqD,KAAK8I,UAAU4hD,SAAStlD,EAAMmlD,QAE1B,MAAfnlD,EAAMolD,QACRxqD,KAAKwqD,MAAQxqD,KAAK8I,UAAU6hD,SAASvlD,EAAMolD,OAE/C,CAkBA,OA5CS,SAASnwC,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAOugC,EAAgBrI,GAoBvBpjD,OAAOyF,eAAegmD,EAAexrD,UAAW,WAAY,CAC1D2R,IAAK,WACH,OAAOnR,KAAKuqD,KACd,IAGFhrD,OAAOyF,eAAegmD,EAAexrD,UAAW,WAAY,CAC1D2R,IAAK,WACH,OAAOnR,KAAKwqD,KACd,IAGFQ,EAAexrD,UAAUkG,SAAW,SAASM,GAC3C,OAAOhG,KAAKgG,QAAQshD,OAAO2D,YAAYjrD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GACjF,EAEOglD,CAER,CAvCiC,CAuC/BnD,EAEJ,GAAE3mD,KAAKlB,8BClDR,WACE,IAAI+mD,EAA0Bc,EAASvB,EAErCvG,EAAU,CAAC,EAAEtgD,eAEf6mD,EAAW,kBAEXuB,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBhkD,EAAOC,QAA2B,SAAU2/C,GAG1C,SAASuI,EAAe3yC,EAAQ0wC,EAASkC,EAAUC,GACjD,IAAIv4B,EACJq4B,EAAehI,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC5C+tC,EAAS2C,KACIA,GAAfp2B,EAAMo2B,GAAuBA,QAASkC,EAAWt4B,EAAIs4B,SAAUC,EAAav4B,EAAIu4B,YAE7EnC,IACHA,EAAU,OAEZjpD,KAAK0L,KAAOq7C,EAAShB,YACrB/lD,KAAKipD,QAAUjpD,KAAK8I,UAAUuiD,WAAWpC,GACzB,MAAZkC,IACFnrD,KAAKmrD,SAAWnrD,KAAK8I,UAAUwiD,YAAYH,IAE3B,MAAdC,IACFprD,KAAKorD,WAAaprD,KAAK8I,UAAUyiD,cAAcH,GAEnD,CAMA,OAnCS,SAAS/wC,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAUzRirB,CAAOygC,EAAgBvI,GAqBvBuI,EAAe1rD,UAAUkG,SAAW,SAASM,GAC3C,OAAOhG,KAAKgG,QAAQshD,OAAOkE,YAAYxrD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GACjF,EAEOklD,CAER,CA5BiC,CA4B/BrD,EAEJ,GAAE3mD,KAAKlB,8BCzCR,WACE,IAAI+mD,EAAU0C,EAAeS,EAAeG,EAAcW,EAA4BS,EAAiB5D,EAASvB,EAE9GvG,EAAU,CAAC,EAAEtgD,eAEf6mD,EAAW,kBAEXuB,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnB0C,EAAgB,EAAQ,OAExBY,EAAe,EAAQ,MAEvBH,EAAgB,EAAQ,OAExBc,EAAiB,EAAQ,OAEzBS,EAAkB,EAAQ,OAE1B1oD,EAAOC,QAAuB,SAAU2/C,GAGtC,SAAS+I,EAAWnzC,EAAQgyC,EAAOC,GACjC,IAAInwC,EAAO7Y,EAAGa,EAAKwwB,EAAK84B,EAAMC,EAG9B,GAFAF,EAAWxI,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC5CvY,KAAK0L,KAAOq7C,EAASnB,QACjBrtC,EAAOkH,SAET,IAAKje,EAAI,EAAGa,GADZwwB,EAAMta,EAAOkH,UACS/d,OAAQF,EAAIa,EAAKb,IAErC,IADA6Y,EAAQwY,EAAIrxB,IACFkK,OAASq7C,EAAS5B,QAAS,CACnCnlD,KAAKgB,KAAOqZ,EAAMrZ,KAClB,KACF,CAGJhB,KAAK6rD,eAAiBtzC,EAClB+tC,EAASiE,KACGA,GAAdoB,EAAOpB,GAAoBA,MAAOC,EAAQmB,EAAKnB,OAEpC,MAATA,IACqBA,GAAvBoB,EAAO,CAACrB,EAAOC,IAAqB,GAAID,EAAQqB,EAAK,IAE1C,MAATrB,IACFvqD,KAAKuqD,MAAQvqD,KAAK8I,UAAU4hD,SAASH,IAE1B,MAATC,IACFxqD,KAAKwqD,MAAQxqD,KAAK8I,UAAU6hD,SAASH,GAEzC,CAiIA,OAlLS,SAASnwC,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAoBzRirB,CAAOihC,EAAY/I,GA+BnBpjD,OAAOyF,eAAe0mD,EAAWlsD,UAAW,WAAY,CACtD2R,IAAK,WACH,IAAIkJ,EAAO7Y,EAAGa,EAAKuY,EAAOiY,EAG1B,IAFAjY,EAAQ,CAAC,EAEJpZ,EAAI,EAAGa,GADZwwB,EAAM7yB,KAAKyf,UACW/d,OAAQF,EAAIa,EAAKb,KACrC6Y,EAAQwY,EAAIrxB,IACDkK,OAASq7C,EAASvB,mBAAuBnrC,EAAMiwC,KACxD1vC,EAAMP,EAAMrZ,MAAQqZ,GAGxB,OAAO,IAAIoxC,EAAgB7wC,EAC7B,IAGFrb,OAAOyF,eAAe0mD,EAAWlsD,UAAW,YAAa,CACvD2R,IAAK,WACH,IAAIkJ,EAAO7Y,EAAGa,EAAKuY,EAAOiY,EAG1B,IAFAjY,EAAQ,CAAC,EAEJpZ,EAAI,EAAGa,GADZwwB,EAAM7yB,KAAKyf,UACW/d,OAAQF,EAAIa,EAAKb,KACrC6Y,EAAQwY,EAAIrxB,IACFkK,OAASq7C,EAASjB,sBAC1BlrC,EAAMP,EAAMrZ,MAAQqZ,GAGxB,OAAO,IAAIoxC,EAAgB7wC,EAC7B,IAGFrb,OAAOyF,eAAe0mD,EAAWlsD,UAAW,WAAY,CACtD2R,IAAK,WACH,OAAOnR,KAAKuqD,KACd,IAGFhrD,OAAOyF,eAAe0mD,EAAWlsD,UAAW,WAAY,CACtD2R,IAAK,WACH,OAAOnR,KAAKwqD,KACd,IAGFjrD,OAAOyF,eAAe0mD,EAAWlsD,UAAW,iBAAkB,CAC5D2R,IAAK,WACH,MAAM,IAAIC,MAAM,sCAAwCpR,KAAKinD,YAC/D,IAGFyE,EAAWlsD,UAAU43B,QAAU,SAASp2B,EAAMoE,GAC5C,IAAIiV,EAGJ,OAFAA,EAAQ,IAAI6vC,EAAclqD,KAAMgB,EAAMoE,GACtCpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA0rD,EAAWlsD,UAAUssD,QAAU,SAASpC,EAAaC,EAAeC,EAAeC,EAAkBC,GACnG,IAAIzvC,EAGJ,OAFAA,EAAQ,IAAIovC,EAAczpD,KAAM0pD,EAAaC,EAAeC,EAAeC,EAAkBC,GAC7F9pD,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA0rD,EAAWlsD,UAAUw4C,OAAS,SAASh3C,EAAMoE,GAC3C,IAAIiV,EAGJ,OAFAA,EAAQ,IAAIgwC,EAAarqD,MAAM,EAAOgB,EAAMoE,GAC5CpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA0rD,EAAWlsD,UAAUusD,QAAU,SAAS/qD,EAAMoE,GAC5C,IAAIiV,EAGJ,OAFAA,EAAQ,IAAIgwC,EAAarqD,MAAM,EAAMgB,EAAMoE,GAC3CpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA0rD,EAAWlsD,UAAUwsD,SAAW,SAAShrD,EAAMoE,GAC7C,IAAIiV,EAGJ,OAFAA,EAAQ,IAAI2wC,EAAehrD,KAAMgB,EAAMoE,GACvCpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA0rD,EAAWlsD,UAAUkG,SAAW,SAASM,GACvC,OAAOhG,KAAKgG,QAAQshD,OAAO2E,QAAQjsD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC7E,EAEA0lD,EAAWlsD,UAAUqhD,IAAM,SAAS7/C,EAAMoE,GACxC,OAAOpF,KAAKo3B,QAAQp2B,EAAMoE,EAC5B,EAEAsmD,EAAWlsD,UAAUuhD,IAAM,SAAS2I,EAAaC,EAAeC,EAAeC,EAAkBC,GAC/F,OAAO9pD,KAAK8rD,QAAQpC,EAAaC,EAAeC,EAAeC,EAAkBC,EACnF,EAEA4B,EAAWlsD,UAAU0sD,IAAM,SAASlrD,EAAMoE,GACxC,OAAOpF,KAAKg4C,OAAOh3C,EAAMoE,EAC3B,EAEAsmD,EAAWlsD,UAAU2sD,KAAO,SAASnrD,EAAMoE,GACzC,OAAOpF,KAAK+rD,QAAQ/qD,EAAMoE,EAC5B,EAEAsmD,EAAWlsD,UAAU4sD,IAAM,SAASprD,EAAMoE,GACxC,OAAOpF,KAAKgsD,SAAShrD,EAAMoE,EAC7B,EAEAsmD,EAAWlsD,UAAUshD,GAAK,WACxB,OAAO9gD,KAAK+a,QAAU/a,KAAK6rD,cAC7B,EAEAH,EAAWlsD,UAAUgoD,YAAc,SAASpsC,GAC1C,QAAKswC,EAAWxI,UAAUsE,YAAY/kD,MAAMzC,KAAMsC,WAAWklD,YAAYpsC,IAGrEA,EAAKpa,OAAShB,KAAKgB,MAGnBoa,EAAKguC,WAAappD,KAAKopD,UAGvBhuC,EAAKiuC,WAAarpD,KAAKqpD,QAI7B,EAEOqC,CAER,CAjK6B,CAiK3B7D,EAEJ,GAAE3mD,KAAKlB,8BCxLR,WACE,IAAI+mD,EAAUyB,EAAqBM,EAAmCjB,EAASwE,EAAiBC,EAAgB/F,EAE9GxG,EAAU,CAAC,EAAEtgD,eAEf8mD,EAAgB,uBAEhBuC,EAAuB,EAAQ,OAE/BN,EAAsB,EAAQ,OAE9BX,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBuF,EAAiB,EAAQ,OAEzBD,EAAkB,EAAQ,OAE1BtpD,EAAOC,QAAwB,SAAU2/C,GAGvC,SAAS4J,EAAYvmD,GACnBumD,EAAYrJ,UAAUtiC,YAAY1f,KAAKlB,KAAM,MAC7CA,KAAKgB,KAAO,YACZhB,KAAK0L,KAAOq7C,EAASpB,SACrB3lD,KAAKwsD,YAAc,KACnBxsD,KAAKysD,UAAY,IAAIjE,EACrBxiD,IAAYA,EAAU,CAAC,GAClBA,EAAQshD,SACXthD,EAAQshD,OAAS,IAAI+E,GAEvBrsD,KAAKgG,QAAUA,EACfhG,KAAK8I,UAAY,IAAIwjD,EAAetmD,EACtC,CA0MA,OA1OS,SAASqU,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAkBzRirB,CAAO8hC,EAAa5J,GAgBpBpjD,OAAOyF,eAAeunD,EAAY/sD,UAAW,iBAAkB,CAC7D4F,MAAO,IAAI0jD,IAGbvpD,OAAOyF,eAAeunD,EAAY/sD,UAAW,UAAW,CACtD2R,IAAK,WACH,IAAIkJ,EAAO7Y,EAAGa,EAAKwwB,EAEnB,IAAKrxB,EAAI,EAAGa,GADZwwB,EAAM7yB,KAAKyf,UACW/d,OAAQF,EAAIa,EAAKb,IAErC,IADA6Y,EAAQwY,EAAIrxB,IACFkK,OAASq7C,EAASnB,QAC1B,OAAOvrC,EAGX,OAAO,IACT,IAGF9a,OAAOyF,eAAeunD,EAAY/sD,UAAW,kBAAmB,CAC9D2R,IAAK,WACH,OAAOnR,KAAK0sD,YAAc,IAC5B,IAGFntD,OAAOyF,eAAeunD,EAAY/sD,UAAW,gBAAiB,CAC5D2R,IAAK,WACH,OAAO,IACT,IAGF5R,OAAOyF,eAAeunD,EAAY/sD,UAAW,sBAAuB,CAClE2R,IAAK,WACH,OAAO,CACT,IAGF5R,OAAOyF,eAAeunD,EAAY/sD,UAAW,cAAe,CAC1D2R,IAAK,WACH,OAA6B,IAAzBnR,KAAKyf,SAAS/d,QAAgB1B,KAAKyf,SAAS,GAAG/T,OAASq7C,EAAShB,YAC5D/lD,KAAKyf,SAAS,GAAG0rC,SAEjB,IAEX,IAGF5rD,OAAOyF,eAAeunD,EAAY/sD,UAAW,gBAAiB,CAC5D2R,IAAK,WACH,OAA6B,IAAzBnR,KAAKyf,SAAS/d,QAAgB1B,KAAKyf,SAAS,GAAG/T,OAASq7C,EAAShB,aAC5B,QAAhC/lD,KAAKyf,SAAS,GAAG2rC,UAI5B,IAGF7rD,OAAOyF,eAAeunD,EAAY/sD,UAAW,aAAc,CACzD2R,IAAK,WACH,OAA6B,IAAzBnR,KAAKyf,SAAS/d,QAAgB1B,KAAKyf,SAAS,GAAG/T,OAASq7C,EAAShB,YAC5D/lD,KAAKyf,SAAS,GAAGwpC,QAEjB,KAEX,IAGF1pD,OAAOyF,eAAeunD,EAAY/sD,UAAW,MAAO,CAClD2R,IAAK,WACH,OAAOnR,KAAKwsD,WACd,IAGFjtD,OAAOyF,eAAeunD,EAAY/sD,UAAW,SAAU,CACrD2R,IAAK,WACH,OAAO,IACT,IAGF5R,OAAOyF,eAAeunD,EAAY/sD,UAAW,aAAc,CACzD2R,IAAK,WACH,OAAO,IACT,IAGF5R,OAAOyF,eAAeunD,EAAY/sD,UAAW,eAAgB,CAC3D2R,IAAK,WACH,OAAO,IACT,IAGF5R,OAAOyF,eAAeunD,EAAY/sD,UAAW,cAAe,CAC1D2R,IAAK,WACH,OAAO,IACT,IAGFo7C,EAAY/sD,UAAU86B,IAAM,SAASgtB,GACnC,IAAIqF,EAQJ,OAPAA,EAAgB,CAAC,EACZrF,EAEMf,EAAce,KACvBqF,EAAgBrF,EAChBA,EAAStnD,KAAKgG,QAAQshD,QAHtBA,EAAStnD,KAAKgG,QAAQshD,OAKjBA,EAAO7xC,SAASzV,KAAMsnD,EAAOC,cAAcoF,GACpD,EAEAJ,EAAY/sD,UAAUkG,SAAW,SAASM,GACxC,OAAOhG,KAAKgG,QAAQshD,OAAO7xC,SAASzV,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC9E,EAEAumD,EAAY/sD,UAAU29C,cAAgB,SAAShsB,GAC7C,MAAM,IAAI/f,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUotD,uBAAyB,WAC7C,MAAM,IAAIx7C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUqtD,eAAiB,SAAS/9C,GAC9C,MAAM,IAAIsC,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUstD,cAAgB,SAASh+C,GAC7C,MAAM,IAAIsC,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUutD,mBAAqB,SAASj+C,GAClD,MAAM,IAAIsC,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUwtD,4BAA8B,SAAS/2C,EAAQnH,GACnE,MAAM,IAAIsC,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUytD,gBAAkB,SAASjsD,GAC/C,MAAM,IAAIoQ,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAU0tD,sBAAwB,SAASlsD,GACrD,MAAM,IAAIoQ,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAU2tD,qBAAuB,SAASC,GACpD,MAAM,IAAIh8C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAU6tD,WAAa,SAASC,EAAc1e,GACxD,MAAM,IAAIx9B,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAU+tD,gBAAkB,SAAS9F,EAAc0B,GAC7D,MAAM,IAAI/3C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUguD,kBAAoB,SAAS/F,EAAc0B,GAC/D,MAAM,IAAI/3C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUiuD,uBAAyB,SAAShG,EAAcC,GACpE,MAAM,IAAIt2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUs1B,eAAiB,SAAS44B,GAC9C,MAAM,IAAIt8C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUmuD,UAAY,SAAShxC,GACzC,MAAM,IAAIvL,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUouD,kBAAoB,WACxC,MAAM,IAAIx8C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUquD,WAAa,SAASzyC,EAAMqsC,EAAc0B,GAC9D,MAAM,IAAI/3C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUsuD,uBAAyB,SAASC,GACtD,MAAM,IAAI38C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAUwuD,YAAc,SAASC,GAC3C,MAAM,IAAI78C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAU0uD,YAAc,WAClC,MAAM,IAAI98C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAU2uD,mBAAqB,SAASpzC,EAAMqzC,EAAY9kD,GACpE,MAAM,IAAI8H,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsF,EAAY/sD,UAAU6uD,iBAAmB,SAAStzC,EAAMqzC,EAAY9kD,GAClE,MAAM,IAAI8H,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEOsF,CAER,CA3N8B,CA2N5B1E,EAEJ,GAAE3mD,KAAKlB,8BChPR,WACE,IAAI+mD,EAAUuH,EAAatH,EAAcY,EAAUS,EAAYoB,EAAeS,EAAeG,EAAcW,EAAgBE,EAAgBQ,EAAYa,EAA4BgC,EAAYC,EAA0BC,EAAQpC,EAAiBC,EAAgBoC,EAAStI,EAAUC,EAAYC,EAAUC,EAAe1zB,EACxTktB,EAAU,CAAC,EAAEtgD,eAEfozB,EAAM,EAAQ,OAAcyzB,EAAWzzB,EAAIyzB,SAAUD,EAAaxzB,EAAIwzB,WAAYE,EAAgB1zB,EAAI0zB,cAAeH,EAAWvzB,EAAIuzB,SAEpIW,EAAW,EAAQ,OAEnBwF,EAAc,EAAQ,OAEtBgC,EAAa,EAAQ,OAErB3G,EAAW,EAAQ,OAEnBS,EAAa,EAAQ,OAErBoG,EAAS,EAAQ,MAEjBC,EAAU,EAAQ,OAElBF,EAA2B,EAAQ,OAEnCtD,EAAiB,EAAQ,OAEzBQ,EAAa,EAAQ,OAErBjC,EAAgB,EAAQ,OAExBY,EAAe,EAAQ,MAEvBH,EAAgB,EAAQ,OAExBc,EAAiB,EAAQ,OAEzBhE,EAAe,EAAQ,OAEvBsF,EAAiB,EAAQ,OAEzBD,EAAkB,EAAQ,OAE1BiC,EAAc,EAAQ,OAEtBvrD,EAAOC,QAA0B,WAC/B,SAAS2rD,EAAc3oD,EAAS4oD,EAAQC,GACtC,IAAIlC,EACJ3sD,KAAKgB,KAAO,OACZhB,KAAK0L,KAAOq7C,EAASpB,SACrB3/C,IAAYA,EAAU,CAAC,GACvB2mD,EAAgB,CAAC,EACZ3mD,EAAQshD,OAEFf,EAAcvgD,EAAQshD,UAC/BqF,EAAgB3mD,EAAQshD,OACxBthD,EAAQshD,OAAS,IAAI+E,GAHrBrmD,EAAQshD,OAAS,IAAI+E,EAKvBrsD,KAAKgG,QAAUA,EACfhG,KAAKsnD,OAASthD,EAAQshD,OACtBtnD,KAAK2sD,cAAgB3sD,KAAKsnD,OAAOC,cAAcoF,GAC/C3sD,KAAK8I,UAAY,IAAIwjD,EAAetmD,GACpChG,KAAK8uD,eAAiBF,GAAU,WAAY,EAC5C5uD,KAAK+uD,cAAgBF,GAAS,WAAY,EAC1C7uD,KAAKgvD,YAAc,KACnBhvD,KAAKivD,cAAgB,EACrBjvD,KAAKkvD,SAAW,CAAC,EACjBlvD,KAAKmvD,iBAAkB,EACvBnvD,KAAKovD,mBAAoB,EACzBpvD,KAAK+a,KAAO,IACd,CAucA,OArcA4zC,EAAcnvD,UAAU6vD,gBAAkB,SAASj0C,GACjD,IAAI2lC,EAAKuO,EAAS1rC,EAAYvJ,EAAO7Y,EAAGa,EAAKspD,EAAMC,EACnD,OAAQxwC,EAAK1P,MACX,KAAKq7C,EAASzB,MACZtlD,KAAKs1C,MAAMl6B,EAAKhW,OAChB,MACF,KAAK2hD,EAASrB,QACZ1lD,KAAKw1C,QAAQp6B,EAAKhW,OAClB,MACF,KAAK2hD,EAAS5B,QAGZ,IAAKmK,KAFL1rC,EAAa,CAAC,EACd+nC,EAAOvwC,EAAKm0C,QAELxP,EAAQ7+C,KAAKyqD,EAAM2D,KACxBvO,EAAM4K,EAAK2D,GACX1rC,EAAW0rC,GAAWvO,EAAI37C,OAE5BpF,KAAKob,KAAKA,EAAKpa,KAAM4iB,GACrB,MACF,KAAKmjC,EAASZ,MACZnmD,KAAKwvD,QACL,MACF,KAAKzI,EAASf,IACZhmD,KAAK2gD,IAAIvlC,EAAKhW,OACd,MACF,KAAK2hD,EAAS1B,KACZrlD,KAAK4kB,KAAKxJ,EAAKhW,OACf,MACF,KAAK2hD,EAAStB,sBACZzlD,KAAKyvD,YAAYr0C,EAAKnF,OAAQmF,EAAKhW,OACnC,MACF,QACE,MAAM,IAAIgM,MAAM,uDAAyDgK,EAAKwF,YAAY5f,MAG9F,IAAKQ,EAAI,EAAGa,GADZupD,EAAOxwC,EAAKqE,UACW/d,OAAQF,EAAIa,EAAKb,IACtC6Y,EAAQuxC,EAAKpqD,GACbxB,KAAKqvD,gBAAgBh1C,GACjBA,EAAM3O,OAASq7C,EAAS5B,SAC1BnlD,KAAK8gD,KAGT,OAAO9gD,IACT,EAEA2uD,EAAcnvD,UAAUgwD,MAAQ,WAC9B,OAAOxvD,IACT,EAEA2uD,EAAcnvD,UAAU4b,KAAO,SAASpa,EAAM4iB,EAAYgB,GACxD,IAAI+mC,EACJ,GAAY,MAAR3qD,EACF,MAAM,IAAIoQ,MAAM,sBAElB,GAAIpR,KAAK+a,OAA+B,IAAvB/a,KAAKivD,aACpB,MAAM,IAAI79C,MAAM,yCAA2CpR,KAAKinD,UAAUjmD,IAkB5E,OAhBAhB,KAAK0vD,cACL1uD,EAAOolD,EAASplD,GACE,MAAd4iB,IACFA,EAAa,CAAC,GAEhBA,EAAawiC,EAASxiC,GACjB0iC,EAAS1iC,KACegB,GAA3B+mC,EAAO,CAAC/nC,EAAYgB,IAAmB,GAAIhB,EAAa+nC,EAAK,IAE/D3rD,KAAKgvD,YAAc,IAAIT,EAAWvuD,KAAMgB,EAAM4iB,GAC9C5jB,KAAKgvD,YAAYvvC,UAAW,EAC5Bzf,KAAKivD,eACLjvD,KAAKkvD,SAASlvD,KAAKivD,cAAgBjvD,KAAKgvD,YAC5B,MAARpqC,GACF5kB,KAAK4kB,KAAKA,GAEL5kB,IACT,EAEA2uD,EAAcnvD,UAAU43B,QAAU,SAASp2B,EAAM4iB,EAAYgB,GAC3D,IAAIvK,EAAO7Y,EAAGa,EAAKstD,EAAmBhE,EAAM5wC,EAC5C,GAAI/a,KAAKgvD,aAAehvD,KAAKgvD,YAAYtjD,OAASq7C,EAASnB,QACzD5lD,KAAKoqD,WAAW3nD,MAAMzC,KAAMsC,gBAE5B,GAAIV,MAAM+C,QAAQ3D,IAASslD,EAAStlD,IAASqlD,EAAWrlD,GAOtD,IANA2uD,EAAoB3vD,KAAKgG,QAAQ4pD,aACjC5vD,KAAKgG,QAAQ4pD,cAAe,GAC5B70C,EAAO,IAAIwxC,EAAYvsD,KAAKgG,SAASoxB,QAAQ,cACxCA,QAAQp2B,GACbhB,KAAKgG,QAAQ4pD,aAAeD,EAEvBnuD,EAAI,EAAGa,GADZspD,EAAO5wC,EAAK0E,UACW/d,OAAQF,EAAIa,EAAKb,IACtC6Y,EAAQsxC,EAAKnqD,GACbxB,KAAKqvD,gBAAgBh1C,GACjBA,EAAM3O,OAASq7C,EAAS5B,SAC1BnlD,KAAK8gD,UAIT9gD,KAAKob,KAAKpa,EAAM4iB,EAAYgB,GAGhC,OAAO5kB,IACT,EAEA2uD,EAAcnvD,UAAUskB,UAAY,SAAS9iB,EAAMoE,GACjD,IAAIkqD,EAASpI,EACb,IAAKlnD,KAAKgvD,aAAehvD,KAAKgvD,YAAYvvC,SACxC,MAAM,IAAIrO,MAAM,4EAA8EpR,KAAKinD,UAAUjmD,IAK/G,GAHY,MAARA,IACFA,EAAOolD,EAASplD,IAEdslD,EAAStlD,GACX,IAAKsuD,KAAWtuD,EACT++C,EAAQ7+C,KAAKF,EAAMsuD,KACxBpI,EAAWlmD,EAAKsuD,GAChBtvD,KAAK8jB,UAAUwrC,EAASpI,SAGtBb,EAAWjhD,KACbA,EAAQA,EAAM3C,SAEZzC,KAAKgG,QAAQ6pD,oBAAgC,MAATzqD,EACtCpF,KAAKgvD,YAAYO,QAAQvuD,GAAQ,IAAIgmD,EAAahnD,KAAMgB,EAAM,IAC5C,MAAToE,IACTpF,KAAKgvD,YAAYO,QAAQvuD,GAAQ,IAAIgmD,EAAahnD,KAAMgB,EAAMoE,IAGlE,OAAOpF,IACT,EAEA2uD,EAAcnvD,UAAUolB,KAAO,SAASxf,GACtC,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAIszC,EAAQ1uD,KAAMoF,GACzBpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAO1iC,KAAKxJ,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GAC5FjvD,IACT,EAEA2uD,EAAcnvD,UAAU81C,MAAQ,SAASlwC,GACvC,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAIwsC,EAAS5nD,KAAMoF,GAC1BpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAOhS,MAAMl6B,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GAC7FjvD,IACT,EAEA2uD,EAAcnvD,UAAUg2C,QAAU,SAASpwC,GACzC,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAIitC,EAAWroD,KAAMoF,GAC5BpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAO9R,QAAQp6B,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GAC/FjvD,IACT,EAEA2uD,EAAcnvD,UAAUmhD,IAAM,SAASv7C,GACrC,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAIqzC,EAAOzuD,KAAMoF,GACxBpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAO3G,IAAIvlC,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GAC3FjvD,IACT,EAEA2uD,EAAcnvD,UAAUiwD,YAAc,SAASx5C,EAAQ7Q,GACrD,IAAI5D,EAAGsuD,EAAWC,EAAU1tD,EAAK+Y,EAQjC,GAPApb,KAAK0vD,cACS,MAAVz5C,IACFA,EAASmwC,EAASnwC,IAEP,MAAT7Q,IACFA,EAAQghD,EAAShhD,IAEfxD,MAAM+C,QAAQsR,GAChB,IAAKzU,EAAI,EAAGa,EAAM4T,EAAOvU,OAAQF,EAAIa,EAAKb,IACxCsuD,EAAY75C,EAAOzU,GACnBxB,KAAKyvD,YAAYK,QAEd,GAAIxJ,EAASrwC,GAClB,IAAK65C,KAAa75C,EACX8pC,EAAQ7+C,KAAK+U,EAAQ65C,KAC1BC,EAAW95C,EAAO65C,GAClB9vD,KAAKyvD,YAAYK,EAAWC,SAG1B1J,EAAWjhD,KACbA,EAAQA,EAAM3C,SAEhB2Y,EAAO,IAAIozC,EAAyBxuD,KAAMiW,EAAQ7Q,GAClDpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAO0I,sBAAsB50C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GAEtH,OAAOjvD,IACT,EAEA2uD,EAAcnvD,UAAUgsD,YAAc,SAASvC,EAASkC,EAAUC,GAChE,IAAIhwC,EAEJ,GADApb,KAAK0vD,cACD1vD,KAAKmvD,gBACP,MAAM,IAAI/9C,MAAM,yCAIlB,OAFAgK,EAAO,IAAI8vC,EAAelrD,KAAMipD,EAASkC,EAAUC,GACnDprD,KAAK4uD,OAAO5uD,KAAKsnD,OAAOkE,YAAYpwC,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GACnGjvD,IACT,EAEA2uD,EAAcnvD,UAAUk2C,QAAU,SAAS36B,EAAMwvC,EAAOC,GAEtD,GADAxqD,KAAK0vD,cACO,MAAR30C,EACF,MAAM,IAAI3J,MAAM,2BAElB,GAAIpR,KAAK+a,KACP,MAAM,IAAI3J,MAAM,yCAOlB,OALApR,KAAKgvD,YAAc,IAAItD,EAAW1rD,KAAMuqD,EAAOC,GAC/CxqD,KAAKgvD,YAAYiB,aAAel1C,EAChC/a,KAAKgvD,YAAYvvC,UAAW,EAC5Bzf,KAAKivD,eACLjvD,KAAKkvD,SAASlvD,KAAKivD,cAAgBjvD,KAAKgvD,YACjChvD,IACT,EAEA2uD,EAAcnvD,UAAU4qD,WAAa,SAASppD,EAAMoE,GAClD,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAI8uC,EAAclqD,KAAMgB,EAAMoE,GACrCpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAO8C,WAAWhvC,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GAClGjvD,IACT,EAEA2uD,EAAcnvD,UAAUssD,QAAU,SAASpC,EAAaC,EAAeC,EAAeC,EAAkBC,GACtG,IAAI1uC,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAIquC,EAAczpD,KAAM0pD,EAAaC,EAAeC,EAAeC,EAAkBC,GAC5F9pD,KAAK4uD,OAAO5uD,KAAKsnD,OAAO2C,WAAW7uC,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GAClGjvD,IACT,EAEA2uD,EAAcnvD,UAAUw4C,OAAS,SAASh3C,EAAMoE,GAC9C,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAIivC,EAAarqD,MAAM,EAAOgB,EAAMoE,GAC3CpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAOyD,UAAU3vC,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GACjGjvD,IACT,EAEA2uD,EAAcnvD,UAAUusD,QAAU,SAAS/qD,EAAMoE,GAC/C,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAIivC,EAAarqD,MAAM,EAAMgB,EAAMoE,GAC1CpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAOyD,UAAU3vC,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GACjGjvD,IACT,EAEA2uD,EAAcnvD,UAAUwsD,SAAW,SAAShrD,EAAMoE,GAChD,IAAIgW,EAIJ,OAHApb,KAAK0vD,cACLt0C,EAAO,IAAI4vC,EAAehrD,KAAMgB,EAAMoE,GACtCpF,KAAK4uD,OAAO5uD,KAAKsnD,OAAO2D,YAAY7vC,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,aAAe,GAAIjvD,KAAKivD,aAAe,GACnGjvD,IACT,EAEA2uD,EAAcnvD,UAAUshD,GAAK,WAC3B,GAAI9gD,KAAKivD,aAAe,EACtB,MAAM,IAAI79C,MAAM,oCAclB,OAZIpR,KAAKgvD,aACHhvD,KAAKgvD,YAAYvvC,SACnBzf,KAAKkwD,UAAUlwD,KAAKgvD,aAEpBhvD,KAAKmwD,SAASnwD,KAAKgvD,aAErBhvD,KAAKgvD,YAAc,MAEnBhvD,KAAKkwD,UAAUlwD,KAAKkvD,SAASlvD,KAAKivD,sBAE7BjvD,KAAKkvD,SAASlvD,KAAKivD,cAC1BjvD,KAAKivD,eACEjvD,IACT,EAEA2uD,EAAcnvD,UAAU86B,IAAM,WAC5B,KAAOt6B,KAAKivD,cAAgB,GAC1BjvD,KAAK8gD,KAEP,OAAO9gD,KAAK6uD,OACd,EAEAF,EAAcnvD,UAAUkwD,YAAc,WACpC,GAAI1vD,KAAKgvD,YAEP,OADAhvD,KAAKgvD,YAAYvvC,UAAW,EACrBzf,KAAKmwD,SAASnwD,KAAKgvD,YAE9B,EAEAL,EAAcnvD,UAAU2wD,SAAW,SAAS/0C,GAC1C,IAAI2lC,EAAKrN,EAAO1yC,EAAM2qD,EACtB,IAAKvwC,EAAKg1C,OAAQ,CAKhB,GAJKpwD,KAAK+a,MAA8B,IAAtB/a,KAAKivD,cAAsB7zC,EAAK1P,OAASq7C,EAAS5B,UAClEnlD,KAAK+a,KAAOK,GAEds4B,EAAQ,GACJt4B,EAAK1P,OAASq7C,EAAS5B,QAAS,CAIlC,IAAKnkD,KAHLhB,KAAK2sD,cAAcx5C,MAAQm7C,EAAY1H,QACvClT,EAAQ1zC,KAAKsnD,OAAO+I,OAAOj1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAAgB,IAAM7zC,EAAKpa,KACrF2qD,EAAOvwC,EAAKm0C,QAELxP,EAAQ7+C,KAAKyqD,EAAM3qD,KACxB+/C,EAAM4K,EAAK3qD,GACX0yC,GAAS1zC,KAAKsnD,OAAOxjC,UAAUi9B,EAAK/gD,KAAK2sD,cAAe3sD,KAAKivD,eAE/Dvb,IAAUt4B,EAAKqE,SAAW,IAAM,MAAQzf,KAAKsnD,OAAOgJ,QAAQl1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAC3FjvD,KAAK2sD,cAAcx5C,MAAQm7C,EAAYzH,SACzC,MACE7mD,KAAK2sD,cAAcx5C,MAAQm7C,EAAY1H,QACvClT,EAAQ1zC,KAAKsnD,OAAO+I,OAAOj1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAAgB,aAAe7zC,EAAK60C,aAC1F70C,EAAKmvC,OAASnvC,EAAKovC,MACrB9W,GAAS,YAAct4B,EAAKmvC,MAAQ,MAAQnvC,EAAKovC,MAAQ,IAChDpvC,EAAKovC,QACd9W,GAAS,YAAct4B,EAAKovC,MAAQ,KAElCpvC,EAAKqE,UACPi0B,GAAS,KACT1zC,KAAK2sD,cAAcx5C,MAAQm7C,EAAYzH,YAEvC7mD,KAAK2sD,cAAcx5C,MAAQm7C,EAAYxH,SACvCpT,GAAS,KAEXA,GAAS1zC,KAAKsnD,OAAOgJ,QAAQl1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAG9D,OADAjvD,KAAK4uD,OAAOlb,EAAO1zC,KAAKivD,cACjB7zC,EAAKg1C,QAAS,CACvB,CACF,EAEAzB,EAAcnvD,UAAU0wD,UAAY,SAAS90C,GAC3C,IAAIs4B,EACJ,IAAKt4B,EAAKm1C,SAUR,MATQ,GACRvwD,KAAK2sD,cAAcx5C,MAAQm7C,EAAYxH,SAErCpT,EADEt4B,EAAK1P,OAASq7C,EAAS5B,QACjBnlD,KAAKsnD,OAAO+I,OAAOj1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAAgB,KAAO7zC,EAAKpa,KAAO,IAAMhB,KAAKsnD,OAAOgJ,QAAQl1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAE9IjvD,KAAKsnD,OAAO+I,OAAOj1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAAgB,KAAOjvD,KAAKsnD,OAAOgJ,QAAQl1C,EAAMpb,KAAK2sD,cAAe3sD,KAAKivD,cAEtIjvD,KAAK2sD,cAAcx5C,MAAQm7C,EAAY3H,KACvC3mD,KAAK4uD,OAAOlb,EAAO1zC,KAAKivD,cACjB7zC,EAAKm1C,UAAW,CAE3B,EAEA5B,EAAcnvD,UAAUovD,OAAS,SAASlb,EAAO8c,GAE/C,OADAxwD,KAAKmvD,iBAAkB,EAChBnvD,KAAK8uD,eAAepb,EAAO8c,EAAQ,EAC5C,EAEA7B,EAAcnvD,UAAUqvD,MAAQ,WAE9B,OADA7uD,KAAKovD,mBAAoB,EAClBpvD,KAAK+uD,eACd,EAEAJ,EAAcnvD,UAAUynD,UAAY,SAASjmD,GAC3C,OAAY,MAARA,EACK,GAEA,UAAYA,EAAO,GAE9B,EAEA2tD,EAAcnvD,UAAUqhD,IAAM,WAC5B,OAAO7gD,KAAKo3B,QAAQ30B,MAAMzC,KAAMsC,UAClC,EAEAqsD,EAAcnvD,UAAUixD,IAAM,SAASzvD,EAAM4iB,EAAYgB,GACvD,OAAO5kB,KAAKob,KAAKpa,EAAM4iB,EAAYgB,EACrC,EAEA+pC,EAAcnvD,UAAUohD,IAAM,SAASx7C,GACrC,OAAOpF,KAAK4kB,KAAKxf,EACnB,EAEAupD,EAAcnvD,UAAUkxD,IAAM,SAAStrD,GACrC,OAAOpF,KAAKs1C,MAAMlwC,EACpB,EAEAupD,EAAcnvD,UAAUmxD,IAAM,SAASvrD,GACrC,OAAOpF,KAAKw1C,QAAQpwC,EACtB,EAEAupD,EAAcnvD,UAAUoxD,IAAM,SAAS36C,EAAQ7Q,GAC7C,OAAOpF,KAAKyvD,YAAYx5C,EAAQ7Q,EAClC,EAEAupD,EAAcnvD,UAAUqxD,IAAM,SAAS5H,EAASkC,EAAUC,GACxD,OAAOprD,KAAKwrD,YAAYvC,EAASkC,EAAUC,EAC7C,EAEAuD,EAAcnvD,UAAUsxD,IAAM,SAAS/1C,EAAMwvC,EAAOC,GAClD,OAAOxqD,KAAK01C,QAAQ36B,EAAMwvC,EAAOC,EACnC,EAEAmE,EAAcnvD,UAAUkpB,EAAI,SAAS1nB,EAAM4iB,EAAYgB,GACrD,OAAO5kB,KAAKo3B,QAAQp2B,EAAM4iB,EAAYgB,EACxC,EAEA+pC,EAAcnvD,UAAUwe,EAAI,SAAShd,EAAM4iB,EAAYgB,GACrD,OAAO5kB,KAAKob,KAAKpa,EAAM4iB,EAAYgB,EACrC,EAEA+pC,EAAcnvD,UAAUoQ,EAAI,SAASxK,GACnC,OAAOpF,KAAK4kB,KAAKxf,EACnB,EAEAupD,EAAcnvD,UAAUk+C,EAAI,SAASt4C,GACnC,OAAOpF,KAAKs1C,MAAMlwC,EACpB,EAEAupD,EAAcnvD,UAAUwyC,EAAI,SAAS5sC,GACnC,OAAOpF,KAAKw1C,QAAQpwC,EACtB,EAEAupD,EAAcnvD,UAAUuxD,EAAI,SAAS3rD,GACnC,OAAOpF,KAAK2gD,IAAIv7C,EAClB,EAEAupD,EAAcnvD,UAAUgC,EAAI,SAASyU,EAAQ7Q,GAC3C,OAAOpF,KAAKyvD,YAAYx5C,EAAQ7Q,EAClC,EAEAupD,EAAcnvD,UAAUuhD,IAAM,WAC5B,OAAI/gD,KAAKgvD,aAAehvD,KAAKgvD,YAAYtjD,OAASq7C,EAASnB,QAClD5lD,KAAK8rD,QAAQrpD,MAAMzC,KAAMsC,WAEzBtC,KAAK8jB,UAAUrhB,MAAMzC,KAAMsC,UAEtC,EAEAqsD,EAAcnvD,UAAUmH,EAAI,WAC1B,OAAI3G,KAAKgvD,aAAehvD,KAAKgvD,YAAYtjD,OAASq7C,EAASnB,QAClD5lD,KAAK8rD,QAAQrpD,MAAMzC,KAAMsC,WAEzBtC,KAAK8jB,UAAUrhB,MAAMzC,KAAMsC,UAEtC,EAEAqsD,EAAcnvD,UAAU0sD,IAAM,SAASlrD,EAAMoE,GAC3C,OAAOpF,KAAKg4C,OAAOh3C,EAAMoE,EAC3B,EAEAupD,EAAcnvD,UAAU2sD,KAAO,SAASnrD,EAAMoE,GAC5C,OAAOpF,KAAK+rD,QAAQ/qD,EAAMoE,EAC5B,EAEAupD,EAAcnvD,UAAU4sD,IAAM,SAASprD,EAAMoE,GAC3C,OAAOpF,KAAKgsD,SAAShrD,EAAMoE,EAC7B,EAEOupD,CAER,CAlegC,EAoelC,GAAEztD,KAAKlB,8BC9gBR,WACE,IAAI+mD,EAAoBc,EAEtB9H,EAAU,CAAC,EAAEtgD,eAEfooD,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBhkD,EAAOC,QAAqB,SAAU2/C,GAGpC,SAASqO,EAASz4C,GAChBy4C,EAAS9N,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC1CvY,KAAK0L,KAAOq7C,EAASZ,KACvB,CAUA,OAvBS,SAAS9rC,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAOumC,EAAUrO,GAOjBqO,EAASxxD,UAAU6nD,MAAQ,WACzB,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEAgxD,EAASxxD,UAAUkG,SAAW,SAASM,GACrC,MAAO,EACT,EAEOgrD,CAER,CAlB2B,CAkBzBnJ,EAEJ,GAAE3mD,KAAKlB,8BC7BR,WACE,IAAI+mD,EAAUC,EAA0ByE,EAAiB5D,EAASzB,EAAUC,EAAYC,EAAUzzB,EAEhGktB,EAAU,CAAC,EAAEtgD,eAEfozB,EAAM,EAAQ,OAAcyzB,EAAWzzB,EAAIyzB,SAAUD,EAAaxzB,EAAIwzB,WAAYD,EAAWvzB,EAAIuzB,SAEjGyB,EAAU,EAAQ,OAElBd,EAAW,EAAQ,OAEnBC,EAAe,EAAQ,OAEvByE,EAAkB,EAAQ,OAE1B1oD,EAAOC,QAAuB,SAAU2/C,GAGtC,SAAS4L,EAAWh2C,EAAQvX,EAAM4iB,GAChC,IAAIvJ,EAAO3X,EAAGL,EAAKspD,EAEnB,GADA4C,EAAWrL,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAChC,MAARvX,EACF,MAAM,IAAIoQ,MAAM,yBAA2BpR,KAAKinD,aASlD,GAPAjnD,KAAKgB,KAAOhB,KAAK8I,UAAU9H,KAAKA,GAChChB,KAAK0L,KAAOq7C,EAAS5B,QACrBnlD,KAAKuvD,QAAU,CAAC,EAChBvvD,KAAKonD,eAAiB,KACJ,MAAdxjC,GACF5jB,KAAK8jB,UAAUF,GAEbrL,EAAO7M,OAASq7C,EAASpB,WAC3B3lD,KAAKixD,QAAS,EACdjxD,KAAK6rD,eAAiBtzC,EACtBA,EAAOm0C,WAAa1sD,KAChBuY,EAAOkH,UAET,IAAK/c,EAAI,EAAGL,GADZspD,EAAOpzC,EAAOkH,UACS/d,OAAQgB,EAAIL,EAAKK,IAEtC,IADA2X,EAAQsxC,EAAKjpD,IACHgJ,OAASq7C,EAASnB,QAAS,CACnCvrC,EAAMrZ,KAAOhB,KAAKgB,KAClB,KACF,CAIR,CAsPA,OAlSS,SAASqZ,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAczRirB,CAAO8jC,EAAY5L,GAgCnBpjD,OAAOyF,eAAeupD,EAAW/uD,UAAW,UAAW,CACrD2R,IAAK,WACH,OAAOnR,KAAKgB,IACd,IAGFzB,OAAOyF,eAAeupD,EAAW/uD,UAAW,eAAgB,CAC1D2R,IAAK,WACH,MAAO,EACT,IAGF5R,OAAOyF,eAAeupD,EAAW/uD,UAAW,SAAU,CACpD2R,IAAK,WACH,MAAO,EACT,IAGF5R,OAAOyF,eAAeupD,EAAW/uD,UAAW,YAAa,CACvD2R,IAAK,WACH,OAAOnR,KAAKgB,IACd,IAGFzB,OAAOyF,eAAeupD,EAAW/uD,UAAW,KAAM,CAChD2R,IAAK,WACH,MAAM,IAAIC,MAAM,sCAAwCpR,KAAKinD,YAC/D,IAGF1nD,OAAOyF,eAAeupD,EAAW/uD,UAAW,YAAa,CACvD2R,IAAK,WACH,MAAM,IAAIC,MAAM,sCAAwCpR,KAAKinD,YAC/D,IAGF1nD,OAAOyF,eAAeupD,EAAW/uD,UAAW,YAAa,CACvD2R,IAAK,WACH,MAAM,IAAIC,MAAM,sCAAwCpR,KAAKinD,YAC/D,IAGF1nD,OAAOyF,eAAeupD,EAAW/uD,UAAW,aAAc,CACxD2R,IAAK,WAIH,OAHKnR,KAAKkxD,cAAiBlxD,KAAKkxD,aAAat2C,QAC3C5a,KAAKkxD,aAAe,IAAIzF,EAAgBzrD,KAAKuvD,UAExCvvD,KAAKkxD,YACd,IAGF3C,EAAW/uD,UAAU6nD,MAAQ,WAC3B,IAAItG,EAAKuO,EAAS6B,EAAYxF,EAO9B,IAAK2D,KANL6B,EAAa5xD,OAAOqB,OAAOZ,OACZixD,SACbE,EAAWtF,eAAiB,MAE9BsF,EAAW5B,QAAU,CAAC,EACtB5D,EAAO3rD,KAAKuvD,QAELxP,EAAQ7+C,KAAKyqD,EAAM2D,KACxBvO,EAAM4K,EAAK2D,GACX6B,EAAW5B,QAAQD,GAAWvO,EAAIsG,SASpC,OAPA8J,EAAW1xC,SAAW,GACtBzf,KAAKyf,SAASvK,SAAQ,SAASmF,GAC7B,IAAI+2C,EAGJ,OAFAA,EAAc/2C,EAAMgtC,SACR9uC,OAAS44C,EACdA,EAAW1xC,SAASjf,KAAK4wD,EAClC,IACOD,CACT,EAEA5C,EAAW/uD,UAAUskB,UAAY,SAAS9iB,EAAMoE,GAC9C,IAAIkqD,EAASpI,EAIb,GAHY,MAARlmD,IACFA,EAAOolD,EAASplD,IAEdslD,EAAStlD,GACX,IAAKsuD,KAAWtuD,EACT++C,EAAQ7+C,KAAKF,EAAMsuD,KACxBpI,EAAWlmD,EAAKsuD,GAChBtvD,KAAK8jB,UAAUwrC,EAASpI,SAGtBb,EAAWjhD,KACbA,EAAQA,EAAM3C,SAEZzC,KAAKgG,QAAQ6pD,oBAAgC,MAATzqD,EACtCpF,KAAKuvD,QAAQvuD,GAAQ,IAAIgmD,EAAahnD,KAAMgB,EAAM,IAChC,MAAToE,IACTpF,KAAKuvD,QAAQvuD,GAAQ,IAAIgmD,EAAahnD,KAAMgB,EAAMoE,IAGtD,OAAOpF,IACT,EAEAuuD,EAAW/uD,UAAU6xD,gBAAkB,SAASrwD,GAC9C,IAAIsuD,EAAS5sD,EAAGL,EAChB,GAAY,MAARrB,EACF,MAAM,IAAIoQ,MAAM,2BAA6BpR,KAAKinD,aAGpD,GADAjmD,EAAOolD,EAASplD,GACZY,MAAM+C,QAAQ3D,GAChB,IAAK0B,EAAI,EAAGL,EAAMrB,EAAKU,OAAQgB,EAAIL,EAAKK,IACtC4sD,EAAUtuD,EAAK0B,UACR1C,KAAKuvD,QAAQD,eAGftvD,KAAKuvD,QAAQvuD,GAEtB,OAAOhB,IACT,EAEAuuD,EAAW/uD,UAAUkG,SAAW,SAASM,GACvC,OAAOhG,KAAKgG,QAAQshD,OAAOlwB,QAAQp3B,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC7E,EAEAuoD,EAAW/uD,UAAUuhD,IAAM,SAAS//C,EAAMoE,GACxC,OAAOpF,KAAK8jB,UAAU9iB,EAAMoE,EAC9B,EAEAmpD,EAAW/uD,UAAUmH,EAAI,SAAS3F,EAAMoE,GACtC,OAAOpF,KAAK8jB,UAAU9iB,EAAMoE,EAC9B,EAEAmpD,EAAW/uD,UAAU8xD,aAAe,SAAStwD,GAC3C,OAAIhB,KAAKuvD,QAAQ9vD,eAAeuB,GACvBhB,KAAKuvD,QAAQvuD,GAAMoE,MAEnB,IAEX,EAEAmpD,EAAW/uD,UAAU2+B,aAAe,SAASn9B,EAAMoE,GACjD,MAAM,IAAIgM,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAU+xD,iBAAmB,SAASvwD,GAC/C,OAAIhB,KAAKuvD,QAAQ9vD,eAAeuB,GACvBhB,KAAKuvD,QAAQvuD,GAEb,IAEX,EAEAutD,EAAW/uD,UAAUgyD,iBAAmB,SAASC,GAC/C,MAAM,IAAIrgD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUkyD,oBAAsB,SAASC,GAClD,MAAM,IAAIvgD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAU2tD,qBAAuB,SAASnsD,GACnD,MAAM,IAAIoQ,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUoyD,eAAiB,SAASnK,EAAcC,GAC3D,MAAM,IAAIt2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUqyD,eAAiB,SAASpK,EAAc0B,EAAe/jD,GAC1E,MAAM,IAAIgM,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUsyD,kBAAoB,SAASrK,EAAcC,GAC9D,MAAM,IAAIt2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUuyD,mBAAqB,SAAStK,EAAcC,GAC/D,MAAM,IAAIt2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUwyD,mBAAqB,SAASP,GACjD,MAAM,IAAIrgD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUiuD,uBAAyB,SAAShG,EAAcC,GACnE,MAAM,IAAIt2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUyyD,aAAe,SAASjxD,GAC3C,OAAOhB,KAAKuvD,QAAQ9vD,eAAeuB,EACrC,EAEAutD,EAAW/uD,UAAU0yD,eAAiB,SAASzK,EAAcC,GAC3D,MAAM,IAAIt2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAU2yD,eAAiB,SAASnxD,EAAMmmD,GACnD,OAAInnD,KAAKuvD,QAAQ9vD,eAAeuB,GACvBhB,KAAKuvD,QAAQvuD,GAAMmmD,KAEnBA,CAEX,EAEAoH,EAAW/uD,UAAU4yD,iBAAmB,SAAS3K,EAAcC,EAAWP,GACxE,MAAM,IAAI/1C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAU6yD,mBAAqB,SAASC,EAAQnL,GACzD,MAAM,IAAI/1C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAU2tD,qBAAuB,SAASC,GACnD,MAAM,IAAIh8C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUiuD,uBAAyB,SAAShG,EAAcC,GACnE,MAAM,IAAIt2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUsuD,uBAAyB,SAASC,GACrD,MAAM,IAAI38C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAsH,EAAW/uD,UAAUgoD,YAAc,SAASpsC,GAC1C,IAAI5Z,EAAGkB,EAAGipD,EACV,IAAK4C,EAAWrL,UAAUsE,YAAY/kD,MAAMzC,KAAMsC,WAAWklD,YAAYpsC,GACvE,OAAO,EAET,GAAIA,EAAKqsC,eAAiBznD,KAAKynD,aAC7B,OAAO,EAET,GAAIrsC,EAAK1b,SAAWM,KAAKN,OACvB,OAAO,EAET,GAAI0b,EAAKssC,YAAc1nD,KAAK0nD,UAC1B,OAAO,EAET,GAAItsC,EAAKm0C,QAAQ7tD,SAAW1B,KAAKuvD,QAAQ7tD,OACvC,OAAO,EAET,IAAKF,EAAIkB,EAAI,EAAGipD,EAAO3rD,KAAKuvD,QAAQ7tD,OAAS,EAAG,GAAKiqD,EAAOjpD,GAAKipD,EAAOjpD,GAAKipD,EAAMnqD,EAAI,GAAKmqD,IAASjpD,IAAMA,EACzG,IAAK1C,KAAKuvD,QAAQ/tD,GAAGgmD,YAAYpsC,EAAKm0C,QAAQ/tD,IAC5C,OAAO,EAGX,OAAO,CACT,EAEO+sD,CAER,CAvR6B,CAuR3B1G,EAEJ,GAAE3mD,KAAKlB,0BCxSR,WAGE+C,EAAOC,QAA4B,WACjC,SAASyoD,EAAgB7wC,GACvB5a,KAAK4a,MAAQA,CACf,CA8CA,OA5CArb,OAAOyF,eAAeymD,EAAgBjsD,UAAW,SAAU,CACzD2R,IAAK,WACH,OAAO5R,OAAO+G,KAAKtG,KAAK4a,OAAOlZ,QAAU,CAC3C,IAGF+pD,EAAgBjsD,UAAU6nD,MAAQ,WAChC,OAAOrnD,KAAK4a,MAAQ,IACtB,EAEA6wC,EAAgBjsD,UAAU+yD,aAAe,SAASvxD,GAChD,OAAOhB,KAAK4a,MAAM5Z,EACpB,EAEAyqD,EAAgBjsD,UAAUgzD,aAAe,SAASp3C,GAChD,IAAI4D,EAGJ,OAFAA,EAAUhf,KAAK4a,MAAMQ,EAAK4oC,UAC1BhkD,KAAK4a,MAAMQ,EAAK4oC,UAAY5oC,EACrB4D,GAAW,IACpB,EAEAysC,EAAgBjsD,UAAUizD,gBAAkB,SAASzxD,GACnD,IAAIge,EAGJ,OAFAA,EAAUhf,KAAK4a,MAAM5Z,UACdhB,KAAK4a,MAAM5Z,GACXge,GAAW,IACpB,EAEAysC,EAAgBjsD,UAAU0I,KAAO,SAASgB,GACxC,OAAOlJ,KAAK4a,MAAMrb,OAAO+G,KAAKtG,KAAK4a,OAAO1R,KAAW,IACvD,EAEAuiD,EAAgBjsD,UAAUkzD,eAAiB,SAASjL,EAAcC,GAChE,MAAM,IAAIt2C,MAAM,sCAClB,EAEAq6C,EAAgBjsD,UAAUmzD,eAAiB,SAASv3C,GAClD,MAAM,IAAIhK,MAAM,sCAClB,EAEAq6C,EAAgBjsD,UAAUozD,kBAAoB,SAASnL,EAAcC,GACnE,MAAM,IAAIt2C,MAAM,sCAClB,EAEOq6C,CAER,CAnDkC,EAqDpC,GAAEvqD,KAAKlB,8BCxDR,WACE,IAAI6yD,EAAkB9L,EAAUa,EAAUS,EAAY6C,EAAgBQ,EAAYsF,EAAUzC,EAAsCuE,EAAatE,EAA0BC,EAAQC,EAAStI,EAAU9D,EAAS+D,EAAYC,EAAUqF,EACjO5L,EAAU,CAAC,EAAEtgD,eAEfksD,EAAO,EAAQ,OAAcrF,EAAWqF,EAAKrF,SAAUD,EAAasF,EAAKtF,WAAY/D,EAAUqJ,EAAKrJ,QAAS8D,EAAWuF,EAAKvF,SAE7HmI,EAAa,KAEb3G,EAAW,KAEXS,EAAa,KAEb6C,EAAiB,KAEjBQ,EAAa,KAEb+C,EAAS,KAETC,EAAU,KAEVF,EAA2B,KAE3BwC,EAAW,KAEXjK,EAAW,KAEX+L,EAAc,KAIdD,EAAmB,KAEnB9vD,EAAOC,QAAoB,WACzB,SAAS6kD,EAAQkL,GACf/yD,KAAKuY,OAASw6C,EACV/yD,KAAKuY,SACPvY,KAAKgG,QAAUhG,KAAKuY,OAAOvS,QAC3BhG,KAAK8I,UAAY9I,KAAKuY,OAAOzP,WAE/B9I,KAAKoF,MAAQ,KACbpF,KAAKyf,SAAW,GAChBzf,KAAKgzD,QAAU,KACVzE,IACHA,EAAa,EAAQ,OACrB3G,EAAW,EAAQ,OACnBS,EAAa,EAAQ,OACrB6C,EAAiB,EAAQ,OACzBQ,EAAa,EAAQ,OACrB+C,EAAS,EAAQ,MACjBC,EAAU,EAAQ,OAClBF,EAA2B,EAAQ,OACnCwC,EAAW,EAAQ,OACnBjK,EAAW,EAAQ,OACnB+L,EAAc,EAAQ,OACJ,EAAQ,OAC1BD,EAAmB,EAAQ,OAE/B,CAktBA,OAhtBAtzD,OAAOyF,eAAe6iD,EAAQroD,UAAW,WAAY,CACnD2R,IAAK,WACH,OAAOnR,KAAKgB,IACd,IAGFzB,OAAOyF,eAAe6iD,EAAQroD,UAAW,WAAY,CACnD2R,IAAK,WACH,OAAOnR,KAAK0L,IACd,IAGFnM,OAAOyF,eAAe6iD,EAAQroD,UAAW,YAAa,CACpD2R,IAAK,WACH,OAAOnR,KAAKoF,KACd,IAGF7F,OAAOyF,eAAe6iD,EAAQroD,UAAW,aAAc,CACrD2R,IAAK,WACH,OAAOnR,KAAKuY,MACd,IAGFhZ,OAAOyF,eAAe6iD,EAAQroD,UAAW,aAAc,CACrD2R,IAAK,WAIH,OAHKnR,KAAKizD,eAAkBjzD,KAAKizD,cAAcr4C,QAC7C5a,KAAKizD,cAAgB,IAAIH,EAAY9yD,KAAKyf,WAErCzf,KAAKizD,aACd,IAGF1zD,OAAOyF,eAAe6iD,EAAQroD,UAAW,aAAc,CACrD2R,IAAK,WACH,OAAOnR,KAAKyf,SAAS,IAAM,IAC7B,IAGFlgB,OAAOyF,eAAe6iD,EAAQroD,UAAW,YAAa,CACpD2R,IAAK,WACH,OAAOnR,KAAKyf,SAASzf,KAAKyf,SAAS/d,OAAS,IAAM,IACpD,IAGFnC,OAAOyF,eAAe6iD,EAAQroD,UAAW,kBAAmB,CAC1D2R,IAAK,WACH,IAAI3P,EAEJ,OADAA,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MAC1BA,KAAKuY,OAAOkH,SAASje,EAAI,IAAM,IACxC,IAGFjC,OAAOyF,eAAe6iD,EAAQroD,UAAW,cAAe,CACtD2R,IAAK,WACH,IAAI3P,EAEJ,OADAA,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MAC1BA,KAAKuY,OAAOkH,SAASje,EAAI,IAAM,IACxC,IAGFjC,OAAOyF,eAAe6iD,EAAQroD,UAAW,gBAAiB,CACxD2R,IAAK,WACH,OAAOnR,KAAKyV,YAAc,IAC5B,IAGFlW,OAAOyF,eAAe6iD,EAAQroD,UAAW,cAAe,CACtD2R,IAAK,WACH,IAAIkJ,EAAO3X,EAAGL,EAAKupD,EAAM53B,EACzB,GAAIh0B,KAAKo6C,WAAa2M,EAAS5B,SAAWnlD,KAAKo6C,WAAa2M,EAASlB,iBAAkB,CAGrF,IAFA7xB,EAAM,GAEDtxB,EAAI,EAAGL,GADZupD,EAAO5rD,KAAKyf,UACW/d,OAAQgB,EAAIL,EAAKK,KACtC2X,EAAQuxC,EAAKlpD,IACHskB,cACRgN,GAAO3Z,EAAM2M,aAGjB,OAAOgN,CACT,CACE,OAAO,IAEX,EACA7T,IAAK,SAAS/a,GACZ,MAAM,IAAIgM,MAAM,sCAAwCpR,KAAKinD,YAC/D,IAGFY,EAAQroD,UAAU0zD,UAAY,SAAS36C,GACrC,IAAI8B,EAAO3X,EAAGL,EAAKupD,EAAM7pC,EAQzB,IAPA/hB,KAAKuY,OAASA,EACVA,IACFvY,KAAKgG,QAAUuS,EAAOvS,QACtBhG,KAAK8I,UAAYyP,EAAOzP,WAG1BiZ,EAAU,GACLrf,EAAI,EAAGL,GAFZupD,EAAO5rD,KAAKyf,UAEW/d,OAAQgB,EAAIL,EAAKK,IACtC2X,EAAQuxC,EAAKlpD,GACbqf,EAAQvhB,KAAK6Z,EAAM64C,UAAUlzD,OAE/B,OAAO+hB,CACT,EAEA8lC,EAAQroD,UAAU43B,QAAU,SAASp2B,EAAM4iB,EAAYgB,GACrD,IAAIuuC,EAAWjrD,EAAMxF,EAAG0wD,EAAGxuD,EAAKyuD,EAAWhxD,EAAKixD,EAAM1H,EAAM2H,EAAM/M,EAelE,GAdA6M,EAAY,KACO,OAAfzvC,GAAgC,MAARgB,IACPhB,GAAnBgoC,EAAO,CAAC,CAAC,EAAG,OAAyB,GAAIhnC,EAAOgnC,EAAK,IAErC,MAAdhoC,IACFA,EAAa,CAAC,GAEhBA,EAAawiC,EAASxiC,GACjB0iC,EAAS1iC,KACegB,GAA3B2uC,EAAO,CAAC3vC,EAAYgB,IAAmB,GAAIhB,EAAa2vC,EAAK,IAEnD,MAARvyD,IACFA,EAAOolD,EAASplD,IAEdY,MAAM+C,QAAQ3D,GAChB,IAAK0B,EAAI,EAAGL,EAAMrB,EAAKU,OAAQgB,EAAIL,EAAKK,IACtCwF,EAAOlH,EAAK0B,GACZ2wD,EAAYrzD,KAAKo3B,QAAQlvB,QAEtB,GAAIm+C,EAAWrlD,GACpBqyD,EAAYrzD,KAAKo3B,QAAQp2B,EAAKyB,cACzB,GAAI6jD,EAAStlD,IAClB,IAAK4D,KAAO5D,EACV,GAAK++C,EAAQ7+C,KAAKF,EAAM4D,GAKxB,GAJA4hD,EAAMxlD,EAAK4D,GACPyhD,EAAWG,KACbA,EAAMA,EAAI/jD,UAEPzC,KAAKgG,QAAQwtD,kBAAoBxzD,KAAK8I,UAAU2qD,eAA+D,IAA9C7uD,EAAIN,QAAQtE,KAAK8I,UAAU2qD,eAC/FJ,EAAYrzD,KAAK8jB,UAAUlf,EAAIshC,OAAOlmC,KAAK8I,UAAU2qD,cAAc/xD,QAAS8kD,QACvE,IAAKxmD,KAAKgG,QAAQ0tD,oBAAsB9xD,MAAM+C,QAAQ6hD,IAAQlE,EAAQkE,GAC3E6M,EAAYrzD,KAAKwvD,aACZ,GAAIlJ,EAASE,IAAQlE,EAAQkE,GAClC6M,EAAYrzD,KAAKo3B,QAAQxyB,QACpB,GAAK5E,KAAKgG,QAAQ2tD,eAAyB,MAAPnN,EAEpC,IAAKxmD,KAAKgG,QAAQ0tD,oBAAsB9xD,MAAM+C,QAAQ6hD,GAC3D,IAAK4M,EAAI,EAAGE,EAAO9M,EAAI9kD,OAAQ0xD,EAAIE,EAAMF,IACvClrD,EAAOs+C,EAAI4M,IACXD,EAAY,CAAC,GACHvuD,GAAOsD,EACjBmrD,EAAYrzD,KAAKo3B,QAAQ+7B,QAElB7M,EAASE,IACbxmD,KAAKgG,QAAQwtD,kBAAoBxzD,KAAK8I,UAAU8qD,gBAAiE,IAA/ChvD,EAAIN,QAAQtE,KAAK8I,UAAU8qD,gBAChGP,EAAYrzD,KAAKo3B,QAAQovB,IAEzB6M,EAAYrzD,KAAKo3B,QAAQxyB,IACfwyB,QAAQovB,GAGpB6M,EAAYrzD,KAAKo3B,QAAQxyB,EAAK4hD,QAhB9B6M,EAAYrzD,KAAKwvD,aAuBnB6D,EAJQrzD,KAAKgG,QAAQ2tD,eAA0B,OAAT/uC,GAGnC5kB,KAAKgG,QAAQwtD,kBAAoBxzD,KAAK8I,UAAU8qD,gBAAkE,IAAhD5yD,EAAKsD,QAAQtE,KAAK8I,UAAU8qD,gBACrF5zD,KAAK4kB,KAAKA,IACZ5kB,KAAKgG,QAAQwtD,kBAAoBxzD,KAAK8I,UAAU+qD,iBAAoE,IAAjD7yD,EAAKsD,QAAQtE,KAAK8I,UAAU+qD,iBAC7F7zD,KAAKs1C,MAAM1wB,IACb5kB,KAAKgG,QAAQwtD,kBAAoBxzD,KAAK8I,UAAUgrD,mBAAwE,IAAnD9yD,EAAKsD,QAAQtE,KAAK8I,UAAUgrD,mBAC/F9zD,KAAKw1C,QAAQ5wB,IACf5kB,KAAKgG,QAAQwtD,kBAAoBxzD,KAAK8I,UAAUirD,eAAgE,IAA/C/yD,EAAKsD,QAAQtE,KAAK8I,UAAUirD,eAC3F/zD,KAAK2gD,IAAI/7B,IACX5kB,KAAKgG,QAAQwtD,kBAAoBxzD,KAAK8I,UAAUkrD,cAA8D,IAA9ChzD,EAAKsD,QAAQtE,KAAK8I,UAAUkrD,cAC1Fh0D,KAAKyvD,YAAYzuD,EAAKklC,OAAOlmC,KAAK8I,UAAUkrD,aAAatyD,QAASkjB,GAElE5kB,KAAKob,KAAKpa,EAAM4iB,EAAYgB,GAb9B5kB,KAAKwvD,QAgBnB,GAAiB,MAAb6D,EACF,MAAM,IAAIjiD,MAAM,uCAAyCpQ,EAAO,KAAOhB,KAAKinD,aAE9E,OAAOoM,CACT,EAEAxL,EAAQroD,UAAUy0D,aAAe,SAASjzD,EAAM4iB,EAAYgB,GAC1D,IAAIvK,EAAO7Y,EAAG0yD,EAAUC,EAAUC,EAClC,GAAY,MAARpzD,EAAeA,EAAK0K,UAAO,EAY7B,OAVAyoD,EAAWvwC,GADXswC,EAAWlzD,GAEFkyD,UAAUlzD,MACfm0D,GACF3yD,EAAIie,SAASnb,QAAQ6vD,GACrBC,EAAU30C,SAASg6B,OAAOj4C,GAC1Bie,SAASjf,KAAK0zD,GACdtyD,MAAMpC,UAAUgB,KAAKiC,MAAMgd,SAAU20C,IAErC30C,SAASjf,KAAK0zD,GAETA,EAEP,GAAIl0D,KAAKixD,OACP,MAAM,IAAI7/C,MAAM,yCAA2CpR,KAAKinD,UAAUjmD,IAM5E,OAJAQ,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MACjCo0D,EAAUp0D,KAAKuY,OAAOkH,SAASg6B,OAAOj4C,GACtC6Y,EAAQra,KAAKuY,OAAO6e,QAAQp2B,EAAM4iB,EAAYgB,GAC9ChjB,MAAMpC,UAAUgB,KAAKiC,MAAMzC,KAAKuY,OAAOkH,SAAU20C,GAC1C/5C,CAEX,EAEAwtC,EAAQroD,UAAU60D,YAAc,SAASrzD,EAAM4iB,EAAYgB,GACzD,IAAIvK,EAAO7Y,EAAG4yD,EACd,GAAIp0D,KAAKixD,OACP,MAAM,IAAI7/C,MAAM,yCAA2CpR,KAAKinD,UAAUjmD,IAM5E,OAJAQ,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MACjCo0D,EAAUp0D,KAAKuY,OAAOkH,SAASg6B,OAAOj4C,EAAI,GAC1C6Y,EAAQra,KAAKuY,OAAO6e,QAAQp2B,EAAM4iB,EAAYgB,GAC9ChjB,MAAMpC,UAAUgB,KAAKiC,MAAMzC,KAAKuY,OAAOkH,SAAU20C,GAC1C/5C,CACT,EAEAwtC,EAAQroD,UAAU80D,OAAS,WACzB,IAAI9yD,EACJ,GAAIxB,KAAKixD,OACP,MAAM,IAAI7/C,MAAM,mCAAqCpR,KAAKinD,aAI5D,OAFAzlD,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MACjC,GAAGy5C,OAAOh3C,MAAMzC,KAAKuY,OAAOkH,SAAU,CAACje,EAAGA,EAAIA,EAAI,GAAGH,OAAc,KAC5DrB,KAAKuY,MACd,EAEAsvC,EAAQroD,UAAU4b,KAAO,SAASpa,EAAM4iB,EAAYgB,GAClD,IAAIvK,EAAOuxC,EAcX,OAbY,MAAR5qD,IACFA,EAAOolD,EAASplD,IAElB4iB,IAAeA,EAAa,CAAC,GAC7BA,EAAawiC,EAASxiC,GACjB0iC,EAAS1iC,KACegB,GAA3BgnC,EAAO,CAAChoC,EAAYgB,IAAmB,GAAIhB,EAAagoC,EAAK,IAE/DvxC,EAAQ,IAAIk0C,EAAWvuD,KAAMgB,EAAM4iB,GACvB,MAARgB,GACFvK,EAAMuK,KAAKA,GAEb5kB,KAAKyf,SAASjf,KAAK6Z,GACZA,CACT,EAEAwtC,EAAQroD,UAAUolB,KAAO,SAASxf,GAChC,IAAIiV,EAMJ,OALIisC,EAASlhD,IACXpF,KAAKo3B,QAAQhyB,GAEfiV,EAAQ,IAAIq0C,EAAQ1uD,KAAMoF,GAC1BpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA6nD,EAAQroD,UAAU81C,MAAQ,SAASlwC,GACjC,IAAIiV,EAGJ,OAFAA,EAAQ,IAAIutC,EAAS5nD,KAAMoF,GAC3BpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA6nD,EAAQroD,UAAUg2C,QAAU,SAASpwC,GACnC,IAAIiV,EAGJ,OAFAA,EAAQ,IAAIguC,EAAWroD,KAAMoF,GAC7BpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA6nD,EAAQroD,UAAU+0D,cAAgB,SAASnvD,GACzC,IAAW5D,EAAG4yD,EAKd,OAJA5yD,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MACjCo0D,EAAUp0D,KAAKuY,OAAOkH,SAASg6B,OAAOj4C,GAC9BxB,KAAKuY,OAAOi9B,QAAQpwC,GAC5BxD,MAAMpC,UAAUgB,KAAKiC,MAAMzC,KAAKuY,OAAOkH,SAAU20C,GAC1Cp0D,IACT,EAEA6nD,EAAQroD,UAAUg1D,aAAe,SAASpvD,GACxC,IAAW5D,EAAG4yD,EAKd,OAJA5yD,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MACjCo0D,EAAUp0D,KAAKuY,OAAOkH,SAASg6B,OAAOj4C,EAAI,GAClCxB,KAAKuY,OAAOi9B,QAAQpwC,GAC5BxD,MAAMpC,UAAUgB,KAAKiC,MAAMzC,KAAKuY,OAAOkH,SAAU20C,GAC1Cp0D,IACT,EAEA6nD,EAAQroD,UAAUmhD,IAAM,SAASv7C,GAC/B,IAAIiV,EAGJ,OAFAA,EAAQ,IAAIo0C,EAAOzuD,KAAMoF,GACzBpF,KAAKyf,SAASjf,KAAK6Z,GACZra,IACT,EAEA6nD,EAAQroD,UAAUgwD,MAAQ,WAGxB,OADQ,IAAIwB,EAAShxD,KAEvB,EAEA6nD,EAAQroD,UAAUiwD,YAAc,SAASx5C,EAAQ7Q,GAC/C,IAAI0qD,EAAWC,EAAUN,EAAa/sD,EAAGL,EAOzC,GANc,MAAV4T,IACFA,EAASmwC,EAASnwC,IAEP,MAAT7Q,IACFA,EAAQghD,EAAShhD,IAEfxD,MAAM+C,QAAQsR,GAChB,IAAKvT,EAAI,EAAGL,EAAM4T,EAAOvU,OAAQgB,EAAIL,EAAKK,IACxCotD,EAAY75C,EAAOvT,GACnB1C,KAAKyvD,YAAYK,QAEd,GAAIxJ,EAASrwC,GAClB,IAAK65C,KAAa75C,EACX8pC,EAAQ7+C,KAAK+U,EAAQ65C,KAC1BC,EAAW95C,EAAO65C,GAClB9vD,KAAKyvD,YAAYK,EAAWC,SAG1B1J,EAAWjhD,KACbA,EAAQA,EAAM3C,SAEhBgtD,EAAc,IAAIjB,EAAyBxuD,KAAMiW,EAAQ7Q,GACzDpF,KAAKyf,SAASjf,KAAKivD,GAErB,OAAOzvD,IACT,EAEA6nD,EAAQroD,UAAUi1D,kBAAoB,SAASx+C,EAAQ7Q,GACrD,IAAW5D,EAAG4yD,EAKd,OAJA5yD,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MACjCo0D,EAAUp0D,KAAKuY,OAAOkH,SAASg6B,OAAOj4C,GAC9BxB,KAAKuY,OAAOk3C,YAAYx5C,EAAQ7Q,GACxCxD,MAAMpC,UAAUgB,KAAKiC,MAAMzC,KAAKuY,OAAOkH,SAAU20C,GAC1Cp0D,IACT,EAEA6nD,EAAQroD,UAAUk1D,iBAAmB,SAASz+C,EAAQ7Q,GACpD,IAAW5D,EAAG4yD,EAKd,OAJA5yD,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,MACjCo0D,EAAUp0D,KAAKuY,OAAOkH,SAASg6B,OAAOj4C,EAAI,GAClCxB,KAAKuY,OAAOk3C,YAAYx5C,EAAQ7Q,GACxCxD,MAAMpC,UAAUgB,KAAKiC,MAAMzC,KAAKuY,OAAOkH,SAAU20C,GAC1Cp0D,IACT,EAEA6nD,EAAQroD,UAAUgsD,YAAc,SAASvC,EAASkC,EAAUC,GAC1D,IAAIlP,EAAK8E,EAUT,OATA9E,EAAMl8C,KAAKyV,WACXurC,EAAS,IAAIkK,EAAehP,EAAK+M,EAASkC,EAAUC,GACxB,IAAxBlP,EAAIz8B,SAAS/d,OACfw6C,EAAIz8B,SAASujC,QAAQhC,GACZ9E,EAAIz8B,SAAS,GAAG/T,OAASq7C,EAAShB,YAC3C7J,EAAIz8B,SAAS,GAAKuhC,EAElB9E,EAAIz8B,SAASujC,QAAQhC,GAEhB9E,EAAInhC,QAAUmhC,CACvB,EAEA2L,EAAQroD,UAAUsxD,IAAM,SAASvG,EAAOC,GACtC,IAAWtO,EAAKxG,EAASl0C,EAAGkB,EAAG0wD,EAAG/wD,EAAKixD,EAAM1H,EAAM2H,EAInD,IAHArX,EAAMl8C,KAAKyV,WACXigC,EAAU,IAAIgW,EAAWxP,EAAKqO,EAAOC,GAEhChpD,EAAIkB,EAAI,EAAGL,GADhBupD,EAAO1P,EAAIz8B,UACgB/d,OAAQgB,EAAIL,EAAKb,IAAMkB,EAEhD,GADQkpD,EAAKpqD,GACHkK,OAASq7C,EAASnB,QAE1B,OADA1J,EAAIz8B,SAASje,GAAKk0C,EACXA,EAIX,IAAKl0C,EAAI4xD,EAAI,EAAGE,GADhBC,EAAOrX,EAAIz8B,UACiB/d,OAAQ0xD,EAAIE,EAAM9xD,IAAM4xD,EAElD,GADQG,EAAK/xD,GACHyvD,OAER,OADA/U,EAAIz8B,SAASg6B,OAAOj4C,EAAG,EAAGk0C,GACnBA,EAIX,OADAwG,EAAIz8B,SAASjf,KAAKk1C,GACXA,CACT,EAEAmS,EAAQroD,UAAUshD,GAAK,WACrB,GAAI9gD,KAAKixD,OACP,MAAM,IAAI7/C,MAAM,kFAElB,OAAOpR,KAAKuY,MACd,EAEAsvC,EAAQroD,UAAUub,KAAO,WACvB,IAAIK,EAEJ,IADAA,EAAOpb,KACAob,GAAM,CACX,GAAIA,EAAK1P,OAASq7C,EAASpB,SACzB,OAAOvqC,EAAKsxC,WACP,GAAItxC,EAAK61C,OACd,OAAO71C,EAEPA,EAAOA,EAAK7C,MAEhB,CACF,EAEAsvC,EAAQroD,UAAUiW,SAAW,WAC3B,IAAI2F,EAEJ,IADAA,EAAOpb,KACAob,GAAM,CACX,GAAIA,EAAK1P,OAASq7C,EAASpB,SACzB,OAAOvqC,EAEPA,EAAOA,EAAK7C,MAEhB,CACF,EAEAsvC,EAAQroD,UAAU86B,IAAM,SAASt0B,GAC/B,OAAOhG,KAAKyV,WAAW6kB,IAAIt0B,EAC7B,EAEA6hD,EAAQroD,UAAUm1D,KAAO,WACvB,IAAInzD,EAEJ,IADAA,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,OACzB,EACN,MAAM,IAAIoR,MAAM,8BAAgCpR,KAAKinD,aAEvD,OAAOjnD,KAAKuY,OAAOkH,SAASje,EAAI,EAClC,EAEAqmD,EAAQroD,UAAUo1D,KAAO,WACvB,IAAIpzD,EAEJ,IAAW,KADXA,EAAIxB,KAAKuY,OAAOkH,SAASnb,QAAQtE,QACjBwB,IAAMxB,KAAKuY,OAAOkH,SAAS/d,OAAS,EAClD,MAAM,IAAI0P,MAAM,6BAA+BpR,KAAKinD,aAEtD,OAAOjnD,KAAKuY,OAAOkH,SAASje,EAAI,EAClC,EAEAqmD,EAAQroD,UAAUq1D,eAAiB,SAAS3Y,GAC1C,IAAI4Y,EAKJ,OAJAA,EAAa5Y,EAAInhC,OAAOssC,SACb9uC,OAASvY,KACpB80D,EAAW7D,QAAS,EACpBjxD,KAAKyf,SAASjf,KAAKs0D,GACZ90D,IACT,EAEA6nD,EAAQroD,UAAUynD,UAAY,SAASjmD,GACrC,IAAI4qD,EAAM2H,EAEV,OAAa,OADbvyD,EAAOA,GAAQhB,KAAKgB,QAC4B,OAAvB4qD,EAAO5rD,KAAKuY,QAAkBqzC,EAAK5qD,UAAO,GAEhD,MAARA,EACF,YAAchB,KAAKuY,OAAOvX,KAAO,KACL,OAAvBuyD,EAAOvzD,KAAKuY,QAAkBg7C,EAAKvyD,UAAO,GAG/C,UAAYA,EAAO,eAAiBhB,KAAKuY,OAAOvX,KAAO,IAFvD,UAAYA,EAAO,IAJnB,EAQX,EAEA6mD,EAAQroD,UAAUqhD,IAAM,SAAS7/C,EAAM4iB,EAAYgB,GACjD,OAAO5kB,KAAKo3B,QAAQp2B,EAAM4iB,EAAYgB,EACxC,EAEAijC,EAAQroD,UAAUixD,IAAM,SAASzvD,EAAM4iB,EAAYgB,GACjD,OAAO5kB,KAAKob,KAAKpa,EAAM4iB,EAAYgB,EACrC,EAEAijC,EAAQroD,UAAUohD,IAAM,SAASx7C,GAC/B,OAAOpF,KAAK4kB,KAAKxf,EACnB,EAEAyiD,EAAQroD,UAAUkxD,IAAM,SAAStrD,GAC/B,OAAOpF,KAAKs1C,MAAMlwC,EACpB,EAEAyiD,EAAQroD,UAAUmxD,IAAM,SAASvrD,GAC/B,OAAOpF,KAAKw1C,QAAQpwC,EACtB,EAEAyiD,EAAQroD,UAAUoxD,IAAM,SAAS36C,EAAQ7Q,GACvC,OAAOpF,KAAKyvD,YAAYx5C,EAAQ7Q,EAClC,EAEAyiD,EAAQroD,UAAU08C,IAAM,WACtB,OAAOl8C,KAAKyV,UACd,EAEAoyC,EAAQroD,UAAUqxD,IAAM,SAAS5H,EAASkC,EAAUC,GAClD,OAAOprD,KAAKwrD,YAAYvC,EAASkC,EAAUC,EAC7C,EAEAvD,EAAQroD,UAAUkpB,EAAI,SAAS1nB,EAAM4iB,EAAYgB,GAC/C,OAAO5kB,KAAKo3B,QAAQp2B,EAAM4iB,EAAYgB,EACxC,EAEAijC,EAAQroD,UAAUwe,EAAI,SAAShd,EAAM4iB,EAAYgB,GAC/C,OAAO5kB,KAAKob,KAAKpa,EAAM4iB,EAAYgB,EACrC,EAEAijC,EAAQroD,UAAUoQ,EAAI,SAASxK,GAC7B,OAAOpF,KAAK4kB,KAAKxf,EACnB,EAEAyiD,EAAQroD,UAAUk+C,EAAI,SAASt4C,GAC7B,OAAOpF,KAAKs1C,MAAMlwC,EACpB,EAEAyiD,EAAQroD,UAAUwyC,EAAI,SAAS5sC,GAC7B,OAAOpF,KAAKw1C,QAAQpwC,EACtB,EAEAyiD,EAAQroD,UAAUuxD,EAAI,SAAS3rD,GAC7B,OAAOpF,KAAK2gD,IAAIv7C,EAClB,EAEAyiD,EAAQroD,UAAUgC,EAAI,SAASyU,EAAQ7Q,GACrC,OAAOpF,KAAKyvD,YAAYx5C,EAAQ7Q,EAClC,EAEAyiD,EAAQroD,UAAUu1D,EAAI,WACpB,OAAO/0D,KAAK8gD,IACd,EAEA+G,EAAQroD,UAAUw1D,iBAAmB,SAAS9Y,GAC5C,OAAOl8C,KAAK60D,eAAe3Y,EAC7B,EAEA2L,EAAQroD,UAAUy1D,aAAe,SAASf,EAAUgB,GAClD,MAAM,IAAI9jD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAU69C,YAAc,SAAS6X,GACvC,MAAM,IAAI9jD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAUiT,YAAc,SAASyhD,GACvC,MAAM,IAAI9iD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAU21D,cAAgB,WAChC,OAAgC,IAAzBn1D,KAAKyf,SAAS/d,MACvB,EAEAmmD,EAAQroD,UAAUmzB,UAAY,SAASic,GACrC,MAAM,IAAIx9B,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAU66C,UAAY,WAC5B,MAAM,IAAIjpC,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAU41D,YAAc,SAASpM,EAASC,GAChD,OAAO,CACT,EAEApB,EAAQroD,UAAU61D,cAAgB,WAChC,OAA+B,IAAxBr1D,KAAKuvD,QAAQ7tD,MACtB,EAEAmmD,EAAQroD,UAAU81D,wBAA0B,SAASC,GACnD,IAAI1iC,EAAK2iC,EAET,OADA3iC,EAAM7yB,QACMu1D,EACH,EACEv1D,KAAKyV,aAAe8/C,EAAM9/C,YACnC+/C,EAAM3C,EAAiBhO,aAAegO,EAAiB3N,uBACnD/yC,KAAK8zB,SAAW,GAClBuvB,GAAO3C,EAAiB/N,UAExB0Q,GAAO3C,EAAiB9N,UAEnByQ,GACE3iC,EAAI4iC,WAAWF,GACjB1C,EAAiB7N,SAAW6N,EAAiB/N,UAC3CjyB,EAAI6iC,aAAaH,GACnB1C,EAAiB7N,SAAW6N,EAAiB9N,UAC3ClyB,EAAI8iC,YAAYJ,GAClB1C,EAAiB/N,UAEjB+N,EAAiB9N,SAE5B,EAEA8C,EAAQroD,UAAUo2D,WAAa,SAASL,GACtC,MAAM,IAAInkD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAUq2D,aAAe,SAASpO,GACxC,MAAM,IAAIr2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAUs2D,mBAAqB,SAASrO,GAC9C,MAAM,IAAIr2C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAUu2D,mBAAqB,SAASr2D,GAC9C,MAAM,IAAI0R,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAUgoD,YAAc,SAASpsC,GACvC,IAAI5Z,EAAGkB,EAAGkpD,EACV,GAAIxwC,EAAKg/B,WAAap6C,KAAKo6C,SACzB,OAAO,EAET,GAAIh/B,EAAKqE,SAAS/d,SAAW1B,KAAKyf,SAAS/d,OACzC,OAAO,EAET,IAAKF,EAAIkB,EAAI,EAAGkpD,EAAO5rD,KAAKyf,SAAS/d,OAAS,EAAG,GAAKkqD,EAAOlpD,GAAKkpD,EAAOlpD,GAAKkpD,EAAMpqD,EAAI,GAAKoqD,IAASlpD,IAAMA,EAC1G,IAAK1C,KAAKyf,SAASje,GAAGgmD,YAAYpsC,EAAKqE,SAASje,IAC9C,OAAO,EAGX,OAAO,CACT,EAEAqmD,EAAQroD,UAAUgqD,WAAa,SAASR,EAASC,GAC/C,MAAM,IAAI73C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAUw2D,YAAc,SAASpxD,EAAKkK,EAAMuhB,GAClD,MAAM,IAAIjf,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAUy2D,YAAc,SAASrxD,GACvC,MAAM,IAAIwM,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAY,EAAQroD,UAAU4xB,SAAW,SAASmkC,GACpC,QAAKA,IAGEA,IAAUv1D,MAAQA,KAAK01D,aAAaH,GAC7C,EAEA1N,EAAQroD,UAAUk2D,aAAe,SAASt6C,GACxC,IAAIf,EAA0B3X,EAAGL,EAAKupD,EAEtC,IAAKlpD,EAAI,EAAGL,GADZupD,EAAO5rD,KAAKyf,UACW/d,OAAQgB,EAAIL,EAAKK,IAAK,CAE3C,GAAI0Y,KADJf,EAAQuxC,EAAKlpD,IAEX,OAAO,EAGT,GADoB2X,EAAMq7C,aAAat6C,GAErC,OAAO,CAEX,CACA,OAAO,CACT,EAEAysC,EAAQroD,UAAUi2D,WAAa,SAASr6C,GACtC,OAAOA,EAAKs6C,aAAa11D,KAC3B,EAEA6nD,EAAQroD,UAAUm2D,YAAc,SAASv6C,GACvC,IAAI86C,EAASC,EAGb,OAFAD,EAAUl2D,KAAKo2D,aAAah7C,GAC5B+6C,EAAUn2D,KAAKo2D,aAAap2D,OACX,IAAbk2D,IAA+B,IAAbC,GAGbD,EAAUC,CAErB,EAEAtO,EAAQroD,UAAU62D,YAAc,SAASj7C,GACvC,IAAI86C,EAASC,EAGb,OAFAD,EAAUl2D,KAAKo2D,aAAah7C,GAC5B+6C,EAAUn2D,KAAKo2D,aAAap2D,OACX,IAAbk2D,IAA+B,IAAbC,GAGbD,EAAUC,CAErB,EAEAtO,EAAQroD,UAAU42D,aAAe,SAASh7C,GACxC,IAAIk7C,EAAOC,EASX,OARAA,EAAM,EACND,GAAQ,EACRt2D,KAAKw2D,gBAAgBx2D,KAAKyV,YAAY,SAAS09C,GAE7C,GADAoD,KACKD,GAASnD,IAAc/3C,EAC1B,OAAOk7C,GAAQ,CAEnB,IACIA,EACKC,GAEC,CAEZ,EAEA1O,EAAQroD,UAAUg3D,gBAAkB,SAASp7C,EAAMq7C,GACjD,IAAIp8C,EAAO3X,EAAGL,EAAKupD,EAAM4J,EAGzB,IAFAp6C,IAASA,EAAOpb,KAAKyV,YAEhB/S,EAAI,EAAGL,GADZupD,EAAOxwC,EAAKqE,UACW/d,OAAQgB,EAAIL,EAAKK,IAAK,CAE3C,GAAI8yD,EAAMiB,EADVp8C,EAAQuxC,EAAKlpD,IAEX,OAAO8yD,EAGP,GADAA,EAAMx1D,KAAKw2D,gBAAgBn8C,EAAOo8C,GAEhC,OAAOjB,CAGb,CACF,EAEO3N,CAER,CA7uB0B,EA+uB5B,GAAE3mD,KAAKlB,0BC/wBR,WAGE+C,EAAOC,QAAwB,WAC7B,SAAS8vD,EAAYl4C,GACnB5a,KAAK4a,MAAQA,CACf,CAgBA,OAdArb,OAAOyF,eAAe8tD,EAAYtzD,UAAW,SAAU,CACrD2R,IAAK,WACH,OAAOnR,KAAK4a,MAAMlZ,QAAU,CAC9B,IAGFoxD,EAAYtzD,UAAU6nD,MAAQ,WAC5B,OAAOrnD,KAAK4a,MAAQ,IACtB,EAEAk4C,EAAYtzD,UAAU0I,KAAO,SAASgB,GACpC,OAAOlJ,KAAK4a,MAAM1R,IAAU,IAC9B,EAEO4pD,CAER,CArB8B,EAuBhC,GAAE5xD,KAAKlB,8BC1BR,WACE,IAAI+mD,EAAUY,EAEZ5H,EAAU,CAAC,EAAEtgD,eAEfsnD,EAAW,EAAQ,OAEnBY,EAAmB,EAAQ,OAE3B5kD,EAAOC,QAAqC,SAAU2/C,GAGpD,SAAS6L,EAAyBj2C,EAAQtC,EAAQ7Q,GAEhD,GADAopD,EAAyBtL,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC5C,MAAVtC,EACF,MAAM,IAAI7E,MAAM,+BAAiCpR,KAAKinD,aAExDjnD,KAAK0L,KAAOq7C,EAAStB,sBACrBzlD,KAAKiW,OAASjW,KAAK8I,UAAUgnD,UAAU75C,GACvCjW,KAAKgB,KAAOhB,KAAKiW,OACb7Q,IACFpF,KAAKoF,MAAQpF,KAAK8I,UAAUinD,SAAS3qD,GAEzC,CAoBA,OAzCS,SAASiV,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAO+jC,EAA0B7L,GAejC6L,EAAyBhvD,UAAU6nD,MAAQ,WACzC,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEAwuD,EAAyBhvD,UAAUkG,SAAW,SAASM,GACrD,OAAOhG,KAAKgG,QAAQshD,OAAO0I,sBAAsBhwD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC3F,EAEAwoD,EAAyBhvD,UAAUgoD,YAAc,SAASpsC,GACxD,QAAKozC,EAAyBtL,UAAUsE,YAAY/kD,MAAMzC,KAAMsC,WAAWklD,YAAYpsC,IAGnFA,EAAKnF,SAAWjW,KAAKiW,MAI3B,EAEOu4C,CAER,CApC2C,CAoCzC7G,EAEJ,GAAEzmD,KAAKlB,6BC/CR,WACE,IAAI+mD,EAAUc,EAEZ9H,EAAU,CAAC,EAAEtgD,eAEfsnD,EAAW,EAAQ,OAEnBc,EAAU,EAAQ,OAElB9kD,EAAOC,QAAmB,SAAU2/C,GAGlC,SAAS8L,EAAOl2C,EAAQqM,GAEtB,GADA6pC,EAAOvL,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC5B,MAARqM,EACF,MAAM,IAAIxT,MAAM,qBAAuBpR,KAAKinD,aAE9CjnD,KAAK0L,KAAOq7C,EAASf,IACrBhmD,KAAKoF,MAAQpF,KAAK8I,UAAU63C,IAAI/7B,EAClC,CAUA,OA3BS,SAASvK,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAOgkC,EAAQ9L,GAWf8L,EAAOjvD,UAAU6nD,MAAQ,WACvB,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEAyuD,EAAOjvD,UAAUkG,SAAW,SAASM,GACnC,OAAOhG,KAAKgG,QAAQshD,OAAO3G,IAAI3gD,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GACzE,EAEOyoD,CAER,CAtByB,CAsBvB5G,EAEJ,GAAE3mD,KAAKlB,8BCjCR,WACE,IAAI+mD,EAAUuH,EAA8BoI,EAE1C3W,EAAU,CAAC,EAAEtgD,eAEfsnD,EAAW,EAAQ,OAEnB2P,EAAgB,EAAQ,MAExBpI,EAAc,EAAQ,OAEtBvrD,EAAOC,QAA4B,SAAU2/C,GAG3C,SAASgU,EAAgBC,EAAQ5wD,GAC/BhG,KAAK42D,OAASA,EACdD,EAAgBzT,UAAUtiC,YAAY1f,KAAKlB,KAAMgG,EACnD,CAyJA,OAxKS,SAASqU,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAUzRirB,CAAOksC,EAAiBhU,GAOxBgU,EAAgBn3D,UAAU8wD,QAAU,SAASl1C,EAAMpV,EAASwqD,GAC1D,OAAIp1C,EAAKy7C,gBAAkB7wD,EAAQmN,QAAUm7C,EAAYxH,SAChD,GAEA6P,EAAgBzT,UAAUoN,QAAQpvD,KAAKlB,KAAMob,EAAMpV,EAASwqD,EAEvE,EAEAmG,EAAgBn3D,UAAUiW,SAAW,SAASymC,EAAKl2C,GACjD,IAAIqU,EAAO7Y,EAAGkB,EAAG0wD,EAAG/wD,EAAKixD,EAAMzgC,EAAK84B,EAAM5pC,EAE1C,IAAKvgB,EAAIkB,EAAI,EAAGL,GADhBwwB,EAAMqpB,EAAIz8B,UACgB/d,OAAQgB,EAAIL,EAAKb,IAAMkB,GAC/C2X,EAAQwY,EAAIrxB,IACNq1D,eAAiBr1D,IAAM06C,EAAIz8B,SAAS/d,OAAS,EAKrD,IAHAsE,EAAUhG,KAAKunD,cAAcvhD,GAE7B+b,EAAU,GACLqxC,EAAI,EAAGE,GAFZ3H,EAAOzP,EAAIz8B,UAEa/d,OAAQ0xD,EAAIE,EAAMF,IACxC/4C,EAAQsxC,EAAKyH,GACbrxC,EAAQvhB,KAAKR,KAAK82D,eAAez8C,EAAOrU,EAAS,IAEnD,OAAO+b,CACT,EAEA40C,EAAgBn3D,UAAUskB,UAAY,SAASi9B,EAAK/6C,EAASwqD,GAC3D,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAUp/B,UAAU5iB,KAAKlB,KAAM+gD,EAAK/6C,EAASwqD,GACxF,EAEAmG,EAAgBn3D,UAAU81C,MAAQ,SAASl6B,EAAMpV,EAASwqD,GACxD,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAU5N,MAAMp0C,KAAKlB,KAAMob,EAAMpV,EAASwqD,GACrF,EAEAmG,EAAgBn3D,UAAUg2C,QAAU,SAASp6B,EAAMpV,EAASwqD,GAC1D,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAU1N,QAAQt0C,KAAKlB,KAAMob,EAAMpV,EAASwqD,GACvF,EAEAmG,EAAgBn3D,UAAUgsD,YAAc,SAASpwC,EAAMpV,EAASwqD,GAC9D,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAUsI,YAAYtqD,KAAKlB,KAAMob,EAAMpV,EAASwqD,GAC3F,EAEAmG,EAAgBn3D,UAAUysD,QAAU,SAAS7wC,EAAMpV,EAASwqD,GAC1D,IAAIn2C,EAAO3X,EAAGL,EAAKwwB,EAWnB,GAVA29B,IAAUA,EAAQ,GAClBxwD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5B5mD,KAAK42D,OAAOnjB,MAAMzzC,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,IAC7CxwD,KAAK42D,OAAOnjB,MAAM,aAAer4B,EAAKL,OAAO/Z,MACzCoa,EAAKmvC,OAASnvC,EAAKovC,MACrBxqD,KAAK42D,OAAOnjB,MAAM,YAAcr4B,EAAKmvC,MAAQ,MAAQnvC,EAAKovC,MAAQ,KACzDpvC,EAAKovC,OACdxqD,KAAK42D,OAAOnjB,MAAM,YAAcr4B,EAAKovC,MAAQ,KAE3CpvC,EAAKqE,SAAS/d,OAAS,EAAG,CAK5B,IAJA1B,KAAK42D,OAAOnjB,MAAM,MAClBzzC,KAAK42D,OAAOnjB,MAAMzzC,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,IAC9CxqD,EAAQmN,MAAQm7C,EAAYzH,UAEvBnkD,EAAI,EAAGL,GADZwwB,EAAMzX,EAAKqE,UACW/d,OAAQgB,EAAIL,EAAKK,IACrC2X,EAAQwY,EAAInwB,GACZ1C,KAAK82D,eAAez8C,EAAOrU,EAASwqD,EAAQ,GAE9CxqD,EAAQmN,MAAQm7C,EAAYxH,SAC5B9mD,KAAK42D,OAAOnjB,MAAM,IACpB,CAKA,OAJAztC,EAAQmN,MAAQm7C,EAAYxH,SAC5B9mD,KAAK42D,OAAOnjB,MAAMztC,EAAQ+wD,iBAAmB,KAC7C/2D,KAAK42D,OAAOnjB,MAAMzzC,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,IAC9CxqD,EAAQmN,MAAQm7C,EAAY3H,KACrB3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,EACvC,EAEAmG,EAAgBn3D,UAAU43B,QAAU,SAAShc,EAAMpV,EAASwqD,GAC1D,IAAIzP,EAAK1mC,EAAO28C,EAAgBC,EAAgBv0D,EAAGL,EAAKrB,EAAwB6xB,EAAK84B,EAMrF,IAAK3qD,KALLwvD,IAAUA,EAAQ,GAClBxwD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5B5mD,KAAK42D,OAAOnjB,MAAMzzC,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,IAAMp1C,EAAKpa,MACjE6xB,EAAMzX,EAAKm0C,QAEJxP,EAAQ7+C,KAAK2xB,EAAK7xB,KACvB+/C,EAAMluB,EAAI7xB,GACVhB,KAAK8jB,UAAUi9B,EAAK/6C,EAASwqD,IAI/B,GADAyG,EAAoC,KADpCD,EAAiB57C,EAAKqE,SAAS/d,QACS,KAAO0Z,EAAKqE,SAAS,GACtC,IAAnBu3C,GAAwB57C,EAAKqE,SAAS+D,OAAM,SAASkF,GACvD,OAAQA,EAAEhd,OAASq7C,EAAS1B,MAAQ38B,EAAEhd,OAASq7C,EAASf,MAAoB,KAAZt9B,EAAEtjB,KACpE,IACMY,EAAQkxD,YACVl3D,KAAK42D,OAAOnjB,MAAM,KAClBztC,EAAQmN,MAAQm7C,EAAYxH,SAC5B9mD,KAAK42D,OAAOnjB,MAAM,KAAOr4B,EAAKpa,KAAO,OAErCgF,EAAQmN,MAAQm7C,EAAYxH,SAC5B9mD,KAAK42D,OAAOnjB,MAAMztC,EAAQ+wD,iBAAmB,YAE1C,IAAI/wD,EAAQmxD,QAA6B,IAAnBH,GAAyBC,EAAevrD,OAASq7C,EAAS1B,MAAQ4R,EAAevrD,OAASq7C,EAASf,KAAiC,MAAxBiR,EAAe7xD,MAUjJ,CAIL,IAHApF,KAAK42D,OAAOnjB,MAAM,IAAMzzC,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,IACpDxqD,EAAQmN,MAAQm7C,EAAYzH,UAEvBnkD,EAAI,EAAGL,GADZspD,EAAOvwC,EAAKqE,UACW/d,OAAQgB,EAAIL,EAAKK,IACtC2X,EAAQsxC,EAAKjpD,GACb1C,KAAK82D,eAAez8C,EAAOrU,EAASwqD,EAAQ,GAE9CxqD,EAAQmN,MAAQm7C,EAAYxH,SAC5B9mD,KAAK42D,OAAOnjB,MAAMzzC,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,KAAOp1C,EAAKpa,KAAO,IAC3E,MAnBEhB,KAAK42D,OAAOnjB,MAAM,KAClBztC,EAAQmN,MAAQm7C,EAAYzH,UAC5B7gD,EAAQoxD,sBAERp3D,KAAK82D,eAAeG,EAAgBjxD,EAASwqD,EAAQ,GACrDxqD,EAAQoxD,sBAERpxD,EAAQmN,MAAQm7C,EAAYxH,SAC5B9mD,KAAK42D,OAAOnjB,MAAM,KAAOr4B,EAAKpa,KAAO,KAcvC,OAFAhB,KAAK42D,OAAOnjB,MAAMzzC,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,IAC9CxqD,EAAQmN,MAAQm7C,EAAY3H,KACrB3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,EACvC,EAEAmG,EAAgBn3D,UAAUwwD,sBAAwB,SAAS50C,EAAMpV,EAASwqD,GACxE,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAU8M,sBAAsB9uD,KAAKlB,KAAMob,EAAMpV,EAASwqD,GACrG,EAEAmG,EAAgBn3D,UAAUmhD,IAAM,SAASvlC,EAAMpV,EAASwqD,GACtD,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAUvC,IAAIz/C,KAAKlB,KAAMob,EAAMpV,EAASwqD,GACnF,EAEAmG,EAAgBn3D,UAAUolB,KAAO,SAASxJ,EAAMpV,EAASwqD,GACvD,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAUt+B,KAAK1jB,KAAKlB,KAAMob,EAAMpV,EAASwqD,GACpF,EAEAmG,EAAgBn3D,UAAUyqD,WAAa,SAAS7uC,EAAMpV,EAASwqD,GAC7D,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAU+G,WAAW/oD,KAAKlB,KAAMob,EAAMpV,EAASwqD,GAC1F,EAEAmG,EAAgBn3D,UAAU4qD,WAAa,SAAShvC,EAAMpV,EAASwqD,GAC7D,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAUkH,WAAWlpD,KAAKlB,KAAMob,EAAMpV,EAASwqD,GAC1F,EAEAmG,EAAgBn3D,UAAUurD,UAAY,SAAS3vC,EAAMpV,EAASwqD,GAC5D,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAU6H,UAAU7pD,KAAKlB,KAAMob,EAAMpV,EAASwqD,GACzF,EAEAmG,EAAgBn3D,UAAUyrD,YAAc,SAAS7vC,EAAMpV,EAASwqD,GAC9D,OAAOxwD,KAAK42D,OAAOnjB,MAAMkjB,EAAgBzT,UAAU+H,YAAY/pD,KAAKlB,KAAMob,EAAMpV,EAASwqD,GAC3F,EAEOmG,CAER,CAjKkC,CAiKhCD,EAEJ,GAAEx1D,KAAKlB,8BC9KR,WACE,IAAqB02D,EAEnB3W,EAAU,CAAC,EAAEtgD,eAEfi3D,EAAgB,EAAQ,MAExB3zD,EAAOC,QAA4B,SAAU2/C,GAG3C,SAAS0J,EAAgBrmD,GACvBqmD,EAAgBnJ,UAAUtiC,YAAY1f,KAAKlB,KAAMgG,EACnD,CAiBA,OA3BS,SAASqU,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAMzRirB,CAAO4hC,EAAiB1J,GAMxB0J,EAAgB7sD,UAAUiW,SAAW,SAASymC,EAAKl2C,GACjD,IAAIqU,EAAO7Y,EAAGa,EAAK0uD,EAAGl+B,EAItB,IAHA7sB,EAAUhG,KAAKunD,cAAcvhD,GAC7B+qD,EAAI,GAECvvD,EAAI,EAAGa,GADZwwB,EAAMqpB,EAAIz8B,UACY/d,OAAQF,EAAIa,EAAKb,IACrC6Y,EAAQwY,EAAIrxB,GACZuvD,GAAK/wD,KAAK82D,eAAez8C,EAAOrU,EAAS,GAK3C,OAHIA,EAAQmxD,QAAUpG,EAAE5vD,OAAO6E,EAAQqxD,QAAQ31D,UAAYsE,EAAQqxD,UACjEtG,EAAIA,EAAE5vD,MAAM,GAAI6E,EAAQqxD,QAAQ31D,SAE3BqvD,CACT,EAEO1E,CAER,CAxBkC,CAwBhCqK,EAEJ,GAAEx1D,KAAKlB,0BCjCR,WACE,IACEyiD,EAAO,SAAS5iD,EAAIk5C,GAAK,OAAO,WAAY,OAAOl5C,EAAG4C,MAAMs2C,EAAIz2C,UAAY,CAAG,EAC/Ey9C,EAAU,CAAC,EAAEtgD,eAEfsD,EAAOC,QAA2B,WAChC,SAASspD,EAAetmD,GAGtB,IAAIpB,EAAKiuB,EAAKztB,EAOd,IAAKR,KATL5E,KAAKs3D,gBAAkB7U,EAAKziD,KAAKs3D,gBAAiBt3D,MAClDA,KAAKu3D,gBAAkB9U,EAAKziD,KAAKu3D,gBAAiBv3D,MAElDgG,IAAYA,EAAU,CAAC,GACvBhG,KAAKgG,QAAUA,EACVhG,KAAKgG,QAAQijD,UAChBjpD,KAAKgG,QAAQijD,QAAU,OAEzBp2B,EAAM7sB,EAAQ8C,WAAa,CAAC,EAErBi3C,EAAQ7+C,KAAK2xB,EAAKjuB,KACvBQ,EAAQytB,EAAIjuB,GACZ5E,KAAK4E,GAAOQ,EAEhB,CAqNA,OAnNAknD,EAAe9sD,UAAUwB,KAAO,SAASwlD,GACvC,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKs3D,gBAAgB,GAAK9Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUolB,KAAO,SAAS4hC,GACvC,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgBv3D,KAAKw3D,WAAW,GAAKhR,GAAO,IAC1D,EAEA8F,EAAe9sD,UAAU81C,MAAQ,SAASkR,GACxC,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,GAGTA,GADAA,EAAM,GAAKA,GAAO,IACRjgD,QAAQ,MAAO,mBAClBvG,KAAKu3D,gBAAgB/Q,GAC9B,EAEA8F,EAAe9sD,UAAUg2C,QAAU,SAASgR,GAC1C,GAAIxmD,KAAKgG,QAAQ4pD,aACf,OAAOpJ,EAGT,IADAA,EAAM,GAAKA,GAAO,IACVviD,MAAM,MACZ,MAAM,IAAImN,MAAM,6CAA+Co1C,GAEjE,OAAOxmD,KAAKu3D,gBAAgB/Q,EAC9B,EAEA8F,EAAe9sD,UAAUmhD,IAAM,SAAS6F,GACtC,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEF,GAAKA,GAAO,EACrB,EAEA8F,EAAe9sD,UAAU0nD,SAAW,SAASV,GAC3C,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgBv3D,KAAKy3D,UAAUjR,EAAM,GAAKA,GAAO,IAC/D,EAEA8F,EAAe9sD,UAAUswD,UAAY,SAAStJ,GAC5C,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUuwD,SAAW,SAASvJ,GAC3C,GAAIxmD,KAAKgG,QAAQ4pD,aACf,OAAOpJ,EAGT,IADAA,EAAM,GAAKA,GAAO,IACVviD,MAAM,OACZ,MAAM,IAAImN,MAAM,yCAA2Co1C,GAE7D,OAAOxmD,KAAKu3D,gBAAgB/Q,EAC9B,EAEA8F,EAAe9sD,UAAU6rD,WAAa,SAAS7E,GAC7C,GAAIxmD,KAAKgG,QAAQ4pD,aACf,OAAOpJ,EAGT,KADAA,EAAM,GAAKA,GAAO,IACTviD,MAAM,aACb,MAAM,IAAImN,MAAM,2BAA6Bo1C,GAE/C,OAAOA,CACT,EAEA8F,EAAe9sD,UAAU8rD,YAAc,SAAS9E,GAC9C,GAAIxmD,KAAKgG,QAAQ4pD,aACf,OAAOpJ,EAGT,KADAA,EAAM,GAAKA,GAAO,IACTviD,MAAM,iCACb,MAAM,IAAImN,MAAM,qBAAuBo1C,GAEzC,OAAOxmD,KAAKu3D,gBAAgB/Q,EAC9B,EAEA8F,EAAe9sD,UAAU+rD,cAAgB,SAAS/E,GAChD,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAELA,EACK,MAEA,IAEX,EAEA8F,EAAe9sD,UAAUkrD,SAAW,SAASlE,GAC3C,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUmrD,SAAW,SAASnE,GAC3C,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAU2qD,gBAAkB,SAAS3D,GAClD,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUuqD,WAAa,SAASvD,GAC7C,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUwqD,cAAgB,SAASxD,GAChD,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUsrD,eAAiB,SAAStE,GACjD,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUqrD,SAAW,SAASrE,GAC3C,OAAIxmD,KAAKgG,QAAQ4pD,aACRpJ,EAEFxmD,KAAKu3D,gBAAgB,GAAK/Q,GAAO,GAC1C,EAEA8F,EAAe9sD,UAAUi0D,cAAgB,IAEzCnH,EAAe9sD,UAAUw0D,aAAe,IAExC1H,EAAe9sD,UAAUo0D,eAAiB,QAE1CtH,EAAe9sD,UAAUq0D,gBAAkB,SAE3CvH,EAAe9sD,UAAUs0D,kBAAoB,WAE7CxH,EAAe9sD,UAAUu0D,cAAgB,OAEzCzH,EAAe9sD,UAAU+3D,gBAAkB,SAASvjC,GAClD,IAAI6lB,EAAO2b,EACX,GAAIx1D,KAAKgG,QAAQ4pD,aACf,OAAO57B,EAGT,GADA6lB,EAAQ,GACqB,QAAzB75C,KAAKgG,QAAQijD,SAEf,GADApP,EAAQ,gHACJ2b,EAAMxhC,EAAI/vB,MAAM41C,GAClB,MAAM,IAAIzoC,MAAM,gCAAkC4iB,EAAM,aAAewhC,EAAItsD,YAExE,GAA6B,QAAzBlJ,KAAKgG,QAAQijD,UACtBpP,EAAQ,4FACJ2b,EAAMxhC,EAAI/vB,MAAM41C,IAClB,MAAM,IAAIzoC,MAAM,gCAAkC4iB,EAAM,aAAewhC,EAAItsD,OAG/E,OAAO8qB,CACT,EAEAs4B,EAAe9sD,UAAU83D,gBAAkB,SAAStjC,GAClD,IAAI6lB,EACJ,GAAI75C,KAAKgG,QAAQ4pD,aACf,OAAO57B,EAIT,GAFAh0B,KAAKu3D,gBAAgBvjC,GACrB6lB,EAAQ,gXACH7lB,EAAI/vB,MAAM41C,GACb,MAAM,IAAIzoC,MAAM,6BAElB,OAAO4iB,CACT,EAEAs4B,EAAe9sD,UAAUg4D,WAAa,SAASxjC,GAC7C,IAAI0jC,EACJ,OAAI13D,KAAKgG,QAAQ4pD,aACR57B,GAET0jC,EAAW13D,KAAKgG,QAAQ2xD,iBAAmB,cAAgB,KACpD3jC,EAAIztB,QAAQmxD,EAAU,SAASnxD,QAAQ,KAAM,QAAQA,QAAQ,KAAM,QAAQA,QAAQ,MAAO,SACnG,EAEA+lD,EAAe9sD,UAAUi4D,UAAY,SAASzjC,GAC5C,IAAI0jC,EACJ,OAAI13D,KAAKgG,QAAQ4pD,aACR57B,GAET0jC,EAAW13D,KAAKgG,QAAQ2xD,iBAAmB,cAAgB,KACpD3jC,EAAIztB,QAAQmxD,EAAU,SAASnxD,QAAQ,KAAM,QAAQA,QAAQ,KAAM,UAAUA,QAAQ,MAAO,SAASA,QAAQ,MAAO,SAASA,QAAQ,MAAO,SACrJ,EAEO+lD,CAER,CAvOiC,EAyOnC,GAAEprD,KAAKlB,8BC9OR,WACE,IAAI+mD,EAAUY,EAEZ5H,EAAU,CAAC,EAAEtgD,eAEfsnD,EAAW,EAAQ,OAEnBY,EAAmB,EAAQ,OAE3B5kD,EAAOC,QAAoB,SAAU2/C,GAGnC,SAAS+L,EAAQn2C,EAAQqM,GAEvB,GADA8pC,EAAQxL,UAAUtiC,YAAY1f,KAAKlB,KAAMuY,GAC7B,MAARqM,EACF,MAAM,IAAIxT,MAAM,yBAA2BpR,KAAKinD,aAElDjnD,KAAKgB,KAAO,QACZhB,KAAK0L,KAAOq7C,EAAS1B,KACrBrlD,KAAKoF,MAAQpF,KAAK8I,UAAU8b,KAAKA,EACnC,CA2CA,OA7DS,SAASvK,EAAO9B,GAAU,IAAK,IAAI3T,KAAO2T,EAAcwnC,EAAQ7+C,KAAKqX,EAAQ3T,KAAMyV,EAAMzV,GAAO2T,EAAO3T,IAAQ,SAASq+C,IAASjjD,KAAK4gB,YAAcvG,CAAO,CAAE4oC,EAAKzjD,UAAY+Y,EAAO/Y,UAAW6a,EAAM7a,UAAY,IAAIyjD,EAAQ5oC,EAAM6oC,UAAY3qC,EAAO/Y,SAAyB,CAQzRirB,CAAOikC,EAAS/L,GAYhBpjD,OAAOyF,eAAe0pD,EAAQlvD,UAAW,6BAA8B,CACrE2R,IAAK,WACH,MAAM,IAAIC,MAAM,sCAAwCpR,KAAKinD,YAC/D,IAGF1nD,OAAOyF,eAAe0pD,EAAQlvD,UAAW,YAAa,CACpD2R,IAAK,WACH,IAAIyjD,EAAMD,EAAM3gC,EAGhB,IAFAA,EAAM,GACN2gC,EAAO30D,KAAK43D,gBACLjD,GACL3gC,EAAM2gC,EAAK7lD,KAAOklB,EAClB2gC,EAAOA,EAAKiD,gBAId,IAFA5jC,GAAOh0B,KAAK8O,KACZ8lD,EAAO50D,KAAK63D,YACLjD,GACL5gC,GAAY4gC,EAAK9lD,KACjB8lD,EAAOA,EAAKiD,YAEd,OAAO7jC,CACT,IAGF06B,EAAQlvD,UAAU6nD,MAAQ,WACxB,OAAO9nD,OAAOqB,OAAOZ,KACvB,EAEA0uD,EAAQlvD,UAAUkG,SAAW,SAASM,GACpC,OAAOhG,KAAKgG,QAAQshD,OAAO1iC,KAAK5kB,KAAMA,KAAKgG,QAAQshD,OAAOC,cAAcvhD,GAC1E,EAEA0oD,EAAQlvD,UAAUs4D,UAAY,SAAS/P,GACrC,MAAM,IAAI32C,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEAyH,EAAQlvD,UAAUu4D,iBAAmB,SAASC,GAC5C,MAAM,IAAI5mD,MAAM,sCAAwCpR,KAAKinD,YAC/D,EAEOyH,CAER,CAxD0B,CAwDxB/G,EAEJ,GAAEzmD,KAAKlB,6BCnER,WACE,IAAI+mD,EAAUuH,EAA2M58B,EACvNquB,EAAU,CAAC,EAAEtgD,eAEfiyB,EAAS,gBAETq1B,EAAW,EAAQ,OAEF,EAAQ,OAEZ,EAAQ,OAEV,EAAQ,OAEN,EAAQ,OAER,EAAQ,OAEZ,EAAQ,MAEP,EAAQ,OAES,EAAQ,OAExB,EAAQ,OAEH,EAAQ,OAER,EAAQ,OAET,EAAQ,MAEN,EAAQ,OAEzBuH,EAAc,EAAQ,OAEtBvrD,EAAOC,QAA0B,WAC/B,SAAS0zD,EAAc1wD,GACrB,IAAIpB,EAAKiuB,EAAKztB,EAId,IAAKR,KAHLoB,IAAYA,EAAU,CAAC,GACvBhG,KAAKgG,QAAUA,EACf6sB,EAAM7sB,EAAQshD,QAAU,CAAC,EAElBvH,EAAQ7+C,KAAK2xB,EAAKjuB,KACvBQ,EAAQytB,EAAIjuB,GACZ5E,KAAK,IAAM4E,GAAO5E,KAAK4E,GACvB5E,KAAK4E,GAAOQ,EAEhB,CAsXA,OApXAsxD,EAAcl3D,UAAU+nD,cAAgB,SAASvhD,GAC/C,IAAIiyD,EAAiBplC,EAAK84B,EAAMC,EAAM2H,EAAM2E,EAAMC,EAAMC,EAmBxD,OAlBApyD,IAAYA,EAAU,CAAC,GACvBA,EAAU0rB,EAAO,CAAC,EAAG1xB,KAAKgG,QAASA,IACnCiyD,EAAkB,CAChB3Q,OAAQtnD,OAEMm3D,OAASnxD,EAAQmxD,SAAU,EAC3Cc,EAAgBf,WAAalxD,EAAQkxD,aAAc,EACnDe,EAAgB5H,OAAmC,OAAzBx9B,EAAM7sB,EAAQqqD,QAAkBx9B,EAAM,KAChEolC,EAAgBZ,QAAsC,OAA3B1L,EAAO3lD,EAAQqxD,SAAmB1L,EAAO,KACpEsM,EAAgBlQ,OAAoC,OAA1B6D,EAAO5lD,EAAQ+hD,QAAkB6D,EAAO,EAClEqM,EAAgBI,oBAAoH,OAA7F9E,EAA+C,OAAvC2E,EAAOlyD,EAAQqyD,qBAA+BH,EAAOlyD,EAAQsyD,qBAA+B/E,EAAO,EAClJ0E,EAAgBlB,iBAA2G,OAAvFoB,EAA4C,OAApCC,EAAOpyD,EAAQ+wD,kBAA4BqB,EAAOpyD,EAAQuyD,kBAA4BJ,EAAO,IAChG,IAArCF,EAAgBlB,mBAClBkB,EAAgBlB,iBAAmB,KAErCkB,EAAgBb,oBAAsB,EACtCa,EAAgBO,KAAO,CAAC,EACxBP,EAAgB9kD,MAAQm7C,EAAY3H,KAC7BsR,CACT,EAEAvB,EAAcl3D,UAAU6wD,OAAS,SAASj1C,EAAMpV,EAASwqD,GACvD,IAAIiI,EACJ,OAAKzyD,EAAQmxD,QAAUnxD,EAAQoxD,oBACtB,GACEpxD,EAAQmxD,SACjBsB,GAAejI,GAAS,GAAKxqD,EAAQ+hD,OAAS,GAC5B,EACT,IAAInmD,MAAM62D,GAAa90D,KAAKqC,EAAQqqD,QAGxC,EACT,EAEAqG,EAAcl3D,UAAU8wD,QAAU,SAASl1C,EAAMpV,EAASwqD,GACxD,OAAKxqD,EAAQmxD,QAAUnxD,EAAQoxD,oBACtB,GAEApxD,EAAQqxD,OAEnB,EAEAX,EAAcl3D,UAAUskB,UAAY,SAASi9B,EAAK/6C,EAASwqD,GACzD,IAAIO,EAIJ,OAHA/wD,KAAK04D,cAAc3X,EAAK/6C,EAASwqD,GACjCO,EAAI,IAAMhQ,EAAI//C,KAAO,KAAO+/C,EAAI37C,MAAQ,IACxCpF,KAAK24D,eAAe5X,EAAK/6C,EAASwqD,GAC3BO,CACT,EAEA2F,EAAcl3D,UAAU81C,MAAQ,SAASl6B,EAAMpV,EAASwqD,GACtD,IAAIO,EAUJ,OATA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,YACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK31C,EAAKhW,MACVY,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK,MAAQ/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACzCxqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUg2C,QAAU,SAASp6B,EAAMpV,EAASwqD,GACxD,IAAIO,EAUJ,OATA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,WACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK31C,EAAKhW,MACVY,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK,UAAS/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GAC1CxqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUgsD,YAAc,SAASpwC,EAAMpV,EAASwqD,GAC5D,IAAIO,EAiBJ,OAhBA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,QACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK,aAAe31C,EAAK6tC,QAAU,IACd,MAAjB7tC,EAAK+vC,WACP4F,GAAK,cAAgB31C,EAAK+vC,SAAW,KAEhB,MAAnB/vC,EAAKgwC,aACP2F,GAAK,gBAAkB31C,EAAKgwC,WAAa,KAE3CplD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,KAChChG,GAAK/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACjCxqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUysD,QAAU,SAAS7wC,EAAMpV,EAASwqD,GACxD,IAAIn2C,EAAO7Y,EAAGa,EAAK0uD,EAAGl+B,EAWtB,GAVA29B,IAAUA,EAAQ,GAClBxwD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAC/BO,GAAK,aAAe31C,EAAKL,OAAO/Z,KAC5Boa,EAAKmvC,OAASnvC,EAAKovC,MACrBuG,GAAK,YAAc31C,EAAKmvC,MAAQ,MAAQnvC,EAAKovC,MAAQ,IAC5CpvC,EAAKovC,QACduG,GAAK,YAAc31C,EAAKovC,MAAQ,KAE9BpvC,EAAKqE,SAAS/d,OAAS,EAAG,CAK5B,IAJAqvD,GAAK,KACLA,GAAK/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACjCxqD,EAAQmN,MAAQm7C,EAAYzH,UAEvBrlD,EAAI,EAAGa,GADZwwB,EAAMzX,EAAKqE,UACW/d,OAAQF,EAAIa,EAAKb,IACrC6Y,EAAQwY,EAAIrxB,GACZuvD,GAAK/wD,KAAK82D,eAAez8C,EAAOrU,EAASwqD,EAAQ,GAEnDxqD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK,GACP,CAMA,OALA/qD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,IAChChG,GAAK/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACjCxqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAU43B,QAAU,SAAShc,EAAMpV,EAASwqD,GACxD,IAAIzP,EAAK1mC,EAAO28C,EAAgBC,EAAgBz1D,EAAGkB,EAAGL,EAAKixD,EAAMtyD,EAAM43D,EAAkB7H,EAAGl+B,EAAK84B,EAAMC,EAQvG,IAAK5qD,KAPLwvD,IAAUA,EAAQ,GAClBoI,GAAmB,EACnB7H,EAAI,GACJ/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,GAAK/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,IAAMp1C,EAAKpa,KACpD6xB,EAAMzX,EAAKm0C,QAEJxP,EAAQ7+C,KAAK2xB,EAAK7xB,KACvB+/C,EAAMluB,EAAI7xB,GACV+vD,GAAK/wD,KAAK8jB,UAAUi9B,EAAK/6C,EAASwqD,IAIpC,GADAyG,EAAoC,KADpCD,EAAiB57C,EAAKqE,SAAS/d,QACS,KAAO0Z,EAAKqE,SAAS,GACtC,IAAnBu3C,GAAwB57C,EAAKqE,SAAS+D,OAAM,SAASkF,GACvD,OAAQA,EAAEhd,OAASq7C,EAAS1B,MAAQ38B,EAAEhd,OAASq7C,EAASf,MAAoB,KAAZt9B,EAAEtjB,KACpE,IACMY,EAAQkxD,YACVnG,GAAK,IACL/qD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK,KAAO31C,EAAKpa,KAAO,IAAMhB,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,KAE1DxqD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,KAAO/2D,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,SAEhE,IAAIxqD,EAAQmxD,QAA6B,IAAnBH,GAAyBC,EAAevrD,OAASq7C,EAAS1B,MAAQ4R,EAAevrD,OAASq7C,EAASf,KAAiC,MAAxBiR,EAAe7xD,MAUjJ,CACL,GAAIY,EAAQqyD,oBAEV,IAAK72D,EAAI,EAAGa,GADZspD,EAAOvwC,EAAKqE,UACW/d,OAAQF,EAAIa,EAAKb,IAEtC,KADA6Y,EAAQsxC,EAAKnqD,IACFkK,OAASq7C,EAAS1B,MAAQhrC,EAAM3O,OAASq7C,EAASf,MAAwB,MAAf3rC,EAAMjV,MAAgB,CAC1FY,EAAQoxD,sBACRwB,GAAmB,EACnB,KACF,CAMJ,IAHA7H,GAAK,IAAM/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACvCxqD,EAAQmN,MAAQm7C,EAAYzH,UAEvBnkD,EAAI,EAAG4wD,GADZ1H,EAAOxwC,EAAKqE,UACY/d,OAAQgB,EAAI4wD,EAAM5wD,IACxC2X,EAAQuxC,EAAKlpD,GACbquD,GAAK/wD,KAAK82D,eAAez8C,EAAOrU,EAASwqD,EAAQ,GAEnDxqD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,KAAOp1C,EAAKpa,KAAO,IACxD43D,GACF5yD,EAAQoxD,sBAEVrG,GAAK/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACjCxqD,EAAQmN,MAAQm7C,EAAY3H,IAC9B,MAnCEoK,GAAK,IACL/qD,EAAQmN,MAAQm7C,EAAYzH,UAC5B7gD,EAAQoxD,sBACRwB,GAAmB,EACnB7H,GAAK/wD,KAAK82D,eAAeG,EAAgBjxD,EAASwqD,EAAQ,GAC1DxqD,EAAQoxD,sBACRwB,GAAmB,EACnB5yD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK,KAAO31C,EAAKpa,KAAO,IAAMhB,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GA6B5D,OADAxwD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUs3D,eAAiB,SAAS17C,EAAMpV,EAASwqD,GAC/D,OAAQp1C,EAAK1P,MACX,KAAKq7C,EAASzB,MACZ,OAAOtlD,KAAKs1C,MAAMl6B,EAAMpV,EAASwqD,GACnC,KAAKzJ,EAASrB,QACZ,OAAO1lD,KAAKw1C,QAAQp6B,EAAMpV,EAASwqD,GACrC,KAAKzJ,EAAS5B,QACZ,OAAOnlD,KAAKo3B,QAAQhc,EAAMpV,EAASwqD,GACrC,KAAKzJ,EAASf,IACZ,OAAOhmD,KAAK2gD,IAAIvlC,EAAMpV,EAASwqD,GACjC,KAAKzJ,EAAS1B,KACZ,OAAOrlD,KAAK4kB,KAAKxJ,EAAMpV,EAASwqD,GAClC,KAAKzJ,EAAStB,sBACZ,OAAOzlD,KAAKgwD,sBAAsB50C,EAAMpV,EAASwqD,GACnD,KAAKzJ,EAASZ,MACZ,MAAO,GACT,KAAKY,EAAShB,YACZ,OAAO/lD,KAAKwrD,YAAYpwC,EAAMpV,EAASwqD,GACzC,KAAKzJ,EAASnB,QACZ,OAAO5lD,KAAKisD,QAAQ7wC,EAAMpV,EAASwqD,GACrC,KAAKzJ,EAASd,qBACZ,OAAOjmD,KAAKiqD,WAAW7uC,EAAMpV,EAASwqD,GACxC,KAAKzJ,EAASb,mBACZ,OAAOlmD,KAAKoqD,WAAWhvC,EAAMpV,EAASwqD,GACxC,KAAKzJ,EAASvB,kBACZ,OAAOxlD,KAAK+qD,UAAU3vC,EAAMpV,EAASwqD,GACvC,KAAKzJ,EAASjB,oBACZ,OAAO9lD,KAAKirD,YAAY7vC,EAAMpV,EAASwqD,GACzC,QACE,MAAM,IAAIp/C,MAAM,0BAA4BgK,EAAKwF,YAAY5f,MAEnE,EAEA01D,EAAcl3D,UAAUwwD,sBAAwB,SAAS50C,EAAMpV,EAASwqD,GACtE,IAAIO,EAcJ,OAbA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,KACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK31C,EAAKnF,OACNmF,EAAKhW,QACP2rD,GAAK,IAAM31C,EAAKhW,OAElBY,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,KAChChG,GAAK/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACjCxqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUmhD,IAAM,SAASvlC,EAAMpV,EAASwqD,GACpD,IAAIO,EAUJ,OATA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAC/BxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK31C,EAAKhW,MACVY,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACjCxqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUolB,KAAO,SAASxJ,EAAMpV,EAASwqD,GACrD,IAAIO,EAUJ,OATA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAC/BxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK31C,EAAKhW,MACVY,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/wD,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GACjCxqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUyqD,WAAa,SAAS7uC,EAAMpV,EAASwqD,GAC3D,IAAIO,EAgBJ,OAfA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,YACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK,IAAM31C,EAAKsuC,YAAc,IAAMtuC,EAAKuuC,cAAgB,IAAMvuC,EAAKwuC,cACtC,aAA1BxuC,EAAKyuC,mBACPkH,GAAK,IAAM31C,EAAKyuC,kBAEdzuC,EAAK0uC,eACPiH,GAAK,KAAO31C,EAAK0uC,aAAe,KAElC9jD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,IAAM/2D,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GAClExqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAU4qD,WAAa,SAAShvC,EAAMpV,EAASwqD,GAC3D,IAAIO,EAUJ,OATA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,YACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK,IAAM31C,EAAKpa,KAAO,IAAMoa,EAAKhW,MAClCY,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,IAAM/2D,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GAClExqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUurD,UAAY,SAAS3vC,EAAMpV,EAASwqD,GAC1D,IAAIO,EAyBJ,OAxBA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,WACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UACxBzrC,EAAKkvC,KACPyG,GAAK,MAEPA,GAAK,IAAM31C,EAAKpa,KACZoa,EAAKhW,MACP2rD,GAAK,KAAO31C,EAAKhW,MAAQ,KAErBgW,EAAKmvC,OAASnvC,EAAKovC,MACrBuG,GAAK,YAAc31C,EAAKmvC,MAAQ,MAAQnvC,EAAKovC,MAAQ,IAC5CpvC,EAAKovC,QACduG,GAAK,YAAc31C,EAAKovC,MAAQ,KAE9BpvC,EAAKwvC,QACPmG,GAAK,UAAY31C,EAAKwvC,QAG1B5kD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,IAAM/2D,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GAClExqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAUyrD,YAAc,SAAS7vC,EAAMpV,EAASwqD,GAC5D,IAAIO,EAiBJ,OAhBA/wD,KAAKmwD,SAAS/0C,EAAMpV,EAASwqD,GAC7BxqD,EAAQmN,MAAQm7C,EAAY1H,QAC5BmK,EAAI/wD,KAAKqwD,OAAOj1C,EAAMpV,EAASwqD,GAAS,aACxCxqD,EAAQmN,MAAQm7C,EAAYzH,UAC5BkK,GAAK,IAAM31C,EAAKpa,KACZoa,EAAKmvC,OAASnvC,EAAKovC,MACrBuG,GAAK,YAAc31C,EAAKmvC,MAAQ,MAAQnvC,EAAKovC,MAAQ,IAC5CpvC,EAAKmvC,MACdwG,GAAK,YAAc31C,EAAKmvC,MAAQ,IACvBnvC,EAAKovC,QACduG,GAAK,YAAc31C,EAAKovC,MAAQ,KAElCxkD,EAAQmN,MAAQm7C,EAAYxH,SAC5BiK,GAAK/qD,EAAQ+wD,iBAAmB,IAAM/2D,KAAKswD,QAAQl1C,EAAMpV,EAASwqD,GAClExqD,EAAQmN,MAAQm7C,EAAY3H,KAC5B3mD,KAAKkwD,UAAU90C,EAAMpV,EAASwqD,GACvBO,CACT,EAEA2F,EAAcl3D,UAAU2wD,SAAW,SAAS/0C,EAAMpV,EAASwqD,GAAQ,EAEnEkG,EAAcl3D,UAAU0wD,UAAY,SAAS90C,EAAMpV,EAASwqD,GAAQ,EAEpEkG,EAAcl3D,UAAUk5D,cAAgB,SAAS3X,EAAK/6C,EAASwqD,GAAQ,EAEvEkG,EAAcl3D,UAAUm5D,eAAiB,SAAS5X,EAAK/6C,EAASwqD,GAAQ,EAEjEkG,CAER,CApYgC,EAsYlC,GAAEx1D,KAAKlB,8BC1aR,WACE,IAAI+mD,EAAUuH,EAAaxF,EAAsByD,EAAaoC,EAAegI,EAAiBtK,EAAiB36B,EAAQ20B,EAAYxzB,EAEnIA,EAAM,EAAQ,OAAcnB,EAASmB,EAAInB,OAAQ20B,EAAaxzB,EAAIwzB,WAElEyC,EAAuB,EAAQ,OAE/ByD,EAAc,EAAQ,OAEtBoC,EAAgB,EAAQ,OAExBtC,EAAkB,EAAQ,OAE1BsK,EAAkB,EAAQ,OAE1B5P,EAAW,EAAQ,OAEnBuH,EAAc,EAAQ,OAEtBvrD,EAAOC,QAAQpC,OAAS,SAASI,EAAMggD,EAAQtL,EAAS1vC,GACtD,IAAIk2C,EAAKnhC,EACT,GAAY,MAAR/Z,EACF,MAAM,IAAIoQ,MAAM,8BAWlB,OATApL,EAAU0rB,EAAO,CAAC,EAAGsvB,EAAQtL,EAAS1vC,GAEtC+U,GADAmhC,EAAM,IAAIqQ,EAAYvmD,IACXoxB,QAAQp2B,GACdgF,EAAQi7C,WACX/E,EAAIsP,YAAYxlD,GACM,MAAjBA,EAAQukD,OAAoC,MAAjBvkD,EAAQwkD,OACtCtO,EAAI4U,IAAI9qD,IAGL+U,CACT,EAEAhY,EAAOC,QAAQ61D,MAAQ,SAAS7yD,EAAS4oD,EAAQC,GAC/C,IAAIlD,EAKJ,OAJItF,EAAWrgD,KACa4oD,GAA1BjD,EAAO,CAAC3lD,EAAS4oD,IAAuB,GAAIC,EAAQlD,EAAK,GACzD3lD,EAAU,CAAC,GAET4oD,EACK,IAAID,EAAc3oD,EAAS4oD,EAAQC,GAEnC,IAAItC,EAAYvmD,EAE3B,EAEAjD,EAAOC,QAAQ81D,aAAe,SAAS9yD,GACrC,OAAO,IAAIqmD,EAAgBrmD,EAC7B,EAEAjD,EAAOC,QAAQ+1D,aAAe,SAASnC,EAAQ5wD,GAC7C,OAAO,IAAI2wD,EAAgBC,EAAQ5wD,EACrC,EAEAjD,EAAOC,QAAQg2D,eAAiB,IAAIlQ,EAEpC/lD,EAAOC,QAAQo3C,SAAW2M,EAE1BhkD,EAAOC,QAAQi2D,YAAc3K,CAE9B,GAAEptD,KAAKlB,i5CCrDJgG,EAAU,CAAC,EAEfA,EAAQyL,kBAAoB,IAC5BzL,EAAQ0L,cAAgB,IAElB1L,EAAQ2L,OAAS,SAAc,KAAM,QAE3C3L,EAAQ4L,OAAS,IACjB5L,EAAQ6L,mBAAqB,IAEhB,IAAI,IAAS7L,GAKJ,KAAW,IAAQ8L,QAAS,IAAQA,wFC1BnD,MAAMonD,UAAoB9nD,MAChC,WAAAwP,CAAY+a,GACX7a,MAAM6a,GAAU,wBAChB37B,KAAKgB,KAAO,aACb,CAEA,cAAIm4D,GACH,OAAO,CACR,EAGD,MAAMC,EAAe75D,OAAO85D,OAAO,CAClCC,QAASzzD,OAAO,WAChB0zD,SAAU1zD,OAAO,YACjB2zD,SAAU3zD,OAAO,YACjB4zD,SAAU5zD,OAAO,cAGH,MAAM6zD,EACpB,SAAO75D,CAAG85D,GACT,MAAO,IAAI/rD,IAAe,IAAI8rD,GAAY,CAACl4C,EAASC,EAAQwE,KAC3DrY,EAAWpN,KAAKylB,GAChB0zC,KAAgB/rD,GAAYmQ,KAAKyD,EAASC,EAAO,GAEnD,CAEA,GAAkB,GAClB,IAAkB,EAClB,GAAS23C,EAAaE,QACtB,GACA,GAEA,WAAA14C,CAAYg5C,GACX55D,MAAK,EAAW,IAAI6d,SAAQ,CAAC2D,EAASC,KACrCzhB,MAAK,EAAUyhB,EAEf,MAcMwE,EAAWoK,IAChB,GAAIrwB,MAAK,IAAWo5D,EAAaE,QAChC,MAAM,IAAIloD,MAAM,2DAA2DpR,MAAK,EAAO65D,gBAGxF75D,MAAK,EAAgBQ,KAAK6vB,EAAQ,EAGnC9wB,OAAOu6D,iBAAiB7zC,EAAU,CACjC8zC,aAAc,CACb5oD,IAAK,IAAMnR,MAAK,EAChBmgB,IAAK65C,IACJh6D,MAAK,EAAkBg6D,CAAO,KAKjCJ,GA/BkBx0D,IACbpF,MAAK,IAAWo5D,EAAaG,UAAatzC,EAAS8zC,eACtDv4C,EAAQpc,GACRpF,MAAK,EAAUo5D,EAAaI,UAC7B,IAGgBnoD,IACZrR,MAAK,IAAWo5D,EAAaG,UAAatzC,EAAS8zC,eACtDt4C,EAAOpQ,GACPrR,MAAK,EAAUo5D,EAAaK,UAC7B,GAoB6BxzC,EAAS,GAEzC,CAGA,IAAAlI,CAAKk8C,EAAaC,GACjB,OAAOl6D,MAAK,EAAS+d,KAAKk8C,EAAaC,EACxC,CAEA,MAAMA,GACL,OAAOl6D,MAAK,EAAS2K,MAAMuvD,EAC5B,CAEA,QAAQC,GACP,OAAOn6D,MAAK,EAASo6D,QAAQD,EAC9B,CAEA,MAAA/rD,CAAOutB,GACN,GAAI37B,MAAK,IAAWo5D,EAAaE,QAAjC,CAMA,GAFAt5D,MAAK,EAAUo5D,EAAaG,UAExBv5D,MAAK,EAAgB0B,OAAS,EACjC,IACC,IAAK,MAAM2uB,KAAWrwB,MAAK,EAC1BqwB,GAEF,CAAE,MAAOhf,GAER,YADArR,MAAK,EAAQqR,EAEd,CAGGrR,MAAK,GACRA,MAAK,EAAQ,IAAIk5D,EAAYv9B,GAhB9B,CAkBD,CAEA,cAAIw9B,GACH,OAAOn5D,MAAK,IAAWo5D,EAAaG,QACrC,CAEA,GAAUpmD,GACLnT,MAAK,IAAWo5D,EAAaE,UAChCt5D,MAAK,EAASmT,EAEhB,EAGD5T,OAAO86D,eAAeX,EAAYl6D,UAAWqe,QAAQre,gDCrH9C,MAAM86D,EAAY,cAClB,SAASC,EAAelpD,GAE3B,OAAIA,EAAMJ,YAGLI,EAAMggC,OAJe,CAAC,eAAgB,gBAQrBtpC,SAASsJ,EAAMggC,OAI9B,EAAehgC,EAC1B,CACA,MAAMmpD,EAAoB,CAAC,MAAO,OAAQ,WACpCC,EAA0BD,EAAkBn5D,OAAO,CAAC,MAAO,WAC1D,SAASq5D,EAAiBrpD,GAC7B,MAAuB,iBAAfA,EAAMggC,QACRhgC,EAAMJ,UACsB,MAA1BI,EAAMJ,SAASoW,QACdhW,EAAMJ,SAASoW,QAAU,KAAOhW,EAAMJ,SAASoW,QAAU,IACtE,CAQO,SAASszC,EAAyBtpD,GACrC,QAAKA,EAAMupD,QAAQr2C,QAIZm2C,EAAiBrpD,KAAoE,IAA1DopD,EAAwBn2D,QAAQ+M,EAAMupD,OAAOr2C,OACnF,CACO,SAASs2C,EAAkCxpD,GAC9C,OAAOkpD,EAAelpD,IAAUspD,EAAyBtpD,EAC7D,CACO,SAASypD,EAAWzpD,OAAQ7O,GAC/B,MAAMu4D,EAAmB1pD,GAAOJ,UAAU4d,QAAQ,eAClD,IAAKksC,EACD,OAAO,EAGX,IAAIC,EAAiD,KAAjCn0D,OAAOk0D,IAAqB,GAKhD,OAHqB,IAAjBC,IACAA,GAAgB,IAAIhtD,KAAK+sD,GAAkBrU,WAAa,GAAK14C,KAAKC,OAE/DkE,KAAKsjB,IAAI,EAAGulC,EACvB,CAIO,SAASC,EAAiBC,EAAc,EAAG7pD,OAAQ7O,EAAW24D,EAAc,KAC/E,MAAMC,EAAkB,GAAKF,EAAcC,EACrCvuD,EAAQuF,KAAKsjB,IAAI2lC,EAAiBN,EAAWzpD,IAEnD,OAAOzE,EADmB,GAARA,EAAcuF,KAAK8zB,QAEzC,CAYO,MAAMo1B,EAAkB,CAC3BC,QAAS,EACTC,eAAgBV,EAChBW,WAvBJ,SAAiBC,EAAe,EAAGpqD,OAAQ7O,GACvC,OAAO2P,KAAKsjB,IAAI,EAAGqlC,EAAWzpD,GAClC,EAsBIqqD,oBAAoB,EACpBC,QAAS,OACTC,wBAAyB,OACzBC,iBAAkB,MAKtB,SAASC,EAAgBlB,EAAQmB,EAAgBC,GAAuB,GACpE,MAAMC,EAJV,SAA2BrB,EAAQmB,GAC/B,MAAO,IAAKV,KAAoBU,KAAmBnB,EAAON,GAC9D,CAEyB4B,CAAkBtB,EAAQmB,GAAkB,CAAC,GAMlE,OALAE,EAAaE,WAAaF,EAAaE,YAAc,EAChDF,EAAaG,kBAAmBJ,IACjCC,EAAaG,gBAAkBpuD,KAAKC,OAExC2sD,EAAON,GAAa2B,EACbA,CACX,CAsEA,MAAMI,EAAa,CAACC,EAAeP,KAC/B,MAAMQ,EAAuBD,EAAcE,aAAaC,QAAQpyD,KAAKuwD,IACjEkB,EAAgBlB,EAAQmB,GAAgB,GACpCnB,EAAON,IAAYuB,mBAEnBjB,EAAO8B,eAAiB,KAAM,GAE3B9B,KAEL+B,EAAwBL,EAAcE,aAAavrD,SAAS5G,IAAI,MAAM0R,MAAO1K,IAC/E,MAAM,OAAEupD,GAAWvpD,EAEnB,IAAKupD,EACD,OAAO/8C,QAAQ4D,OAAOpQ,GAE1B,MAAM4qD,EAAeH,EAAgBlB,EAAQmB,GAC7C,OAAI1qD,EAAMJ,UAAYgrD,EAAaJ,mBAAmBxqD,EAAMJ,UAEjDI,EAAMJ,eA1EzB8K,eAA2BkgD,EAAc5qD,GACrC,MAAM,QAAEiqD,EAAO,eAAEC,GAAmBU,EAC9BW,GAAwBX,EAAaE,YAAc,GAAKb,GAAWC,EAAelqD,GAExF,GAAoC,iBAAzBurD,EACP,IAGI,OAAoC,UAFGA,CAG3C,CACA,MAAOC,GACH,OAAO,CACX,CAEJ,OAAOD,CACX,CA6DkBE,CAAYb,EAAc5qD,GA5D5C0K,eAA2BugD,EAAeL,EAAc5qD,EAAOupD,GAC3DqB,EAAaE,YAAc,EAC3B,MAAM,WAAEX,EAAU,mBAAEE,EAAkB,QAAEC,GAAYM,EAC9CrvD,EAAQ4uD,EAAWS,EAAaE,WAAY9qD,GAIlD,GApCJ,SAAmBirD,EAAe1B,GAE1B0B,EAAc3c,SAASod,QAAUnC,EAAOmC,cAEjCnC,EAAOmC,MAEdT,EAAc3c,SAASqd,YAAcpC,EAAOoC,kBACrCpC,EAAOoC,UAEdV,EAAc3c,SAASsd,aAAerC,EAAOqC,mBACtCrC,EAAOqC,UAEtB,CAuBIC,CAAUZ,EAAe1B,IACpBc,GAAsBd,EAAO71C,SAAWk3C,EAAaG,gBAAiB,CACvE,MAAMe,EAAsBnvD,KAAKC,MAAQguD,EAAaG,gBAChDr3C,EAAU61C,EAAO71C,QAAUo4C,EAAsBvwD,EACvD,GAAImY,GAAW,EACX,OAAOlH,QAAQ4D,OAAOpQ,GAE1BupD,EAAO71C,QAAUA,CACrB,CAGA,OAFA61C,EAAOwC,iBAAmB,CAAEtuD,GAASA,SAC/B6sD,EAAQM,EAAaE,WAAY9qD,EAAOupD,GAC1CA,EAAOv0C,QAAQg3C,QACRx/C,QAAQ2D,QAAQ86C,EAAc1B,IAElC,IAAI/8C,SAAS2D,IAChB,MAAM87C,EAAgB,KAClB7vD,aAAasX,GACbvD,EAAQ86C,EAAc1B,GAAQ,EAE5B71C,EAAU5W,YAAW,KACvBqT,EAAQ86C,EAAc1B,IAClBA,EAAOv0C,QAAQnP,qBACf0jD,EAAOv0C,OAAOnP,oBAAoB,QAASomD,EAC/C,GACD1wD,GACCguD,EAAOv0C,QAAQrP,kBACf4jD,EAAOv0C,OAAOrP,iBAAiB,QAASsmD,EAAe,CAAEv9D,MAAM,GACnE,GAER,CA0BmBw9D,CAAYjB,EAAeL,EAAc5qD,EAAOupD,UAzBnE7+C,eAA2CkgD,EAAc5qD,GACjD4qD,EAAaE,YAAcF,EAAaX,eAClCW,EAAaL,wBAAwBvqD,EAAO4qD,EAAaE,WACvE,CAwBcqB,CAA4BvB,EAAc5qD,GACzCwM,QAAQ4D,OAAOpQ,GAAM,IAEhC,MAAO,CAAEkrD,uBAAsBI,wBAAuB,EAG1DN,EAAW9B,eAAiBA,EAC5B8B,EAAWoB,mBA1KJ,SAA4BpsD,GAC/B,QAAKA,EAAMupD,QAAQr2C,QAIZm2C,EAAiBrpD,KAA8D,IAApDmpD,EAAkBl2D,QAAQ+M,EAAMupD,OAAOr2C,OAC7E,EAqKA83C,EAAW1B,yBAA2BA,EACtC0B,EAAWxB,kCAAoCA,EAC/CwB,EAAWpB,iBAAmBA,EAC9BoB,EAAWqB,YAlIJ,SAAqBvC,EAAc,KACtC,MAAO,CAACD,EAAc,EAAG7pD,OAAQ7O,KAC7B,MAAMoK,EAAQsuD,EAAcC,EAC5B,OAAOhpD,KAAKsjB,IAAI7oB,EAAOkuD,EAAWzpD,GAAO,CAEjD,EA8HAgrD,EAAW3B,iBAAmBA,EAC9B,kJCjLA,MAAMppD,IAAS,UAAmB9C,OAAO,qBAAqBC,aAAaC,QAC3E,EAAW,KAAO,CAAE4sD,QAAS,IAC7B,MAAMqC,GAAa5hD,eAAevS,EAAKo0D,EAAav3C,EAAQw3C,EAAmB,SAC5EC,OAAkB,EAAQjvC,EAAU,CAAC,EAAGysC,EAAU,GACnD,IAAIxsD,EAYJ,OAVEA,EADE8uD,aAAuBG,KAClBH,QAEMA,IAEXE,IACFjvC,EAAQC,YAAcgvC,GAEnBjvC,EAAQ,kBACXA,EAAQ,gBAAkB,kCAEf,KAAM4tC,QAAQ,CACzBl4C,OAAQ,MACR/a,MACAsF,OACAuX,SACAw3C,mBACAhvC,UACA,cAAe,CACbysC,UACAE,WAAY,CAACW,EAAY9qD,IAAU4pD,EAAiBkB,EAAY9qD,EAAO,OAG7E,EACM2sD,GAAW,SAAS58C,EAAM8I,EAAOxoB,GACrC,OAAc,IAAVwoB,GAAe9I,EAAKtV,MAAQpK,EACvBmc,QAAQ2D,QAAQ,IAAIu8C,KAAK,CAAC38C,GAAO,CAAE1V,KAAM0V,EAAK1V,MAAQ,8BAExDmS,QAAQ2D,QAAQ,IAAIu8C,KAAK,CAAC38C,EAAKjgB,MAAM+oB,EAAOA,EAAQxoB,IAAU,CAAEgK,KAAM,6BAC/E,EAmBMuyD,GAAmB,SAASC,OAAW,GAC3C,MAAMC,EAAe7pD,OAAO8pD,IAAIC,WAAW7hD,OAAO8hD,eAClD,GAAIH,GAAgB,EAClB,OAAO,EAET,IAAKt3D,OAAOs3D,GACV,OAAO,SAET,MAAMI,EAAmBpsD,KAAKsjB,IAAI5uB,OAAOs3D,GAAe,SACxD,YAAiB,IAAbD,EACKK,EAEFpsD,KAAKsjB,IAAI8oC,EAAkBpsD,KAAKqzB,KAAK04B,EAAW,KACzD,EACA,IAAIM,GAA2B,CAAEC,IAC/BA,EAAQA,EAAqB,YAAI,GAAK,cACtCA,EAAQA,EAAmB,UAAI,GAAK,YACpCA,EAAQA,EAAoB,WAAI,GAAK,aACrCA,EAAQA,EAAkB,SAAI,GAAK,WACnCA,EAAQA,EAAmB,UAAI,GAAK,YACpCA,EAAQA,EAAgB,OAAI,GAAK,SAC1BA,GAPsB,CAQ5BD,IAAY,CAAC,GAChB,MAAME,GACJC,QACAC,MACAC,WACAC,QACAC,MACAC,UAAY,EACZC,WAAa,EACbC,QAAU,EACVC,YACAC,UAAY,KACZ,WAAAx+C,CAAYjE,EAAQ0iD,GAAU,EAAOvzD,EAAMsV,GACzC,MAAMk+C,EAASntD,KAAKC,IAAI6rD,KAAqB,EAAI9rD,KAAKqzB,KAAK15B,EAAOmyD,MAAsB,EAAG,KAC3Fj+D,KAAK2+D,QAAUhiD,EACf3c,KAAK6+D,WAAaQ,GAAWpB,KAAqB,GAAKqB,EAAS,EAChEt/D,KAAK8+D,QAAU9+D,KAAK6+D,WAAaS,EAAS,EAC1Ct/D,KAAK++D,MAAQjzD,EACb9L,KAAK4+D,MAAQx9C,EACbphB,KAAKm/D,YAAc,IAAIp5C,eACzB,CACA,UAAIpJ,GACF,OAAO3c,KAAK2+D,OACd,CACA,QAAIv9C,GACF,OAAOphB,KAAK4+D,KACd,CACA,aAAIW,GACF,OAAOv/D,KAAK6+D,UACd,CACA,UAAIS,GACF,OAAOt/D,KAAK8+D,OACd,CACA,QAAIhzD,GACF,OAAO9L,KAAK++D,KACd,CACA,aAAIS,GACF,OAAOx/D,KAAKi/D,UACd,CACA,YAAIhuD,CAASA,GACXjR,KAAKo/D,UAAYnuD,CACnB,CACA,YAAIA,GACF,OAAOjR,KAAKo/D,SACd,CACA,YAAIK,GACF,OAAOz/D,KAAKg/D,SACd,CAIA,YAAIS,CAAS/9D,GACX,GAAIA,GAAU1B,KAAK++D,MAGjB,OAFA/+D,KAAKk/D,QAAUl/D,KAAK6+D,WAAa,EAAI,OACrC7+D,KAAKg/D,UAAYh/D,KAAK++D,OAGxB/+D,KAAKk/D,QAAU,EACfl/D,KAAKg/D,UAAYt9D,EACO,IAApB1B,KAAKi/D,aACPj/D,KAAKi/D,YAAa,IAAqBjxD,MAAQi0B,UAEnD,CACA,UAAI5a,GACF,OAAOrnB,KAAKk/D,OACd,CAIA,UAAI73C,CAAOA,GACTrnB,KAAKk/D,QAAU73C,CACjB,CAIA,UAAIhB,GACF,OAAOrmB,KAAKm/D,YAAY94C,MAC1B,CAIA,MAAAjY,GACEpO,KAAKm/D,YAAYj5C,QACjBlmB,KAAKk/D,QAAU,CACjB,EAEF,MACMQ,GAAyBnsB,GAAM,wBAAyBj/B,QAAUi/B,aAAaosB,oBAC/EC,GAAqBrsB,GAAM,oBAAqBj/B,QAAUi/B,aAAassB,gBAC7E,MAAMl/C,WAAkB1B,KACtB6gD,cACAC,MACApgD,UACA,WAAAiB,CAAY1V,GACV4V,MAAM,IAAI,QAAS5V,GAAO,CAAEQ,KAAM,uBAAwBuV,aAAc,IACxEjhB,KAAK2f,UAA4B,IAAIqgD,IACrChgE,KAAK8/D,eAAgB,QAAS50D,GAC9BlL,KAAK+/D,MAAQ70D,CACf,CACA,QAAIY,GACF,OAAO9L,KAAKyf,SAAS7W,QAAO,CAACq3D,EAAK7+C,IAAS6+C,EAAM7+C,EAAKtV,MAAM,EAC9D,CACA,gBAAImV,GACF,OAAOjhB,KAAKyf,SAAS7W,QAAO,CAACs3D,EAAQ9+C,IAASjP,KAAKsjB,IAAIyqC,EAAQ9+C,EAAKH,eAAe,EACrF,CAEA,gBAAIk/C,GACF,OAAOngE,KAAK8/D,aACd,CACA,YAAIrgD,GACF,OAAO7d,MAAM6uB,KAAKzwB,KAAK2f,UAAU3C,SACnC,CACA,sBAAI4tB,GACF,OAAO5qC,KAAK+/D,KACd,CACA,QAAAK,CAASp/D,GACP,OAAOhB,KAAK2f,UAAUxO,IAAInQ,IAAS,IACrC,CAKA,iBAAMq/D,CAAY7jD,GAChB,IAAK,MAAM4E,KAAQ5E,QACXxc,KAAKsgE,SAASl/C,EAExB,CAMA,cAAMk/C,CAASl/C,GACb,MAAM5F,EAAWxb,KAAK+/D,OAAS,GAAG//D,KAAK+/D,SACvC,GAAIL,GAAsBt+C,GACxBA,QAAa,IAAIvD,SAAQ,CAAC2D,EAASC,IAAWL,EAAKA,KAAKI,EAASC,UAC5D,GAlD+B,6BAA8BnN,QAkD9B8M,aAlDqDm/C,yBAkD9C,CAC3C,MAAMC,EAASp/C,EAAKQ,eACdvb,QAAgB,IAAIwX,SAAQ,CAAC2D,EAASC,IAAW++C,EAAO1+C,YAAYN,EAASC,KAC7EpH,EAAQ,IAAIsG,GAAU,GAAGnF,IAAW4F,EAAKpgB,QAG/C,aAFMqZ,EAAMgmD,YAAYh6D,QACxBrG,KAAK2f,UAAUQ,IAAIiB,EAAKpgB,KAAMqZ,EAEhC,CAEA,MAAMomD,EAAWr/C,EAAKwpB,oBAAsBxpB,EAAKpgB,KACjD,GAAKy/D,EAAS14D,SAAS,KAEhB,CACL,IAAK04D,EAASzlD,WAAWhb,KAAK+/D,OAC5B,MAAM,IAAI3uD,MAAM,QAAQqvD,uBAA8BzgE,KAAK+/D,SAE7D,MAAMW,EAAUD,EAASt/D,MAAMqa,EAAS9Z,QAClCV,GAAO,QAAS0/D,GACtB,GAAI1/D,IAAS0/D,EACX1gE,KAAK2f,UAAUQ,IAAInf,EAAMogB,OACpB,CACL,MAAMtW,EAAO41D,EAAQv/D,MAAM,EAAGu/D,EAAQp8D,QAAQ,MAC9C,GAAItE,KAAK2f,UAAUrgB,IAAIwL,SACf9K,KAAK2f,UAAUxO,IAAIrG,GAAMw1D,SAASl/C,OACnC,CACL,MAAM/G,EAAQ,IAAIsG,GAAU,GAAGnF,IAAW1Q,WACpCuP,EAAMimD,SAASl/C,GACrBphB,KAAK2f,UAAUQ,IAAIrV,EAAMuP,EAC3B,CACF,CACF,MAnBEra,KAAK2f,UAAUQ,IAAIiB,EAAKpgB,KAAMogB,EAoBlC,EAEF,MAAMu/C,IAAY,SAAoBC,eACtC,CAAC,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gBAAiB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mHAAqH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0FAA4F,OAAU,CAAC,wSAA0S,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,2CAA6C,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,2CAA6C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,oDAAsD,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,qBAAsB,qBAAsB,yBAA0B,qBAAsB,wBAAyB,0BAA4B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,kCAAmC,kCAAmC,sCAAuC,kCAAmC,qCAAsC,uCAAyC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,6BAA+B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,iDAAmD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,4EAA8E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,8BAAgC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8BAAgC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,oBAAqB,oBAAqB,oBAAqB,oBAAqB,oBAAqB,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,eAAiB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,mBAAqB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,oBAAsB,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,8BAAgC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,qEAAuE,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,oGAAsG,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,wCAA0C,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,uEAAyE,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+DAAqE,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oCAAqC,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uDAAyD,OAAU,CAAC,6OAA+O,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,8BAA+B,iCAAmC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,2CAA4C,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,6BAA+B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,+FAAiG,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qDAAuD,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,2BAA6B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,0CAA4C,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,sCAAwC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,kCAAoC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,gFAAsF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iDAAkD,gBAAiB,oEAAqE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oEAAsE,OAAU,CAAC,2PAA6P,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAA6B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0KAA4K,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4WAA8W,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kPAAoP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kPAAoP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mUAAqU,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,igBAAmgB,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,ySAA2S,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qDAAsD,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qHAAuH,OAAU,CAAC,2PAA6P,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,4BAA8B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gDAAiD,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gHAAkH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kMAAoM,OAAU,CAAC,2VAA6V,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,mEAAqE,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,8CAAgD,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,sEAAwE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,yBAA0B,yBAA0B,2BAA6B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,qCAAsC,qCAAsC,uCAAyC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,iDAAmD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,iFAAmF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAoC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,wCAA0C,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,qCAAuC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,yBAA0B,4BAA6B,4BAA6B,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,2BAA6B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,4BAA8B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,uCAAyC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6FAA+F,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,mHAAqH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,uCAAyC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,0EAA4E,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,2FAAiG,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,6EAA+E,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iSAAmS,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wCAAyC,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,6GAA+G,OAAU,CAAC,6OAA+O,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,oDAAsD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,uCAAyC,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,2DAA6D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,uBAAwB,6BAA+B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,mCAAoC,yCAA2C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,6BAA+B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,6CAA+C,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,kGAAoG,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAsC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,gBAAkB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,+BAAiC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qBAAuB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,iCAAmC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,gBAAkB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,wBAAyB,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,qBAAuB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,mCAAqC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,iDAAmD,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,sBAAwB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,+FAAiG,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,2IAA6I,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,uCAAyC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,uFAAyF,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,sEAA4E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oDAAqD,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qKAAuK,OAAU,CAAC,yPAA2P,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,2DAA6D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,6CAA+C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,qEAAuE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,sCAAuC,yCAA2C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,kCAAoC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,mCAAqC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,mDAAqD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,qGAAuG,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qCAAuC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,uCAAyC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,2BAA4B,iCAAmC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,oCAAsC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,qCAAuC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,oDAAsD,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,+BAAiC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,wHAA0H,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,gJAAkJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAA2C,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,2GAA6G,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,iFAAuF,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kDAAmD,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yIAA2I,OAAU,CAAC,uQAAyQ,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,2DAA6D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,6CAA+C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,qEAAuE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,sCAAuC,yCAA2C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,kCAAoC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,mCAAqC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,mDAAqD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,sGAAwG,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qCAAuC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,uCAAyC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,6BAA8B,iCAAmC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,oCAAsC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,qCAAuC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,oDAAsD,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,+BAAiC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,wHAA0H,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,gJAAkJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAA2C,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,4GAA8G,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,mFAAyF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gBAAiB,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mCAAqC,OAAU,CAAC,oNAAsN,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,qCAAuC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,gCAAkC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,4BAAkC,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,oFAAqF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kFAAoF,OAAU,CAAC,sQAAwQ,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,oDAAsD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,0CAA4C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,6DAA+D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,wBAAyB,2BAA6B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,wCAA0C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,gBAAkB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAqB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,6CAA+C,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,yFAA2F,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+BAAiC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8BAAgC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,iBAAkB,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8BAAgC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,4BAA8B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,0CAA4C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,oBAAsB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,mGAAqG,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,2IAA6I,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAuC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,kFAAoF,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,0EAAgF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2GAA6G,OAAU,CAAC,qQAAuQ,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,uEAAyE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,+BAAgC,gCAAiC,kCAAoC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,6CAA8C,+CAAiD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,+BAAiC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,+FAAiG,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,+BAAiC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,6CAA+C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,mDAAqD,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,0CAA4C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,0BAA2B,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,0BAA4B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,uHAAyH,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,wJAA0J,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,mCAAqC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8EAAoF,CAAE,OAAU,SAAU,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,oFAAqF,eAAgB,4BAA6B,SAAY,SAAU,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8RAAgS,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAA6B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kDAAmD,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2FAA6F,OAAU,CAAC,iTAAmT,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,uEAAyE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,+BAAgC,gCAAiC,kCAAoC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,6CAA8C,+CAAiD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,+BAAiC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,yFAA2F,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,+BAAiC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,6CAA+C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,mDAAqD,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,0CAA4C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,0BAA2B,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,6BAA+B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,oBAAsB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,yBAA2B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,gIAAkI,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sJAAwJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,mCAAqC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8EAAoF,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,oRAAsR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,yRAA2R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,wFAAyF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iSAAmS,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sRAAwR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wRAA0R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oCAAqC,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,6EAA+E,OAAU,CAAC,gSAAkS,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,uEAAyE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,+BAAgC,gCAAiC,kCAAoC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,6CAA8C,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,+BAAiC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,yFAA2F,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,+BAAiC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,6CAA+C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,mDAAqD,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,0CAA4C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,0BAA2B,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,0BAA4B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6HAA+H,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sJAAwJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,sCAAwC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8EAAoF,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wRAA0R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qRAAuR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,0EAA2E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,mRAAqR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0RAA4R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0RAA4R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sRAAwR,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oDAAsD,OAAU,CAAC,0OAA4O,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,kCAAoC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oDAAqD,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uEAAyE,OAAU,CAAC,yPAA2P,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oCAAsC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,uCAAyC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2CAA6C,OAAU,CAAC,6NAA+N,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,yBAA2B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,eAAiB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,oBAAsB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,iCAAmC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,eAAgB,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oHAAsH,OAAU,CAAC,qOAAuO,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,4DAA8D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,6CAA+C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,kEAAoE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,+BAAgC,iCAAmC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,mDAAoD,qDAAuD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAyB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,8CAAgD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,8EAAgF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mCAAqC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,oBAAsB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,iCAAmC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,6CAA+C,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,mCAAqC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,uBAAyB,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,wBAA0B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,8CAAgD,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,2BAA6B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6FAA+F,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,mIAAqI,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,sCAAwC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,gGAAkG,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,sFAA4F,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kIAAoI,OAAU,CAAC,gRAAkR,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,8DAAgE,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,iDAAmD,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,+EAA+E,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,6BAA8B,8BAA+B,gCAAkC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,6CAA8C,+CAAiD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,+BAAiC,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,2DAA6D,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,gGAAkG,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kDAAoD,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,2CAA6C,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,6CAA+C,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4CAA8C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAsB,2BAA4B,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,4BAA8B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kCAAoC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,kCAAoC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,gDAAkD,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,iCAAmC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,qHAAuH,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sJAAwJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,8CAAgD,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,kGAAoG,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,uFAA6F,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gCAAiC,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,sEAAwE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mDAAqD,OAAU,CAAC,0QAA4Q,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,4DAA8D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,iDAAmD,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,0EAA2E,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,4BAA6B,6BAA8B,6BAA8B,6BAA8B,+BAAiC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,wCAAyC,yCAA0C,yCAA0C,yCAA0C,2CAA6C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,iCAAmC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,wBAA0B,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8CAAgD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,iEAAmE,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,mFAAqF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,wCAA0C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAsB,yBAA0B,yBAA0B,yBAA0B,2BAA6B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,oCAAsC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,0BAA4B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,sCAAwC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,4BAA8B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,4GAA8G,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sJAAwJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,+CAAiD,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,mGAAqG,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,gGAAsG,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,yEAA0E,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,6FAA+F,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qSAAuS,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iDAAkD,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0FAA4F,OAAU,CAAC,wPAA0P,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,+DAAiE,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,8CAAgD,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,4EAA8E,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,gCAAiC,mCAAqC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,6CAA8C,gDAAkD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,6BAA+B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,6DAA+D,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,8FAAgG,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oCAAsC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,4CAA8C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,0BAA4B,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,wCAA0C,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,8CAAgD,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yCAA2C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,+BAAiC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,0BAA4B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,wBAA0B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,sCAAwC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,sBAAwB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,2GAA6G,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,gJAAkJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,mCAAqC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,wFAA0F,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,kFAAwF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8HAAgI,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4TAA8T,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,yEAA0E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,2OAA6O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,wGAA0G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wSAA0S,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,uEAAwE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,oFAAsF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,2RAA6R,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kDAAmD,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2FAA6F,OAAU,CAAC,0QAA4Q,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,8CAAgD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,oCAAsC,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,6DAA+D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,iCAAkC,oCAAsC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,wDAAyD,yDAA2D,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,6BAA+B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,mBAAqB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,kDAAoD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,+EAAiF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,uCAAyC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,eAAiB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,cAAgB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,oCAAsC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,qCAAuC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,6BAA+B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,yCAA2C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,wBAA0B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,gGAAkG,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sHAAwH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,sCAAwC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,qFAAuF,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+EAAqF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,gOAAkO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,oEAAqE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,mOAAqO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oCAAqC,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,+HAAiI,OAAU,CAAC,sOAAwO,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,8BAAgC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,4BAA8B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,kFAAoF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+CAAiD,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,8BAAgC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,8CAAgD,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8FAAoG,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6DAA8D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qNAAuN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,sDAAwD,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4DAA8D,OAAU,CAAC,uQAAyQ,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,wCAA0C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,2BAA6B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,+FAAiG,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,cAAgB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,mBAAqB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,qCAAuC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,sBAAuB,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,0CAA4C,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,2FAAiG,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wDAAyD,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yHAA2H,OAAU,CAAC,qSAAuS,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,uDAAyD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,2CAA6C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,6EAA8E,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,4BAA6B,4BAA6B,8BAAgC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,yCAA0C,yCAA0C,2CAA6C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,0BAA4B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,0DAA4D,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,2FAA6F,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAkC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,+BAAiC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,qCAAuC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,oBAAqB,qBAAsB,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,0BAA4B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,mCAAqC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,iDAAmD,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,8BAAgC,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,sHAAwH,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,8JAAgK,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,+BAAiC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,+EAAiF,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,yEAA+E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uHAAyH,OAAU,CAAC,iOAAmO,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,wCAA0C,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,mCAAqC,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,4CAA8C,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,qBAAuB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,uCAAyC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAmB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,SAAW,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,YAAc,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,wCAA0C,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,yCAA2C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,aAAe,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,YAAc,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,aAAe,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,aAAe,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,YAAc,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,UAAY,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,UAAY,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,gBAAkB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAkB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,kBAAoB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,sBAAwB,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,qBAAuB,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,iCAAmC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,eAAiB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,2CAA6C,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,qDAAuD,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,mBAAqB,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,oDAAsD,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,gDAAsD,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8OAAgP,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gBAAiB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mCAAqC,OAAU,CAAC,uNAAyN,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oCAAsC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,wBAA0B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,iCAAmC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,iBAAmB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAA4B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4NAA8N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sNAAwN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,YAAa,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qDAAuD,OAAU,CAAC,0MAA4M,yEAA0E,CAAE,MAAS,yEAA0E,OAAU,CAAC,8CAAgD,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,sBAAwB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,kCAAoC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,kBAAoB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,WAAa,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,WAAa,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,2CAA6C,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,cAAgB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kBAAoB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,aAAe,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,eAAiB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,iBAAmB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,eAAiB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,WAAa,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,YAAc,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,2CAA6C,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,6DAA+D,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qBAAuB,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,6CAAmD,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6NAA+N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,sEAAuE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qOAAuO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4DAA6D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,oNAAsN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mKAAqK,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uXAAyX,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mEAAqE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kQAAoQ,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,8CAA+C,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8DAAgE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,iEAAmE,OAAU,CAAC,qRAAuR,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,oCAAsC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,uBAAyB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,6BAAmC,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,0BAA2B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,6CAA+C,OAAU,CAAC,kOAAoO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,4BAA8B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,mCAAqC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAA0B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uOAAyO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wNAA0N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,sBAAuB,gBAAiB,qFAAsF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,+DAAiE,OAAU,CAAC,oPAAsP,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,oDAAsD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,uCAAyC,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,2DAA6D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,wBAAyB,0BAA4B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,qCAAsC,sCAAwC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAA2B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,4CAA8C,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,6FAA+F,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+BAAiC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,cAAgB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,iCAAmC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,iBAAkB,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,+BAAiC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,gCAAkC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,4CAA8C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,0BAA4B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,gGAAkG,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,8HAAgI,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,iCAAmC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,gGAAkG,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,kEAAwE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uCAAwC,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0DAA4D,OAAU,CAAC,2OAA6O,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,qCAAuC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,sFAAuF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wPAA0P,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0OAA4O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,4CAA6C,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,kLAAoL,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qFAAuF,OAAU,CAAC,mYAAqY,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,uDAAyD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,8CAAgD,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,oEAAsE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,mBAAoB,4BAA6B,4BAA6B,8BAAgC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,uCAAwC,2CAA4C,2CAA4C,6CAA+C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,+BAAiC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,sDAAwD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,uFAAyF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,wCAA0C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,kCAAoC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,uCAAyC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,eAAgB,uBAAwB,uBAAwB,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kCAAoC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,kCAAoC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,6CAA+C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,qBAAuB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,0HAA4H,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,mJAAqJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,iCAAmC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,6EAA+E,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+EAAqF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qBAAsB,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qMAAuM,OAAU,CAAC,gSAAkS,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,wDAA0D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,+CAAiD,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,uEAAyE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,+BAAgC,+BAAgC,iCAAmC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,4CAA6C,4CAA6C,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,iCAAmC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,8DAAgE,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,mGAAqG,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,4CAA8C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA2B,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,sCAAwC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,2CAA6C,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,sCAAwC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,2BAA4B,2BAA4B,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,2BAA6B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,wBAA0B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,wCAA0C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,8FAAgG,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,0IAA4I,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,uCAAyC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,kFAAoF,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,sFAA4F,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,sCAAuC,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yDAA2D,OAAU,CAAC,mTAAqT,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,kBAAoB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA+B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qDAAsD,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yEAA2E,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,wEAA0E,OAAU,CAAC,qSAAuS,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA8B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kBAAmB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0KAA4K,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4JAA8J,OAAU,CAAC,kWAAoW,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,uDAAyD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,6CAA+C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,wDAA0D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,yBAA0B,0BAA2B,0BAA2B,4BAA8B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,uCAAwC,wCAAyC,wCAAyC,0CAA4C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,8BAAgC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,8BAAgC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,wDAA0D,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,+EAAiF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,mBAAqB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gBAAkB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,mCAAqC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAmB,2BAA4B,4BAA6B,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,2BAA6B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,4BAA8B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,uCAAyC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,sBAAwB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,0FAA4F,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,gIAAkI,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAuC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,kFAAoF,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,qFAA2F,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,4CAA6C,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,2GAA6G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,sGAAwG,OAAU,CAAC,6UAA+U,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,0DAA4D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,wCAA0C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,2DAA6D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,4BAA6B,+BAAgC,8BAA+B,gCAAkC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,wCAAyC,yCAA0C,4CAA6C,8CAAgD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,6BAA+B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,sBAAwB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,mCAAqC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,mDAAqD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,4EAA8E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,mCAAqC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,eAAiB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,oCAAsC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,oCAAsC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,wBAAyB,2BAA4B,4BAA6B,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,4BAA8B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,+BAAiC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,0CAA4C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,0FAA4F,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,8HAAgI,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,kCAAoC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,mEAAqE,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+EAAqF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qBAAsB,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,oFAAsF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0GAA4G,OAAU,CAAC,iRAAmR,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,sDAAwD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,4CAA8C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,wDAA0D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,mCAAoC,mCAAoC,kCAAmC,mCAAqC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,6CAA8C,8CAA+C,4CAA6C,2CAA6C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,wBAA0B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,8BAAgC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,wBAA0B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,qDAAuD,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,mFAAqF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAoC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,iCAAmC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kCAAoC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAsB,4BAA6B,2BAA4B,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAkB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,iCAAmC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,iCAAmC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,4CAA8C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,uFAAyF,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,oHAAsH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAuC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,2EAA6E,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,yEAA+E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,gOAAkO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4DAA8D,OAAU,CAAC,mSAAqS,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,oDAAsD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,uCAAyC,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,+DAAiE,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,wBAAyB,yBAA0B,2BAA6B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,oCAAqC,qCAAsC,uCAAyC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mCAAqC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,kCAAoC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,iCAAmC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,uBAAyB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,iBAAmB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,4DAA8D,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,sCAAwC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qCAAuC,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,kCAAoC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,6BAA+B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,qBAAsB,yBAA0B,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,0BAA4B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,4BAA8B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,sCAAwC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,wGAA0G,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,2HAA6H,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,qCAAuC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,8FAAgG,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,2EAAiF,CAAE,OAAU,WAAY,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,WAAY,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6TAA+T,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,gEAAkE,OAAU,CAAC,6NAA+N,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,sDAAwD,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,wCAA0C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,4DAA8D,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,sBAAuB,0BAA4B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,kCAAmC,sCAAwC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,4BAA8B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAA2B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,4CAA8C,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,mGAAqG,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAkC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,4BAA8B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,+BAAiC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,uBAAwB,6BAA+B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,gCAAkC,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,mCAAqC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,iDAAmD,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,wBAA0B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,iFAAmF,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,sHAAwH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,iCAAmC,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,iGAAmG,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,wEAA8E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6NAA+N,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oDAAqD,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uEAAyE,OAAU,CAAC,iQAAmQ,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,8BAAgC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,gCAAkC,OAAU,CAAC,oBAAsB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAA0B,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kFAAoF,OAAU,CAAC,8OAAgP,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,0DAA4D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,8CAAgD,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,yEAA2E,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,8BAA+B,gCAAkC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,mDAAoD,qDAAuD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,2BAA6B,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,wBAA0B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAA2B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,4CAA8C,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,qEAAuE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,uCAAyC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,+BAAiC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAmB,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,qBAAuB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,mBAAqB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,yBAA2B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,oBAAsB,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,6CAA+C,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,mFAAqF,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,+GAAiH,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,yCAA2C,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,6FAA+F,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,qEAA2E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,2CAA4C,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8PAAgQ,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oFAAsF,OAAU,CAAC,idAAmd,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,4DAA6D,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,6CAA+C,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,6EAA+E,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,2BAA4B,4BAA6B,6BAA8B,+BAAiC,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,gDAAiD,iDAAkD,kDAAmD,oDAAsD,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,gCAAkC,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,6BAA+B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,2BAA6B,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,mBAAqB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,yDAA0D,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,gFAAkF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAoC,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,wBAA0B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gBAAkB,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,+BAAiC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,2BAA6B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAmB,2BAA4B,4BAA6B,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,yBAA2B,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,2BAA6B,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,2BAA6B,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,sCAAwC,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,wBAA0B,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,oFAAsF,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,qJAAuJ,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,wBAA0B,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,iFAAmF,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,kFAAwF,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6OAA+O,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sNAAwN,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,KAAO,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,KAAO,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,KAAO,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,KAAO,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,KAAO,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,KAAO,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,KAAO,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yFAA2F,OAAU,CAAC,yNAA2N,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,6BAA+B,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,wCAA0C,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,sBAAwB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,mBAAqB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,gBAAkB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,uFAAyF,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,mCAAqC,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,gCAAkC,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,2BAA6B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,iBAAmB,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,8BAAgC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,uEAA6E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4DAA8D,OAAU,CAAC,gOAAkO,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,+BAAiC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,2BAA6B,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,iCAAmC,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,gBAAkB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,+BAAiC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,OAAS,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,2BAA6B,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,iCAAmC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,eAAiB,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,cAAgB,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,iBAAmB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,WAAa,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,UAAY,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,UAAY,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,UAAY,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,UAAY,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,oBAAsB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,SAAW,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,+BAAiC,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,mCAAqC,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,cAAgB,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,2BAA6B,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,uBAA6B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4DAA8D,OAAU,CAAC,oOAAsO,kDAAmD,CAAE,MAAS,kDAAmD,OAAU,CAAC,gCAAkC,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,4BAA8B,2DAA4D,CAAE,MAAS,2DAA4D,OAAU,CAAC,iCAAmC,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,kBAAoB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,+BAAiC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,QAAU,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,2BAA6B,uFAAwF,CAAE,MAAS,uFAAwF,OAAU,CAAC,4BAA8B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,WAAa,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,aAAe,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,mBAAqB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,UAAY,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,UAAY,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,WAAa,0BAA2B,CAAE,MAAS,0BAA2B,OAAU,CAAC,WAAa,wCAAyC,CAAE,MAAS,wCAAyC,OAAU,CAAC,uBAAyB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,SAAW,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6BAA+B,yIAA0I,CAAE,MAAS,yIAA0I,OAAU,CAAC,kCAAoC,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,cAAgB,gFAAiF,CAAE,MAAS,gFAAiF,OAAU,CAAC,8BAAgC,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,8BAAoC,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iCAAkC,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0EAA4E,OAAU,CAAC,+OAAiP,wBAAyB,CAAE,MAAS,wBAAyB,aAAgB,yBAA0B,OAAU,CAAC,kBAAoB,qCAAsC,CAAE,MAAS,qCAAsC,aAAgB,sCAAuC,OAAU,CAAC,+BAAiC,yBAA0B,CAAE,MAAS,yBAA0B,OAAU,CAAC,mBAAqB,cAAe,CAAE,MAAS,cAAe,SAAY,CAAE,UAAa,4CAA8C,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,8BAA+B,CAAE,MAAS,8BAA+B,OAAU,CAAC,WAAa,iBAAkB,CAAE,MAAS,iBAAkB,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,OAAS,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,qFAAsF,CAAE,MAAS,qFAAsF,OAAU,CAAC,6BAA+B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,aAAe,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,cAAe,CAAE,MAAS,cAAe,OAAU,CAAC,QAAU,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,QAAU,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,aAAe,4BAA6B,CAAE,MAAS,4BAA6B,OAAU,CAAC,aAAe,uBAAwB,CAAE,MAAS,uBAAwB,OAAU,CAAC,YAAc,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,qBAAsB,OAAU,CAAC,kBAAoB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,SAAW,iGAAkG,CAAE,MAAS,iGAAkG,OAAU,CAAC,6BAA+B,mCAAoC,CAAE,MAAS,mCAAoC,OAAU,CAAC,cAAgB,oEAAqE,CAAE,MAAS,oEAAqE,OAAU,CAAC,+BAAoC95D,KAAKgI,GAAS6xD,GAAUE,eAAe/xD,EAAKgyD,OAAQhyD,EAAKiyD,QACrznS,MAAMC,GAAKL,GAAUjyD,QACfsP,GAAIgjD,GAAGC,SAASxe,KAAKue,IACrBpxD,GAAIoxD,GAAGE,QAAQze,KAAKue,IAC1B,IAAIG,GAAyB,CAAE1C,IAC7BA,EAAQA,EAAc,KAAI,GAAK,OAC/BA,EAAQA,EAAmB,UAAI,GAAK,YACpCA,EAAQA,EAAgB,OAAI,GAAK,SAC1BA,GAJoB,CAK1B0C,IAAU,CAAC,GACd,MAAMC,GAEJC,mBACAC,UACAC,eAEAC,aAAe,GACfC,UAAY,IAAI,IAAO,CAGrBv+C,aAAa,SAAkB1G,OAAOklD,gBAAgBC,oBAAsB,IAE9EC,WAAa,EACbC,eAAiB,EACjBC,aAAe,EACfC,WAAa,GAOb,WAAAnhD,CAAYohD,GAAW,EAAOC,GAG5B,GAFAjiE,KAAKshE,UAAYU,EACjBhiE,KAAKuhE,eAAiB,CAAC,GAClBU,EAAmB,CACtB,MAAMtlD,EAAS,GAAG,OAAe,OACjC,IAAIuC,EACJ,GAAI8iD,EACF9iD,EAAQ,gBACH,CACL,MAAMs5C,GAAO,WAAkB3jD,IAC/B,IAAK2jD,EACH,MAAM,IAAIpnD,MAAM,yBAElB8N,EAAQs5C,CACV,CACAyJ,EAAoB,IAAI,KAAO,CAC7BlpD,GAAI,EACJmG,QACAjE,YAAa,KAAWoI,IACxBtI,KAAM,KACN4B,UAEJ,CACA3c,KAAKuiB,YAAc0/C,EACnB3wD,GAAO4H,MAAM,+BAAgC,CAC3CqJ,YAAaviB,KAAKuiB,YAClBxH,KAAM/a,KAAK+a,KACXinD,WACAE,cAAejE,MAEnB,CAIA,eAAI17C,GACF,OAAOviB,KAAKqhE,kBACd,CAIA,eAAI9+C,CAAYhD,GACd,IAAKA,GAAUA,EAAO7T,OAAS,KAASgT,SAAWa,EAAO5C,OACxD,MAAM,IAAIvL,MAAM,8BAElBE,GAAO4H,MAAM,kBAAmB,CAAEqG,WAClCvf,KAAKqhE,mBAAqB9hD,CAC5B,CAIA,QAAIxE,GACF,OAAO/a,KAAKqhE,mBAAmB1kD,MACjC,CAIA,iBAAIwlD,GACF,OAAOC,gBAAgBpiE,KAAKuhE,eAC9B,CAMA,eAAAc,CAAgBrhE,EAAMoE,EAAQ,IAC5BpF,KAAKuhE,eAAevgE,GAAQoE,CAC9B,CAKA,oBAAAk9D,CAAqBthE,UACZhB,KAAKuhE,eAAevgE,EAC7B,CAIA,SAAI0f,GACF,OAAO1gB,KAAKwhE,YACd,CACA,KAAAlhD,GACmC,IAA7BtgB,KAAKwhE,aAAa9/D,QAAwC,IAAxB1B,KAAKyhE,UAAU31D,OAGrD9L,KAAKwhE,aAAa/nB,OAAO,EAAGz5C,KAAKwhE,aAAa9/D,QAC9C1B,KAAKyhE,UAAUvzD,QACflO,KAAK4hE,WAAa,EAClB5hE,KAAK6hE,eAAiB,EACtB7hE,KAAK8hE,aAAe,EACpBxwD,GAAO4H,MAAM,wBACf,CAIA,KAAA+Q,GACEjqB,KAAKyhE,UAAUx3C,QACfjqB,KAAK8hE,aAAe,CACtB,CAIA,KAAA53C,GACElqB,KAAKyhE,UAAUv3C,QACflqB,KAAK8hE,aAAe,EACpB9hE,KAAKuiE,aACP,CAIA,QAAIz/C,GACF,MAAO,CACLhX,KAAM9L,KAAK4hE,WACXvjB,SAAUr+C,KAAK6hE,eACfx6C,OAAQrnB,KAAK8hE,aAEjB,CACA,WAAAS,GACE,MAAMz2D,EAAO9L,KAAKwhE,aAAa16D,KAAK07D,GAAYA,EAAQ12D,OAAMlD,QAAO,CAAC65D,EAAY97D,IAAM87D,EAAa97D,GAAG,GAClG84D,EAAWz/D,KAAKwhE,aAAa16D,KAAK07D,GAAYA,EAAQ/C,WAAU72D,QAAO,CAAC65D,EAAY97D,IAAM87D,EAAa97D,GAAG,GAChH3G,KAAK4hE,WAAa91D,EAClB9L,KAAK6hE,eAAiBpC,EACI,IAAtBz/D,KAAK8hE,eAGT9hE,KAAK8hE,aAAe9hE,KAAKyhE,UAAU31D,KAAO,EAAI,EAAI,EACpD,CACA,WAAA42D,CAAYC,GACV3iE,KAAK+hE,WAAWvhE,KAAKmiE,EACvB,CAKA,UAAAC,CAAWJ,GACT,IAAK,MAAMG,KAAY3iE,KAAK+hE,WAC1B,IACEY,EAASH,EACX,CAAE,MAAOnxD,GACPC,GAAOmY,KAAK,2BAA4B,CAAEpY,QAAOsL,OAAQ6lD,EAAQ7lD,QACnE,CAEJ,CAgCA,WAAAkmD,CAAYtgD,EAAa/F,EAAO3P,GAI9B,OAHKA,IACHA,EAAWkP,MAAO+mD,GAAWA,GAExB,IAAIpJ,GAAY39C,MAAOyF,EAASC,EAAQwE,KAC7C,MAAM88C,EAAa,IAAIpiD,GAAU,UAC3BoiD,EAAW1C,YAAY7jD,GAC7B,MAAMvG,EAAS,GAAGjW,KAAK+a,KAAKxU,QAAQ,MAAO,OAAOgc,EAAYhc,QAAQ,MAAO,MACvEi8D,EAAU,IAAI9D,GAAOzoD,GAAQ,EAAO,EAAG8sD,GAC7CP,EAAQn7C,OAASm3C,GAASwE,UAC1BhjE,KAAKwhE,aAAahhE,KAAKgiE,GACvBlxD,GAAO4H,MAAM,4BAA6B,CAAEjD,WAC5C,IACE,MAAMyF,GAAS,QAAa1b,KAAK+a,KAAM/a,KAAKuhE,gBACtCh6C,EAAUvnB,KAAKijE,gBAAgB1gD,EAAawgD,EAAYl2D,EAAU6O,GACxEuK,GAAS,IAAMsB,EAAQnZ,WACvB,MAAMsU,QAAgB6E,EACtBi7C,EAAQn7C,OAASm3C,GAAS0E,SAC1B1hD,EAAQkB,EACV,CAAE,MAAOrR,GACPC,GAAOD,MAAM,wBAAyB,CAAEA,UACxCmxD,EAAQn7C,OAASm3C,GAAS5pC,OAC1BnT,EAAO7R,GAAE,6BACX,CAAE,QACA5P,KAAK4iE,WAAWJ,GAChBxiE,KAAKuiE,aACP,IAEJ,CAOA,eAAAngD,CAAgBG,EAAapB,EAAWzF,GACtC,MAAMynD,GAAa,IAAA9oB,WAAU,GAAG93B,KAAepB,EAAUngB,QAAQuF,QAAQ,MAAO,IAC1EiV,EAAW,GAAGxb,KAAK+a,KAAKxU,QAAQ,MAAO,OAAO48D,EAAW58D,QAAQ,MAAO,MAC9E,IAAK4a,EAAUngB,KACb,MAAM,IAAIoQ,MAAM,kCAElB,MAAMgyD,EAAgB,IAAI1E,GAAOljD,GAAU,EAAO,EAAG2F,GAErD,OADAnhB,KAAKwhE,aAAahhE,KAAK4iE,GAChB,IAAI1J,GAAY39C,MAAOyF,EAASC,EAAQwE,KAC7C,MAAMC,EAAQ,IAAIH,gBAClBE,GAAS,IAAMC,EAAMA,UACrBk9C,EAAc/8C,OAAOrP,iBAAiB,SAAS,IAAMyK,EAAO7R,GAAE,sCACxD5P,KAAKyhE,UAAU3hD,KAAI/D,UACvBqnD,EAAc/7C,OAASm3C,GAASwE,UAChC,UACQtnD,EAAO0G,gBAAgB+gD,EAAY,CAAE98C,OAAQH,EAAMG,SACzD7E,EAAQ4hD,EACV,CAAE,MAAO/xD,GACHA,GAA0B,iBAAVA,GAAsB,WAAYA,GAA0B,MAAjBA,EAAMgW,QACnE+7C,EAAc/7C,OAASm3C,GAAS0E,SAChC5xD,GAAO4H,MAAM,4CAA6C,CAAEiI,UAAWA,EAAUngB,SAEjFoiE,EAAc/7C,OAASm3C,GAAS5pC,OAChCnT,EAAOpQ,GAEX,CAAE,QACArR,KAAK4iE,WAAWQ,GAChBpjE,KAAKuiE,aACP,IACA,GAEN,CAEA,eAAAU,CAAgB1gD,EAAapB,EAAWtU,EAAU6O,GAChD,MAAMynD,GAAa,IAAA9oB,WAAU,GAAG93B,KAAepB,EAAUngB,QAAQuF,QAAQ,MAAO,IAChF,OAAO,IAAImzD,GAAY39C,MAAOyF,EAASC,EAAQwE,KAC7C,MAAMC,EAAQ,IAAIH,gBAClBE,GAAS,IAAMC,EAAMA,UACrB,MAAMm9C,QAA0Bx2D,EAASsU,EAAU1B,SAAU0jD,GAC7D,IAA0B,IAAtBE,EAGF,OAFA/xD,GAAO4H,MAAM,0BAA2B,CAAEiI,mBAC1CM,EAAO7R,GAAE,8BAEJ,GAAiC,IAA7ByzD,EAAkB3hE,QAAgByf,EAAU1B,SAAS/d,OAAS,EAGvE,OAFA4P,GAAO4H,MAAM,wDAAyD,CAAEiI,mBACxEK,EAAQ,IAGV,MAAM8hD,EAAc,GACd5gD,EAAU,GAChBwD,EAAMG,OAAOrP,iBAAiB,SAAS,KACrCssD,EAAYpuD,SAASstD,GAAYA,EAAQp0D,WACzCsU,EAAQxN,SAASstD,GAAYA,EAAQp0D,UAAS,IAEhDkD,GAAO4H,MAAM,yBAA0B,CAAEiI,cACzC,IACMA,EAAUngB,OACZ0hB,EAAQliB,KAAKR,KAAKoiB,gBAAgBG,EAAapB,EAAWzF,UACpDgH,EAAQ8mB,IAAI,IAEpB,IAAK,MAAMpuB,KAAQioD,EACbjoD,aAAgBuF,GAClB2iD,EAAY9iE,KAAKR,KAAKijE,gBAAgBE,EAAY/nD,EAAMvO,EAAU6O,IAElEgH,EAAQliB,KAAKR,KAAKgqB,OAAO,GAAGm5C,KAAc/nD,EAAKpa,OAAQoa,IAK3DoG,EAAQ,OAFsB3D,QAAQC,IAAI4E,YACH7E,QAAQC,IAAIwlD,IACIj7D,OACzD,CAAE,MAAOqgB,GACPxC,EAAMA,MAAMwC,GACZjH,EAAOiH,EACT,IAEJ,CAQA,MAAAsB,CAAOzH,EAAaghD,EAAYxoD,EAAMugD,EAAU,GAE9C,MAAM/1C,EAAkB,IADxBxK,EAAOA,GAAQ/a,KAAK+a,MACYxU,QAAQ,MAAO,OAAOgc,EAAYhc,QAAQ,MAAO,OAC3E,OAAE84B,GAAW,IAAIp1B,IAAIsb,GACrBi+C,EAAyBnkC,GAAS,QAAW9Z,EAAgBpkB,MAAMk+B,EAAO39B,SAkIhF,OAjIA4P,GAAO4H,MAAM,aAAaqqD,EAAWviE,WAAWwiE,KAChC,IAAI9J,GAAY39C,MAAOyF,EAASC,EAAQwE,KAClDy5C,GAAsB6D,KACxBA,QAAmB,IAAI1lD,SAAS4lD,GAAaF,EAAWniD,KAAKqiD,EAAUhiD,MAEzE,MAAML,EAAOmiD,EACPpF,EAAeF,GAAiB,SAAU78C,EAAOA,EAAKtV,UAAO,GAC7D43D,EAAsB1jE,KAAKshE,WAA8B,IAAjBnD,GAAsB,SAAU/8C,GAAQA,EAAKtV,KAAOqyD,EAC5FqE,EAAU,IAAI9D,GAAOn5C,GAAkBm+C,EAAqBtiD,EAAKtV,KAAMsV,GAI7E,GAHAphB,KAAKwhE,aAAahhE,KAAKgiE,GACvBxiE,KAAKuiE,cACLt8C,EAASu8C,EAAQp0D,QACZs1D,EAwEE,CACLpyD,GAAO4H,MAAM,8BAA+B,CAAEkI,OAAM4I,OAAQw4C,IAC5D,MAAMmB,QAAa3F,GAAS58C,EAAM,EAAGohD,EAAQ12D,MACvC2wD,EAAU1gD,UACd,IACEymD,EAAQvxD,eAAiB0sD,GACvB6F,EACAG,EACAnB,EAAQn8C,QACPlmB,IACCqiE,EAAQ/C,SAAW+C,EAAQ/C,SAAWt/D,EAAMyjE,MAC5C5jE,KAAKuiE,aAAa,QAEpB,EACA,IACKviE,KAAKuhE,eACR,aAAcpvD,KAAKszB,MAAMrkB,EAAKH,aAAe,KAC7C,eAAgBG,EAAK1V,OAGzB82D,EAAQ/C,SAAW+C,EAAQ12D,KAC3B9L,KAAKuiE,cACLjxD,GAAO4H,MAAM,yBAAyBkI,EAAKpgB,OAAQ,CAAEogB,OAAM4I,OAAQw4C,IACnEhhD,EAAQghD,EACV,CAAE,MAAOnxD,GACP,IAAI,QAASA,GAGX,OAFAmxD,EAAQn7C,OAASm3C,GAAS5pC,YAC1BnT,EAAO7R,GAAE,8BAGPyB,GAAOJ,WACTuxD,EAAQvxD,SAAWI,EAAMJ,UAE3BuxD,EAAQn7C,OAASm3C,GAAS5pC,OAC1BtjB,GAAOD,MAAM,oBAAoB+P,EAAKpgB,OAAQ,CAAEqQ,QAAO+P,OAAM4I,OAAQw4C,IACrE/gD,EAAO,4BACT,CACAzhB,KAAK4iE,WAAWJ,EAAQ,EAE1BxiE,KAAKyhE,UAAU3hD,IAAI28C,GACnBz8D,KAAKuiE,aACP,KAjH0B,CACxBjxD,GAAO4H,MAAM,8BAA+B,CAAEkI,OAAM4I,OAAQw4C,IAC5D,MAAMqB,QAxiBa9nD,eAAe+hD,EAA0BxC,EAAU,GAC5E,MAGM9xD,EAAM,IAHY,QAAkB,gBAAe,WAAkBqL,0BAC9D,IAAIjT,MAAM,KAAKkF,KAAI,IAAMqL,KAAKszB,MAAsB,GAAhBtzB,KAAK8zB,UAAevgC,SAAS,MAAK/B,KAAK,MAGlFkrB,EAAUivC,EAAkB,CAAEhvC,YAAagvC,QAAoB,EAWrE,aAVM,KAAMrB,QAAQ,CAClBl4C,OAAQ,QACR/a,MACAqlB,UACA,cAAe,CACbysC,UACAE,WAAY,CAACW,EAAY9qD,IAAU4pD,EAAiBkB,EAAY9qD,EAAO,QAG3EC,GAAO4H,MAAM,qCAAsC,CAAE1P,QAC9CA,CACT,CAuhB8Bs6D,CAAmBN,EAAwBlI,GAC3DyI,EAAc,GACpB,IAAK,IAAIrwB,EAAQ,EAAGA,EAAQ8uB,EAAQlD,OAAQ5rB,IAAS,CACnD,MAAMswB,EAActwB,EAAQyqB,EACtB8F,EAAY9xD,KAAKC,IAAI4xD,EAAc7F,EAAcqE,EAAQ12D,MACzD63D,EAAO,IAAM3F,GAAS58C,EAAM4iD,EAAa7F,GACzC1B,EAAU,IACPkB,GACL,GAAGkG,KAAWnwB,EAAQ,IACtBiwB,EACAnB,EAAQn8C,QACR,IAAMrmB,KAAKuiE,eACXiB,EACA,IACKxjE,KAAKuhE,eACR,aAAcpvD,KAAKszB,MAAMrkB,EAAKH,aAAe,KAC7C,kBAAmBG,EAAKtV,KACxB,eAAgB,4BAElBwvD,GACAv9C,MAAK,KACLykD,EAAQ/C,SAAW+C,EAAQ/C,SAAWtB,CAAY,IACjDxzD,OAAO0G,IACR,GAAgC,MAA5BA,GAAOJ,UAAUoW,OAInB,MAHA/V,GAAOD,MAAM,mGAAoG,CAAEA,QAAO2Y,OAAQw4C,IAClIA,EAAQp0D,SACRo0D,EAAQn7C,OAASm3C,GAAS5pC,OACpBvjB,EAOR,MALK,QAASA,KACZC,GAAOD,MAAM,SAASqiC,EAAQ,KAAKswB,OAAiBC,qBAA8B,CAAE5yD,QAAO2Y,OAAQw4C,IACnGA,EAAQp0D,SACRo0D,EAAQn7C,OAASm3C,GAAS5pC,QAEtBvjB,CAAK,IAGf0yD,EAAYvjE,KAAKR,KAAKyhE,UAAU3hD,IAAI28C,GACtC,CACA,UACQ5+C,QAAQC,IAAIimD,GAClB/jE,KAAKuiE,cACLC,EAAQvxD,eAAiB,KAAMwrD,QAAQ,CACrCl4C,OAAQ,OACR/a,IAAK,GAAGq6D,UACRh1C,QAAS,IACJ7uB,KAAKuhE,eACR,aAAcpvD,KAAKszB,MAAMrkB,EAAKH,aAAe,KAC7C,kBAAmBG,EAAKtV,KACxBgjB,YAAa00C,KAGjBxjE,KAAKuiE,cACLC,EAAQn7C,OAASm3C,GAAS0E,SAC1B5xD,GAAO4H,MAAM,yBAAyBkI,EAAKpgB,OAAQ,CAAEogB,OAAM4I,OAAQw4C,IACnEhhD,EAAQghD,EACV,CAAE,MAAOnxD,IACF,QAASA,IAIZmxD,EAAQn7C,OAASm3C,GAAS5pC,OAC1BnT,EAAO7R,GAAE,gCAJT4yD,EAAQn7C,OAASm3C,GAAS5pC,OAC1BnT,EAAO,0CAKT,KAAMg7C,QAAQ,CACZl4C,OAAQ,SACR/a,IAAK,GAAGq6D,KAEZ,CACA7jE,KAAK4iE,WAAWJ,EAClB,CA2CA,OADAxiE,KAAKyhE,UAAUyC,SAASnmD,MAAK,IAAM/d,KAAKsgB,UACjCkiD,CAAO,GAGlB,EAEF,SAAS2B,GAAmBC,EAAeC,EAASC,EAAiBC,EAAoBC,EAAcC,EAASC,EAAkBC,GAChI,IAAI3+D,EAAmC,mBAAlBo+D,EAA+BA,EAAcp+D,QAAUo+D,EAS5E,OARIC,IACFr+D,EAAQkxB,OAASmtC,EACjBr+D,EAAQs+D,gBAAkBA,EAC1Bt+D,EAAQ4+D,WAAY,GAElBH,IACFz+D,EAAQ6+D,SAAW,UAAYJ,GAE1B,CACLzhE,QAASohE,EACTp+D,UAEJ,CAiCA,MAAM8+D,GARgCX,GAxBlB,CAClBnjE,KAAM,aACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,OAIK,WAClB,IAAIE,EAAM/L,KAAMgM,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,mCAAoCC,MAAO,CAAE,cAAeL,EAAIN,MAAQ,KAAO,OAAQ,aAAcM,EAAIN,MAAO,KAAQ,OAAS9I,GAAI,CAAE,MAAS,SAAS0J,GAC/L,OAAON,EAAIO,MAAM,QAASD,EAC5B,IAAO,OAAQN,EAAIQ,QAAQ,GAAQ,CAACP,EAAG,MAAO,CAAEG,YAAa,4BAA6BC,MAAO,CAAE,KAAQL,EAAIH,UAAW,MAASG,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEI,MAAO,CAAE,EAAK,2OAA8O,CAACL,EAAIN,MAAQO,EAAG,QAAS,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAYM,EAAIW,UACrgB,GAC6B,GAK3B,EACA,EACA,MAEiC1J,QAiC7B+hE,GARgCZ,GAxBlB,CAClBnjE,KAAM,mBACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,OAIK,WAClB,IAAIE,EAAM/L,KAAMgM,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,0CAA2CC,MAAO,CAAE,cAAeL,EAAIN,MAAQ,KAAO,OAAQ,aAAcM,EAAIN,MAAO,KAAQ,OAAS9I,GAAI,CAAE,MAAS,SAAS0J,GACtM,OAAON,EAAIO,MAAM,QAASD,EAC5B,IAAO,OAAQN,EAAIQ,QAAQ,GAAQ,CAACP,EAAG,MAAO,CAAEG,YAAa,4BAA6BC,MAAO,CAAE,KAAQL,EAAIH,UAAW,MAASG,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEI,MAAO,CAAE,EAAK,2HAA8H,CAACL,EAAIN,MAAQO,EAAG,QAAS,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAYM,EAAIW,UACrZ,GAC6B,GAK3B,EACA,EACA,MAEuC1J,QAiCnCgiE,GARgCb,GAxBlB,CAClBnjE,KAAM,WACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,OAIK,WAClB,IAAIE,EAAM/L,KAAMgM,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,iCAAkCC,MAAO,CAAE,cAAeL,EAAIN,MAAQ,KAAO,OAAQ,aAAcM,EAAIN,MAAO,KAAQ,OAAS9I,GAAI,CAAE,MAAS,SAAS0J,GAC7L,OAAON,EAAIO,MAAM,QAASD,EAC5B,IAAO,OAAQN,EAAIQ,QAAQ,GAAQ,CAACP,EAAG,MAAO,CAAEG,YAAa,4BAA6BC,MAAO,CAAE,KAAQL,EAAIH,UAAW,MAASG,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEI,MAAO,CAAE,EAAK,8CAAiD,CAACL,EAAIN,MAAQO,EAAG,QAAS,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAYM,EAAIW,UACxU,GAC6B,GAK3B,EACA,EACA,MAE+B1J,QAiC3BiiE,GARgCd,GAxBlB,CAClBnjE,KAAM,aACNwK,MAAO,CAAC,SACRF,MAAO,CACLG,MAAO,CACLC,KAAMC,QAERC,UAAW,CACTF,KAAMC,OACNE,QAAS,gBAEXC,KAAM,CACJJ,KAAM7E,OACNgF,QAAS,OAIK,WAClB,IAAIE,EAAM/L,KAAMgM,EAAKD,EAAIE,MAAMD,GAC/B,OAAOA,EAAG,OAAQD,EAAIG,GAAG,CAAEC,YAAa,mCAAoCC,MAAO,CAAE,cAAeL,EAAIN,MAAQ,KAAO,OAAQ,aAAcM,EAAIN,MAAO,KAAQ,OAAS9I,GAAI,CAAE,MAAS,SAAS0J,GAC/L,OAAON,EAAIO,MAAM,QAASD,EAC5B,IAAO,OAAQN,EAAIQ,QAAQ,GAAQ,CAACP,EAAG,MAAO,CAAEG,YAAa,4BAA6BC,MAAO,CAAE,KAAQL,EAAIH,UAAW,MAASG,EAAID,KAAM,OAAUC,EAAID,KAAM,QAAW,cAAiB,CAACE,EAAG,OAAQ,CAAEI,MAAO,CAAE,EAAK,mDAAsD,CAACL,EAAIN,MAAQO,EAAG,QAAS,CAACD,EAAIS,GAAGT,EAAIU,GAAGV,EAAIN,UAAYM,EAAIW,UAC7U,GAC6B,GAK3B,EACA,EACA,MAEiC1J,QACnC,SAASkiE,GAA0B7zD,GACjC,MAAM8zD,GAAwB,SAAqB,IAAM,mCACnD,QAAE59C,EAAO,OAAE9F,EAAM,QAAED,GAAY3D,QAAQ2J,gBAkB7C,OAjBA,SACE29C,EACA,CACE9zD,QACAoqB,iBAAgB,OAElB,IAAI2pC,KACF,OAAO,KAAEC,EAAI,OAAE92C,IAAY62C,EACvBC,EACF7jD,GAAQ,GACC+M,EACT/M,EAAQ+M,GAER9M,GACF,IAGG8F,CACT,CACA,SAASf,GAAYhK,EAAOw7C,GAC1B,OAAOsN,GAAa9oD,EAAOw7C,GAASt2D,OAAS,CAC/C,CACA,SAAS4jE,GAAa9oD,EAAOw7C,GAC3B,MAAMuN,EAAevN,EAAQlxD,KAAKsU,GAASA,EAAKqH,WAKhD,OAJkBjG,EAAMlT,QAAQ8R,IAC9B,MAAMpa,EAAO,aAAcoa,EAAOA,EAAKqH,SAAWrH,EAAKpa,KACvD,OAAuC,IAAhCukE,EAAajhE,QAAQtD,EAAY,GAG5C,CA0CA,MAAMwkE,GAAY,KAAI/6C,OAAO,CAC3BzpB,KAAM,eACNwC,WAAY,CACVshE,cACAC,oBACAC,YACAC,cACA1tC,eAAc,IACdkuC,gBAAe,IACfhuC,kBAAiB,IACjBD,UAAS,IACToM,SAAQ,IACR5rB,iBAAgB,IAChBnJ,cAAa,KAEfvD,MAAO,CACLo6D,OAAQ,CACNh6D,KAAM9J,MACNiK,QAAS,MAEX85D,SAAU,CACRj6D,KAAM7C,QACNgD,SAAS,GAEX+5D,SAAU,CACRl6D,KAAM7C,QACNgD,SAAS,GAMXg6D,OAAQ,CACNn6D,KAAM7C,QACNgD,SAAS,GAEX0W,YAAa,CACX7W,KAAM,KACNG,aAAS,GAEXi6D,aAAc,CACZp6D,KAAM7C,QACNgD,SAAS,GAOXmsD,QAAS,CACPtsD,KAAM,CAAC9J,MAAO0Q,UACdzG,QAAS,IAAM,IAMjBk6D,oBAAqB,CACnBr6D,KAAM9J,MACNiK,QAAS,IAAM,KAGnBoI,MAAK,KACI,CACLrE,KAEAo2D,eAAgB,wBAAwB7zD,KAAK8zB,SAASvgC,SAAS,IAAIvE,MAAM,OAG7E2N,KAAI,KACK,CACLm3D,IAAK,KACLC,SAAU,GACVC,mBAAoB,GACpBC,cAAe3lD,OAGnBvR,SAAU,CACR,iBAAAm3D,GACE,OAAOrmE,KAAKmmE,mBAAmB78D,QAAQ+X,GAAUA,EAAMilD,WAAa,KAAqBC,kBAC3F,EACA,cAAAC,GACE,OAAOxmE,KAAKmmE,mBAAmB78D,QAAQ+X,GAAUA,EAAMilD,WAAa,KAAqBG,WAC3F,EACA,gBAAAC,GACE,OAAO1mE,KAAKmmE,mBAAmB78D,QAAQ+X,GAAUA,EAAMilD,WAAa,KAAqBK,OAC3F,EAKA,gBAAAC,GACE,OAAO5mE,KAAK8lE,cAAgB,oBAAqBrwD,SAAS0nC,cAAc,QAC1E,EACA,cAAA0pB,GACE,OAAO7mE,KAAKomE,cAActjD,MAAMhX,MAAQ,CAC1C,EACA,iBAAAg7D,GACE,OAAO9mE,KAAKomE,cAActjD,MAAMu7B,UAAY,CAC9C,EACA,QAAAA,GACE,OAAOlsC,KAAKsvB,MAAMzhC,KAAK8mE,kBAAoB9mE,KAAK6mE,eAAiB,MAAQ,CAC3E,EACA,KAAAnmD,GACE,OAAO1gB,KAAKomE,cAAc1lD,KAC5B,EACA,UAAAqmD,GACE,OAAsF,IAA/E/mE,KAAK0gB,OAAOpX,QAAQk5D,GAAYA,EAAQn7C,SAAWm3C,GAAS5pC,SAAQlzB,MAC7E,EACA,WAAAslE,GACE,OAAOhnE,KAAK0gB,OAAOhf,OAAS,CAC9B,EACA,YAAAulE,GACE,OAA0F,IAAnFjnE,KAAK0gB,OAAOpX,QAAQk5D,GAAYA,EAAQn7C,SAAWm3C,GAAS0I,aAAYxlE,MACjF,EACA,QAAAylE,GACE,OAAOnnE,KAAKomE,cAActjD,MAAMuE,SAAW85C,GAAOiG,MACpD,EACA,WAAAC,GACE,OAAOrnE,KAAK6lE,OAASj2D,GAAE,UAAYA,GAAE,MACvC,EAEA,UAAA03D,GACE,IAAItnE,KAAKgnE,YAGT,OAAOhnE,KAAKqnE,WACd,GAEF1uD,MAAO,CACLmtD,aAAc,CACZ91C,WAAW,EACX,OAAAK,GAC8B,mBAAjBrwB,KAAKg4D,SAA0Bh4D,KAAK8lE,cAC7Cx0D,GAAOD,MAAM,mFAEjB,GAEF,WAAAkR,CAAYA,GACVviB,KAAKunE,eAAehlD,EACtB,EACA,cAAAskD,CAAe/6D,GACb9L,KAAKimE,IAAM,EAAQ,CAAE7zD,IAAK,EAAGqjB,IAAK3pB,IAClC9L,KAAKwnE,cACP,EACA,iBAAAV,CAAkBh7D,GAChB9L,KAAKimE,KAAK7nB,SAAStyC,GACnB9L,KAAKwnE,cACP,EACA,QAAAL,CAASA,GACHA,EACFnnE,KAAKsM,MAAM,SAAUtM,KAAK0gB,OAE1B1gB,KAAKsM,MAAM,UAAWtM,KAAK0gB,MAE/B,GAEF,WAAA3Q,GACM/P,KAAKuiB,aACPviB,KAAKunE,eAAevnE,KAAKuiB,aAE3BviB,KAAKomE,cAAc1D,YAAY1iE,KAAKynE,oBACpCn2D,GAAO4H,MAAM,2BACf,EACA1I,QAAS,CAKP,aAAMkc,CAAQrL,GACZA,EAAMgP,QACJrwB,KAAKuiB,kBACCviB,KAAK0nE,aAAa/8D,OAAM,IAAM,KAExC,EAKA,aAAAg9D,CAAcC,GAAgB,GAC5B,MAAM7jE,EAAQ/D,KAAKsyB,MAAMvuB,MACrB/D,KAAK4mE,mBACP7iE,EAAM8jE,gBAAkBD,GAE1B5nE,KAAK4yB,WAAU,IAAM7uB,EAAM+jE,SAC7B,EAKA,gBAAMJ,CAAWx8D,GACf,OAAOtJ,MAAM+C,QAAQ3E,KAAKg4D,SAAWh4D,KAAKg4D,cAAgBh4D,KAAKg4D,QAAQ9sD,EACzE,EAIA,MAAA68D,GACE,MAAMhkE,EAAQ/D,KAAKsyB,MAAMvuB,MACnByY,EAAQzY,EAAMyY,MAAQ5a,MAAM6uB,KAAK1sB,EAAMyY,OAAS,GA/O5D,IAA+BwrD,EAgPzBhoE,KAAKomE,cAAcvD,YAAY,GAAIrmD,GAhPVwrD,EAgPuChoE,KAAK0nE,WA/OlE3rD,MAAOnB,EAAO1P,KACnB,IACE,MAAM8sD,QAAgBgQ,EAAiB98D,GAAMP,OAAM,IAAM,KACnD6X,EAAY8iD,GAAa1qD,EAAOo9C,GACtC,GAAIx1C,EAAU9gB,OAAS,EAAG,CACxB,MAAM,SAAEse,EAAQ,QAAE2C,SAAkBC,GAAmB1X,EAAMsX,EAAWw1C,EAAS,CAAE31C,WAAW,IAC9FzH,EAAQ,IAAIoF,KAAa2C,EAC3B,CACA,MAAMslD,EAAgB,GACtB,IAAK,MAAM7mD,KAAQxG,EACjB,KACE,QAAiBwG,EAAKpgB,MACtBinE,EAAcznE,KAAK4gB,EACrB,CAAE,MAAO/P,GACP,KAAMA,aAAiB,MAErB,MADAC,GAAOD,MAAM,qCAAqC+P,EAAKpgB,OAAQ,CAAEqQ,UAC3DA,EAER,IAAIid,QAAgB42C,GAA0B7zD,IAC9B,IAAZid,IACFA,GAAU,QAAcA,EAAS1T,EAAM9T,KAAKsU,GAASA,EAAKpa,QAC1DzB,OAAOyF,eAAeoc,EAAM,OAAQ,CAAEhc,MAAOkpB,IAC7C25C,EAAcznE,KAAK4gB,GAEvB,CAEF,GAA6B,IAAzB6mD,EAAcvmE,QAAgBkZ,EAAMlZ,OAAS,EAAG,CAClD,MAAM6d,GAAS,QAASrU,IACxB,SACEqU,EAAS3P,GAAE,wCAAyC,CAAE2P,WAAY3P,GAAE,2BAExE,CACA,OAAOq4D,CACT,CAAE,MAAO52D,GAGP,OAFAC,GAAO4H,MAAM,4BAA6B,CAAE7H,WAC5C,SAAYzB,GAAE,+BACP,CACT,KA0MoFjF,OAAO0G,GAAUC,GAAO4H,MAAM,wBAAyB,CAAE7H,YAAU+oD,SAAQ,IAAMp6D,KAAKkoE,aAC1K,EACA,SAAAA,GACE,MAAMC,EAAOnoE,KAAKsyB,MAAM61C,KACxBA,GAAM7nD,OACR,EAIA,QAAA2F,GACEjmB,KAAKomE,cAAc1lD,MAAMxL,SAASstD,IAChCA,EAAQp0D,QAAQ,IAElBpO,KAAKkoE,WACP,EACA,YAAAV,GACE,GAAIxnE,KAAKmnE,SAEP,YADAnnE,KAAKkmE,SAAWt2D,GAAE,WAGpB,MAAM6uC,EAAWtsC,KAAKsvB,MAAMzhC,KAAKimE,IAAIxnB,YACrC,GAAIA,IAAaC,IAIjB,GAAID,EAAW,GACbz+C,KAAKkmE,SAAWt2D,GAAE,2BAGpB,GAAI6uC,EAAW,GAAf,CACE,MAAM2pB,EAAuB,IAAIp6D,KAAK,GACtCo6D,EAAKC,WAAW5pB,GAChB,MAAM6pB,EAAOF,EAAKG,cAAcpnE,MAAM,GAAI,IAC1CnB,KAAKkmE,SAAWt2D,GAAE,cAAe,CAAE04D,QAErC,MACAtoE,KAAKkmE,SAAWt2D,GAAE,yBAA0B,CAAE44D,QAAS/pB,SAdrDz+C,KAAKkmE,SAAWt2D,GAAE,uBAetB,EACA,cAAA23D,CAAehlD,GACRviB,KAAKuiB,aAIVviB,KAAKomE,cAAc7jD,YAAcA,EACjCviB,KAAKmmE,oBAAqB,QAAsB5jD,IAJ9CjR,GAAO4H,MAAM,sBAKjB,EACA,kBAAAuuD,CAAmBjF,GACbA,EAAQn7C,SAAWm3C,GAAS5pC,OAC9B50B,KAAKsM,MAAM,SAAUk2D,GAErBxiE,KAAKsM,MAAM,WAAYk2D,EAE3B,KAmDEh3B,GAR8B24B,GAClCqB,IAzCgB,WAChB,IAAIz5D,EAAM/L,KAAMgM,EAAKD,EAAIE,MAAMD,GAE/B,OADAD,EAAIE,MAAMgO,YACHlO,EAAIwW,YAAcvW,EAAG,OAAQ,CAAE6mB,IAAK,OAAQ1mB,YAAa,gBAAiB4F,MAAO,CAAE,2BAA4BhG,EAAIi7D,YAAa,wBAAyBj7D,EAAIo7D,UAAY/6D,MAAO,CAAE,wBAAyB,KAAQ,EAAEL,EAAI85D,QAA4C,IAAlC95D,EAAIo6D,mBAAmBzkE,QAAkBqK,EAAI66D,iBAIxL56D,EAAG,YAAa,CAAEI,MAAO,CAAE,aAAcL,EAAIs7D,YAAa,YAAat7D,EAAIu7D,WAAY,KAAQ,aAAepxD,YAAanK,EAAIoK,GAAG,CAAC,CAAEvR,IAAK,OAAQ/E,GAAI,WACnP,MAAO,CAACmM,EAAG,WAAY,CAAEI,MAAO,CAAE,KAAQ,MAC5C,EAAGgK,OAAO,IAAS,MAAM,EAAO,aAAe,CAACpK,EAAG,kBAAmB,CAAEI,MAAO,CAAE,KAAQL,EAAI6D,EAAE,yBAA4B5D,EAAG,iBAAkB,CAAEI,MAAO,CAAE,4BAA6B,GAAI,mCAAoC,cAAe,qBAAqB,GAAQzJ,GAAI,CAAE,MAAS,SAAS0J,GAClS,OAAON,EAAI47D,eACb,GAAKzxD,YAAanK,EAAIoK,GAAG,CAAC,CAAEvR,IAAK,OAAQ/E,GAAI,WAC3C,MAAO,CAACmM,EAAG,aAAc,CAAEI,MAAO,CAAE,KAAQ,MAC9C,EAAGgK,OAAO,IAAS,MAAM,EAAO,YAAc,CAACrK,EAAIS,GAAG,IAAMT,EAAIU,GAAGV,EAAI6D,EAAE,iBAAmB,OAAQ7D,EAAI66D,iBAAmB56D,EAAG,iBAAkB,CAAEI,MAAO,CAAE,oBAAqB,GAAI,oCAAqC,GAAI,mCAAoC,iBAAmBzJ,GAAI,CAAE,MAAS,SAAS0J,GAC1S,OAAON,EAAI47D,eAAc,EAC3B,GAAKzxD,YAAanK,EAAIoK,GAAG,CAAC,CAAEvR,IAAK,OAAQ/E,GAAI,WAC3C,MAAO,CAACmM,EAAG,mBAAoB,CAAEy8D,YAAa,CAAE,MAAS,gCAAkCr8D,MAAO,CAAE,KAAQ,MAC9G,EAAGgK,OAAO,IAAS,MAAM,EAAO,aAAe,CAACrK,EAAIS,GAAG,IAAMT,EAAIU,GAAGV,EAAI6D,EAAE,mBAAqB,OAAS7D,EAAIW,KAAOX,EAAI85D,OAMlH95D,EAAIW,KANuHX,EAAIiK,GAAGjK,EAAIs6D,mBAAmB,SAAShlD,GACrK,OAAOrV,EAAG,iBAAkB,CAAEpH,IAAKyc,EAAMtI,GAAI5M,YAAa,4BAA6BC,MAAO,CAAE,KAAQiV,EAAMnH,UAAW,qBAAqB,EAAM,mCAAoCmH,EAAMtI,IAAMpW,GAAI,CAAE,MAAS,SAAS0J,GAC1N,OAAON,EAAI2gB,QAAQrL,EACrB,GAAKnL,YAAanK,EAAIoK,GAAG,CAACkL,EAAM5G,cAAgB,CAAE7V,IAAK,OAAQ/E,GAAI,WACjE,MAAO,CAACmM,EAAG,mBAAoB,CAAEI,MAAO,CAAE,IAAOiV,EAAM5G,iBACzD,EAAGrE,OAAO,GAAS,MAAO,MAAM,IAAS,CAACrK,EAAIS,GAAG,IAAMT,EAAIU,GAAG4U,EAAM7G,aAAe,MACrF,KAAgBzO,EAAI85D,QAAU95D,EAAIy6D,eAAe9kE,OAAS,EAAI,CAACsK,EAAG,qBAAsBA,EAAG,kBAAmB,CAAEI,MAAO,CAAE,KAAQL,EAAI6D,EAAE,iBAAoB7D,EAAIiK,GAAGjK,EAAIy6D,gBAAgB,SAASnlD,GAC7L,OAAOrV,EAAG,iBAAkB,CAAEpH,IAAKyc,EAAMtI,GAAI5M,YAAa,4BAA6BC,MAAO,CAAE,KAAQiV,EAAMnH,UAAW,qBAAqB,EAAM,mCAAoCmH,EAAMtI,IAAMpW,GAAI,CAAE,MAAS,SAAS0J,GAC1N,OAAON,EAAI2gB,QAAQrL,EACrB,GAAKnL,YAAanK,EAAIoK,GAAG,CAACkL,EAAM5G,cAAgB,CAAE7V,IAAK,OAAQ/E,GAAI,WACjE,MAAO,CAACmM,EAAG,mBAAoB,CAAEI,MAAO,CAAE,IAAOiV,EAAM5G,iBACzD,EAAGrE,OAAO,GAAS,MAAO,MAAM,IAAS,CAACrK,EAAIS,GAAG,IAAMT,EAAIU,GAAG4U,EAAM7G,aAAe,MACrF,KAAMzO,EAAIW,MAAOX,EAAI85D,QAAU95D,EAAI26D,iBAAiBhlE,OAAS,EAAI,CAACsK,EAAG,qBAAsBD,EAAIiK,GAAGjK,EAAI26D,kBAAkB,SAASrlD,GAC/H,OAAOrV,EAAG,iBAAkB,CAAEpH,IAAKyc,EAAMtI,GAAI5M,YAAa,4BAA6BC,MAAO,CAAE,KAAQiV,EAAMnH,UAAW,qBAAqB,EAAM,mCAAoCmH,EAAMtI,IAAMpW,GAAI,CAAE,MAAS,SAAS0J,GAC1N,OAAON,EAAI2gB,QAAQrL,EACrB,GAAKnL,YAAanK,EAAIoK,GAAG,CAACkL,EAAM5G,cAAgB,CAAE7V,IAAK,OAAQ/E,GAAI,WACjE,MAAO,CAACmM,EAAG,mBAAoB,CAAEI,MAAO,CAAE,IAAOiV,EAAM5G,iBACzD,EAAGrE,OAAO,GAAS,MAAO,MAAM,IAAS,CAACrK,EAAIS,GAAG,IAAMT,EAAIU,GAAG4U,EAAM7G,aAAe,MACrF,KAAMzO,EAAIW,MAAO,GAhCyRV,EAAG,WAAY,CAAEI,MAAO,CAAE,SAAYL,EAAI45D,SAAU,4BAA6B,GAAI,mCAAoC,cAAe,KAAQ,aAAehjE,GAAI,CAAE,MAAS,SAAS0J,GAC/d,OAAON,EAAI47D,eACb,GAAKzxD,YAAanK,EAAIoK,GAAG,CAAC,CAAEvR,IAAK,OAAQ/E,GAAI,WAC3C,MAAO,CAACmM,EAAG,WAAY,CAAEI,MAAO,CAAE,KAAQ,MAC5C,EAAGgK,OAAO,IAAS,MAAM,EAAO,aAAe,CAACrK,EAAIS,GAAG,IAAMT,EAAIU,GAAGV,EAAIu7D,YAAc,OA4BjEt7D,EAAG,MAAO,CAAE4xB,WAAY,CAAC,CAAE58B,KAAM,OAAQ68B,QAAS,SAAUz4B,MAAO2G,EAAIi7D,YAAalpC,WAAY,gBAAkB3xB,YAAa,2BAA6B,CAACH,EAAG,gBAAiB,CAAEI,MAAO,CAAE,aAAcL,EAAI6D,EAAE,mBAAoB,mBAAoB7D,EAAIi6D,eAAgB,MAASj6D,EAAIg7D,WAAY,MAASh7D,EAAIsyC,SAAU,KAAQ,YAAeryC,EAAG,IAAK,CAAEI,MAAO,CAAE,GAAML,EAAIi6D,iBAAoB,CAACj6D,EAAIS,GAAG,IAAMT,EAAIU,GAAGV,EAAIm6D,UAAY,QAAS,GAAIn6D,EAAIi7D,YAAch7D,EAAG,WAAY,CAAEG,YAAa,wBAAyBC,MAAO,CAAE,KAAQ,WAAY,aAAcL,EAAI6D,EAAE,kBAAmB,+BAAgC,IAAMjN,GAAI,CAAE,MAASoJ,EAAIka,UAAY/P,YAAanK,EAAIoK,GAAG,CAAC,CAAEvR,IAAK,OAAQ/E,GAAI,WACnsB,MAAO,CAACmM,EAAG,aAAc,CAAEI,MAAO,CAAE,KAAQ,MAC9C,EAAGgK,OAAO,IAAS,MAAM,EAAO,cAAiBrK,EAAIW,KAAMV,EAAG,QAAS,CAAE6mB,IAAK,QAAS1mB,YAAa,kBAAmBC,MAAO,CAAE,OAAUL,EAAI25D,QAAQ/hE,OAAO,MAAO,SAAYoI,EAAI65D,SAAU,8BAA+B,GAAI,KAAQ,QAAUjjE,GAAI,CAAE,OAAUoJ,EAAIg8D,WAAc,GAAKh8D,EAAIW,IAChS,GAC2B,GAKzB,EACA,EACA,YAEiC1J,QACnC,SAASyd,GAAYuhD,GAAW,SAAiB0G,GAAgB,GAI/D,OAHIA,QAAyC,IAAxBp0D,OAAOq0D,gBAC1Br0D,OAAOq0D,aAAe,IAAIvH,GAASY,IAE9B1tD,OAAOq0D,YAChB,CAMA5sD,eAAe6G,GAAmBtD,EAASkD,EAAWw1C,EAAShyD,GAC7D,MAAM4iE,GAAiB,SAAqB,IAAM,0DAClD,OAAO,IAAI/qD,SAAQ,CAAC2D,EAASC,KAC3B,MAAMonD,EAAS,IAAI,KAAI,CACrB7nE,KAAM,qBACNk2B,OAASkiB,GAAMA,EAAEwvB,EAAgB,CAC/Bt9D,MAAO,CACLgU,UACAkD,YACAw1C,UACA8Q,iBAAwC,IAAvB9iE,GAASqc,WAE5B1f,GAAI,CACF,MAAAomE,CAAOhnD,GACLP,EAAQO,GACR8mD,EAAOG,WACPH,EAAOr2D,KAAKkgB,YAAY2qB,YAAYwrB,EAAOr2D,IAC7C,EACA,MAAApE,CAAOiD,GACLoQ,EAAOpQ,GAAS,IAAID,MAAM,aAC1By3D,EAAOG,WACPH,EAAOr2D,KAAKkgB,YAAY2qB,YAAYwrB,EAAOr2D,IAC7C,OAINq2D,EAAOnyC,SACPjhB,SAASib,KAAKje,YAAYo2D,EAAOr2D,IAAI,GAEzC,gGC3wCA,MAAMmuD,GAAY,gBAAoBC,eACtC,CAAC,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kCAAmC,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mHAAqH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oGAAsG,OAAU,CAAC,0TAA4T,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,gCAAkC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,oCAAsC,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,oCAAsC,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,eAAgB,eAAgB,eAAgB,iBAAkB,eAAgB,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,8BAAgC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,iCAAmC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,sCAAwC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,2BAA6B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,4DAA8D,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,8DAAgE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,uCAAyC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,sBAAwB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,8CAAgD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,+CAAqD,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oCAAqC,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,sGAAwG,OAAU,CAAC,6OAA+O,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,6CAA+C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,4CAA8C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,kEAAoE,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,wBAA0B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,qBAAsB,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,iCAAmC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,wDAA0D,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,sDAAwD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gCAAkC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,qEAAuE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,qEAAuE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kCAAoC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,8CAAgD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,0BAA4B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,gCAAkC,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,0DAA4D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,uCAAyC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,8BAAgC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,2BAA6B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,yCAA2C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,8DAAoE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,oEAAqE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,mOAAqO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0KAA4K,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4WAA8W,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kPAAoP,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kPAAoP,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mUAAqU,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,+fAAigB,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,gBAAsB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,ySAA2S,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oKAAsK,OAAU,CAAC,yNAA2N,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,4CAA8C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,+CAAiD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,2CAA6C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,gBAAkB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,iBAAkB,oBAAsB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,wCAA0C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,iDAAmD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,2CAA6C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,qCAAuC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,6EAA+E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,+BAAiC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,4CAA8C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,6DAA+D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,wCAA0C,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,kCAAoC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA2B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,wCAA0C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,uEAA6E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gDAAiD,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gHAAkH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mEAAqE,OAAU,CAAC,oUAAsU,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,aAAmB,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gDAAiD,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gHAAkH,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kHAAoH,OAAU,CAAC,2VAA6V,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,uCAAyC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,yCAA2C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,uEAAyE,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,mBAAoB,oBAAqB,oBAAqB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,wCAA0C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,+CAAiD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gCAAkC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,aAAe,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,mEAAqE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,mEAAqE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,wDAA0D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,+BAAiC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,2BAA6B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,mFAAyF,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,6EAA+E,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iSAAmS,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wCAAyC,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0GAA4G,OAAU,CAAC,6OAA+O,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,uCAAyC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,0CAA4C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,wCAA0C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,gBAAkB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,cAAe,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,qCAAuC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,2CAA6C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,oCAAsC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,gBAAkB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,4DAA8D,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,yDAA2D,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,mCAAqC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,8DAAgE,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,cAAgB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,+BAAiC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,iEAAuE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mDAAoD,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uQAAyQ,OAAU,CAAC,wPAA0P,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,4CAA8C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,4CAA8C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,yDAA2D,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,qBAAsB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,kDAAoD,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,oDAAsD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,gDAAkD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,6EAA+E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,8EAAgF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,yCAA2C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,gBAAkB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,qEAAuE,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,wCAA0C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,yEAA+E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,+CAAgD,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,kKAAoK,OAAU,CAAC,oQAAsQ,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,4CAA8C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,4CAA8C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,yDAA2D,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,qBAAsB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,iDAAmD,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,oDAAsD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,gDAAkD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,8EAAgF,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,gFAAkF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,yCAA2C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,gBAAkB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,oEAAsE,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,wCAA0C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,sBAAwB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,iFAAuF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,2NAA6N,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,iBAAuB,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,oFAAqF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,6HAA+H,OAAU,CAAC,sQAAwQ,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,wCAA0C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,2CAA6C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,6CAA+C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,iBAAkB,oBAAsB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,oCAAsC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kCAAoC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,0BAA4B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,+DAAiE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,+DAAiE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,oBAAsB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,8CAAgD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,uDAA6D,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,+NAAiO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,gBAAsB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qLAAuL,OAAU,CAAC,qQAAuQ,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,gDAAkD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,kDAAoD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,4DAA8D,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,uBAAyB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,mBAAoB,oBAAqB,2BAA6B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,sCAAwC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kDAAoD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qDAAuD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,uEAAyE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,kDAAoD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,mBAAqB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,4BAA8B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,+DAAiE,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,iCAAmC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,mCAAqC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA0B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,uCAAyC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,mEAAyE,CAAE,OAAU,SAAU,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,oFAAqF,eAAgB,4BAA6B,SAAY,SAAU,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8RAAgS,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kDAAmD,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,oHAAsH,OAAU,CAAC,iTAAmT,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,+CAAiD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,kDAAoD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,uDAAyD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,mBAAoB,oBAAqB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,sCAAwC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,mDAAqD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qDAAuD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,uEAAyE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,kDAAoD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,4BAA8B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,4DAA8D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,iCAAmC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,mCAAqC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA0B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,uCAAyC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,mEAAyE,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,oRAAsR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gFAAiF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,yRAA2R,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,wFAAyF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iSAAmS,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sRAAwR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wRAA0R,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,oCAAqC,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,sGAAwG,OAAU,CAAC,gSAAkS,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,+CAAiD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,mDAAqD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,sDAAwD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,uBAAyB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,yBAA0B,0BAA2B,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,sCAAwC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,mDAAqD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qDAAuD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,uEAAyE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,kDAAoD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,4BAA8B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,4DAA8D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,iCAAmC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,mCAAqC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA0B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,uCAAyC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,iEAAuE,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wRAA0R,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qRAAuR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,0EAA2E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,mRAAqR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0RAA4R,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uRAAyR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,0RAA4R,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sRAAwR,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,gPAAkP,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,4NAA8N,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,gBAAsB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wCAAyC,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,+HAAiI,OAAU,CAAC,6OAA+O,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,+BAAiC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,8BAAgC,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,2CAA6C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,iBAAkB,mBAAqB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,wBAA0B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,yBAA2B,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,6BAA+B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,gBAAkB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,wBAA0B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,UAAY,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,+FAAiG,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,8EAAgF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,cAAgB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,2CAA6C,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,sEAA4E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iBAAkB,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,+HAAiI,OAAU,CAAC,uOAAyO,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,2CAA6C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,0CAA4C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,yCAA2C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,sBAAuB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,+BAAiC,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,kCAAoC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,wCAA0C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,sCAAwC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,eAAiB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,aAAe,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,yEAA2E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,qEAAuE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,oCAAsC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,+BAAiC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,iDAAmD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,iBAAmB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,iEAAuE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gBAAiB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,wMAA0M,OAAU,CAAC,wQAA0Q,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,kDAAoD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,oDAAsD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,kEAAoE,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,qBAAsB,sBAAuB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,2CAA6C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,0DAA4D,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,uDAAyD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,8BAAgC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,YAAc,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,qEAAuE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,qEAAuE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kCAAoC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,6CAA+C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,YAAc,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,uBAAyB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,8BAAgC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,uDAAyD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,4BAA8B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kDAAoD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,kEAAwE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gCAAiC,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,sEAAwE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mDAAqD,OAAU,CAAC,0QAA4Q,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,8CAAgD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,4CAA8C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,uDAAyD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,sBAAuB,uBAAwB,uBAAwB,uBAAwB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,6CAA+C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,8CAAgD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,4CAA8C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,4BAA8B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,YAAc,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,gFAAkF,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,8CAAgD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kCAAoC,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,wDAA0D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,uBAAyB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,kEAAwE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,yEAA0E,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,6FAA+F,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qSAAuS,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iDAAkD,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mHAAqH,OAAU,CAAC,wPAA0P,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,+CAAiD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,iDAAmD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,mDAAqD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,uBAAyB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,oBAAsB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,uBAAwB,0BAA4B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,0CAA4C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,oDAAsD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,mDAAqD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,yEAA2E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,0EAA4E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iCAAmC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,+CAAiD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,0BAA4B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,0DAA4D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,mCAAqC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,kCAAoC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,0BAA4B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,uCAAyC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,oEAA0E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8HAAgI,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,0TAA4T,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,cAAoB,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,yEAA0E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,2OAA6O,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,wGAA0G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wSAA0S,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,uEAAwE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,oFAAsF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,2RAA6R,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kDAAmD,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4JAA8J,OAAU,CAAC,0QAA4Q,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,mCAAqC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,wCAA0C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,2CAA6C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,gBAAkB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,wBAA0B,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,uBAAwB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,2CAA6C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,6CAA+C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,+DAAiE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,2DAA6D,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,2BAA6B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,iBAAmB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,kDAAoD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,qBAAuB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,gCAAkC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,yBAA2B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,4CAA8C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,gBAAkB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,gEAAsE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,gOAAkO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,oEAAqE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,mOAAqO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,gBAAiB,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qHAAuH,OAAU,CAAC,kNAAoN,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,2CAA6C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,4DAA8D,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,kDAAoD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,oCAAsC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,uCAAyC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qCAAuC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,8BAAgC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,YAAc,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,4EAA8E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,oCAAsC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,qBAAuB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,yDAA2D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,gBAAkB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,sEAA4E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,6DAA8D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,qNAAuN,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,sDAAwD,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2GAA6G,OAAU,CAAC,uQAAyQ,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,kCAAoC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,0CAA4C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,kDAAoD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,mCAAqC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,wBAA0B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,6DAA+D,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wDAA0D,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,6CAA+C,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,wBAA0B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,8DAAoE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,0BAA2B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,uEAAyE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mKAAqK,OAAU,CAAC,uQAAyQ,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,+CAAiD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,gDAAkD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,6DAA+D,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,oBAAqB,oBAAqB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,yCAA2C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kDAAoD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qDAAuD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,mCAAqC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,6EAA+E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,6EAA+E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,iDAAmD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,mBAAqB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,+DAAiE,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,+BAAiC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,sBAAwB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,qCAAuC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,uEAA6E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,aAAc,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,gMAAkM,OAAU,CAAC,2NAA6N,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,8BAAgC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,gCAAkC,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,+BAAiC,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,aAAe,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kBAAoB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,wBAA0B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,sBAAwB,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,cAAgB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,eAAiB,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,UAAY,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,sCAAwC,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,mBAAqB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,SAAW,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,gBAAkB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,eAAiB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,8BAAgC,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,gBAAkB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,YAAc,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,uCAA6C,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8OAAgP,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,MAAO,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,MAAO,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,8NAAgO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,eAAqB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8BAAgC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,4NAA8N,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sNAAwN,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,qNAAuN,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,aAAmB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6NAA+N,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kBAAmB,gBAAiB,sEAAuE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qCAAuC,OAAU,CAAC,8NAAgO,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,mCAAqC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,4CAA8C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,8CAAgD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,qBAAsB,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,0CAA4C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,0CAA4C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,+BAAiC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,yBAA2B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,uEAAyE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,qEAAuE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,qCAAuC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,iDAAmD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,oEAA0E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4DAA6D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,oNAAsN,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,kFAAmF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mKAAqK,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,qXAAuX,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,iBAAuB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,mEAAqE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,kQAAoQ,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8DAAgE,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,8PAAgQ,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,cAAoB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,+NAAiO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,eAAqB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,6NAA+N,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,oBAA0B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,uOAAyO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,sNAAwN,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,8BAAoC,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iCAAkC,gBAAiB,qFAAsF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qIAAuI,OAAU,CAAC,+PAAiQ,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,sCAAwC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,2CAA6C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,6CAA+C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,eAAiB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,cAAe,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,uCAAyC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,sCAAwC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,kCAAoC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,6BAA+B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,8DAAgE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wDAA0D,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,aAAe,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,mBAAqB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,wCAA0C,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,8DAAoE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uCAAwC,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,8JAAgK,OAAU,CAAC,2OAA6O,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,uCAAyC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,wCAA0C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,mDAAqD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,mBAAqB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,gBAAkB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,kBAAmB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,iCAAmC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,2CAA6C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,wCAA0C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,aAAe,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,2BAA6B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,oEAAsE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,2EAA6E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,gBAAkB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,mBAAqB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,uDAAyD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,4BAA8B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,qCAAuC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,mBAAqB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,yDAA+D,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,sFAAuF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,wPAA0P,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,wOAA0O,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,gBAAsB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,4CAA6C,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,kLAAoL,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,wKAA0K,OAAU,CAAC,mYAAqY,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,8CAAgD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,8CAAgD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,iDAAmD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,kBAAmB,mBAAoB,oBAAqB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,sCAAwC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,sCAAwC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qCAAuC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,4BAA8B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,aAAe,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,6EAA+E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,4EAA8E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,qCAAuC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,kBAAoB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,gBAAkB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,uDAAyD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,4BAA8B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,iBAAmB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kCAAoC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,mEAAyE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,0DAA2D,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qKAAuK,OAAU,CAAC,qUAAuU,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,0CAA4C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,8CAAgD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,oDAAsD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,sBAAwB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,sBAAwB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,sBAAuB,uBAAwB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,wCAA0C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,wDAA0D,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,oDAAsD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,kCAAoC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,kEAAoE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,uEAAyE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,0CAA4C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,eAAiB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,gEAAkE,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,kCAAoC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,gCAAkC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,wBAA0B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,sCAAwC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,qEAA2E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,iFAAkF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,mFAAqF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,oSAAsS,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,eAAqB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,4CAA6C,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yEAA2E,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,8GAAgH,OAAU,CAAC,4RAA8R,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,+CAAiD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,gDAAkD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,gDAAkD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,oCAAsC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,sCAAwC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,aAAe,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,0EAA4E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,2EAA6E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,+BAAiC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,gDAAkD,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,iBAAmB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,wDAA0D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,oCAAsC,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,6BAA+B,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,wCAA0C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,4EAAkF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,kBAAmB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0KAA4K,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qNAAuN,OAAU,CAAC,kWAAoW,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,uCAAyC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,kDAAoD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,kDAAoD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,kBAAmB,mBAAoB,oBAAqB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,mCAAqC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,0CAA4C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gCAAkC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,qEAAuE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,yEAA2E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,oCAAsC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,gBAAkB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,oBAAsB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,uDAAyD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,oBAAsB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,mCAAqC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,0EAAgF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iOAAmO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,6NAA+N,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,eAAqB,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,4CAA6C,gBAAiB,6EAA8E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,2GAA6G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0JAA4J,OAAU,CAAC,6UAA+U,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,yCAA2C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,8CAAgD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,2CAA6C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,kBAAoB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,mBAAoB,oBAAqB,uBAAwB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,+BAAiC,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,0CAA4C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,6CAA+C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gCAAkC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,aAAe,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,oEAAsE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,mEAAqE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,wCAA0C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,WAAa,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,qBAAuB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,2BAA6B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,yDAA2D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,gCAAkC,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,0BAA4B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,mBAAqB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,oCAAsC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,4EAAkF,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qBAAsB,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,oFAAsF,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,uFAAyF,OAAU,CAAC,iRAAmR,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,mCAAqC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,iCAAmC,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,kCAAoC,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,WAAa,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,kBAAoB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,qBAAsB,qBAAsB,oBAAqB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,oCAAsC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,4CAA8C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,gCAAkC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,iBAAmB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,+EAAiF,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,gFAAkF,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,gBAAkB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,cAAgB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,6DAA+D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,gBAAkB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,eAAiB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,oEAA0E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,iEAAkE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,gOAAkO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qFAAuF,OAAU,CAAC,mSAAqS,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,wCAA0C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,2CAA6C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,6CAA+C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,oBAAqB,qBAAsB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,wCAA0C,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,6CAA+C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,4BAA8B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,YAAc,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,yEAA2E,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,uEAAyE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,qCAAuC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,sBAAwB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,sBAAwB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,2DAA6D,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,wBAA0B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,aAAe,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,+DAAqE,CAAE,OAAU,WAAY,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,8EAA+E,eAAgB,4BAA6B,SAAY,WAAY,eAAgB,0GAA4G,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,2TAA6T,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,0CAA4C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,2CAA6C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,oDAAsD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,qBAAuB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,oBAAqB,qBAAsB,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,sCAAwC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,6CAA+C,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,yCAA2C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,4BAA8B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,aAAe,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,uCAAyC,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,oDAAsD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,uCAAyC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,wBAA0B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,gBAAkB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,oDAAsD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,wBAA0B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,cAAgB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,yBAA2B,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,qBAAuB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,gCAAkC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,iEAAuE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,yFAA2F,OAAU,CAAC,6NAA+N,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,uCAAyC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,2CAA6C,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,yCAA2C,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,gBAAkB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,cAAe,kBAAoB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,oCAAsC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,sCAAwC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,qCAAuC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kBAAoB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,sBAAwB,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,uEAAyE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,iEAAmE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,mCAAqC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,yBAA2B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,YAAc,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,kBAAoB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,iDAAmD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,yBAA2B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,cAAgB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,qEAA2E,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,2NAA6N,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,mBAAyB,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,uBAAwB,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0CAA4C,OAAU,CAAC,oOAAsO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,eAAqB,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,+NAAiO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yCAA0C,gBAAiB,gEAAiE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,+BAAiC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,2GAA6G,OAAU,CAAC,8OAAgP,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,sCAAwC,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,+CAAiD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,8CAAgD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,iBAAmB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,UAAY,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,iBAAmB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,iBAAkB,mBAAqB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,6BAA+B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,+BAAiC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,gDAAkD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,mDAAqD,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,mBAAqB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,2BAA6B,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,sBAAwB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,mEAAqE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,2EAA6E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,wBAA0B,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,2BAA6B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,SAAW,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,oBAAsB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,kCAAoC,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,uCAAyC,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,0BAA4B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,sBAAwB,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,sBAAwB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,cAAgB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,UAAY,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,gEAAsE,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+DAAgE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,8NAAgO,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,2CAA4C,gBAAiB,kEAAmE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,8PAAgQ,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,8DAAgE,OAAU,CAAC,idAAmd,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,8CAAgD,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,kDAAoD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,uCAAyC,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,cAAgB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,mBAAqB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,kBAAmB,mBAAoB,oBAAqB,sBAAwB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,sCAAwC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,+CAAiD,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,0CAA4C,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,kBAAoB,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,gBAAkB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,uEAAyE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,wEAA0E,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,8BAAgC,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,yCAA2C,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,gBAAkB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,4BAA8B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,SAAW,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,UAAY,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,kBAAoB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,uBAAyB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,gCAAkC,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,2BAA6B,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,uBAAyB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,iCAAmC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,8DAAoE,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,6OAA+O,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,8DAA+D,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,sNAAwN,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,SAAe,CAAE,OAAU,KAAM,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,wBAAyB,gBAAiB,mEAAoE,eAAgB,4BAA6B,SAAY,KAAM,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,0GAA4G,OAAU,CAAC,0NAA4N,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,0CAA4C,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,qDAAuD,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,8CAAgD,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,eAAiB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,SAAW,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,gBAAkB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,gBAAkB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,8BAAgC,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,kCAAoC,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,gCAAkC,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,gBAAkB,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,oCAAsC,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,kBAAoB,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,qEAAuE,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,kEAAoE,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,qCAAuC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,cAAgB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,0BAA4B,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,QAAU,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,gBAAkB,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,oBAAsB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,oBAAsB,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,uDAAyD,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,oBAAsB,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,YAAc,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,qBAAuB,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,kBAAoB,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,8BAAgC,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,YAAc,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,aAAe,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,uEAA6E,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,qBAAsB,gBAAiB,2EAA4E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mIAAqI,OAAU,CAAC,kOAAoO,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,uBAAyB,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,uBAAyB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,oBAAsB,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,aAAe,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,aAAe,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,YAAc,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,OAAS,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,wBAA0B,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,uBAAyB,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,WAAa,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,QAAU,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,OAAS,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,SAAW,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,kBAAoB,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,WAAa,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,QAAU,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,wBAA8B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,mBAAoB,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,qFAAuF,OAAU,CAAC,oOAAsO,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,uBAAyB,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,uBAAyB,2CAA4C,CAAE,MAAS,2CAA4C,OAAU,CAAC,qBAAuB,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,cAAgB,iBAAkB,CAAE,MAAS,iBAAkB,aAAgB,kBAAmB,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,aAAe,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,aAAe,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,YAAc,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,OAAS,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,0BAA4B,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,WAAa,+BAAgC,CAAE,MAAS,+BAAgC,OAAU,CAAC,eAAiB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,QAAU,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,MAAQ,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,SAAW,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,mBAAqB,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,WAAa,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,uBAA6B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,iCAAkC,gBAAiB,4EAA6E,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,yBAA2B,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,mGAAqG,OAAU,CAAC,+OAAiP,oCAAqC,CAAE,MAAS,oCAAqC,OAAU,CAAC,sBAAwB,sCAAuC,CAAE,MAAS,sCAAuC,OAAU,CAAC,sBAAwB,yCAA0C,CAAE,MAAS,yCAA0C,OAAU,CAAC,mBAAqB,YAAa,CAAE,MAAS,YAAa,OAAU,CAAC,SAAW,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,gBAAiB,CAAE,MAAS,gBAAiB,OAAU,CAAC,cAAgB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,kCAAmC,CAAE,MAAS,kCAAmC,OAAU,CAAC,aAAe,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,SAAW,wBAAyB,CAAE,MAAS,wBAAyB,OAAU,CAAC,YAAc,UAAa,CAAE,MAAS,YAAa,OAAU,CAAC,OAAS,6BAA8B,CAAE,MAAS,6BAA8B,OAAU,CAAC,cAAgB,sBAAuB,CAAE,MAAS,sBAAuB,OAAU,CAAC,YAAc,4DAA6D,CAAE,MAAS,4DAA6D,OAAU,CAAC,0BAA4B,6DAA8D,CAAE,MAAS,6DAA8D,OAAU,CAAC,yBAA2B,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,WAAa,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,MAAQ,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,qBAAuB,SAAY,CAAE,MAAS,WAAY,OAAU,CAAC,QAAU,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,iBAAmB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,IAAO,CAAE,MAAS,MAAO,OAAU,CAAC,MAAQ,aAAc,CAAE,MAAS,aAAc,OAAU,CAAC,SAAW,kBAAmB,CAAE,MAAS,kBAAmB,OAAU,CAAC,WAAa,mBAAoB,CAAE,MAAS,mBAAoB,OAAU,CAAC,UAAY,4CAA6C,CAAE,MAAS,4CAA6C,OAAU,CAAC,mBAAqB,oBAAqB,CAAE,MAAS,oBAAqB,OAAU,CAAC,WAAa,OAAU,CAAE,MAAS,SAAU,OAAU,CAAC,OAAS,qBAAsB,CAAE,MAAS,qBAAsB,OAAU,CAAC,WAAa,eAAgB,CAAE,MAAS,eAAgB,OAAU,CAAC,SAAW,gCAAiC,CAAE,MAAS,gCAAiC,OAAU,CAAC,qBAAuB,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,KAAQ,CAAE,MAAS,OAAQ,OAAU,CAAC,OAAS,QAAW,CAAE,MAAS,UAAW,OAAU,CAAC,OAAS,iDAAkD,CAAE,MAAS,iDAAkD,OAAU,CAAC,uBAA6B,CAAE,OAAU,QAAS,KAAQ,CAAE,QAAW,QAAS,QAAW,CAAE,kBAAmB,yBAA0B,gBAAiB,+EAAgF,eAAgB,4BAA6B,SAAY,QAAS,eAAgB,gCAAkC,aAAgB,CAAE,GAAI,CAAE,GAAI,CAAE,MAAS,GAAI,SAAY,CAAE,WAAc,4CAA8C,OAAU,CAAC,iPAAmP,KAAQ,CAAE,MAAS,OAAQ,SAAY,CAAE,UAAa,oBAAsB,OAAU,CAAC,UAAe95D,KAAKgI,GAAS6xD,EAAUE,eAAe/xD,EAAKgyD,OAAQhyD,EAAKiyD,QACrimO,MAAMC,EAAKL,EAAUjyD,QAEfkB,GADIoxD,EAAGC,SAASxe,KAAKue,GACjBA,EAAGE,QAAQze,KAAKue,IAa1B,IAAIiI,EAAgC,CAAEC,IACpCA,EAAeA,EAAoB,IAJT,OAIoC,MAC9DA,EAAeA,EAAuB,OAJT,UAIuC,SACpEA,EAAeA,EAA0B,UAJT,aAI0C,YACnEA,GAJ2B,CAKjCD,GAAiB,CAAC,GACrB,MACME,EAAwB,IAE9B,SAASC,EAAYt6D,EAAM9I,GACzB,IAAIqpB,EAYJ,GAXArpB,EAAUzG,OAAOmyB,OAAO,CACtB3M,QAASokD,EACTrkD,QAAQ,EACRpZ,UAAM,EAEN29D,cAAU,EACVpkD,SAAU,OAEVyH,aAAS,EACTrX,OAAO,GACNrP,GACiB,iBAAT8I,IAAsB9I,EAAQ8e,OAAQ,CAC/C,MAAMsS,EAAU3hB,SAAS0nC,cAAc,OACvC/lB,EAAQkyC,UAAYx6D,EACpBA,EAAOsoB,EAAQmyC,SACjB,CACA,IAAIC,EAAiC,OAAtBn6C,EAAKrpB,EAAQ0F,MAAgB2jB,EAAK,GAClB,mBAApBrpB,EAAQ0mB,UACjB88C,GAAW,sBAEb,MAAMC,EAAS36D,aAAgBqkB,KAC/B,IAAIu2C,EAAWT,EAAcU,OACzB3jE,EAAQ0jE,SACVA,EAAW1jE,EAAQ0jE,SACO,gBAAjB1jE,EAAQ0F,MAA2C,eAAjB1F,EAAQ0F,OACnDg+D,EAAWT,EAAcW,WAE3B,MAAM/kD,EAAQ,EAAS,CACrB,CAAE4kD,EAAkB,OAAT,QAAkB36D,EAC7B+6D,SAAU7jE,EAAQ+e,QAClBlY,SAAU7G,EAAQif,SAClByH,QAAS1mB,EAAQ0mB,QACjBrX,MAAOrP,EAAQqP,MACfy0D,QAAS,MACTT,SAAUrjE,EAAQqjE,SAClBj2B,SAAU,QACV22B,gBAAiB,GACjBC,UAAW,WAAaR,EACxBS,cAAejkE,EAAQ8e,OACvB4kD,aAGF,OADA7kD,EAAMqlD,YACCrlD,CACT,CACA,SAAStT,EAAUqT,EAAM5e,GACvB,OAAOojE,EAAYxkD,EAAM,IACpB5e,EACH0F,KAAM,eAGV,CACA,SAASie,EAAY/E,EAAM5e,GACzB,OAAOojE,EAAYxkD,EAAM,IACpB5e,EACH0F,KAAM,iBAGV,CACA,SAASmX,EAAS+B,EAAM5e,GACtB,OAAOojE,EAAYxkD,EAAM,IACpB5e,EACH0F,KAAM,cAGV,CAwCA,SAASy4D,EAAmBC,EAAeltC,EAAQotC,EAAiBC,EAAoBC,EAAcC,EAASC,EAAkBC,GAC/H,IAAI3+D,EAAmC,mBAAlBo+D,EAA+BA,EAAcp+D,QAAUo+D,EAS5E,OARIltC,IACFlxB,EAAQkxB,OAASA,EACjBlxB,EAAQs+D,gBAAkBA,EAC1Bt+D,EAAQ4+D,WAAY,GAElBH,IACFz+D,EAAQ6+D,SAAW,UAAYJ,GAE1B,CACLzhE,QAASohE,EACTp+D,UAEJ,qJC9IA,MAAMmkE,EAAc,CAACC,EAAQ9+D,EAAOgK,EAAU,YAE5C,MAAMjD,EAAKoD,SAAS0nC,cAAc,QAChB1nC,SAASC,cAAuB,MAATpK,OAAgB,EAASA,EAAM++D,YAAc50D,SAASib,MACrFje,YAAYJ,GACtB,MAAMi4D,EAAM,IAAI,KAAI,CAClBj4D,KACArR,KAAM,kBACNk2B,OAASqzC,GAAOA,EAAGH,EAAQ,CACzB9+D,QACA3I,GAAI,CACF0S,MAAO,IAAI+vD,KACT9vD,KAAW8vD,EAAKt+D,KAAK0jE,IAAM,QAAMA,MACjCF,EAAItB,UAAU,OAKtB,OAAOsB,CAAG,EAII/qE,OAAOyF,eAgQvB,MAAMwgE,GAA4B,QAAgB,CAChDiF,OAAQ,gBACRn/D,MAAO,CACLtK,KAAM,KACN4jB,KAAM,KACN+2B,KAAM,KACN1zB,QAAS,KACTyiD,SAAU,MAEZ,KAAAz2D,CAAM02D,GACJ,MAAMr/D,EAAQq/D,EACRC,EAAe,IAAM,GAAGvpE,OAAOiK,EAAMtK,KAAM,MAAMK,OAAOiK,EAAMsZ,MAGpE,OAFA,SAAU,IAAMtQ,OAAO0C,iBAAiB,SAAU4zD,MAClD,SAAY,IAAMt2D,OAAO4C,oBAAoB,SAAU0zD,KAChD,CAAEC,OAAO,EAAMv/D,QAAOs/D,eAAcE,SAAQ,eAAY,IACjE,IAEF,IAAIC,EAAc,WAChB,IAAIh/D,EAAM/L,KAAMgM,EAAKD,EAAIE,MAAMD,GAAIg/D,EAASj/D,EAAIE,MAAMgO,YACtD,OAAOjO,EAAGg/D,EAAOF,SAAU,CAAE1+D,MAAO,CAAE,iBAAkB,oBAAqB,QAAWL,EAAIkc,QAAS,KAAQlc,EAAI/K,KAAM,QAAW+K,EAAI6Y,MAAQjiB,GAAI,CAAE,cAAe,SAAS0J,GAC1K,OAAON,EAAIO,MAAM,QACnB,IAAO,CAACP,EAAI2+D,SAAW1+D,EAAGg/D,EAAOC,WAAY,CAAE7+D,MAAO,CAAE,KAAQL,EAAI2+D,WAAc,CAAC1+D,EAAG,IAAK,CAAEgyB,SAAU,CAAE,YAAejyB,EAAIU,GAAGV,EAAI6Y,WAAe7Y,EAAIW,KAAMX,EAAI4vC,KAAO3vC,EAAG,MAAO,CAAEgyB,SAAU,CAAE,UAAajyB,EAAIU,GAAGV,EAAI4vC,SAAa5vC,EAAIW,MAAO,EACjP,EACIw+D,EAAuB,IACS,OAClC1F,EACAuF,EACAG,GACA,EACA,KACA,MAEkCloE,qEC5T7B,MAAMmoE,UAAqB/5D,MACjC,WAAAwP,CAAYkG,GACXhG,MAAMgG,GACN9mB,KAAKgB,KAAO,cACb,EAOM,MAAMoqE,UAAmBh6D,MAC/B,WAAAwP,CAAYkG,GACXhG,QACA9gB,KAAKgB,KAAO,aACZhB,KAAK8mB,QAAUA,CAChB,EAMD,MAAMukD,EAAkBC,QAA4C9oE,IAA5BovB,WAAW25C,aAChD,IAAIH,EAAWE,GACf,IAAIC,aAAaD,GAKdE,EAAmBnlD,IACxB,MAAMsV,OAA2Bn5B,IAAlB6jB,EAAOsV,OACnB0vC,EAAgB,+BAChBhlD,EAAOsV,OAEV,OAAOA,aAAkBvqB,MAAQuqB,EAAS0vC,EAAgB1vC,EAAO,ECjCnD,MAAM8vC,EACjB,GAAS,GACT,OAAAC,CAAQ3wC,EAAK/0B,GAKT,MAAMoxB,EAAU,CACZu0C,UALJ3lE,EAAU,CACN2lE,SAAU,KACP3lE,IAGe2lE,SAClB5wC,OAEJ,GAAI/6B,KAAK8L,MAAQ9L,MAAK,EAAOA,KAAK8L,KAAO,GAAG6/D,UAAY3lE,EAAQ2lE,SAE5D,YADA3rE,MAAK,EAAOQ,KAAK42B,GAGrB,MAAMluB,ECdC,SAAoB0iE,EAAOxmE,EAAOymE,GAC7C,IAAIC,EAAQ,EACRhiC,EAAQ8hC,EAAMlqE,OAClB,KAAOooC,EAAQ,GAAG,CACd,MAAMiiC,EAAO55D,KAAK65D,MAAMliC,EAAQ,GAChC,IAAImiC,EAAKH,EAAQC,EDS+BplE,ECRjCilE,EAAMK,GAAK7mE,EDQiCumE,SAAWhlE,EAAEglE,UCRpC,GAChCG,IAAUG,EACVniC,GAASiiC,EAAO,GAGhBjiC,EAAQiiC,CAEhB,CDCmD,IAACplE,ECApD,OAAOmlE,CACX,CDDsBI,CAAWlsE,MAAK,EAAQo3B,GACtCp3B,MAAK,EAAOy5C,OAAOvwC,EAAO,EAAGkuB,EACjC,CACA,OAAA+0C,GACI,MAAMjkE,EAAOlI,MAAK,EAAOosE,QACzB,OAAOlkE,GAAM6yB,GACjB,CACA,MAAAzxB,CAAOtD,GACH,OAAOhG,MAAK,EAAOsJ,QAAQ8tB,GAAYA,EAAQu0C,WAAa3lE,EAAQ2lE,WAAU7kE,KAAKswB,GAAYA,EAAQ2D,KAC3G,CACA,QAAIjvB,GACA,OAAO9L,MAAK,EAAO0B,MACvB,EEtBW,MAAMuhB,UAAe,EAChC,GACA,GACA,GAAiB,EACjB,GACA,GACA,GAAe,EACf,GACA,GACA,GACA,GACA,GAAW,EAEX,GACA,GACA,GAMA8B,QAEA,WAAAnE,CAAY5a,GAYR,GAXA8a,UAWqC,iBATrC9a,EAAU,CACNqmE,2BAA2B,EAC3BC,YAAazlE,OAAO0lE,kBACpBC,SAAU,EACVtpD,YAAarc,OAAO0lE,kBACpBE,WAAW,EACXC,WAAYjB,KACTzlE,IAEcsmE,aAA4BtmE,EAAQsmE,aAAe,GACpE,MAAM,IAAIlsE,UAAU,gEAAgE4F,EAAQsmE,aAAa5mE,YAAc,gBAAgBM,EAAQsmE,gBAEnJ,QAAyB9pE,IAArBwD,EAAQwmE,YAA4B3lE,OAAO00C,SAASv1C,EAAQwmE,WAAaxmE,EAAQwmE,UAAY,GAC7F,MAAM,IAAIpsE,UAAU,2DAA2D4F,EAAQwmE,UAAU9mE,YAAc,gBAAgBM,EAAQwmE,aAE3IxsE,MAAK,EAA6BgG,EAAQqmE,0BAC1CrsE,MAAK,EAAqBgG,EAAQsmE,cAAgBzlE,OAAO0lE,mBAA0C,IAArBvmE,EAAQwmE,SACtFxsE,MAAK,EAAegG,EAAQsmE,YAC5BtsE,MAAK,EAAYgG,EAAQwmE,SACzBxsE,MAAK,EAAS,IAAIgG,EAAQ0mE,WAC1B1sE,MAAK,EAAcgG,EAAQ0mE,WAC3B1sE,KAAKkjB,YAAcld,EAAQkd,YAC3BljB,KAAK+kB,QAAU/e,EAAQ+e,QACvB/kB,MAAK,GAA6C,IAA3BgG,EAAQ2mE,eAC/B3sE,MAAK,GAAkC,IAAtBgG,EAAQymE,SAC7B,CACA,KAAI,GACA,OAAOzsE,MAAK,GAAsBA,MAAK,EAAiBA,MAAK,CACjE,CACA,KAAI,GACA,OAAOA,MAAK,EAAWA,MAAK,CAChC,CACA,KACIA,MAAK,IACLA,MAAK,IACLA,KAAK8B,KAAK,OACd,CACA,KACI9B,MAAK,IACLA,MAAK,IACLA,MAAK,OAAawC,CACtB,CACA,KAAI,GACA,MAAMyL,EAAMD,KAAKC,MACjB,QAAyBzL,IAArBxC,MAAK,EAA2B,CAChC,MAAM4M,EAAQ5M,MAAK,EAAeiO,EAClC,KAAIrB,EAAQ,GAYR,YALwBpK,IAApBxC,MAAK,IACLA,MAAK,EAAamO,YAAW,KACzBnO,MAAK,GAAmB,GACzB4M,KAEA,EATP5M,MAAK,EAAkBA,MAA+B,EAAIA,MAAK,EAAW,CAWlF,CACA,OAAO,CACX,CACA,KACI,GAAyB,IAArBA,MAAK,EAAO8L,KAWZ,OARI9L,MAAK,GACLg/C,cAAch/C,MAAK,GAEvBA,MAAK,OAAcwC,EACnBxC,KAAK8B,KAAK,SACY,IAAlB9B,MAAK,GACLA,KAAK8B,KAAK,SAEP,EAEX,IAAK9B,MAAK,EAAW,CACjB,MAAM4sE,GAAyB5sE,MAAK,EACpC,GAAIA,MAAK,GAA6BA,MAAK,EAA6B,CACpE,MAAM6sE,EAAM7sE,MAAK,EAAOmsE,UACxB,QAAKU,IAGL7sE,KAAK8B,KAAK,UACV+qE,IACID,GACA5sE,MAAK,KAEF,EACX,CACJ,CACA,OAAO,CACX,CACA,KACQA,MAAK,QAA2CwC,IAArBxC,MAAK,IAGpCA,MAAK,EAAcgQ,aAAY,KAC3BhQ,MAAK,GAAa,GACnBA,MAAK,GACRA,MAAK,EAAegO,KAAKC,MAAQjO,MAAK,EAC1C,CACA,KACgC,IAAxBA,MAAK,GAA0C,IAAlBA,MAAK,GAAkBA,MAAK,IACzDg/C,cAAch/C,MAAK,GACnBA,MAAK,OAAcwC,GAEvBxC,MAAK,EAAiBA,MAAK,EAA6BA,MAAK,EAAW,EACxEA,MAAK,GACT,CAIA,KAEI,KAAOA,MAAK,MAChB,CACA,eAAIkjB,GACA,OAAOljB,MAAK,CAChB,CACA,eAAIkjB,CAAY4pD,GACZ,KAAgC,iBAAnBA,GAA+BA,GAAkB,GAC1D,MAAM,IAAI1sE,UAAU,gEAAgE0sE,eAA4BA,MAEpH9sE,MAAK,EAAe8sE,EACpB9sE,MAAK,GACT,CACA,OAAM,CAAcqmB,GAChB,OAAO,IAAIxI,SAAQ,CAACkvD,EAAUtrD,KAC1B4E,EAAOrP,iBAAiB,SAAS,KAC7ByK,EAAO4E,EAAOsV,OAAO,GACtB,CAAE57B,MAAM,GAAO,GAE1B,CACA,SAAM+f,CAAIktD,EAAWhnE,EAAU,CAAC,GAM5B,OALAA,EAAU,CACN+e,QAAS/kB,KAAK+kB,QACd4nD,eAAgB3sE,MAAK,KAClBgG,GAEA,IAAI6X,SAAQ,CAAC2D,EAASC,KACzBzhB,MAAK,EAAO0rE,SAAQ3vD,UAChB/b,MAAK,IACLA,MAAK,IACL,IACIgG,EAAQqgB,QAAQ4mD,iBAChB,IAAIC,EAAYF,EAAU,CAAE3mD,OAAQrgB,EAAQqgB,SACxCrgB,EAAQ+e,UACRmoD,EHhJT,SAAkB3lD,EAASvhB,GACzC,MAAM,aACLmnE,EAAY,SACZC,EAAQ,QACRtmD,EAAO,aACPumD,EAAe,CAACl/D,WAAYV,eACzBzH,EAEJ,IAAIsnE,EAEJ,MA0DMC,EA1DiB,IAAI1vD,SAAQ,CAAC2D,EAASC,KAC5C,GAA4B,iBAAjB0rD,GAAyD,IAA5Bh7D,KAAKq7D,KAAKL,GACjD,MAAM,IAAI/sE,UAAU,4DAA4D+sE,OAGjF,GAAInnE,EAAQqgB,OAAQ,CACnB,MAAM,OAACA,GAAUrgB,EACbqgB,EAAOg3C,SACV57C,EAAO+pD,EAAiBnlD,IAGzBA,EAAOrP,iBAAiB,SAAS,KAChCyK,EAAO+pD,EAAiBnlD,GAAQ,GAElC,CAEA,GAAI8mD,IAAiBtmE,OAAO0lE,kBAE3B,YADAhlD,EAAQxJ,KAAKyD,EAASC,GAKvB,MAAMgsD,EAAe,IAAItC,EAEzBmC,EAAQD,EAAal/D,WAAWjN,UAAKsB,GAAW,KAC/C,GAAI4qE,EACH,IACC5rD,EAAQ4rD,IACT,CAAE,MAAO/7D,GACRoQ,EAAOpQ,EACR,KAK6B,mBAAnBkW,EAAQnZ,QAClBmZ,EAAQnZ,UAGO,IAAZ0Y,EACHtF,IACUsF,aAAmB1V,MAC7BqQ,EAAOqF,IAEP2mD,EAAa3mD,QAAUA,GAAW,2BAA2BqmD,iBAC7D1rD,EAAOgsD,GACR,GACEN,GAEH,WACC,IACC3rD,QAAc+F,EACf,CAAE,MAAOlW,GACRoQ,EAAOpQ,EACR,CACA,EAND,EAMI,IAGoC+oD,SAAQ,KAChDmT,EAAkBr/D,OAAO,IAQ1B,OALAq/D,EAAkBr/D,MAAQ,KACzBm/D,EAAa5/D,aAAavM,UAAKsB,EAAW8qE,GAC1CA,OAAQ9qE,CAAS,EAGX+qE,CACR,CGkEoCG,CAAS7vD,QAAQ2D,QAAQ0rD,GAAY,CAAEC,aAAcnnE,EAAQ+e,WAEzE/e,EAAQqgB,SACR6mD,EAAYrvD,QAAQ8vD,KAAK,CAACT,EAAWltE,MAAK,EAAcgG,EAAQqgB,WAEpE,MAAM3hB,QAAewoE,EACrB1rD,EAAQ9c,GACR1E,KAAK8B,KAAK,YAAa4C,EAC3B,CACA,MAAO2M,GACH,GAAIA,aAAiB85D,IAAiBnlE,EAAQ2mE,eAE1C,YADAnrD,IAGJC,EAAOpQ,GACPrR,KAAK8B,KAAK,QAASuP,EACvB,CACA,QACIrR,MAAK,GACT,IACDgG,GACHhG,KAAK8B,KAAK,OACV9B,MAAK,GAAoB,GAEjC,CACA,YAAM4tE,CAAOC,EAAW7nE,GACpB,OAAO6X,QAAQC,IAAI+vD,EAAU/mE,KAAIiV,MAAOixD,GAAchtE,KAAK8f,IAAIktD,EAAWhnE,KAC9E,CAIA,KAAAkkB,GACI,OAAKlqB,MAAK,GAGVA,MAAK,GAAY,EACjBA,MAAK,IACEA,MAJIA,IAKf,CAIA,KAAAiqB,GACIjqB,MAAK,GAAY,CACrB,CAIA,KAAAkO,GACIlO,MAAK,EAAS,IAAIA,MAAK,CAC3B,CAMA,aAAM8tE,GAEuB,IAArB9tE,MAAK,EAAO8L,YAGV9L,MAAK,EAAS,QACxB,CAQA,oBAAM+tE,CAAeC,GAEbhuE,MAAK,EAAO8L,KAAOkiE,SAGjBhuE,MAAK,EAAS,QAAQ,IAAMA,MAAK,EAAO8L,KAAOkiE,GACzD,CAMA,YAAM9J,GAEoB,IAAlBlkE,MAAK,GAAuC,IAArBA,MAAK,EAAO8L,YAGjC9L,MAAK,EAAS,OACxB,CACA,OAAM,CAASG,EAAOmJ,GAClB,OAAO,IAAIuU,SAAQ2D,IACf,MAAMnhB,EAAW,KACTiJ,IAAWA,MAGftJ,KAAK6C,IAAI1C,EAAOE,GAChBmhB,IAAS,EAEbxhB,KAAK2C,GAAGxC,EAAOE,EAAS,GAEhC,CAIA,QAAIyL,GACA,OAAO9L,MAAK,EAAO8L,IACvB,CAMA,MAAAmiE,CAAOjoE,GAEH,OAAOhG,MAAK,EAAOsJ,OAAOtD,GAAStE,MACvC,CAIA,WAAI43D,GACA,OAAOt5D,MAAK,CAChB,CAIA,YAAImnE,GACA,OAAOnnE,MAAK,CAChB,oFC/SJ,MAAM,MACJkuE,EAAK,WACLjnD,EAAU,cACVknD,EAAa,SACbC,EAAQ,YACRC,EAAW,QACXC,EAAO,IACPxwD,EAAG,OACHywD,EAAM,aACNt/C,EAAY,OACZu/C,EAAM,WACNC,EAAU,aACVC,EAAY,eACZC,EAAc,WACdC,EAAU,WACVC,EAAU,YACVC,GACE,MCrBAC,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBzsE,IAAjB0sE,EACH,OAAOA,EAAalsE,QAGrB,IAAID,EAASgsE,EAAyBE,GAAY,CACjDl2D,GAAIk2D,EACJE,QAAQ,EACRnsE,QAAS,CAAC,GAUX,OANAosE,EAAoBH,GAAU/tE,KAAK6B,EAAOC,QAASD,EAAQA,EAAOC,QAASgsE,GAG3EjsE,EAAOosE,QAAS,EAGTpsE,EAAOC,OACf,CAGAgsE,EAAoB12B,EAAI82B,ExR5BpBjwE,EAAW,GACf6vE,EAAoBK,EAAI,CAAC3qE,EAAQ4qE,EAAUzvE,EAAI8rE,KAC9C,IAAG2D,EAAH,CAMA,IAAIC,EAAe7wB,IACnB,IAASl9C,EAAI,EAAGA,EAAIrC,EAASuC,OAAQF,IAAK,CACrC8tE,EAAWnwE,EAASqC,GAAG,GACvB3B,EAAKV,EAASqC,GAAG,GACjBmqE,EAAWxsE,EAASqC,GAAG,GAE3B,IAJA,IAGIguE,GAAY,EACP9sE,EAAI,EAAGA,EAAI4sE,EAAS5tE,OAAQgB,MACpB,EAAXipE,GAAsB4D,GAAgB5D,IAAapsE,OAAO+G,KAAK0oE,EAAoBK,GAAG7rD,OAAO5e,GAASoqE,EAAoBK,EAAEzqE,GAAK0qE,EAAS5sE,MAC9I4sE,EAAS71B,OAAO/2C,IAAK,IAErB8sE,GAAY,EACT7D,EAAW4D,IAAcA,EAAe5D,IAG7C,GAAG6D,EAAW,CACbrwE,EAASs6C,OAAOj4C,IAAK,GACrB,IAAIuvD,EAAIlxD,SACE2C,IAANuuD,IAAiBrsD,EAASqsD,EAC/B,CACD,CACA,OAAOrsD,CArBP,CAJCinE,EAAWA,GAAY,EACvB,IAAI,IAAInqE,EAAIrC,EAASuC,OAAQF,EAAI,GAAKrC,EAASqC,EAAI,GAAG,GAAKmqE,EAAUnqE,IAAKrC,EAASqC,GAAKrC,EAASqC,EAAI,GACrGrC,EAASqC,GAAK,CAAC8tE,EAAUzvE,EAAI8rE,EAuBjB,EyR3BdqD,EAAoBhxD,EAAKjb,IACxB,IAAI0sE,EAAS1sE,GAAUA,EAAO2sE,WAC7B,IAAO3sE,EAAiB,QACxB,IAAM,EAEP,OADAisE,EAAoBtxB,EAAE+xB,EAAQ,CAAE9oE,EAAG8oE,IAC5BA,CAAM,ECLdT,EAAoBtxB,EAAI,CAAC16C,EAAS2sE,KACjC,IAAI,IAAI/qE,KAAO+qE,EACXX,EAAoBz7B,EAAEo8B,EAAY/qE,KAASoqE,EAAoBz7B,EAAEvwC,EAAS4B,IAC5ErF,OAAOyF,eAAehC,EAAS4B,EAAK,CAAEG,YAAY,EAAMoM,IAAKw+D,EAAW/qE,IAE1E,ECNDoqE,EAAoBY,EAAI,CAAC,EAGzBZ,EAAoBtmD,EAAKmnD,GACjBhyD,QAAQC,IAAIve,OAAO+G,KAAK0oE,EAAoBY,GAAGhnE,QAAO,CAACigB,EAAUjkB,KACvEoqE,EAAoBY,EAAEhrE,GAAKirE,EAAShnD,GAC7BA,IACL,KCNJmmD,EAAoBja,EAAK8a,GAEZA,EAAU,IAAMA,EAAU,SAAW,CAAC,IAAM,uBAAuB,KAAO,uBAAuB,KAAO,uBAAuB,KAAO,uBAAuB,KAAO,uBAAuB,KAAO,wBAAwBA,GCHvOb,EAAoBxxB,EAAI,WACvB,GAA0B,iBAAf5rB,WAAyB,OAAOA,WAC3C,IACC,OAAO5xB,MAAQ,IAAIsS,SAAS,cAAb,EAChB,CAAE,MAAOoW,GACR,GAAsB,iBAAXpU,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxB06D,EAAoBz7B,EAAI,CAACkN,EAAKqvB,IAAUvwE,OAAOC,UAAUC,eAAeyB,KAAKu/C,EAAKqvB,G7RA9E1wE,EAAa,CAAC,EACdC,EAAoB,aAExB2vE,EAAoBvtE,EAAI,CAAC+H,EAAKumE,EAAMnrE,EAAKirE,KACxC,GAAGzwE,EAAWoK,GAAQpK,EAAWoK,GAAKhJ,KAAKuvE,OAA3C,CACA,IAAIt7B,EAAQu7B,EACZ,QAAWxtE,IAARoC,EAEF,IADA,IAAIqrE,EAAUx6D,SAAS03C,qBAAqB,UACpC3rD,EAAI,EAAGA,EAAIyuE,EAAQvuE,OAAQF,IAAK,CACvC,IAAIw4C,EAAIi2B,EAAQzuE,GAChB,GAAGw4C,EAAEsX,aAAa,QAAU9nD,GAAOwwC,EAAEsX,aAAa,iBAAmBjyD,EAAoBuF,EAAK,CAAE6vC,EAASuF,EAAG,KAAO,CACpH,CAEGvF,IACHu7B,GAAa,GACbv7B,EAASh/B,SAAS0nC,cAAc,WAEzB+yB,QAAU,QACjBz7B,EAAO1vB,QAAU,IACbiqD,EAAoBmB,IACvB17B,EAAOtW,aAAa,QAAS6wC,EAAoBmB,IAElD17B,EAAOtW,aAAa,eAAgB9+B,EAAoBuF,GAExD6vC,EAAOtU,IAAM32B,GAEdpK,EAAWoK,GAAO,CAACumE,GACnB,IAAIK,EAAmB,CAACzb,EAAMx0D,KAE7Bs0C,EAAOwE,QAAUxE,EAAO47B,OAAS,KACjC5iE,aAAasX,GACb,IAAIurD,EAAUlxE,EAAWoK,GAIzB,UAHOpK,EAAWoK,GAClBirC,EAAO/hB,YAAc+hB,EAAO/hB,WAAW2qB,YAAY5I,GACnD67B,GAAWA,EAAQp7D,SAASrV,GAAQA,EAAGM,KACpCw0D,EAAM,OAAOA,EAAKx0D,EAAM,EAExB4kB,EAAU5W,WAAWiiE,EAAiB3tB,KAAK,UAAMjgD,EAAW,CAAEkJ,KAAM,UAAWuK,OAAQw+B,IAAW,MACtGA,EAAOwE,QAAUm3B,EAAiB3tB,KAAK,KAAMhO,EAAOwE,SACpDxE,EAAO47B,OAASD,EAAiB3tB,KAAK,KAAMhO,EAAO47B,QACnDL,GAAcv6D,SAAS86D,KAAK99D,YAAYgiC,EApCkB,CAoCX,E8RvChDu6B,EAAoBje,EAAK/tD,IACH,oBAAX6C,QAA0BA,OAAO2qE,aAC1CjxE,OAAOyF,eAAehC,EAAS6C,OAAO2qE,YAAa,CAAEprE,MAAO,WAE7D7F,OAAOyF,eAAehC,EAAS,aAAc,CAAEoC,OAAO,GAAO,ECL9D4pE,EAAoByB,IAAO1tE,IAC1BA,EAAOob,MAAQ,GACVpb,EAAO0c,WAAU1c,EAAO0c,SAAW,IACjC1c,GCHRisE,EAAoBtsE,EAAI,WCAxB,IAAIguE,EACA1B,EAAoBxxB,EAAEd,gBAAeg0B,EAAY1B,EAAoBxxB,EAAEpe,SAAW,IACtF,IAAI3pB,EAAWu5D,EAAoBxxB,EAAE/nC,SACrC,IAAKi7D,GAAaj7D,IACbA,EAASk7D,eAAkE,WAAjDl7D,EAASk7D,cAAcx/C,QAAQxrB,gBAC5D+qE,EAAYj7D,EAASk7D,cAAcxwC,MAC/BuwC,GAAW,CACf,IAAIT,EAAUx6D,EAAS03C,qBAAqB,UAC5C,GAAG8iB,EAAQvuE,OAEV,IADA,IAAIF,EAAIyuE,EAAQvuE,OAAS,EAClBF,GAAK,KAAOkvE,IAAc,aAAavoE,KAAKuoE,KAAaA,EAAYT,EAAQzuE,KAAK2+B,GAE3F,CAID,IAAKuwC,EAAW,MAAM,IAAIt/D,MAAM,yDAChCs/D,EAAYA,EAAUnqE,QAAQ,OAAQ,IAAIA,QAAQ,QAAS,IAAIA,QAAQ,YAAa,KACpFyoE,EAAoBp0B,EAAI81B,YClBxB1B,EAAoBpoE,EAAI6O,SAASu9C,SAAWllD,KAAKsxB,SAASG,KAK1D,IAAIqxC,EAAkB,CACrB,KAAM,GAGP5B,EAAoBY,EAAEltE,EAAI,CAACmtE,EAAShnD,KAElC,IAAIgoD,EAAqB7B,EAAoBz7B,EAAEq9B,EAAiBf,GAAWe,EAAgBf,QAAWrtE,EACtG,GAA0B,IAAvBquE,EAGF,GAAGA,EACFhoD,EAASroB,KAAKqwE,EAAmB,QAC3B,CAGL,IAAItpD,EAAU,IAAI1J,SAAQ,CAAC2D,EAASC,IAAYovD,EAAqBD,EAAgBf,GAAW,CAACruD,EAASC,KAC1GoH,EAASroB,KAAKqwE,EAAmB,GAAKtpD,GAGtC,IAAI/d,EAAMwlE,EAAoBp0B,EAAIo0B,EAAoBja,EAAE8a,GAEpDx+D,EAAQ,IAAID,MAgBhB49D,EAAoBvtE,EAAE+H,GAfFrJ,IACnB,GAAG6uE,EAAoBz7B,EAAEq9B,EAAiBf,KAEf,KAD1BgB,EAAqBD,EAAgBf,MACRe,EAAgBf,QAAWrtE,GACrDquE,GAAoB,CACtB,IAAIC,EAAY3wE,IAAyB,SAAfA,EAAMuL,KAAkB,UAAYvL,EAAMuL,MAChEqlE,EAAU5wE,GAASA,EAAM8V,QAAU9V,EAAM8V,OAAOkqB,IACpD9uB,EAAMyV,QAAU,iBAAmB+oD,EAAU,cAAgBiB,EAAY,KAAOC,EAAU,IAC1F1/D,EAAMrQ,KAAO,iBACbqQ,EAAM3F,KAAOolE,EACbz/D,EAAMorD,QAAUsU,EAChBF,EAAmB,GAAGx/D,EACvB,CACD,GAEwC,SAAWw+D,EAASA,EAE/D,CACD,EAWFb,EAAoBK,EAAE3sE,EAAKmtE,GAA0C,IAA7Be,EAAgBf,GAGxD,IAAImB,EAAuB,CAACC,EAA4BniE,KACvD,IAKImgE,EAAUY,EALVP,EAAWxgE,EAAK,GAChBoiE,EAAcpiE,EAAK,GACnBqiE,EAAUriE,EAAK,GAGItN,EAAI,EAC3B,GAAG8tE,EAASzrD,MAAM9K,GAAgC,IAAxB63D,EAAgB73D,KAAa,CACtD,IAAIk2D,KAAYiC,EACZlC,EAAoBz7B,EAAE29B,EAAajC,KACrCD,EAAoB12B,EAAE22B,GAAYiC,EAAYjC,IAGhD,GAAGkC,EAAS,IAAIzsE,EAASysE,EAAQnC,EAClC,CAEA,IADGiC,GAA4BA,EAA2BniE,GACrDtN,EAAI8tE,EAAS5tE,OAAQF,IACzBquE,EAAUP,EAAS9tE,GAChBwtE,EAAoBz7B,EAAEq9B,EAAiBf,IAAYe,EAAgBf,IACrEe,EAAgBf,GAAS,KAE1Be,EAAgBf,GAAW,EAE5B,OAAOb,EAAoBK,EAAE3qE,EAAO,EAGjC0sE,EAAqBtjE,KAA4B,sBAAIA,KAA4B,uBAAK,GAC1FsjE,EAAmBl8D,QAAQ87D,EAAqBvuB,KAAK,KAAM,IAC3D2uB,EAAmB5wE,KAAOwwE,EAAqBvuB,KAAK,KAAM2uB,EAAmB5wE,KAAKiiD,KAAK2uB,QCvFvFpC,EAAoBmB,QAAK3tE,ECGzB,IAAI6uE,EAAsBrC,EAAoBK,OAAE7sE,EAAW,CAAC,OAAO,IAAOwsE,EAAoB,SAC9FqC,EAAsBrC,EAAoBK,EAAEgC","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/node_modules/decode-uri-component/index.js","webpack:///nextcloud/node_modules/split-on-first/index.js","webpack:///nextcloud/node_modules/query-string/node_modules/filter-obj/index.js","webpack:///nextcloud/node_modules/query-string/base.js","webpack:///nextcloud/node_modules/query-string/index.js","webpack:///nextcloud/apps/files/src/router/router.ts","webpack:///nextcloud/apps/files/src/FilesApp.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Cog.vue?4d6d","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=template&id=209aff25","webpack:///nextcloud/node_modules/throttle-debounce/esm/index.js","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ChartPie.vue?421f","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=90a70766","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?1370","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?2966","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?08cb","webpack://nextcloud/./apps/files/src/views/Settings.vue?84f7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Clipboard.vue?68c7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=7fdb151d","webpack:///nextcloud/apps/files/src/components/Setting.vue","webpack:///nextcloud/apps/files/src/components/Setting.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/Setting.vue?98ea","webpack://nextcloud/./apps/files/src/components/Setting.vue?8d57","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/views/Settings.vue","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/views/Settings.vue?8bf3","webpack://nextcloud/./apps/files/src/views/Settings.vue?b81b","webpack:///nextcloud/apps/files/src/composables/useNavigation.ts","webpack:///nextcloud/apps/files/src/store/viewConfig.ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue","webpack://nextcloud/./apps/files/src/views/Navigation.vue?26a1","webpack://nextcloud/./apps/files/src/views/Navigation.vue?74b9","webpack:///nextcloud/apps/files/src/views/FilesList.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Reload.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Reload.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Reload.vue?2e35","webpack:///nextcloud/node_modules/vue-material-design-icons/Reload.vue?vue&type=template&id=39a07256","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?5dae","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=template&id=64cece03","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountPlus.vue?2818","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=template&id=53a26aa0","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ViewGrid.vue?4e55","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=template&id=672ea5c8","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/store/files.ts","webpack:///nextcloud/apps/files/src/store/paths.ts","webpack:///nextcloud/apps/files/src/store/selection.ts","webpack:///nextcloud/apps/files/src/store/uploader.ts","webpack:///nextcloud/apps/files/src/services/DropServiceUtils.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/services/DropService.ts","webpack:///nextcloud/apps/files/src/store/dragging.ts","webpack:///nextcloud/apps/files/src/mixins/filesListWidth.ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?bcd4","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?d357","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntry.vue","webpack:///nextcloud/apps/files/src/store/actionsmenu.ts","webpack:///nextcloud/apps/files/src/store/renaming.ts","webpack:///nextcloud/node_modules/@vueuse/components/node_modules/vue-demi/lib/index.mjs","webpack:///nextcloud/node_modules/@vueuse/components/index.mjs","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FileMultiple.vue?6e9d","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=template&id=15fca808","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?8e66","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?36f6","webpack:///nextcloud/apps/files/src/utils/dragUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntryMixin.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/CustomElementRender.vue?5f5c","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ArrowLeft.vue?f857","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=template&id=16833c02","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?05b8","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?ff4d","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?7b52","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue","webpack:///nextcloud/apps/files/src/store/keyboard.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryCheckbox.vue?a18b","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue","webpack:///nextcloud/apps/files/src/composables/useRouteParameters.ts","webpack:///nextcloud/node_modules/vue-router/composables.mjs","webpack:///nextcloud/apps/files/src/utils/filenameValidity.ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryName.vue?617b","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryName.vue?98a4","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/File.vue?245d","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=template&id=0f6b0bb0","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/FolderOpen.vue?6818","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=template&id=ae0c5fc0","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Key.vue?157c","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=template&id=499b3412","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Network.vue?11eb","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=template&id=7bf2ec80","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Tag.vue?6116","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=template&id=356230e0","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/PlayCircle.vue?0c26","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=template&id=3cc1493c","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?1937","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?949d","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?238d","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?62c6","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryPreview.vue?8c1f","webpack:///nextcloud/apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?da7c","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue","webpack://nextcloud/./apps/files/src/components/FileEntryGrid.vue?bb8e","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListHeader.vue?349b","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?96eb","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?fa4c","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue","webpack:///nextcloud/apps/files/src/mixins/filesSorting.ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?9017","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?e364","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?8cb2","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?b1c9","webpack:///nextcloud/apps/files/src/components/VirtualList.vue","webpack:///nextcloud/apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/VirtualList.vue?37fa","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?6709","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?9494","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3eed","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?a1e5","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3555","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/TrayArrowDown.vue?a897","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=template&id=5dbf2618","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?c048","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?a2e0","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/utils/davUtils.ts","webpack://nextcloud/./apps/files/src/views/FilesList.vue?5d15","webpack://nextcloud/./apps/files/src/views/FilesList.vue?1e5b","webpack:///nextcloud/apps/files/src/FilesApp.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/FilesApp.vue?597e","webpack:///nextcloud/apps/files/src/main.ts","webpack:///nextcloud/apps/files/src/services/RouterService.ts","webpack:///nextcloud/apps/files/src/services/Settings.js","webpack:///nextcloud/apps/files/src/models/Setting.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/sax/lib/sax.js","webpack:///nextcloud/node_modules/setimmediate/setImmediate.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack:///nextcloud/node_modules/timers-browserify/main.js","webpack:///nextcloud/node_modules/xml2js/lib/bom.js","webpack:///nextcloud/node_modules/xml2js/lib/builder.js","webpack:///nextcloud/node_modules/xml2js/lib/defaults.js","webpack:///nextcloud/node_modules/xml2js/lib/parser.js","webpack:///nextcloud/node_modules/xml2js/lib/processors.js","webpack:///nextcloud/node_modules/xml2js/lib/xml2js.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/DocumentPosition.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/NodeType.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/Utility.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/WriterState.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLAttribute.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLCData.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLCharacterData.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLComment.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMImplementation.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMStringList.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDAttList.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDElement.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDEntity.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDNotation.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDeclaration.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDocType.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDocument.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDocumentCB.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDummy.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLElement.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLNode.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLNodeList.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLRaw.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLStreamWriter.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLStringWriter.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLStringifier.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLText.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLWriterBase.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css?2742","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-BaUJseCQ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/index.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios/index.js","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * @copyright Copyright (c) 2024 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","const token = '%[a-f0-9]{2}';\nconst singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');\nconst multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn [decodeURIComponent(components.join(''))];\n\t} catch {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tconst left = components.slice(0, split);\n\tconst right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch {\n\t\tlet tokens = input.match(singleMatcher) || [];\n\n\t\tfor (let i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher) || [];\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tconst replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD',\n\t};\n\n\tlet match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch {\n\t\t\tconst result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tconst entries = Object.keys(replaceMap);\n\n\tfor (const key of entries) {\n\t\t// Replace all decoded components\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nexport default function decodeUriComponent(encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n}\n","export default function splitOnFirst(string, separator) {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (string === '' || separator === '') {\n\t\treturn [];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n}\n","export function includeKeys(object, predicate) {\n\tconst result = {};\n\n\tif (Array.isArray(predicate)) {\n\t\tfor (const key of predicate) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor?.enumerable) {\n\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// `Reflect.ownKeys()` is required to retrieve symbol properties\n\t\tfor (const key of Reflect.ownKeys(object)) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor.enumerable) {\n\t\t\t\tconst value = object[key];\n\t\t\t\tif (predicate(key, value, object)) {\n\t\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function excludeKeys(object, predicate) {\n\tif (Array.isArray(predicate)) {\n\t\tconst set = new Set(predicate);\n\t\treturn includeKeys(object, key => !set.has(key));\n\t}\n\n\treturn includeKeys(object, (key, value, object) => !predicate(key, value, object));\n}\n","import decodeComponent from 'decode-uri-component';\nimport splitOnFirst from 'split-on-first';\nimport {includeKeys} from 'filter-obj';\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\n// eslint-disable-next-line unicorn/prefer-code-point\nconst strictUriEncode = string => encodeURIComponent(string).replaceAll(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result, [encode(key, options), '[', index, ']'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), '[]'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[]=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), ':list='].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), ':list=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\tcase 'bracket-separator': {\n\t\t\tconst keyValueSeparator = options.arrayFormat === 'bracket-separator'\n\t\t\t\t? '[]='\n\t\t\t\t: '=';\n\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\t// Translate null to an empty string so that it doesn't serialize as 'null'\n\t\t\t\tvalue = value === null ? '' : value;\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), keyValueSeparator, encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\tencode(key, options),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(:list)$/.exec(key);\n\t\t\t\tkey = key.replace(/:list$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : (value === null ? value : decode(value, options));\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = /(\\[])$/.test(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!isArray) {\n\t\t\t\t\taccumulator[key] = value ? decode(value, options) : value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst arrayValue = value === null\n\t\t\t\t\t? []\n\t\t\t\t\t: value.split(options.arrayFormatSeparator).map(item => decode(item, options));\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = arrayValue;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], ...arrayValue];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...[accumulator[key]].flat(), value];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nexport function extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nexport function parse(query, options) {\n\toptions = {\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false,\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst returnValue = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn returnValue;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn returnValue;\n\t}\n\n\tfor (const parameter of query.split('&')) {\n\t\tif (parameter === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst parameter_ = options.decode ? parameter.replaceAll('+', ' ') : parameter;\n\n\t\tlet [key, value] = splitOnFirst(parameter_, '=');\n\n\t\tif (key === undefined) {\n\t\t\tkey = parameter_;\n\t\t}\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : (['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options));\n\t\tformatter(decode(key, options), value, returnValue);\n\t}\n\n\tfor (const [key, value] of Object.entries(returnValue)) {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const [key2, value2] of Object.entries(value)) {\n\t\t\t\tvalue[key2] = parseValue(value2, options);\n\t\t\t}\n\t\t} else {\n\t\t\treturnValue[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn returnValue;\n\t}\n\n\t// TODO: Remove the use of `reduce`.\n\t// eslint-disable-next-line unicorn/no-array-reduce\n\treturn (options.sort === true ? Object.keys(returnValue).sort() : Object.keys(returnValue).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = returnValue[key];\n\t\tresult[key] = Boolean(value) && typeof value === 'object' && !Array.isArray(value) ? keysSorter(value) : value;\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexport function stringify(object, options) {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key]))\n\t\t|| (options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const [key, value] of Object.entries(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = value;\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\tif (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n\t\t\t\treturn encode(key, options) + '[]';\n\t\t\t}\n\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n}\n\nexport function parseUrl(url, options) {\n\toptions = {\n\t\tdecode: true,\n\t\t...options,\n\t};\n\n\tlet [url_, hash] = splitOnFirst(url, '#');\n\n\tif (url_ === undefined) {\n\t\turl_ = url;\n\t}\n\n\treturn {\n\t\turl: url_?.split('?')?.[0] ?? '',\n\t\tquery: parse(extract(url), options),\n\t\t...(options && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}),\n\t};\n}\n\nexport function stringifyUrl(object, options) {\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\t[encodeFragmentIdentifier]: true,\n\t\t...options,\n\t};\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = extract(object.url);\n\n\tconst query = {\n\t\t...parse(queryFromUrl, {sort: false}),\n\t\t...object.query,\n\t};\n\n\tlet queryString = stringify(query, options);\n\tqueryString &&= `?${queryString}`;\n\n\tlet hash = getHash(object.url);\n\tif (typeof object.fragmentIdentifier === 'string') {\n\t\tconst urlObjectForFragmentEncode = new URL(url);\n\t\turlObjectForFragmentEncode.hash = object.fragmentIdentifier;\n\t\thash = options[encodeFragmentIdentifier] ? urlObjectForFragmentEncode.hash : `#${object.fragmentIdentifier}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n}\n\nexport function pick(input, filter, options) {\n\toptions = {\n\t\tparseFragmentIdentifier: true,\n\t\t[encodeFragmentIdentifier]: false,\n\t\t...options,\n\t};\n\n\tconst {url, query, fragmentIdentifier} = parseUrl(input, options);\n\n\treturn stringifyUrl({\n\t\turl,\n\t\tquery: includeKeys(query, filter),\n\t\tfragmentIdentifier,\n\t}, options);\n}\n\nexport function exclude(input, filter, options) {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn pick(input, exclusionFilter, options);\n}\n","import * as queryString from './base.js';\n\nexport default queryString;\n","import { generateUrl } from '@nextcloud/router';\nimport queryString from 'query-string';\nimport Router from 'vue-router';\nimport Vue from 'vue';\nVue.use(Router);\n// Prevent router from throwing errors when we're already on the page we're trying to go to\nconst originalPush = Router.prototype.push;\nRouter.prototype.push = function push(to, onComplete, onAbort) {\n if (onComplete || onAbort)\n return originalPush.call(this, to, onComplete, onAbort);\n return originalPush.call(this, to).catch(err => err);\n};\nconst router = new Router({\n mode: 'history',\n // if index.php is in the url AND we got this far, then it's working:\n // let's keep using index.php in the url\n base: generateUrl('/apps/files'),\n linkActiveClass: 'active',\n routes: [\n {\n path: '/',\n // Pretending we're using the default view\n redirect: { name: 'filelist', params: { view: 'files' } },\n },\n {\n path: '/:view/:fileid(\\\\d+)?',\n name: 'filelist',\n props: true,\n },\n ],\n // Custom stringifyQuery to prevent encoding of slashes in the url\n stringifyQuery(query) {\n const result = queryString.stringify(query).replace(/%2F/gmi, '/');\n return result ? ('?' + result) : '';\n },\n});\nexport default router;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcContent',{attrs:{\"app-name\":\"files\"}},[_c('Navigation'),_vm._v(\" \"),_c('FilesList')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon cog-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CogIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Cog.vue?vue&type=template&id=209aff25\"\nimport script from \"./Cog.vue?vue&type=script&lang=js\"\nexport * from \"./Cog.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon cog-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)\n * are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,\n * as-is, to `callback` when the throttled-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds\n * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed\n * one final time after the last throttled-function call. (After the throttled-function has not been called for\n * `delay` milliseconds, the internal counter is reset).\n * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback\n * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that\n * callback will never executed if both noLeading = true and noTrailing = true.\n * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is\n * false (at end), schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle (delay, callback, options) {\n var _ref = options || {},\n _ref$noTrailing = _ref.noTrailing,\n noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,\n _ref$noLeading = _ref.noLeading,\n noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,\n _ref$debounceMode = _ref.debounceMode,\n debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;\n /*\n * After wrapper has stopped being called, this timeout ensures that\n * `callback` is executed at the proper times in `throttle` and `end`\n * debounce modes.\n */\n\n\n var timeoutID;\n var cancelled = false; // Keep track of the last time `callback` was executed.\n\n var lastExec = 0; // Function to clear existing timeout\n\n function clearExistingTimeout() {\n if (timeoutID) {\n clearTimeout(timeoutID);\n }\n } // Function to cancel next exec\n\n\n function cancel(options) {\n var _ref2 = options || {},\n _ref2$upcomingOnly = _ref2.upcomingOnly,\n upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;\n\n clearExistingTimeout();\n cancelled = !upcomingOnly;\n }\n /*\n * The `wrapper` function encapsulates all of the throttling / debouncing\n * functionality and when executed will limit the rate at which `callback`\n * is executed.\n */\n\n\n function wrapper() {\n for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n arguments_[_key] = arguments[_key];\n }\n\n var self = this;\n var elapsed = Date.now() - lastExec;\n\n if (cancelled) {\n return;\n } // Execute `callback` and update the `lastExec` timestamp.\n\n\n function exec() {\n lastExec = Date.now();\n callback.apply(self, arguments_);\n }\n /*\n * If `debounceMode` is true (at begin) this is used to clear the flag\n * to allow future `callback` executions.\n */\n\n\n function clear() {\n timeoutID = undefined;\n }\n\n if (!noLeading && debounceMode && !timeoutID) {\n /*\n * Since `wrapper` is being called for the first time and\n * `debounceMode` is true (at begin), execute `callback`\n * and noLeading != true.\n */\n exec();\n }\n\n clearExistingTimeout();\n\n if (debounceMode === undefined && elapsed > delay) {\n if (noLeading) {\n /*\n * In throttle mode with noLeading, if `delay` time has\n * been exceeded, update `lastExec` and schedule `callback`\n * to execute after `delay` ms.\n */\n lastExec = Date.now();\n\n if (!noTrailing) {\n timeoutID = setTimeout(debounceMode ? clear : exec, delay);\n }\n } else {\n /*\n * In throttle mode without noLeading, if `delay` time has been exceeded, execute\n * `callback`.\n */\n exec();\n }\n } else if (noTrailing !== true) {\n /*\n * In trailing throttle mode, since `delay` time has not been\n * exceeded, schedule `callback` to execute `delay` ms after most\n * recent execution.\n *\n * If `debounceMode` is true (at begin), schedule `clear` to execute\n * after `delay` ms.\n *\n * If `debounceMode` is false (at end), schedule `callback` to\n * execute after `delay` ms.\n */\n timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n }\n }\n\n wrapper.cancel = cancel; // Return the wrapper function.\n\n return wrapper;\n}\n\n/* eslint-disable no-undefined */\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the debounced-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n *\n * @returns {Function} A new, debounced function.\n */\n\nfunction debounce (delay, callback, options) {\n var _ref = options || {},\n _ref$atBegin = _ref.atBegin,\n atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;\n\n return throttle(delay, callback, {\n debounceMode: atBegin !== false\n });\n}\n\nexport { debounce, throttle };\n//# sourceMappingURL=index.js.map\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon chart-pie-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ChartPieIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ChartPie.vue?vue&type=template&id=90a70766\"\nimport script from \"./ChartPie.vue?vue&type=script&lang=js\"\nexport * from \"./ChartPie.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon chart-pie-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"","<template>\n\t<NcAppNavigationItem v-if=\"storageStats\"\n\t\t:aria-label=\"t('files', 'Storage informations')\"\n\t\t:class=\"{ 'app-navigation-entry__settings-quota--not-unlimited': storageStats.quota >= 0}\"\n\t\t:loading=\"loadingStorageStats\"\n\t\t:name=\"storageStatsTitle\"\n\t\t:title=\"storageStatsTooltip\"\n\t\tclass=\"app-navigation-entry__settings-quota\"\n\t\tdata-cy-files-navigation-settings-quota\n\t\t@click.stop.prevent=\"debounceUpdateStorageStats\">\n\t\t<ChartPie slot=\"icon\" :size=\"20\" />\n\n\t\t<!-- Progress bar -->\n\t\t<NcProgressBar v-if=\"storageStats.quota >= 0\"\n\t\t\tslot=\"extra\"\n\t\t\t:error=\"storageStats.relative > 80\"\n\t\t\t:value=\"Math.min(storageStats.relative, 100)\" />\n\t</NcAppNavigationItem>\n</template>\n\n<script>\nimport { debounce, throttle } from 'throttle-debounce'\nimport { formatFileSize } from '@nextcloud/files'\nimport { generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport { showError } from '@nextcloud/dialogs'\nimport { subscribe } from '@nextcloud/event-bus'\nimport { translate } from '@nextcloud/l10n'\nimport axios from '@nextcloud/axios'\n\nimport ChartPie from 'vue-material-design-icons/ChartPie.vue'\nimport NcAppNavigationItem from '@nextcloud/vue/dist/Components/NcAppNavigationItem.js'\nimport NcProgressBar from '@nextcloud/vue/dist/Components/NcProgressBar.js'\n\nimport logger from '../logger.js'\n\nexport default {\n\tname: 'NavigationQuota',\n\n\tcomponents: {\n\t\tChartPie,\n\t\tNcAppNavigationItem,\n\t\tNcProgressBar,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tloadingStorageStats: false,\n\t\t\tstorageStats: loadState('files', 'storageStats', null),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tstorageStatsTitle() {\n\t\t\tconst usedQuotaByte = formatFileSize(this.storageStats?.used, false, false)\n\t\t\tconst quotaByte = formatFileSize(this.storageStats?.quota, false, false)\n\n\t\t\t// If no quota set\n\t\t\tif (this.storageStats?.quota < 0) {\n\t\t\t\treturn this.t('files', '{usedQuotaByte} used', { usedQuotaByte })\n\t\t\t}\n\n\t\t\treturn this.t('files', '{used} of {quota} used', {\n\t\t\t\tused: usedQuotaByte,\n\t\t\t\tquota: quotaByte,\n\t\t\t})\n\t\t},\n\t\tstorageStatsTooltip() {\n\t\t\tif (!this.storageStats.relative) {\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\treturn this.t('files', '{relative}% used', this.storageStats)\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\t/**\n\t\t * Update storage stats every minute\n\t\t * TODO: remove when all views are migrated to Vue\n\t\t */\n\t\tsetInterval(this.throttleUpdateStorageStats, 60 * 1000)\n\n\t\tsubscribe('files:node:created', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:deleted', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:moved', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:updated', this.throttleUpdateStorageStats)\n\t},\n\n\tmounted() {\n\t\t// If the user has a quota set, warn if the available account storage is <=0\n\t\t//\n\t\t// NOTE: This doesn't catch situations where actual *server* \n\t\t// disk (non-quota) space is low, but those should probably\n\t\t// be handled differently anyway since a regular user can't\n\t\t// can't do much about them (If we did want to indicate server disk \n\t\t// space matters to users, we'd probably want to use a warning\n\t\t// specific to that situation anyhow. So this covers warning covers \n\t\t// our primary day-to-day concern (individual account quota usage).\n\t\t//\n\t\tif (this.storageStats?.quota > 0 && this.storageStats?.free === 0) {\n\t\t\tthis.showStorageFullWarning()\n\t\t}\n\t},\n\n\tmethods: {\n\t\t// From user input\n\t\tdebounceUpdateStorageStats: debounce(200, function(event) {\n\t\t\tthis.updateStorageStats(event)\n\t\t}),\n\t\t// From interval or event bus\n\t\tthrottleUpdateStorageStats: throttle(1000, function(event) {\n\t\t\tthis.updateStorageStats(event)\n\t\t}),\n\n\t\t/**\n\t\t * Update the storage stats\n\t\t * Throttled at max 1 refresh per minute\n\t\t *\n\t\t * @param {Event} [event = null] if user interaction\n\t\t */\n\t\tasync updateStorageStats(event = null) {\n\t\t\tif (this.loadingStorageStats) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.loadingStorageStats = true\n\t\t\ttry {\n\t\t\t\tconst response = await axios.get(generateUrl('/apps/files/api/v1/stats'))\n\t\t\t\tif (!response?.data?.data) {\n\t\t\t\t\tthrow new Error('Invalid storage stats')\n\t\t\t\t}\n\n\t\t\t\t// Warn the user if the available account storage changed from > 0 to 0 \n\t\t\t\t// (unless only because quota was intentionally set to 0 by admin in the interim)\n\t\t\t\tif (this.storageStats?.free > 0 && response.data.data?.free === 0 && response.data.data?.quota > 0) {\n\t\t\t\t\tthis.showStorageFullWarning()\n\t\t\t\t}\n\n\t\t\t\tthis.storageStats = response.data.data\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Could not refresh storage stats', { error })\n\t\t\t\t// Only show to the user if it was manually triggered\n\t\t\t\tif (event) {\n\t\t\t\t\tshowError(t('files', 'Could not refresh storage stats'))\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tthis.loadingStorageStats = false\n\t\t\t}\n\t\t},\n\n\t\tshowStorageFullWarning() {\n\t\t\tshowError(this.t('files', 'Your storage is full, files can not be updated or synced anymore!'))\n\t\t},\n\n\t\tt: translate,\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NavigationQuota.vue?vue&type=template&id=400127b6&scoped=true\"\nimport script from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nexport * from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nimport style0 from \"./NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"400127b6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.storageStats)?_c('NcAppNavigationItem',{staticClass:\"app-navigation-entry__settings-quota\",class:{ 'app-navigation-entry__settings-quota--not-unlimited': _vm.storageStats.quota >= 0},attrs:{\"aria-label\":_vm.t('files', 'Storage informations'),\"loading\":_vm.loadingStorageStats,\"name\":_vm.storageStatsTitle,\"title\":_vm.storageStatsTooltip,\"data-cy-files-navigation-settings-quota\":\"\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.debounceUpdateStorageStats.apply(null, arguments)}}},[_c('ChartPie',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"}),_vm._v(\" \"),(_vm.storageStats.quota >= 0)?_c('NcProgressBar',{attrs:{\"slot\":\"extra\",\"error\":_vm.storageStats.relative > 80,\"value\":Math.min(_vm.storageStats.relative, 100)},slot:\"extra\"}):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.open,\"show-navigation\":true,\"name\":_vm.t('files', 'Files settings')},on:{\"update:open\":_vm.onClose}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"settings\",\"name\":_vm.t('files', 'Files settings')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_favorites_first\",\"checked\":_vm.userConfig.sort_favorites_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_favorites_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort favorites first'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_folders_first\",\"checked\":_vm.userConfig.sort_folders_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_folders_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort folders before files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"show_hidden\",\"checked\":_vm.userConfig.show_hidden},on:{\"update:checked\":function($event){return _vm.setConfig('show_hidden', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Show hidden files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"crop_image_previews\",\"checked\":_vm.userConfig.crop_image_previews},on:{\"update:checked\":function($event){return _vm.setConfig('crop_image_previews', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Crop image previews'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.enableGridView)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"grid_view\",\"checked\":_vm.userConfig.grid_view},on:{\"update:checked\":function($event){return _vm.setConfig('grid_view', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Enable the grid view'))+\"\\n\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),(_vm.settings.length !== 0)?_c('NcAppSettingsSection',{attrs:{\"id\":\"more-settings\",\"name\":_vm.t('files', 'Additional settings')}},[_vm._l((_vm.settings),function(setting){return [_c('Setting',{key:setting.name,attrs:{\"el\":setting.el}})]})],2):_vm._e(),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"webdav\",\"name\":_vm.t('files', 'WebDAV')}},[_c('NcInputField',{attrs:{\"id\":\"webdav-url-input\",\"label\":_vm.t('files', 'WebDAV URL'),\"show-trailing-button\":true,\"success\":_vm.webdavUrlCopied,\"trailing-button-label\":_vm.t('files', 'Copy to clipboard'),\"value\":_vm.webdavUrl,\"readonly\":\"readonly\",\"type\":\"url\"},on:{\"focus\":function($event){return $event.target.select()},\"trailing-button-click\":_vm.copyCloudId},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [_c('Clipboard',{attrs:{\"size\":20}})]},proxy:true}])}),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.webdavDocs,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Use this address to access your Files via WebDAV'))+\" ↗\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.appPasswordUrl}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.'))+\" ↗\\n\\t\\t\\t\")])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon clipboard-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ClipboardIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Clipboard.vue?vue&type=template&id=7fdb151d\"\nimport script from \"./Clipboard.vue?vue&type=script&lang=js\"\nexport * from \"./Clipboard.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2020 Gary Kim <gary@garykim.dev>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div />\n</template>\n<script>\nexport default {\n\tname: 'Setting',\n\tprops: {\n\t\tel: {\n\t\t\ttype: Function,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.$el.appendChild(this.el())\n\t},\n}\n</script>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Setting.vue?vue&type=template&id=61d69eae\"\nimport script from \"./Setting.vue?vue&type=script&lang=js\"\nexport * from \"./Setting.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","<!--\n - @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n<template>\n\t<NcAppSettingsDialog :open=\"open\"\n\t\t:show-navigation=\"true\"\n\t\t:name=\"t('files', 'Files settings')\"\n\t\t@update:open=\"onClose\">\n\t\t<!-- Settings API-->\n\t\t<NcAppSettingsSection id=\"settings\" :name=\"t('files', 'Files settings')\">\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"sort_favorites_first\"\n\t\t\t\t:checked=\"userConfig.sort_favorites_first\"\n\t\t\t\t@update:checked=\"setConfig('sort_favorites_first', $event)\">\n\t\t\t\t{{ t('files', 'Sort favorites first') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"sort_folders_first\"\n\t\t\t\t:checked=\"userConfig.sort_folders_first\"\n\t\t\t\t@update:checked=\"setConfig('sort_folders_first', $event)\">\n\t\t\t\t{{ t('files', 'Sort folders before files') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"show_hidden\"\n\t\t\t\t:checked=\"userConfig.show_hidden\"\n\t\t\t\t@update:checked=\"setConfig('show_hidden', $event)\">\n\t\t\t\t{{ t('files', 'Show hidden files') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"crop_image_previews\"\n\t\t\t\t:checked=\"userConfig.crop_image_previews\"\n\t\t\t\t@update:checked=\"setConfig('crop_image_previews', $event)\">\n\t\t\t\t{{ t('files', 'Crop image previews') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch v-if=\"enableGridView\"\n\t\t\t\tdata-cy-files-settings-setting=\"grid_view\"\n\t\t\t\t:checked=\"userConfig.grid_view\"\n\t\t\t\t@update:checked=\"setConfig('grid_view', $event)\">\n\t\t\t\t{{ t('files', 'Enable the grid view') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</NcAppSettingsSection>\n\n\t\t<!-- Settings API-->\n\t\t<NcAppSettingsSection v-if=\"settings.length !== 0\"\n\t\t\tid=\"more-settings\"\n\t\t\t:name=\"t('files', 'Additional settings')\">\n\t\t\t<template v-for=\"setting in settings\">\n\t\t\t\t<Setting :key=\"setting.name\" :el=\"setting.el\" />\n\t\t\t</template>\n\t\t</NcAppSettingsSection>\n\n\t\t<!-- Webdav URL-->\n\t\t<NcAppSettingsSection id=\"webdav\" :name=\"t('files', 'WebDAV')\">\n\t\t\t<NcInputField id=\"webdav-url-input\"\n\t\t\t\t:label=\"t('files', 'WebDAV URL')\"\n\t\t\t\t:show-trailing-button=\"true\"\n\t\t\t\t:success=\"webdavUrlCopied\"\n\t\t\t\t:trailing-button-label=\"t('files', 'Copy to clipboard')\"\n\t\t\t\t:value=\"webdavUrl\"\n\t\t\t\treadonly=\"readonly\"\n\t\t\t\ttype=\"url\"\n\t\t\t\t@focus=\"$event.target.select()\"\n\t\t\t\t@trailing-button-click=\"copyCloudId\">\n\t\t\t\t<template #trailing-button-icon>\n\t\t\t\t\t<Clipboard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcInputField>\n\t\t\t<em>\n\t\t\t\t<a class=\"setting-link\"\n\t\t\t\t\t:href=\"webdavDocs\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noreferrer noopener\">\n\t\t\t\t\t{{ t('files', 'Use this address to access your Files via WebDAV') }} ↗\n\t\t\t\t</a>\n\t\t\t</em>\n\t\t\t<br>\n\t\t\t<em>\n\t\t\t\t<a class=\"setting-link\" :href=\"appPasswordUrl\">\n\t\t\t\t\t{{ t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.') }} ↗\n\t\t\t\t</a>\n\t\t\t</em>\n\t\t</NcAppSettingsSection>\n\t</NcAppSettingsDialog>\n</template>\n\n<script>\nimport NcAppSettingsDialog from '@nextcloud/vue/dist/Components/NcAppSettingsDialog.js'\nimport NcAppSettingsSection from '@nextcloud/vue/dist/Components/NcAppSettingsSection.js'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport Clipboard from 'vue-material-design-icons/Clipboard.vue'\nimport NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'\nimport Setting from '../components/Setting.vue'\n\nimport { generateRemoteUrl, generateUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { translate } from '@nextcloud/l10n'\nimport { loadState } from '@nextcloud/initial-state'\nimport { useUserConfigStore } from '../store/userconfig.ts'\n\nexport default {\n\tname: 'Settings',\n\tcomponents: {\n\t\tClipboard,\n\t\tNcAppSettingsDialog,\n\t\tNcAppSettingsSection,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcInputField,\n\t\tSetting,\n\t},\n\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst userConfigStore = useUserConfigStore()\n\t\treturn {\n\t\t\tuserConfigStore,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\t// Settings API\n\t\t\tsettings: window.OCA?.Files?.Settings?.settings || [],\n\n\t\t\t// Webdav infos\n\t\t\twebdavUrl: generateRemoteUrl('dav/files/' + encodeURIComponent(getCurrentUser()?.uid)),\n\t\t\twebdavDocs: 'https://docs.nextcloud.com/server/stable/go.php?to=user-webdav',\n\t\t\tappPasswordUrl: generateUrl('/settings/user/security#generate-app-token-section'),\n\t\t\twebdavUrlCopied: false,\n\t\t\tenableGridView: (loadState('core', 'config', [])['enable_non-accessible_features'] ?? true),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tuserConfig() {\n\t\t\treturn this.userConfigStore.userConfig\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\t// Update the settings API entries state\n\t\tthis.settings.forEach(setting => setting.open())\n\t},\n\n\tbeforeDestroy() {\n\t\t// Update the settings API entries state\n\t\tthis.settings.forEach(setting => setting.close())\n\t},\n\n\tmethods: {\n\t\tonClose() {\n\t\t\tthis.$emit('close')\n\t\t},\n\n\t\tsetConfig(key, value) {\n\t\t\tthis.userConfigStore.update(key, value)\n\t\t},\n\n\t\tasync copyCloudId() {\n\t\t\tdocument.querySelector('input#webdav-url-input').select()\n\n\t\t\tif (!navigator.clipboard) {\n\t\t\t\t// Clipboard API not available\n\t\t\t\tshowError(t('files', 'Clipboard is not available'))\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tawait navigator.clipboard.writeText(this.webdavUrl)\n\t\t\tthis.webdavUrlCopied = true\n\t\t\tshowSuccess(t('files', 'WebDAV URL copied to clipboard'))\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.webdavUrlCopied = false\n\t\t\t}, 5000)\n\t\t},\n\n\t\tt: translate,\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Settings.vue?vue&type=template&id=00f09e69&scoped=true\"\nimport script from \"./Settings.vue?vue&type=script&lang=js\"\nexport * from \"./Settings.vue?vue&type=script&lang=js\"\nimport style0 from \"./Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"00f09e69\",\n null\n \n)\n\nexport default component.exports","import { getNavigation } from '@nextcloud/files';\nimport { onMounted, onUnmounted, shallowRef } from 'vue';\n/**\n * Composable to get the currently active files view from the files navigation\n */\nexport function useNavigation() {\n const navigation = getNavigation();\n const views = shallowRef(navigation.views);\n const currentView = shallowRef(navigation.active);\n /**\n * Event listener to update the `currentView`\n * @param event The update event\n */\n function onUpdateActive(event) {\n currentView.value = event.detail;\n }\n /**\n * Event listener to update all registered views\n */\n function onUpdateViews() {\n views.value = navigation.views;\n }\n onMounted(() => {\n navigation.addEventListener('update', onUpdateViews);\n navigation.addEventListener('updateActive', onUpdateActive);\n });\n onUnmounted(() => {\n navigation.removeEventListener('update', onUpdateViews);\n navigation.removeEventListener('updateActive', onUpdateActive);\n });\n return {\n currentView,\n views,\n };\n}\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst viewConfig = loadState('files', 'viewConfigs', {});\nexport const useViewConfigStore = function (...args) {\n const store = defineStore('viewconfig', {\n state: () => ({\n viewConfig,\n }),\n getters: {\n getConfig: (state) => (view) => state.viewConfig[view] || {},\n },\n actions: {\n /**\n * Update the view config local store\n */\n onUpdate(view, key, value) {\n if (!this.viewConfig[view]) {\n Vue.set(this.viewConfig, view, {});\n }\n Vue.set(this.viewConfig[view], key, value);\n },\n /**\n * Update the view config local store AND on server side\n */\n async update(view, key, value) {\n axios.put(generateUrl(`/apps/files/api/v1/views/${view}/${key}`), {\n value,\n });\n emit('files:viewconfig:updated', { view, key, value });\n },\n /**\n * Set the sorting key AND sort by ASC\n * The key param must be a valid key of a File object\n * If not found, will be searched within the File attributes\n */\n setSortingBy(key = 'basename', view = 'files') {\n // Save new config\n this.update(view, 'sorting_mode', key);\n this.update(view, 'sorting_direction', 'asc');\n },\n /**\n * Toggle the sorting direction\n */\n toggleSortingDirection(view = 'files') {\n const config = this.getConfig(view) || { sorting_direction: 'asc' };\n const newDirection = config.sorting_direction === 'asc' ? 'desc' : 'asc';\n // Save new config\n this.update(view, 'sorting_direction', newDirection);\n },\n },\n });\n const viewConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!viewConfigStore._initialized) {\n subscribe('files:viewconfig:updated', function ({ view, key, value }) {\n viewConfigStore.onUpdate(view, key, value);\n });\n viewConfigStore._initialized = true;\n }\n return viewConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppNavigation',{attrs:{\"data-cy-files-navigation\":\"\",\"aria-label\":_vm.t('files', 'Files')},scopedSlots:_vm._u([{key:\"list\",fn:function(){return _vm._l((_vm.parentViews),function(view){return _c('NcAppNavigationItem',{key:view.id,attrs:{\"allow-collapse\":true,\"data-cy-files-navigation-item\":view.id,\"exact\":_vm.useExactRouteMatching(view),\"icon\":view.iconClass,\"name\":view.name,\"open\":_vm.isExpanded(view),\"pinned\":view.sticky,\"to\":_vm.generateToNavigation(view)},on:{\"update:open\":function($event){return _vm.onToggleExpand(view)}}},[(view.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":view.icon},slot:\"icon\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.childViews[view.id]),function(child){return _c('NcAppNavigationItem',{key:child.id,attrs:{\"data-cy-files-navigation-item\":child.id,\"exact-path\":true,\"icon\":child.iconClass,\"name\":child.name,\"to\":_vm.generateToNavigation(child)}},[(child.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":child.icon},slot:\"icon\"}):_vm._e()],1)})],2)})},proxy:true},{key:\"footer\",fn:function(){return [_c('ul',{staticClass:\"app-navigation-entry__settings\"},[_c('NavigationQuota'),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"aria-label\":_vm.t('files', 'Open the files app settings'),\"name\":_vm.t('files', 'Files settings'),\"data-cy-files-navigation-settings-button\":\"\"},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.openSettings.apply(null, arguments)}}},[_c('IconCog',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"})],1)],1)]},proxy:true}])},[_vm._v(\" \"),_vm._v(\" \"),_c('SettingsModal',{attrs:{\"open\":_vm.settingsOpened,\"data-cy-files-navigation-settings\":\"\"},on:{\"close\":_vm.onSettingsClose}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=d0738916&scoped=true\"\nimport script from \"./Navigation.vue?vue&type=script&lang=ts\"\nexport * from \"./Navigation.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d0738916\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{attrs:{\"page-heading\":_vm.pageHeading,\"data-cy-files-content\":\"\"}},[_c('div',{staticClass:\"files-list__header\"},[_c('BreadCrumbs',{attrs:{\"path\":_vm.dir},on:{\"reload\":_vm.fetchContent},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [(_vm.canShare && _vm.filesListWidth >= 512)?_c('NcButton',{staticClass:\"files-list__header-share-button\",class:{ 'files-list__header-share-button--shared': _vm.shareButtonType },attrs:{\"aria-label\":_vm.shareButtonLabel,\"title\":_vm.shareButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.openSharingSidebar},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.shareButtonType === _vm.ShareType.Link)?_c('LinkIcon'):_c('AccountPlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,4106306959)}):_vm._e(),_vm._v(\" \"),(!_vm.canUpload || _vm.isQuotaExceeded)?_c('NcButton',{staticClass:\"files-list__header-upload-button--disabled\",attrs:{\"aria-label\":_vm.cantUploadLabel,\"title\":_vm.cantUploadLabel,\"disabled\":true,\"type\":\"secondary\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('PlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2953566425)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'New'))+\"\\n\\t\\t\\t\\t\")]):(_vm.currentFolder)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"content\":_vm.dirContents,\"destination\":_vm.currentFolder,\"multiple\":true},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_vm.filesListWidth >= 512 && _vm.enableGridView)?_c('NcButton',{staticClass:\"files-list__header-grid-button\",attrs:{\"aria-label\":_vm.gridViewButtonLabel,\"title\":_vm.gridViewButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.toggleGridView},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.userConfig.grid_view)?_c('ListViewIcon'):_c('ViewGridIcon')]},proxy:true}],null,false,1682960703)}):_vm._e(),_vm._v(\" \"),(_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__refresh-icon\"}):_vm._e()],1),_vm._v(\" \"),(!_vm.loading && _vm.canUpload)?_c('DragAndDropNotice',{attrs:{\"current-folder\":_vm.currentFolder}}):_vm._e(),_vm._v(\" \"),(_vm.loading && !_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__loading-icon\",attrs:{\"size\":38,\"name\":_vm.t('files', 'Loading current folder')}}):(!_vm.loading && _vm.isEmptyDir)?[(_vm.error)?_c('NcEmptyContent',{attrs:{\"name\":_vm.error,\"data-cy-files-content-error\":\"\"},scopedSlots:_vm._u([{key:\"action\",fn:function(){return [_c('NcButton',{attrs:{\"type\":\"secondary\"},on:{\"click\":_vm.fetchContent},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconReload',{attrs:{\"size\":20}})]},proxy:true}],null,false,3448385010)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Retry'))+\"\\n\\t\\t\\t\\t\")])]},proxy:true},{key:\"icon\",fn:function(){return [_c('IconAlertCircleOutline')]},proxy:true}],null,false,2673163798)}):_c('NcEmptyContent',{attrs:{\"name\":_vm.currentView?.emptyTitle || _vm.t('files', 'No files in here'),\"description\":_vm.currentView?.emptyCaption || _vm.t('files', 'Upload some content or sync with your devices!'),\"data-cy-files-content-empty\":\"\"},scopedSlots:_vm._u([(_vm.dir !== '/')?{key:\"action\",fn:function(){return [_c('NcButton',{attrs:{\"aria-label\":_vm.t('files', 'Go to the previous folder'),\"type\":\"primary\",\"to\":_vm.toPreviousDir}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Go back'))+\"\\n\\t\\t\\t\\t\")])]},proxy:true}:null,{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":_vm.currentView.icon}})]},proxy:true}],null,true)})]:_c('FilesListVirtual',{ref:\"filesListVirtual\",attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"nodes\":_vm.dirContentsSorted}})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon reload-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M2 12C2 16.97 6.03 21 11 21C13.39 21 15.68 20.06 17.4 18.4L15.9 16.9C14.63 18.25 12.86 19 11 19C4.76 19 1.64 11.46 6.05 7.05C10.46 2.64 18 5.77 18 12H15L19 16H19.1L23 12H20C20 7.03 15.97 3 11 3C6.03 3 2 7.03 2 12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ReloadIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Reload.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Reload.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Reload.vue?vue&type=template&id=39a07256\"\nimport script from \"./Reload.vue?vue&type=script&lang=js\"\nexport * from \"./Reload.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon reload-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2 12C2 16.97 6.03 21 11 21C13.39 21 15.68 20.06 17.4 18.4L15.9 16.9C14.63 18.25 12.86 19 11 19C4.76 19 1.64 11.46 6.05 7.05C10.46 2.64 18 5.77 18 12H15L19 16H19.1L23 12H20C20 7.03 15.97 3 11 3C6.03 3 2 7.03 2 12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon format-list-bulleted-square-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FormatListBulletedSquareIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FormatListBulletedSquare.vue?vue&type=template&id=64cece03\"\nimport script from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\nexport * from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon format-list-bulleted-square-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon account-plus-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"AccountPlusIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountPlus.vue?vue&type=template&id=53a26aa0\"\nimport script from \"./AccountPlus.vue?vue&type=script&lang=js\"\nexport * from \"./AccountPlus.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-plus-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon view-grid-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ViewGridIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./ViewGrid.vue?vue&type=template&id=672ea5c8\"\nimport script from \"./ViewGrid.vue?vue&type=script&lang=js\"\nexport * from \"./ViewGrid.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon view-grid-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser, getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport { davGetClient } from '@nextcloud/files';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nexport const defaultRootUrl = generateRemoteUrl('dav' + rootPath);\n/**\n * @deprecated use `davGetClient` from `@nextcloud/files`\n */\nexport const getClient = (rootUrl = defaultRootUrl) => davGetClient(rootUrl);\nexport const client = davGetClient();\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nimport logger from '../logger';\nimport Vue from 'vue';\nimport { getClient } from '../services/WebdavClient.ts';\nconst client = getClient();\nconst fetchNode = async (node) => {\n const propfindPayload = davGetDefaultPropfind();\n const result = await client.stat(`${davRootPath}${node.path}`, {\n details: true,\n data: propfindPayload,\n });\n return davResultToNode(result.data);\n};\nexport const useFilesStore = function (...args) {\n const store = defineStore('files', {\n state: () => ({\n files: {},\n roots: {},\n _initialized: false,\n }),\n getters: {\n /**\n * Get a file or folder by its source\n */\n getNode: (state) => (source) => state.files[source],\n /**\n * Get a list of files or folders by their IDs\n * Note: does not return undefined values\n */\n getNodes: (state) => (sources) => sources\n .map(source => state.files[source])\n .filter(Boolean),\n /**\n * Get files or folders by their file ID\n * Multiple nodes can have the same file ID but different sources\n * (e.g. in a shared context)\n */\n getNodesById: (state) => (fileId) => Object.values(state.files).filter(node => node.fileid === fileId),\n /**\n * Get the root folder of a service\n */\n getRoot: (state) => (service) => state.roots[service],\n },\n actions: {\n updateNodes(nodes) {\n // Update the store all at once\n const files = nodes.reduce((acc, node) => {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return acc;\n }\n acc[node.source] = node;\n return acc;\n }, {});\n Vue.set(this, 'files', { ...this.files, ...files });\n },\n deleteNodes(nodes) {\n nodes.forEach(node => {\n if (node.source) {\n Vue.delete(this.files, node.source);\n }\n });\n },\n setRoot({ service, root }) {\n Vue.set(this.roots, service, root);\n },\n onDeletedNode(node) {\n this.deleteNodes([node]);\n },\n onCreatedNode(node) {\n this.updateNodes([node]);\n },\n onMovedNode({ node, oldSource }) {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return;\n }\n // Update the path of the node\n Vue.delete(this.files, oldSource);\n this.updateNodes([node]);\n },\n async onUpdatedNode(node) {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return;\n }\n // If we have multiple nodes with the same file ID, we need to update all of them\n const nodes = this.getNodesById(node.fileid);\n if (nodes.length > 1) {\n await Promise.all(nodes.map(fetchNode)).then(this.updateNodes);\n logger.debug(nodes.length + ' nodes updated in store', { fileid: node.fileid });\n return;\n }\n // If we have only one node with the file ID, we can update it directly\n if (node.source === nodes[0].source) {\n this.updateNodes([node]);\n return;\n }\n // Otherwise, it means we receive an event for a node that is not in the store\n fetchNode(node).then(n => this.updateNodes([n]));\n },\n },\n });\n const fileStore = store(...args);\n // Make sure we only register the listeners once\n if (!fileStore._initialized) {\n subscribe('files:node:created', fileStore.onCreatedNode);\n subscribe('files:node:deleted', fileStore.onDeletedNode);\n subscribe('files:node:updated', fileStore.onUpdatedNode);\n subscribe('files:node:moved', fileStore.onMovedNode);\n fileStore._initialized = true;\n }\n return fileStore;\n};\n","import { defineStore } from 'pinia';\nimport { dirname } from '@nextcloud/paths';\nimport { File, FileType, Folder, getNavigation } from '@nextcloud/files';\nimport { subscribe } from '@nextcloud/event-bus';\nimport Vue from 'vue';\nimport logger from '../logger';\nimport { useFilesStore } from './files';\nexport const usePathsStore = function (...args) {\n const files = useFilesStore(...args);\n const store = defineStore('paths', {\n state: () => ({\n paths: {},\n _initialized: false,\n }),\n getters: {\n getPath: (state) => {\n return (service, path) => {\n if (!state.paths[service]) {\n return undefined;\n }\n return state.paths[service][path];\n };\n },\n },\n actions: {\n addPath(payload) {\n // If it doesn't exists, init the service state\n if (!this.paths[payload.service]) {\n Vue.set(this.paths, payload.service, {});\n }\n // Now we can set the provided path\n Vue.set(this.paths[payload.service], payload.path, payload.source);\n },\n deletePath(service, path) {\n // skip if service does not exist\n if (!this.paths[service]) {\n return;\n }\n Vue.delete(this.paths[service], path);\n },\n onCreatedNode(node) {\n const service = getNavigation()?.active?.id || 'files';\n if (!node.fileid) {\n logger.error('Node has no fileid', { node });\n return;\n }\n // Only add path if it's a folder\n if (node.type === FileType.Folder) {\n this.addPath({\n service,\n path: node.path,\n source: node.source,\n });\n }\n // Update parent folder children if exists\n // If the folder is the root, get it and update it\n this.addNodeToParentChildren(node);\n },\n onDeletedNode(node) {\n const service = getNavigation()?.active?.id || 'files';\n if (node.type === FileType.Folder) {\n // Delete the path\n this.deletePath(service, node.path);\n }\n this.deleteNodeFromParentChildren(node);\n },\n onMovedNode({ node, oldSource }) {\n const service = getNavigation()?.active?.id || 'files';\n // Update the path of the node\n if (node.type === FileType.Folder) {\n // Delete the old path if it exists\n const oldPath = Object.entries(this.paths[service]).find(([, source]) => source === oldSource);\n if (oldPath?.[0]) {\n this.deletePath(service, oldPath[0]);\n }\n // Add the new path\n this.addPath({\n service,\n path: node.path,\n source: node.source,\n });\n }\n // Dummy simple clone of the renamed node from a previous state\n const oldNode = new File({ source: oldSource, owner: node.owner, mime: node.mime });\n this.deleteNodeFromParentChildren(oldNode);\n this.addNodeToParentChildren(node);\n },\n deleteNodeFromParentChildren(node) {\n const service = getNavigation()?.active?.id || 'files';\n // Update children of a root folder\n const parentSource = dirname(node.source);\n const folder = (node.dirname === '/' ? files.getRoot(service) : files.getNode(parentSource));\n if (folder) {\n // ensure sources are unique\n const children = new Set(folder._children ?? []);\n children.delete(node.source);\n Vue.set(folder, '_children', [...children.values()]);\n logger.debug('Children updated', { parent: folder, node, children: folder._children });\n return;\n }\n logger.debug('Parent path does not exists, skipping children update', { node });\n },\n addNodeToParentChildren(node) {\n const service = getNavigation()?.active?.id || 'files';\n // Update children of a root folder\n const parentSource = dirname(node.source);\n const folder = (node.dirname === '/' ? files.getRoot(service) : files.getNode(parentSource));\n if (folder) {\n // ensure sources are unique\n const children = new Set(folder._children ?? []);\n children.add(node.source);\n Vue.set(folder, '_children', [...children.values()]);\n logger.debug('Children updated', { parent: folder, node, children: folder._children });\n return;\n }\n logger.debug('Parent path does not exists, skipping children update', { node });\n },\n },\n });\n const pathsStore = store(...args);\n // Make sure we only register the listeners once\n if (!pathsStore._initialized) {\n subscribe('files:node:created', pathsStore.onCreatedNode);\n subscribe('files:node:deleted', pathsStore.onDeletedNode);\n subscribe('files:node:moved', pathsStore.onMovedNode);\n pathsStore._initialized = true;\n }\n return pathsStore;\n};\n","import { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useSelectionStore = defineStore('selection', {\n state: () => ({\n selected: [],\n lastSelection: [],\n lastSelectedIndex: null,\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'selected', [...new Set(selection)]);\n },\n /**\n * Set the last selected index\n */\n setLastIndex(lastSelectedIndex = null) {\n // Update the last selection if we provided a new selection starting point\n Vue.set(this, 'lastSelection', lastSelectedIndex ? this.selected : []);\n Vue.set(this, 'lastSelectedIndex', lastSelectedIndex);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'selected', []);\n Vue.set(this, 'lastSelection', []);\n Vue.set(this, 'lastSelectedIndex', null);\n },\n },\n});\n","import { defineStore } from 'pinia';\nimport { getUploader } from '@nextcloud/upload';\nlet uploader;\nexport const useUploaderStore = function (...args) {\n // Only init on runtime\n uploader = getUploader();\n const store = defineStore('uploader', {\n state: () => ({\n queue: uploader.queue,\n }),\n });\n return store(...args);\n};\n","import { emit } from '@nextcloud/event-bus';\nimport { Folder, Node, davGetClient, davGetDefaultPropfind, davResultToNode } from '@nextcloud/files';\nimport { openConflictPicker } from '@nextcloud/upload';\nimport { showError, showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport logger from '../logger.js';\n/**\n * This represents a Directory in the file tree\n * We extend the File class to better handling uploading\n * and stay as close as possible as the Filesystem API.\n * This also allow us to hijack the size or lastModified\n * properties to compute them dynamically.\n */\nexport class Directory extends File {\n /* eslint-disable no-use-before-define */\n _contents;\n constructor(name, contents = []) {\n super([], name, { type: 'httpd/unix-directory' });\n this._contents = contents;\n }\n set contents(contents) {\n this._contents = contents;\n }\n get contents() {\n return this._contents;\n }\n get size() {\n return this._computeDirectorySize(this);\n }\n get lastModified() {\n if (this._contents.length === 0) {\n return Date.now();\n }\n return this._computeDirectoryMtime(this);\n }\n /**\n * Get the last modification time of a file tree\n * This is not perfect, but will get us a pretty good approximation\n * @param directory the directory to traverse\n */\n _computeDirectoryMtime(directory) {\n return directory.contents.reduce((acc, file) => {\n return file.lastModified > acc\n // If the file is a directory, the lastModified will\n // also return the results of its _computeDirectoryMtime method\n // Fancy recursion, huh?\n ? file.lastModified\n : acc;\n }, 0);\n }\n /**\n * Get the size of a file tree\n * @param directory the directory to traverse\n */\n _computeDirectorySize(directory) {\n return directory.contents.reduce((acc, entry) => {\n // If the file is a directory, the size will\n // also return the results of its _computeDirectorySize method\n // Fancy recursion, huh?\n return acc + entry.size;\n }, 0);\n }\n}\n/**\n * Traverse a file tree using the Filesystem API\n * @param entry the entry to traverse\n */\nexport const traverseTree = async (entry) => {\n // Handle file\n if (entry.isFile) {\n return new Promise((resolve, reject) => {\n entry.file(resolve, reject);\n });\n }\n // Handle directory\n logger.debug('Handling recursive file tree', { entry: entry.name });\n const directory = entry;\n const entries = await readDirectory(directory);\n const contents = (await Promise.all(entries.map(traverseTree))).flat();\n return new Directory(directory.name, contents);\n};\n/**\n * Read a directory using Filesystem API\n * @param directory the directory to read\n */\nconst readDirectory = (directory) => {\n const dirReader = directory.createReader();\n return new Promise((resolve, reject) => {\n const entries = [];\n const getEntries = () => {\n dirReader.readEntries((results) => {\n if (results.length) {\n entries.push(...results);\n getEntries();\n }\n else {\n resolve(entries);\n }\n }, (error) => {\n reject(error);\n });\n };\n getEntries();\n });\n};\nexport const createDirectoryIfNotExists = async (absolutePath) => {\n const davClient = davGetClient();\n const dirExists = await davClient.exists(absolutePath);\n if (!dirExists) {\n logger.debug('Directory does not exist, creating it', { absolutePath });\n await davClient.createDirectory(absolutePath, { recursive: true });\n const stat = await davClient.stat(absolutePath, { details: true, data: davGetDefaultPropfind() });\n emit('files:node:created', davResultToNode(stat.data));\n }\n};\nexport const resolveConflict = async (files, destination, contents) => {\n try {\n // List all conflicting files\n const conflicts = files.filter((file) => {\n return contents.find((node) => node.basename === (file instanceof File ? file.name : file.basename));\n }).filter(Boolean);\n // List of incoming files that are NOT in conflict\n const uploads = files.filter((file) => {\n return !conflicts.includes(file);\n });\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, conflicts, contents);\n logger.debug('Conflict resolution', { uploads, selected, renamed });\n // If the user selected nothing, we cancel the upload\n if (selected.length === 0 && renamed.length === 0) {\n // User skipped\n showInfo(t('files', 'Conflicts resolution skipped'));\n logger.info('User skipped the conflict resolution');\n return [];\n }\n // Update the list of files to upload\n return [...uploads, ...selected, ...renamed];\n }\n catch (error) {\n console.error(error);\n // User cancelled\n showError(t('files', 'Upload cancelled'));\n logger.error('User cancelled the upload');\n }\n return [];\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n// Maximum number of concurrent operations\nconst MAX_CONCURRENCY = 5;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: MAX_CONCURRENCY });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport logger from '../logger';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => {\n return davResultToNode(node);\n};\nconst client = davGetClient();\nexport const getContents = (path = '/') => {\n path = `${davRootPath}${path}`;\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map(result => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\n// eslint-disable-next-line n/no-extraneous-import\nimport { AxiosError } from 'axios';\nimport { basename, join } from 'path';\nimport { FilePickerClosed, getFilePickerBuilder, showError, showInfo, TOAST_PERMANENT_TIMEOUT } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Create a loading notification toast\n * @param mode The move or copy mode\n * @param source Name of the node that is copied / moved\n * @param destination Destination path\n * @return {() => void} Function to hide the notification\n */\nfunction createLoadingNotification(mode, source, destination) {\n const text = mode === MoveCopyAction.MOVE ? t('files', 'Moving \"{source}\" to \"{destination}\" …', { source, destination }) : t('files', 'Copying \"{source}\" to \"{destination}\" …', { source, destination });\n let toast;\n toast = showInfo(`<span class=\"icon icon-loading-small toast-loading-icon\"></span> ${text}`, {\n isHTML: true,\n timeout: TOAST_PERMANENT_TIMEOUT,\n onRemove: () => { toast?.hideToast(); toast = undefined; },\n });\n return () => toast && toast.hideToast();\n}\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise<void>} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const actionFinished = createLoadingNotification(method, node.basename, destination.path);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n if (!overwrite) {\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // two empty arrays: either only old files or conflict skipped -> no action required\n if (!selected.length && !renamed.length) {\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n try {\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n }\n catch (error) {\n const parser = new DOMParser();\n const text = await error.response?.text();\n const message = parser.parseFromString(text ?? '', 'text/xml')\n .querySelector('message')?.textContent;\n if (message) {\n showError(message);\n }\n throw error;\n }\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (error instanceof AxiosError) {\n if (error?.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error?.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error?.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', '');\n actionFinished();\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param action The action to open the file picker for\n * @param dir The directory to start the file picker in\n * @param nodes The nodes to move/copy\n * @return The picked destination or false if cancelled by user\n */\nasync function openFilePickerForAction(action, dir = '/', nodes) {\n const { resolve, reject, promise } = Promise.withResolvers();\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir)\n .setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n })\n .build();\n filePicker.pick()\n .catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n resolve(false);\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n return promise;\n}\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n if (result === false) {\n showInfo(t('files', 'Cancelled move or copy of \"{filename}\".', { filename: node.displayname }));\n return null;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n // Handle cancellation silently\n if (result === false) {\n showInfo(nodes.length === 1\n ? t('files', 'Cancelled move or copy of \"{filename}\".', { filename: nodes[0].displayname })\n : t('files', 'Cancelled move or copy operation'));\n return nodes.map(() => null);\n }\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Folder, Node, NodeStatus, davRootPath } from '@nextcloud/files';\nimport { getUploader, hasConflict } from '@nextcloud/upload';\nimport { join } from 'path';\nimport { joinPaths } from '@nextcloud/paths';\nimport { showError, showInfo, showSuccess, showWarning } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue from 'vue';\nimport { Directory, traverseTree, resolveConflict, createDirectoryIfNotExists } from './DropServiceUtils';\nimport { handleCopyMoveNodeTo } from '../actions/moveOrCopyAction';\nimport { MoveCopyAction } from '../actions/moveOrCopyActionUtils';\nimport logger from '../logger.js';\n/**\n * This function converts a list of DataTransferItems to a file tree.\n * It uses the Filesystem API if available, otherwise it falls back to the File API.\n * The File API will NOT be available if the browser is not in a secure context (e.g. HTTP).\n * ⚠️ When using this method, you need to use it as fast as possible, as the DataTransferItems\n * will be cleared after the first access to the props of one of the entries.\n *\n * @param items the list of DataTransferItems\n */\nexport const dataTransferToFileTree = async (items) => {\n // Check if the browser supports the Filesystem API\n // We need to cache the entries to prevent Blink engine bug that clears\n // the list (`data.items`) after first access props of one of the entries\n const entries = items\n .filter((item) => {\n if (item.kind !== 'file') {\n logger.debug('Skipping dropped item', { kind: item.kind, type: item.type });\n return false;\n }\n return true;\n }).map((item) => {\n // MDN recommends to try both, as it might be renamed in the future\n return item?.getAsEntry?.()\n ?? item?.webkitGetAsEntry?.()\n ?? item;\n });\n let warned = false;\n const fileTree = new Directory('root');\n // Traverse the file tree\n for (const entry of entries) {\n // Handle browser issues if Filesystem API is not available. Fallback to File API\n if (entry instanceof DataTransferItem) {\n logger.warn('Could not get FilesystemEntry of item, falling back to file');\n const file = entry.getAsFile();\n if (file === null) {\n logger.warn('Could not process DataTransferItem', { type: entry.type, kind: entry.kind });\n showError(t('files', 'One of the dropped files could not be processed'));\n continue;\n }\n // Warn the user that the browser does not support the Filesystem API\n // we therefore cannot upload directories recursively.\n if (file.type === 'httpd/unix-directory' || !file.type) {\n if (!warned) {\n logger.warn('Browser does not support Filesystem API. Directories will not be uploaded');\n showWarning(t('files', 'Your browser does not support the Filesystem API. Directories will not be uploaded'));\n warned = true;\n }\n continue;\n }\n fileTree.contents.push(file);\n continue;\n }\n // Use Filesystem API\n try {\n fileTree.contents.push(await traverseTree(entry));\n }\n catch (error) {\n // Do not throw, as we want to continue with the other files\n logger.error('Error while traversing file tree', { error });\n }\n }\n return fileTree;\n};\nexport const onDropExternalFiles = async (root, destination, contents) => {\n const uploader = getUploader();\n // Check for conflicts on root elements\n if (await hasConflict(root.contents, contents)) {\n root.contents = await resolveConflict(root.contents, destination, contents);\n }\n if (root.contents.length === 0) {\n logger.info('No files to upload', { root });\n showInfo(t('files', 'No files to upload'));\n return [];\n }\n // Let's process the files\n logger.debug(`Uploading files to ${destination.path}`, { root, contents: root.contents });\n const queue = [];\n const uploadDirectoryContents = async (directory, path) => {\n for (const file of directory.contents) {\n // This is the relative path to the resource\n // from the current uploader destination\n const relativePath = join(path, file.name);\n // If the file is a directory, we need to create it first\n // then browse its tree and upload its contents.\n if (file instanceof Directory) {\n const absolutePath = joinPaths(davRootPath, destination.path, relativePath);\n try {\n console.debug('Processing directory', { relativePath });\n await createDirectoryIfNotExists(absolutePath);\n await uploadDirectoryContents(file, relativePath);\n }\n catch (error) {\n showError(t('files', 'Unable to create the directory {directory}', { directory: file.name }));\n logger.error('', { error, absolutePath, directory: file });\n }\n continue;\n }\n // If we've reached a file, we can upload it\n logger.debug('Uploading file to ' + join(destination.path, relativePath), { file });\n // Overriding the root to avoid changing the current uploader context\n queue.push(uploader.upload(relativePath, file, destination.source));\n }\n };\n // Pause the uploader to prevent it from starting\n // while we compute the queue\n uploader.pause();\n // Upload the files. Using '/' as the starting point\n // as we already adjusted the uploader destination\n await uploadDirectoryContents(root, '/');\n uploader.start();\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while uploading files', { errors });\n showError(t('files', 'Some files could not be uploaded'));\n return [];\n }\n logger.debug('Files uploaded successfully');\n showSuccess(t('files', 'Files uploaded successfully'));\n return Promise.all(queue);\n};\nexport const onDropInternalFiles = async (nodes, destination, contents, isCopy = false) => {\n const queue = [];\n // Check for conflicts on root elements\n if (await hasConflict(nodes, contents)) {\n nodes = await resolveConflict(nodes, destination, contents);\n }\n if (nodes.length === 0) {\n logger.info('No files to process', { nodes });\n showInfo(t('files', 'No files to process'));\n return;\n }\n for (const node of nodes) {\n Vue.set(node, 'status', NodeStatus.LOADING);\n queue.push(handleCopyMoveNodeTo(node, destination, isCopy ? MoveCopyAction.COPY : MoveCopyAction.MOVE, true));\n }\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n nodes.forEach(node => Vue.set(node, 'status', undefined));\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while copying or moving files', { errors });\n showError(isCopy ? t('files', 'Some files could not be copied') : t('files', 'Some files could not be moved'));\n return;\n }\n logger.debug('Files copy/move successful');\n showSuccess(isCopy ? t('files', 'Files copied successfully') : t('files', 'Files moved successfully'));\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useDragAndDropStore = defineStore('dragging', {\n state: () => ({\n dragging: [],\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'dragging', selection);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'dragging', []);\n },\n },\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport Vue from 'vue';\nexport default Vue.extend({\n data() {\n return {\n filesListWidth: null,\n };\n },\n mounted() {\n const fileListEl = document.querySelector('#app-content-vue');\n this.filesListWidth = fileListEl?.clientWidth ?? null;\n this.$resizeObserver = new ResizeObserver((entries) => {\n if (entries.length > 0 && entries[0].target === fileListEl) {\n this.filesListWidth = entries[0].contentRect.width;\n }\n });\n this.$resizeObserver.observe(fileListEl);\n },\n beforeDestroy() {\n this.$resizeObserver.disconnect();\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcBreadcrumbs',{staticClass:\"files-list__breadcrumbs\",class:{ 'files-list__breadcrumbs--with-progress': _vm.wrapUploadProgressBar },attrs:{\"data-cy-files-content-breadcrumbs\":\"\",\"aria-label\":_vm.t('files', 'Current directory path')},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_vm._t(\"actions\")]},proxy:true}],null,true)},_vm._l((_vm.sections),function(section,index){return _c('NcBreadcrumb',_vm._b({key:section.dir,attrs:{\"dir\":\"auto\",\"to\":section.to,\"force-icon-text\":index === 0 && _vm.filesListWidth >= 486,\"title\":_vm.titleForSection(index, section),\"aria-description\":_vm.ariaForSection(section)},on:{\"drop\":function($event){return _vm.onDrop($event, section.dir)}},nativeOn:{\"click\":function($event){return _vm.onClick(section.to)},\"dragover\":function($event){return _vm.onDragOver($event, section.dir)}},scopedSlots:_vm._u([(index === 0)?{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"size\":20,\"svg\":_vm.viewIcon}})]},proxy:true}:null],null,true)},'NcBreadcrumb',section,false))}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BreadCrumbs.vue?vue&type=template&id=20858d70&scoped=true\"\nimport script from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nexport * from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nimport style0 from \"./BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"20858d70\",\n null\n \n)\n\nexport default component.exports","/**\n * @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\n/**\n * Extract dir and name from file path\n *\n * @param {string} path the full path\n * @return {string[]} [dirPath, fileName]\n */\nexport const extractFilePaths = function (path) {\n const pathSections = path.split('/');\n const fileName = pathSections[pathSections.length - 1];\n const dirPath = pathSections.slice(0, pathSections.length - 1).join('/');\n return [dirPath, fileName];\n};\n/**\n * Generate a translated summary of an array of nodes\n * @param {Node[]} nodes the nodes to summarize\n * @return {string}\n */\nexport const getSummaryFor = (nodes) => {\n const fileCount = nodes.filter(node => node.type === FileType.File).length;\n const folderCount = nodes.filter(node => node.type === FileType.Folder).length;\n if (fileCount === 0) {\n return n('files', '{folderCount} folder', '{folderCount} folders', folderCount, { folderCount });\n }\n else if (folderCount === 0) {\n return n('files', '{fileCount} file', '{fileCount} files', fileCount, { fileCount });\n }\n if (fileCount === 1) {\n return n('files', '1 file and {folderCount} folder', '1 file and {folderCount} folders', folderCount, { folderCount });\n }\n if (folderCount === 1) {\n return n('files', '{fileCount} file and 1 folder', '{fileCount} files and 1 folder', fileCount, { fileCount });\n }\n return t('files', '{fileCount} files and {folderCount} folders', { fileCount, folderCount });\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',_vm._g({staticClass:\"files-list__row\",class:{\n\t\t'files-list__row--dragover': _vm.dragover,\n\t\t'files-list__row--loading': _vm.isLoading,\n\t\t'files-list__row--active': _vm.isActive,\n\t},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag}},_vm.rowListeners),[(_vm.source.attributes.failed)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"source\":_vm.source,\"dragover\":_vm.dragover},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"basename\":_vm.basename,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isRenamingSmallScreen),expression:\"!isRenamingSmallScreen\"}],ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}}),_vm._v(\" \"),(!_vm.compact && _vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__row-size\",style:(_vm.sizeOpacity),attrs:{\"data-cy-files-list-row-size\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('span',[_vm._v(_vm._s(_vm.size))])]):_vm._e(),_vm._v(\" \"),(!_vm.compact && _vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__row-mtime\",style:(_vm.mtimeOpacity),attrs:{\"data-cy-files-list-row-mtime\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[(_vm.mtime)?_c('NcDateTime',{attrs:{\"timestamp\":_vm.mtime,\"ignore-seconds\":true}}):_c('span',[_vm._v(_vm._s(_vm.t('files', 'Unknown date')))])],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('td',{key:column.id,staticClass:\"files-list__row-column-custom\",class:`files-list__row-${_vm.currentView?.id}-${column.id}`,attrs:{\"data-cy-files-list-row-column-custom\":column.id},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('CustomElementRender',{attrs:{\"current-view\":_vm.currentView,\"render\":column.render,\"source\":_vm.source}})],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nexport const useActionsMenuStore = defineStore('actionsmenu', {\n state: () => ({\n opened: null,\n }),\n});\n","import axios, { isAxiosError } from '@nextcloud/axios';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { NodeStatus } from '@nextcloud/files';\nimport { t } from '@nextcloud/l10n';\nimport { basename, dirname } from 'path';\nimport { defineStore } from 'pinia';\nimport logger from '../logger';\nimport Vue from 'vue';\nexport const useRenamingStore = function (...args) {\n const store = defineStore('renaming', {\n state: () => ({\n renamingNode: undefined,\n newName: '',\n }),\n actions: {\n /**\n * Execute the renaming.\n * This will rename the node set as `renamingNode` to the configured new name `newName`.\n * @return true if success, false if skipped (e.g. new and old name are the same)\n * @throws Error if renaming fails, details are set in the error message\n */\n async rename() {\n if (this.renamingNode === undefined) {\n throw new Error('No node is currently being renamed');\n }\n const newName = this.newName.trim?.() || '';\n const oldName = this.renamingNode.basename;\n const oldEncodedSource = this.renamingNode.encodedSource;\n if (oldName === newName) {\n return false;\n }\n const node = this.renamingNode;\n Vue.set(node, 'status', NodeStatus.LOADING);\n try {\n // rename the node\n this.renamingNode.rename(newName);\n logger.debug('Moving file to', { destination: this.renamingNode.encodedSource, oldEncodedSource });\n // create MOVE request\n await axios({\n method: 'MOVE',\n url: oldEncodedSource,\n headers: {\n Destination: this.renamingNode.encodedSource,\n Overwrite: 'F',\n },\n });\n // Success 🎉\n emit('files:node:updated', this.renamingNode);\n emit('files:node:renamed', this.renamingNode);\n emit('files:node:moved', {\n node: this.renamingNode,\n oldSource: `${dirname(this.renamingNode.source)}/${oldName}`,\n });\n this.$reset();\n return true;\n }\n catch (error) {\n logger.error('Error while renaming file', { error });\n // Rename back as it failed\n this.renamingNode.rename(oldName);\n if (isAxiosError(error)) {\n // TODO: 409 means current folder does not exist, redirect ?\n if (error?.response?.status === 404) {\n throw new Error(t('files', 'Could not rename \"{oldName}\", it does not exist any more', { oldName }));\n }\n else if (error?.response?.status === 412) {\n throw new Error(t('files', 'The name \"{newName}\" is already used in the folder \"{dir}\". Please choose a different name.', {\n newName,\n dir: basename(this.renamingNode.dirname),\n }));\n }\n }\n // Unknown error\n throw new Error(t('files', 'Could not rename \"{oldName}\"', { oldName }));\n }\n finally {\n Vue.set(node, 'status', undefined);\n }\n },\n },\n });\n const renamingStore = store(...args);\n // Make sure we only register the listeners once\n if (!renamingStore._initialized) {\n subscribe('files:node:rename', function (node) {\n renamingStore.renamingNode = node;\n renamingStore.newName = node.basename;\n });\n renamingStore._initialized = true;\n }\n return renamingStore;\n};\n","import Vue from 'vue'\nimport { getCurrentInstance } from 'vue'\n\nvar isVue2 = true\nvar isVue3 = false\nvar Vue2 = Vue\nvar warn = Vue.util.warn\n\nfunction install() {}\n\n// createApp polyfill\nexport function createApp(rootComponent, rootProps) {\n var vm\n var provide = {}\n var app = {\n config: Vue.config,\n use: Vue.use.bind(Vue),\n mixin: Vue.mixin.bind(Vue),\n component: Vue.component.bind(Vue),\n provide: function (key, value) {\n provide[key] = value\n return this\n },\n directive: function (name, dir) {\n if (dir) {\n Vue.directive(name, dir)\n return app\n } else {\n return Vue.directive(name)\n }\n },\n mount: function (el, hydrating) {\n if (!vm) {\n vm = new Vue(Object.assign({ propsData: rootProps }, rootComponent, { provide: Object.assign(provide, rootComponent.provide) }))\n vm.$mount(el, hydrating)\n return vm\n } else {\n return vm\n }\n },\n unmount: function () {\n if (vm) {\n vm.$destroy()\n vm = undefined\n }\n },\n }\n return app\n}\n\nexport {\n Vue,\n Vue2,\n isVue2,\n isVue3,\n install,\n warn\n}\n\n// Vue 3 components mock\nfunction createMockComponent(name) {\n return {\n setup() {\n throw new Error('[vue-demi] ' + name + ' is not supported in Vue 2. It\\'s provided to avoid compiler errors.')\n }\n }\n}\nexport var Fragment = /*#__PURE__*/ createMockComponent('Fragment')\nexport var Transition = /*#__PURE__*/ createMockComponent('Transition')\nexport var TransitionGroup = /*#__PURE__*/ createMockComponent('TransitionGroup')\nexport var Teleport = /*#__PURE__*/ createMockComponent('Teleport')\nexport var Suspense = /*#__PURE__*/ createMockComponent('Suspense')\nexport var KeepAlive = /*#__PURE__*/ createMockComponent('KeepAlive')\n\nexport * from 'vue'\n\n// Not implemented https://github.com/vuejs/core/pull/8111, falls back to getCurrentInstance()\nexport function hasInjectionContext() {\n return !!getCurrentInstance()\n}\n","import { defineComponent, ref, h, watch, computed, reactive, shallowRef, nextTick, getCurrentInstance, onMounted, isVue2, watchEffect, toRefs } from 'vue-demi';\nimport { onClickOutside as onClickOutside$1, useActiveElement, useBattery, useBrowserLocation, useClipboard, useDark, useDeviceMotion, useDeviceOrientation, useDevicePixelRatio, useDevicesList, useDocumentVisibility, useStorage as useStorage$1, isClient as isClient$1, useDraggable, useElementBounding, useElementSize as useElementSize$1, useElementVisibility as useElementVisibility$1, useEyeDropper, useFullscreen, useGeolocation, useIdle, useMouse, useMouseInElement, useMousePressed, useNetwork, useNow, useObjectUrl, useOffsetPagination, useOnline, usePageLeave, usePointer, usePointerLock, usePreferredColorScheme, usePreferredContrast, usePreferredDark as usePreferredDark$1, usePreferredLanguages, usePreferredReducedMotion, useTimeAgo, useTimestamp, useVirtualList, useWindowFocus, useWindowSize } from '@vueuse/core';\nimport { toValue, isClient, noop, isObject, tryOnScopeDispose, isIOS, directiveHooks, pausableWatch, tryOnMounted, toRef, useToggle, notNullish, promiseTimeout, until, useDebounceFn, useThrottleFn } from '@vueuse/shared';\n\nconst OnClickOutside = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"OnClickOutside\",\n props: [\"as\", \"options\"],\n emits: [\"trigger\"],\n setup(props, { slots, emit }) {\n const target = ref();\n onClickOutside$1(target, (e) => {\n emit(\"trigger\", e);\n }, props.options);\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default());\n };\n }\n});\n\nfunction unrefElement(elRef) {\n var _a;\n const plain = toValue(elRef);\n return (_a = plain == null ? void 0 : plain.$el) != null ? _a : plain;\n}\n\nconst defaultWindow = isClient ? window : void 0;\n\nfunction useEventListener(...args) {\n let target;\n let events;\n let listeners;\n let options;\n if (typeof args[0] === \"string\" || Array.isArray(args[0])) {\n [events, listeners, options] = args;\n target = defaultWindow;\n } else {\n [target, events, listeners, options] = args;\n }\n if (!target)\n return noop;\n if (!Array.isArray(events))\n events = [events];\n if (!Array.isArray(listeners))\n listeners = [listeners];\n const cleanups = [];\n const cleanup = () => {\n cleanups.forEach((fn) => fn());\n cleanups.length = 0;\n };\n const register = (el, event, listener, options2) => {\n el.addEventListener(event, listener, options2);\n return () => el.removeEventListener(event, listener, options2);\n };\n const stopWatch = watch(\n () => [unrefElement(target), toValue(options)],\n ([el, options2]) => {\n cleanup();\n if (!el)\n return;\n const optionsClone = isObject(options2) ? { ...options2 } : options2;\n cleanups.push(\n ...events.flatMap((event) => {\n return listeners.map((listener) => register(el, event, listener, optionsClone));\n })\n );\n },\n { immediate: true, flush: \"post\" }\n );\n const stop = () => {\n stopWatch();\n cleanup();\n };\n tryOnScopeDispose(stop);\n return stop;\n}\n\nlet _iOSWorkaround = false;\nfunction onClickOutside(target, handler, options = {}) {\n const { window = defaultWindow, ignore = [], capture = true, detectIframe = false } = options;\n if (!window)\n return noop;\n if (isIOS && !_iOSWorkaround) {\n _iOSWorkaround = true;\n Array.from(window.document.body.children).forEach((el) => el.addEventListener(\"click\", noop));\n window.document.documentElement.addEventListener(\"click\", noop);\n }\n let shouldListen = true;\n const shouldIgnore = (event) => {\n return ignore.some((target2) => {\n if (typeof target2 === \"string\") {\n return Array.from(window.document.querySelectorAll(target2)).some((el) => el === event.target || event.composedPath().includes(el));\n } else {\n const el = unrefElement(target2);\n return el && (event.target === el || event.composedPath().includes(el));\n }\n });\n };\n const listener = (event) => {\n const el = unrefElement(target);\n if (!el || el === event.target || event.composedPath().includes(el))\n return;\n if (event.detail === 0)\n shouldListen = !shouldIgnore(event);\n if (!shouldListen) {\n shouldListen = true;\n return;\n }\n handler(event);\n };\n const cleanup = [\n useEventListener(window, \"click\", listener, { passive: true, capture }),\n useEventListener(window, \"pointerdown\", (e) => {\n const el = unrefElement(target);\n shouldListen = !shouldIgnore(e) && !!(el && !e.composedPath().includes(el));\n }, { passive: true }),\n detectIframe && useEventListener(window, \"blur\", (event) => {\n setTimeout(() => {\n var _a;\n const el = unrefElement(target);\n if (((_a = window.document.activeElement) == null ? void 0 : _a.tagName) === \"IFRAME\" && !(el == null ? void 0 : el.contains(window.document.activeElement))) {\n handler(event);\n }\n }, 0);\n })\n ].filter(Boolean);\n const stop = () => cleanup.forEach((fn) => fn());\n return stop;\n}\n\nconst vOnClickOutside = {\n [directiveHooks.mounted](el, binding) {\n const capture = !binding.modifiers.bubble;\n if (typeof binding.value === \"function\") {\n el.__onClickOutside_stop = onClickOutside(el, binding.value, { capture });\n } else {\n const [handler, options] = binding.value;\n el.__onClickOutside_stop = onClickOutside(el, handler, Object.assign({ capture }, options));\n }\n },\n [directiveHooks.unmounted](el) {\n el.__onClickOutside_stop();\n }\n};\n\nfunction createKeyPredicate(keyFilter) {\n if (typeof keyFilter === \"function\")\n return keyFilter;\n else if (typeof keyFilter === \"string\")\n return (event) => event.key === keyFilter;\n else if (Array.isArray(keyFilter))\n return (event) => keyFilter.includes(event.key);\n return () => true;\n}\nfunction onKeyStroke(...args) {\n let key;\n let handler;\n let options = {};\n if (args.length === 3) {\n key = args[0];\n handler = args[1];\n options = args[2];\n } else if (args.length === 2) {\n if (typeof args[1] === \"object\") {\n key = true;\n handler = args[0];\n options = args[1];\n } else {\n key = args[0];\n handler = args[1];\n }\n } else {\n key = true;\n handler = args[0];\n }\n const {\n target = defaultWindow,\n eventName = \"keydown\",\n passive = false,\n dedupe = false\n } = options;\n const predicate = createKeyPredicate(key);\n const listener = (e) => {\n if (e.repeat && toValue(dedupe))\n return;\n if (predicate(e))\n handler(e);\n };\n return useEventListener(target, eventName, listener, passive);\n}\n\nconst vOnKeyStroke = {\n [directiveHooks.mounted](el, binding) {\n var _a, _b;\n const keys = (_b = (_a = binding.arg) == null ? void 0 : _a.split(\",\")) != null ? _b : true;\n if (typeof binding.value === \"function\") {\n onKeyStroke(keys, binding.value, {\n target: el\n });\n } else {\n const [handler, options] = binding.value;\n onKeyStroke(keys, handler, {\n target: el,\n ...options\n });\n }\n }\n};\n\nconst DEFAULT_DELAY = 500;\nconst DEFAULT_THRESHOLD = 10;\nfunction onLongPress(target, handler, options) {\n var _a, _b;\n const elementRef = computed(() => unrefElement(target));\n let timeout;\n let posStart;\n let startTimestamp;\n let hasLongPressed = false;\n function clear() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = void 0;\n }\n posStart = void 0;\n startTimestamp = void 0;\n hasLongPressed = false;\n }\n function onRelease(ev) {\n var _a2, _b2, _c;\n const [_startTimestamp, _posStart, _hasLongPressed] = [startTimestamp, posStart, hasLongPressed];\n clear();\n if (!(options == null ? void 0 : options.onMouseUp) || !_posStart || !_startTimestamp)\n return;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n const dx = ev.x - _posStart.x;\n const dy = ev.y - _posStart.y;\n const distance = Math.sqrt(dx * dx + dy * dy);\n options.onMouseUp(ev.timeStamp - _startTimestamp, distance, _hasLongPressed);\n }\n function onDown(ev) {\n var _a2, _b2, _c, _d;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n clear();\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n posStart = {\n x: ev.x,\n y: ev.y\n };\n startTimestamp = ev.timeStamp;\n timeout = setTimeout(\n () => {\n hasLongPressed = true;\n handler(ev);\n },\n (_d = options == null ? void 0 : options.delay) != null ? _d : DEFAULT_DELAY\n );\n }\n function onMove(ev) {\n var _a2, _b2, _c, _d;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n if (!posStart || (options == null ? void 0 : options.distanceThreshold) === false)\n return;\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n const dx = ev.x - posStart.x;\n const dy = ev.y - posStart.y;\n const distance = Math.sqrt(dx * dx + dy * dy);\n if (distance >= ((_d = options == null ? void 0 : options.distanceThreshold) != null ? _d : DEFAULT_THRESHOLD))\n clear();\n }\n const listenerOptions = {\n capture: (_a = options == null ? void 0 : options.modifiers) == null ? void 0 : _a.capture,\n once: (_b = options == null ? void 0 : options.modifiers) == null ? void 0 : _b.once\n };\n const cleanup = [\n useEventListener(elementRef, \"pointerdown\", onDown, listenerOptions),\n useEventListener(elementRef, \"pointermove\", onMove, listenerOptions),\n useEventListener(elementRef, [\"pointerup\", \"pointerleave\"], onRelease, listenerOptions)\n ];\n const stop = () => cleanup.forEach((fn) => fn());\n return stop;\n}\n\nconst OnLongPress = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"OnLongPress\",\n props: [\"as\", \"options\"],\n emits: [\"trigger\"],\n setup(props, { slots, emit }) {\n const target = ref();\n onLongPress(\n target,\n (e) => {\n emit(\"trigger\", e);\n },\n props.options\n );\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default());\n };\n }\n});\n\nconst vOnLongPress = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\")\n onLongPress(el, binding.value, { modifiers: binding.modifiers });\n else\n onLongPress(el, ...binding.value);\n }\n};\n\nconst UseActiveElement = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseActiveElement\",\n setup(props, { slots }) {\n const data = reactive({\n element: useActiveElement()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseBattery = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseBattery\",\n setup(props, { slots }) {\n const data = reactive(useBattery(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseBrowserLocation = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseBrowserLocation\",\n setup(props, { slots }) {\n const data = reactive(useBrowserLocation());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseClipboard = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseClipboard\",\n props: [\n \"source\",\n \"read\",\n \"navigator\",\n \"copiedDuring\",\n \"legacy\"\n ],\n setup(props, { slots }) {\n const data = reactive(useClipboard(props));\n return () => {\n var _a;\n return (_a = slots.default) == null ? void 0 : _a.call(slots, data);\n };\n }\n});\n\nconst _global = typeof globalThis !== \"undefined\" ? globalThis : typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : {};\nconst globalKey = \"__vueuse_ssr_handlers__\";\nconst handlers = /* @__PURE__ */ getHandlers();\nfunction getHandlers() {\n if (!(globalKey in _global))\n _global[globalKey] = _global[globalKey] || {};\n return _global[globalKey];\n}\nfunction getSSRHandler(key, fallback) {\n return handlers[key] || fallback;\n}\n\nfunction guessSerializerType(rawInit) {\n return rawInit == null ? \"any\" : rawInit instanceof Set ? \"set\" : rawInit instanceof Map ? \"map\" : rawInit instanceof Date ? \"date\" : typeof rawInit === \"boolean\" ? \"boolean\" : typeof rawInit === \"string\" ? \"string\" : typeof rawInit === \"object\" ? \"object\" : !Number.isNaN(rawInit) ? \"number\" : \"any\";\n}\n\nconst StorageSerializers = {\n boolean: {\n read: (v) => v === \"true\",\n write: (v) => String(v)\n },\n object: {\n read: (v) => JSON.parse(v),\n write: (v) => JSON.stringify(v)\n },\n number: {\n read: (v) => Number.parseFloat(v),\n write: (v) => String(v)\n },\n any: {\n read: (v) => v,\n write: (v) => String(v)\n },\n string: {\n read: (v) => v,\n write: (v) => String(v)\n },\n map: {\n read: (v) => new Map(JSON.parse(v)),\n write: (v) => JSON.stringify(Array.from(v.entries()))\n },\n set: {\n read: (v) => new Set(JSON.parse(v)),\n write: (v) => JSON.stringify(Array.from(v))\n },\n date: {\n read: (v) => new Date(v),\n write: (v) => v.toISOString()\n }\n};\nconst customStorageEventName = \"vueuse-storage\";\nfunction useStorage(key, defaults, storage, options = {}) {\n var _a;\n const {\n flush = \"pre\",\n deep = true,\n listenToStorageChanges = true,\n writeDefaults = true,\n mergeDefaults = false,\n shallow,\n window = defaultWindow,\n eventFilter,\n onError = (e) => {\n console.error(e);\n },\n initOnMounted\n } = options;\n const data = (shallow ? shallowRef : ref)(typeof defaults === \"function\" ? defaults() : defaults);\n if (!storage) {\n try {\n storage = getSSRHandler(\"getDefaultStorage\", () => {\n var _a2;\n return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;\n })();\n } catch (e) {\n onError(e);\n }\n }\n if (!storage)\n return data;\n const rawInit = toValue(defaults);\n const type = guessSerializerType(rawInit);\n const serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type];\n const { pause: pauseWatch, resume: resumeWatch } = pausableWatch(\n data,\n () => write(data.value),\n { flush, deep, eventFilter }\n );\n if (window && listenToStorageChanges) {\n tryOnMounted(() => {\n useEventListener(window, \"storage\", update);\n useEventListener(window, customStorageEventName, updateFromCustomEvent);\n if (initOnMounted)\n update();\n });\n }\n if (!initOnMounted)\n update();\n function dispatchWriteEvent(oldValue, newValue) {\n if (window) {\n window.dispatchEvent(new CustomEvent(customStorageEventName, {\n detail: {\n key,\n oldValue,\n newValue,\n storageArea: storage\n }\n }));\n }\n }\n function write(v) {\n try {\n const oldValue = storage.getItem(key);\n if (v == null) {\n dispatchWriteEvent(oldValue, null);\n storage.removeItem(key);\n } else {\n const serialized = serializer.write(v);\n if (oldValue !== serialized) {\n storage.setItem(key, serialized);\n dispatchWriteEvent(oldValue, serialized);\n }\n }\n } catch (e) {\n onError(e);\n }\n }\n function read(event) {\n const rawValue = event ? event.newValue : storage.getItem(key);\n if (rawValue == null) {\n if (writeDefaults && rawInit != null)\n storage.setItem(key, serializer.write(rawInit));\n return rawInit;\n } else if (!event && mergeDefaults) {\n const value = serializer.read(rawValue);\n if (typeof mergeDefaults === \"function\")\n return mergeDefaults(value, rawInit);\n else if (type === \"object\" && !Array.isArray(value))\n return { ...rawInit, ...value };\n return value;\n } else if (typeof rawValue !== \"string\") {\n return rawValue;\n } else {\n return serializer.read(rawValue);\n }\n }\n function update(event) {\n if (event && event.storageArea !== storage)\n return;\n if (event && event.key == null) {\n data.value = rawInit;\n return;\n }\n if (event && event.key !== key)\n return;\n pauseWatch();\n try {\n if ((event == null ? void 0 : event.newValue) !== serializer.write(data.value))\n data.value = read(event);\n } catch (e) {\n onError(e);\n } finally {\n if (event)\n nextTick(resumeWatch);\n else\n resumeWatch();\n }\n }\n function updateFromCustomEvent(event) {\n update(event.detail);\n }\n return data;\n}\n\nfunction useMounted() {\n const isMounted = ref(false);\n const instance = getCurrentInstance();\n if (instance) {\n onMounted(() => {\n isMounted.value = true;\n }, isVue2 ? void 0 : instance);\n }\n return isMounted;\n}\n\nfunction useSupported(callback) {\n const isMounted = useMounted();\n return computed(() => {\n isMounted.value;\n return Boolean(callback());\n });\n}\n\nfunction useMediaQuery(query, options = {}) {\n const { window = defaultWindow } = options;\n const isSupported = useSupported(() => window && \"matchMedia\" in window && typeof window.matchMedia === \"function\");\n let mediaQuery;\n const matches = ref(false);\n const handler = (event) => {\n matches.value = event.matches;\n };\n const cleanup = () => {\n if (!mediaQuery)\n return;\n if (\"removeEventListener\" in mediaQuery)\n mediaQuery.removeEventListener(\"change\", handler);\n else\n mediaQuery.removeListener(handler);\n };\n const stopWatch = watchEffect(() => {\n if (!isSupported.value)\n return;\n cleanup();\n mediaQuery = window.matchMedia(toValue(query));\n if (\"addEventListener\" in mediaQuery)\n mediaQuery.addEventListener(\"change\", handler);\n else\n mediaQuery.addListener(handler);\n matches.value = mediaQuery.matches;\n });\n tryOnScopeDispose(() => {\n stopWatch();\n cleanup();\n mediaQuery = void 0;\n });\n return matches;\n}\n\nfunction usePreferredDark(options) {\n return useMediaQuery(\"(prefers-color-scheme: dark)\", options);\n}\n\nfunction useColorMode(options = {}) {\n const {\n selector = \"html\",\n attribute = \"class\",\n initialValue = \"auto\",\n window = defaultWindow,\n storage,\n storageKey = \"vueuse-color-scheme\",\n listenToStorageChanges = true,\n storageRef,\n emitAuto,\n disableTransition = true\n } = options;\n const modes = {\n auto: \"\",\n light: \"light\",\n dark: \"dark\",\n ...options.modes || {}\n };\n const preferredDark = usePreferredDark({ window });\n const system = computed(() => preferredDark.value ? \"dark\" : \"light\");\n const store = storageRef || (storageKey == null ? toRef(initialValue) : useStorage(storageKey, initialValue, storage, { window, listenToStorageChanges }));\n const state = computed(() => store.value === \"auto\" ? system.value : store.value);\n const updateHTMLAttrs = getSSRHandler(\n \"updateHTMLAttrs\",\n (selector2, attribute2, value) => {\n const el = typeof selector2 === \"string\" ? window == null ? void 0 : window.document.querySelector(selector2) : unrefElement(selector2);\n if (!el)\n return;\n let style;\n if (disableTransition) {\n style = window.document.createElement(\"style\");\n const styleString = \"*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}\";\n style.appendChild(document.createTextNode(styleString));\n window.document.head.appendChild(style);\n }\n if (attribute2 === \"class\") {\n const current = value.split(/\\s/g);\n Object.values(modes).flatMap((i) => (i || \"\").split(/\\s/g)).filter(Boolean).forEach((v) => {\n if (current.includes(v))\n el.classList.add(v);\n else\n el.classList.remove(v);\n });\n } else {\n el.setAttribute(attribute2, value);\n }\n if (disableTransition) {\n window.getComputedStyle(style).opacity;\n document.head.removeChild(style);\n }\n }\n );\n function defaultOnChanged(mode) {\n var _a;\n updateHTMLAttrs(selector, attribute, (_a = modes[mode]) != null ? _a : mode);\n }\n function onChanged(mode) {\n if (options.onChanged)\n options.onChanged(mode, defaultOnChanged);\n else\n defaultOnChanged(mode);\n }\n watch(state, onChanged, { flush: \"post\", immediate: true });\n tryOnMounted(() => onChanged(state.value));\n const auto = computed({\n get() {\n return emitAuto ? store.value : state.value;\n },\n set(v) {\n store.value = v;\n }\n });\n try {\n return Object.assign(auto, { store, system, state });\n } catch (e) {\n return auto;\n }\n}\n\nconst UseColorMode = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseColorMode\",\n props: [\"selector\", \"attribute\", \"modes\", \"onChanged\", \"storageKey\", \"storage\", \"emitAuto\"],\n setup(props, { slots }) {\n const mode = useColorMode(props);\n const data = reactive({\n mode,\n system: mode.system,\n store: mode.store\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDark = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDark\",\n props: [\"selector\", \"attribute\", \"valueDark\", \"valueLight\", \"onChanged\", \"storageKey\", \"storage\"],\n setup(props, { slots }) {\n const isDark = useDark(props);\n const data = reactive({\n isDark,\n toggleDark: useToggle(isDark)\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDeviceMotion = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDeviceMotion\",\n setup(props, { slots }) {\n const data = reactive(useDeviceMotion());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDeviceOrientation = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDeviceOrientation\",\n setup(props, { slots }) {\n const data = reactive(useDeviceOrientation());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDevicePixelRatio = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDevicePixelRatio\",\n setup(props, { slots }) {\n const data = reactive({\n pixelRatio: useDevicePixelRatio()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDevicesList = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDevicesList\",\n props: [\"onUpdated\", \"requestPermissions\", \"constraints\"],\n setup(props, { slots }) {\n const data = reactive(useDevicesList(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDocumentVisibility = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDocumentVisibility\",\n setup(props, { slots }) {\n const data = reactive({\n visibility: useDocumentVisibility()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDraggable = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDraggable\",\n props: [\n \"storageKey\",\n \"storageType\",\n \"initialValue\",\n \"exact\",\n \"preventDefault\",\n \"stopPropagation\",\n \"pointerTypes\",\n \"as\",\n \"handle\",\n \"axis\",\n \"onStart\",\n \"onMove\",\n \"onEnd\",\n \"disabled\"\n ],\n setup(props, { slots }) {\n const target = ref();\n const handle = computed(() => {\n var _a;\n return (_a = props.handle) != null ? _a : target.value;\n });\n const disabled = computed(() => !!props.disabled);\n const storageValue = props.storageKey && useStorage$1(\n props.storageKey,\n toValue(props.initialValue) || { x: 0, y: 0 },\n isClient$1 ? props.storageType === \"session\" ? sessionStorage : localStorage : void 0\n );\n const initialValue = storageValue || props.initialValue || { x: 0, y: 0 };\n const onEnd = (position, event) => {\n var _a;\n (_a = props.onEnd) == null ? void 0 : _a.call(props, position, event);\n if (!storageValue)\n return;\n storageValue.value.x = position.x;\n storageValue.value.y = position.y;\n };\n const data = reactive(useDraggable(target, {\n ...props,\n handle,\n initialValue,\n onEnd,\n disabled\n }));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target, style: `touch-action:none;${data.style}` }, slots.default(data));\n };\n }\n});\n\nconst UseElementBounding = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseElementBounding\",\n props: [\"box\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useElementBounding(target));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nfunction useElementHover(el, options = {}) {\n const {\n delayEnter = 0,\n delayLeave = 0,\n window = defaultWindow\n } = options;\n const isHovered = ref(false);\n let timer;\n const toggle = (entering) => {\n const delay = entering ? delayEnter : delayLeave;\n if (timer) {\n clearTimeout(timer);\n timer = void 0;\n }\n if (delay)\n timer = setTimeout(() => isHovered.value = entering, delay);\n else\n isHovered.value = entering;\n };\n if (!window)\n return isHovered;\n useEventListener(el, \"mouseenter\", () => toggle(true), { passive: true });\n useEventListener(el, \"mouseleave\", () => toggle(false), { passive: true });\n return isHovered;\n}\n\nconst vElementHover = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\") {\n const isHovered = useElementHover(el);\n watch(isHovered, (v) => binding.value(v));\n }\n }\n};\n\nconst UseElementSize = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseElementSize\",\n props: [\"width\", \"height\", \"box\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useElementSize$1(target, { width: props.width, height: props.height }, { box: props.box }));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nfunction useResizeObserver(target, callback, options = {}) {\n const { window = defaultWindow, ...observerOptions } = options;\n let observer;\n const isSupported = useSupported(() => window && \"ResizeObserver\" in window);\n const cleanup = () => {\n if (observer) {\n observer.disconnect();\n observer = void 0;\n }\n };\n const targets = computed(() => Array.isArray(target) ? target.map((el) => unrefElement(el)) : [unrefElement(target)]);\n const stopWatch = watch(\n targets,\n (els) => {\n cleanup();\n if (isSupported.value && window) {\n observer = new ResizeObserver(callback);\n for (const _el of els)\n _el && observer.observe(_el, observerOptions);\n }\n },\n { immediate: true, flush: \"post\" }\n );\n const stop = () => {\n cleanup();\n stopWatch();\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n stop\n };\n}\n\nfunction useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {\n const { window = defaultWindow, box = \"content-box\" } = options;\n const isSVG = computed(() => {\n var _a, _b;\n return (_b = (_a = unrefElement(target)) == null ? void 0 : _a.namespaceURI) == null ? void 0 : _b.includes(\"svg\");\n });\n const width = ref(initialSize.width);\n const height = ref(initialSize.height);\n const { stop: stop1 } = useResizeObserver(\n target,\n ([entry]) => {\n const boxSize = box === \"border-box\" ? entry.borderBoxSize : box === \"content-box\" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;\n if (window && isSVG.value) {\n const $elem = unrefElement(target);\n if ($elem) {\n const rect = $elem.getBoundingClientRect();\n width.value = rect.width;\n height.value = rect.height;\n }\n } else {\n if (boxSize) {\n const formatBoxSize = Array.isArray(boxSize) ? boxSize : [boxSize];\n width.value = formatBoxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);\n height.value = formatBoxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);\n } else {\n width.value = entry.contentRect.width;\n height.value = entry.contentRect.height;\n }\n }\n },\n options\n );\n tryOnMounted(() => {\n const ele = unrefElement(target);\n if (ele) {\n width.value = \"offsetWidth\" in ele ? ele.offsetWidth : initialSize.width;\n height.value = \"offsetHeight\" in ele ? ele.offsetHeight : initialSize.height;\n }\n });\n const stop2 = watch(\n () => unrefElement(target),\n (ele) => {\n width.value = ele ? initialSize.width : 0;\n height.value = ele ? initialSize.height : 0;\n }\n );\n function stop() {\n stop1();\n stop2();\n }\n return {\n width,\n height,\n stop\n };\n}\n\nconst vElementSize = {\n [directiveHooks.mounted](el, binding) {\n var _a;\n const handler = typeof binding.value === \"function\" ? binding.value : (_a = binding.value) == null ? void 0 : _a[0];\n const options = typeof binding.value === \"function\" ? [] : binding.value.slice(1);\n const { width, height } = useElementSize(el, ...options);\n watch([width, height], ([width2, height2]) => handler({ width: width2, height: height2 }));\n }\n};\n\nconst UseElementVisibility = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseElementVisibility\",\n props: [\"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive({\n isVisible: useElementVisibility$1(target)\n });\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nfunction useIntersectionObserver(target, callback, options = {}) {\n const {\n root,\n rootMargin = \"0px\",\n threshold = 0.1,\n window = defaultWindow,\n immediate = true\n } = options;\n const isSupported = useSupported(() => window && \"IntersectionObserver\" in window);\n const targets = computed(() => {\n const _target = toValue(target);\n return (Array.isArray(_target) ? _target : [_target]).map(unrefElement).filter(notNullish);\n });\n let cleanup = noop;\n const isActive = ref(immediate);\n const stopWatch = isSupported.value ? watch(\n () => [targets.value, unrefElement(root), isActive.value],\n ([targets2, root2]) => {\n cleanup();\n if (!isActive.value)\n return;\n if (!targets2.length)\n return;\n const observer = new IntersectionObserver(\n callback,\n {\n root: unrefElement(root2),\n rootMargin,\n threshold\n }\n );\n targets2.forEach((el) => el && observer.observe(el));\n cleanup = () => {\n observer.disconnect();\n cleanup = noop;\n };\n },\n { immediate, flush: \"post\" }\n ) : noop;\n const stop = () => {\n cleanup();\n stopWatch();\n isActive.value = false;\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n isActive,\n pause() {\n cleanup();\n isActive.value = false;\n },\n resume() {\n isActive.value = true;\n },\n stop\n };\n}\n\nfunction useElementVisibility(element, options = {}) {\n const { window = defaultWindow, scrollTarget, threshold = 0 } = options;\n const elementIsVisible = ref(false);\n useIntersectionObserver(\n element,\n (intersectionObserverEntries) => {\n let isIntersecting = elementIsVisible.value;\n let latestTime = 0;\n for (const entry of intersectionObserverEntries) {\n if (entry.time >= latestTime) {\n latestTime = entry.time;\n isIntersecting = entry.isIntersecting;\n }\n }\n elementIsVisible.value = isIntersecting;\n },\n {\n root: scrollTarget,\n window,\n threshold\n }\n );\n return elementIsVisible;\n}\n\nconst vElementVisibility = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\") {\n const handler = binding.value;\n const isVisible = useElementVisibility(el);\n watch(isVisible, (v) => handler(v), { immediate: true });\n } else {\n const [handler, options] = binding.value;\n const isVisible = useElementVisibility(el, options);\n watch(isVisible, (v) => handler(v), { immediate: true });\n }\n }\n};\n\nconst UseEyeDropper = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseEyeDropper\",\n props: {\n sRGBHex: String\n },\n setup(props, { slots }) {\n const data = reactive(useEyeDropper());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseFullscreen = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseFullscreen\",\n props: [\"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useFullscreen(target));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UseGeolocation = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseGeolocation\",\n props: [\"enableHighAccuracy\", \"maximumAge\", \"timeout\", \"navigator\"],\n setup(props, { slots }) {\n const data = reactive(useGeolocation(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseIdle = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseIdle\",\n props: [\"timeout\", \"events\", \"listenForVisibilityChange\", \"initialState\"],\n setup(props, { slots }) {\n const data = reactive(useIdle(props.timeout, props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nfunction useAsyncState(promise, initialState, options) {\n const {\n immediate = true,\n delay = 0,\n onError = noop,\n onSuccess = noop,\n resetOnExecute = true,\n shallow = true,\n throwError\n } = options != null ? options : {};\n const state = shallow ? shallowRef(initialState) : ref(initialState);\n const isReady = ref(false);\n const isLoading = ref(false);\n const error = shallowRef(void 0);\n async function execute(delay2 = 0, ...args) {\n if (resetOnExecute)\n state.value = initialState;\n error.value = void 0;\n isReady.value = false;\n isLoading.value = true;\n if (delay2 > 0)\n await promiseTimeout(delay2);\n const _promise = typeof promise === \"function\" ? promise(...args) : promise;\n try {\n const data = await _promise;\n state.value = data;\n isReady.value = true;\n onSuccess(data);\n } catch (e) {\n error.value = e;\n onError(e);\n if (throwError)\n throw e;\n } finally {\n isLoading.value = false;\n }\n return state.value;\n }\n if (immediate)\n execute(delay);\n const shell = {\n state,\n isReady,\n isLoading,\n error,\n execute\n };\n function waitUntilIsLoaded() {\n return new Promise((resolve, reject) => {\n until(isLoading).toBe(false).then(() => resolve(shell)).catch(reject);\n });\n }\n return {\n ...shell,\n then(onFulfilled, onRejected) {\n return waitUntilIsLoaded().then(onFulfilled, onRejected);\n }\n };\n}\n\nasync function loadImage(options) {\n return new Promise((resolve, reject) => {\n const img = new Image();\n const { src, srcset, sizes, class: clazz, loading, crossorigin, referrerPolicy } = options;\n img.src = src;\n if (srcset)\n img.srcset = srcset;\n if (sizes)\n img.sizes = sizes;\n if (clazz)\n img.className = clazz;\n if (loading)\n img.loading = loading;\n if (crossorigin)\n img.crossOrigin = crossorigin;\n if (referrerPolicy)\n img.referrerPolicy = referrerPolicy;\n img.onload = () => resolve(img);\n img.onerror = reject;\n });\n}\nfunction useImage(options, asyncStateOptions = {}) {\n const state = useAsyncState(\n () => loadImage(toValue(options)),\n void 0,\n {\n resetOnExecute: true,\n ...asyncStateOptions\n }\n );\n watch(\n () => toValue(options),\n () => state.execute(asyncStateOptions.delay),\n { deep: true }\n );\n return state;\n}\n\nconst UseImage = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseImage\",\n props: [\n \"src\",\n \"srcset\",\n \"sizes\",\n \"as\",\n \"alt\",\n \"class\",\n \"loading\",\n \"crossorigin\",\n \"referrerPolicy\"\n ],\n setup(props, { slots }) {\n const data = reactive(useImage(props));\n return () => {\n if (data.isLoading && slots.loading)\n return slots.loading(data);\n else if (data.error && slots.error)\n return slots.error(data.error);\n if (slots.default)\n return slots.default(data);\n return h(props.as || \"img\", props);\n };\n }\n});\n\nconst ARRIVED_STATE_THRESHOLD_PIXELS = 1;\nfunction useScroll(element, options = {}) {\n const {\n throttle = 0,\n idle = 200,\n onStop = noop,\n onScroll = noop,\n offset = {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n eventListenerOptions = {\n capture: false,\n passive: true\n },\n behavior = \"auto\",\n window = defaultWindow,\n onError = (e) => {\n console.error(e);\n }\n } = options;\n const internalX = ref(0);\n const internalY = ref(0);\n const x = computed({\n get() {\n return internalX.value;\n },\n set(x2) {\n scrollTo(x2, void 0);\n }\n });\n const y = computed({\n get() {\n return internalY.value;\n },\n set(y2) {\n scrollTo(void 0, y2);\n }\n });\n function scrollTo(_x, _y) {\n var _a, _b, _c, _d;\n if (!window)\n return;\n const _element = toValue(element);\n if (!_element)\n return;\n (_c = _element instanceof Document ? window.document.body : _element) == null ? void 0 : _c.scrollTo({\n top: (_a = toValue(_y)) != null ? _a : y.value,\n left: (_b = toValue(_x)) != null ? _b : x.value,\n behavior: toValue(behavior)\n });\n const scrollContainer = ((_d = _element == null ? void 0 : _element.document) == null ? void 0 : _d.documentElement) || (_element == null ? void 0 : _element.documentElement) || _element;\n if (x != null)\n internalX.value = scrollContainer.scrollLeft;\n if (y != null)\n internalY.value = scrollContainer.scrollTop;\n }\n const isScrolling = ref(false);\n const arrivedState = reactive({\n left: true,\n right: false,\n top: true,\n bottom: false\n });\n const directions = reactive({\n left: false,\n right: false,\n top: false,\n bottom: false\n });\n const onScrollEnd = (e) => {\n if (!isScrolling.value)\n return;\n isScrolling.value = false;\n directions.left = false;\n directions.right = false;\n directions.top = false;\n directions.bottom = false;\n onStop(e);\n };\n const onScrollEndDebounced = useDebounceFn(onScrollEnd, throttle + idle);\n const setArrivedState = (target) => {\n var _a;\n if (!window)\n return;\n const el = ((_a = target == null ? void 0 : target.document) == null ? void 0 : _a.documentElement) || (target == null ? void 0 : target.documentElement) || unrefElement(target);\n const { display, flexDirection } = getComputedStyle(el);\n const scrollLeft = el.scrollLeft;\n directions.left = scrollLeft < internalX.value;\n directions.right = scrollLeft > internalX.value;\n const left = Math.abs(scrollLeft) <= (offset.left || 0);\n const right = Math.abs(scrollLeft) + el.clientWidth >= el.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;\n if (display === \"flex\" && flexDirection === \"row-reverse\") {\n arrivedState.left = right;\n arrivedState.right = left;\n } else {\n arrivedState.left = left;\n arrivedState.right = right;\n }\n internalX.value = scrollLeft;\n let scrollTop = el.scrollTop;\n if (target === window.document && !scrollTop)\n scrollTop = window.document.body.scrollTop;\n directions.top = scrollTop < internalY.value;\n directions.bottom = scrollTop > internalY.value;\n const top = Math.abs(scrollTop) <= (offset.top || 0);\n const bottom = Math.abs(scrollTop) + el.clientHeight >= el.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;\n if (display === \"flex\" && flexDirection === \"column-reverse\") {\n arrivedState.top = bottom;\n arrivedState.bottom = top;\n } else {\n arrivedState.top = top;\n arrivedState.bottom = bottom;\n }\n internalY.value = scrollTop;\n };\n const onScrollHandler = (e) => {\n var _a;\n if (!window)\n return;\n const eventTarget = (_a = e.target.documentElement) != null ? _a : e.target;\n setArrivedState(eventTarget);\n isScrolling.value = true;\n onScrollEndDebounced(e);\n onScroll(e);\n };\n useEventListener(\n element,\n \"scroll\",\n throttle ? useThrottleFn(onScrollHandler, throttle, true, false) : onScrollHandler,\n eventListenerOptions\n );\n tryOnMounted(() => {\n try {\n const _element = toValue(element);\n if (!_element)\n return;\n setArrivedState(_element);\n } catch (e) {\n onError(e);\n }\n });\n useEventListener(\n element,\n \"scrollend\",\n onScrollEnd,\n eventListenerOptions\n );\n return {\n x,\n y,\n isScrolling,\n arrivedState,\n directions,\n measure() {\n const _element = toValue(element);\n if (window && _element)\n setArrivedState(_element);\n }\n };\n}\n\nfunction resolveElement(el) {\n if (typeof Window !== \"undefined\" && el instanceof Window)\n return el.document.documentElement;\n if (typeof Document !== \"undefined\" && el instanceof Document)\n return el.documentElement;\n return el;\n}\n\nfunction useInfiniteScroll(element, onLoadMore, options = {}) {\n var _a;\n const {\n direction = \"bottom\",\n interval = 100,\n canLoadMore = () => true\n } = options;\n const state = reactive(useScroll(\n element,\n {\n ...options,\n offset: {\n [direction]: (_a = options.distance) != null ? _a : 0,\n ...options.offset\n }\n }\n ));\n const promise = ref();\n const isLoading = computed(() => !!promise.value);\n const observedElement = computed(() => {\n return resolveElement(toValue(element));\n });\n const isElementVisible = useElementVisibility(observedElement);\n function checkAndLoad() {\n state.measure();\n if (!observedElement.value || !isElementVisible.value || !canLoadMore(observedElement.value))\n return;\n const { scrollHeight, clientHeight, scrollWidth, clientWidth } = observedElement.value;\n const isNarrower = direction === \"bottom\" || direction === \"top\" ? scrollHeight <= clientHeight : scrollWidth <= clientWidth;\n if (state.arrivedState[direction] || isNarrower) {\n if (!promise.value) {\n promise.value = Promise.all([\n onLoadMore(state),\n new Promise((resolve) => setTimeout(resolve, interval))\n ]).finally(() => {\n promise.value = null;\n nextTick(() => checkAndLoad());\n });\n }\n }\n }\n watch(\n () => [state.arrivedState[direction], isElementVisible.value],\n checkAndLoad,\n { immediate: true }\n );\n return {\n isLoading\n };\n}\n\nconst vInfiniteScroll = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\")\n useInfiniteScroll(el, binding.value);\n else\n useInfiniteScroll(el, ...binding.value);\n }\n};\n\nconst vIntersectionObserver = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\")\n useIntersectionObserver(el, binding.value);\n else\n useIntersectionObserver(el, ...binding.value);\n }\n};\n\nconst UseMouse = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseMouse\",\n props: [\"touch\", \"resetOnTouchEnds\", \"initialValue\"],\n setup(props, { slots }) {\n const data = reactive(useMouse(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseMouseInElement = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseMouseElement\",\n props: [\"handleOutside\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useMouseInElement(target, props));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UseMousePressed = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseMousePressed\",\n props: [\"touch\", \"initialValue\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useMousePressed({ ...props, target }));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UseNetwork = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseNetwork\",\n setup(props, { slots }) {\n const data = reactive(useNetwork());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseNow = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseNow\",\n props: [\"interval\"],\n setup(props, { slots }) {\n const data = reactive(useNow({ ...props, controls: true }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseObjectUrl = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseObjectUrl\",\n props: [\n \"object\"\n ],\n setup(props, { slots }) {\n const object = toRef(props, \"object\");\n const url = useObjectUrl(object);\n return () => {\n if (slots.default && url.value)\n return slots.default(url);\n };\n }\n});\n\nconst UseOffsetPagination = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseOffsetPagination\",\n props: [\n \"total\",\n \"page\",\n \"pageSize\",\n \"onPageChange\",\n \"onPageSizeChange\",\n \"onPageCountChange\"\n ],\n emits: [\n \"page-change\",\n \"page-size-change\",\n \"page-count-change\"\n ],\n setup(props, { slots, emit }) {\n const data = reactive(useOffsetPagination({\n ...props,\n onPageChange(...args) {\n var _a;\n (_a = props.onPageChange) == null ? void 0 : _a.call(props, ...args);\n emit(\"page-change\", ...args);\n },\n onPageSizeChange(...args) {\n var _a;\n (_a = props.onPageSizeChange) == null ? void 0 : _a.call(props, ...args);\n emit(\"page-size-change\", ...args);\n },\n onPageCountChange(...args) {\n var _a;\n (_a = props.onPageCountChange) == null ? void 0 : _a.call(props, ...args);\n emit(\"page-count-change\", ...args);\n }\n }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseOnline = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseOnline\",\n setup(props, { slots }) {\n const data = reactive({\n isOnline: useOnline()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePageLeave = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePageLeave\",\n setup(props, { slots }) {\n const data = reactive({\n isLeft: usePageLeave()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePointer = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePointer\",\n props: [\n \"pointerTypes\",\n \"initialValue\",\n \"target\"\n ],\n setup(props, { slots }) {\n const el = ref(null);\n const data = reactive(usePointer({\n ...props,\n target: props.target === \"self\" ? el : defaultWindow\n }));\n return () => {\n if (slots.default)\n return slots.default(data, { ref: el });\n };\n }\n});\n\nconst UsePointerLock = /* #__PURE__ */ defineComponent({\n name: \"UsePointerLock\",\n props: [\"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(usePointerLock(target));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UsePreferredColorScheme = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredColorScheme\",\n setup(props, { slots }) {\n const data = reactive({\n colorScheme: usePreferredColorScheme()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredContrast = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredContrast\",\n setup(props, { slots }) {\n const data = reactive({\n contrast: usePreferredContrast()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredDark = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredDark\",\n setup(props, { slots }) {\n const data = reactive({\n prefersDark: usePreferredDark$1()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredLanguages = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredLanguages\",\n setup(props, { slots }) {\n const data = reactive({\n languages: usePreferredLanguages()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredReducedMotion = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredReducedMotion\",\n setup(props, { slots }) {\n const data = reactive({\n motion: usePreferredReducedMotion()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nfunction useMutationObserver(target, callback, options = {}) {\n const { window = defaultWindow, ...mutationOptions } = options;\n let observer;\n const isSupported = useSupported(() => window && \"MutationObserver\" in window);\n const cleanup = () => {\n if (observer) {\n observer.disconnect();\n observer = void 0;\n }\n };\n const targets = computed(() => {\n const value = toValue(target);\n const items = (Array.isArray(value) ? value : [value]).map(unrefElement).filter(notNullish);\n return new Set(items);\n });\n const stopWatch = watch(\n () => targets.value,\n (targets2) => {\n cleanup();\n if (isSupported.value && targets2.size) {\n observer = new MutationObserver(callback);\n targets2.forEach((el) => observer.observe(el, mutationOptions));\n }\n },\n { immediate: true, flush: \"post\" }\n );\n const takeRecords = () => {\n return observer == null ? void 0 : observer.takeRecords();\n };\n const stop = () => {\n cleanup();\n stopWatch();\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n stop,\n takeRecords\n };\n}\n\nfunction useCssVar(prop, target, options = {}) {\n const { window = defaultWindow, initialValue = \"\", observe = false } = options;\n const variable = ref(initialValue);\n const elRef = computed(() => {\n var _a;\n return unrefElement(target) || ((_a = window == null ? void 0 : window.document) == null ? void 0 : _a.documentElement);\n });\n function updateCssVar() {\n var _a;\n const key = toValue(prop);\n const el = toValue(elRef);\n if (el && window) {\n const value = (_a = window.getComputedStyle(el).getPropertyValue(key)) == null ? void 0 : _a.trim();\n variable.value = value || initialValue;\n }\n }\n if (observe) {\n useMutationObserver(elRef, updateCssVar, {\n attributeFilter: [\"style\", \"class\"],\n window\n });\n }\n watch(\n [elRef, () => toValue(prop)],\n updateCssVar,\n { immediate: true }\n );\n watch(\n variable,\n (val) => {\n var _a;\n if ((_a = elRef.value) == null ? void 0 : _a.style)\n elRef.value.style.setProperty(toValue(prop), val);\n }\n );\n return variable;\n}\n\nconst topVarName = \"--vueuse-safe-area-top\";\nconst rightVarName = \"--vueuse-safe-area-right\";\nconst bottomVarName = \"--vueuse-safe-area-bottom\";\nconst leftVarName = \"--vueuse-safe-area-left\";\nfunction useScreenSafeArea() {\n const top = ref(\"\");\n const right = ref(\"\");\n const bottom = ref(\"\");\n const left = ref(\"\");\n if (isClient) {\n const topCssVar = useCssVar(topVarName);\n const rightCssVar = useCssVar(rightVarName);\n const bottomCssVar = useCssVar(bottomVarName);\n const leftCssVar = useCssVar(leftVarName);\n topCssVar.value = \"env(safe-area-inset-top, 0px)\";\n rightCssVar.value = \"env(safe-area-inset-right, 0px)\";\n bottomCssVar.value = \"env(safe-area-inset-bottom, 0px)\";\n leftCssVar.value = \"env(safe-area-inset-left, 0px)\";\n update();\n useEventListener(\"resize\", useDebounceFn(update));\n }\n function update() {\n top.value = getValue(topVarName);\n right.value = getValue(rightVarName);\n bottom.value = getValue(bottomVarName);\n left.value = getValue(leftVarName);\n }\n return {\n top,\n right,\n bottom,\n left,\n update\n };\n}\nfunction getValue(position) {\n return getComputedStyle(document.documentElement).getPropertyValue(position);\n}\n\nconst UseScreenSafeArea = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseScreenSafeArea\",\n props: {\n top: Boolean,\n right: Boolean,\n bottom: Boolean,\n left: Boolean\n },\n setup(props, { slots }) {\n const {\n top,\n right,\n bottom,\n left\n } = useScreenSafeArea();\n return () => {\n if (slots.default) {\n return h(\"div\", {\n style: {\n paddingTop: props.top ? top.value : \"\",\n paddingRight: props.right ? right.value : \"\",\n paddingBottom: props.bottom ? bottom.value : \"\",\n paddingLeft: props.left ? left.value : \"\",\n boxSizing: \"border-box\",\n maxHeight: \"100vh\",\n maxWidth: \"100vw\",\n overflow: \"auto\"\n }\n }, slots.default());\n }\n };\n }\n});\n\nconst vScroll = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\") {\n const handler = binding.value;\n const state = useScroll(el, {\n onScroll() {\n handler(state);\n },\n onStop() {\n handler(state);\n }\n });\n } else {\n const [handler, options] = binding.value;\n const state = useScroll(el, {\n ...options,\n onScroll(e) {\n var _a;\n (_a = options.onScroll) == null ? void 0 : _a.call(options, e);\n handler(state);\n },\n onStop(e) {\n var _a;\n (_a = options.onStop) == null ? void 0 : _a.call(options, e);\n handler(state);\n }\n });\n }\n }\n};\n\nfunction checkOverflowScroll(ele) {\n const style = window.getComputedStyle(ele);\n if (style.overflowX === \"scroll\" || style.overflowY === \"scroll\" || style.overflowX === \"auto\" && ele.clientWidth < ele.scrollWidth || style.overflowY === \"auto\" && ele.clientHeight < ele.scrollHeight) {\n return true;\n } else {\n const parent = ele.parentNode;\n if (!parent || parent.tagName === \"BODY\")\n return false;\n return checkOverflowScroll(parent);\n }\n}\nfunction preventDefault(rawEvent) {\n const e = rawEvent || window.event;\n const _target = e.target;\n if (checkOverflowScroll(_target))\n return false;\n if (e.touches.length > 1)\n return true;\n if (e.preventDefault)\n e.preventDefault();\n return false;\n}\nconst elInitialOverflow = /* @__PURE__ */ new WeakMap();\nfunction useScrollLock(element, initialState = false) {\n const isLocked = ref(initialState);\n let stopTouchMoveListener = null;\n let initialOverflow = \"\";\n watch(toRef(element), (el) => {\n const target = resolveElement(toValue(el));\n if (target) {\n const ele = target;\n if (!elInitialOverflow.get(ele))\n elInitialOverflow.set(ele, ele.style.overflow);\n if (ele.style.overflow !== \"hidden\")\n initialOverflow = ele.style.overflow;\n if (ele.style.overflow === \"hidden\")\n return isLocked.value = true;\n if (isLocked.value)\n return ele.style.overflow = \"hidden\";\n }\n }, {\n immediate: true\n });\n const lock = () => {\n const el = resolveElement(toValue(element));\n if (!el || isLocked.value)\n return;\n if (isIOS) {\n stopTouchMoveListener = useEventListener(\n el,\n \"touchmove\",\n (e) => {\n preventDefault(e);\n },\n { passive: false }\n );\n }\n el.style.overflow = \"hidden\";\n isLocked.value = true;\n };\n const unlock = () => {\n const el = resolveElement(toValue(element));\n if (!el || !isLocked.value)\n return;\n isIOS && (stopTouchMoveListener == null ? void 0 : stopTouchMoveListener());\n el.style.overflow = initialOverflow;\n elInitialOverflow.delete(el);\n isLocked.value = false;\n };\n tryOnScopeDispose(unlock);\n return computed({\n get() {\n return isLocked.value;\n },\n set(v) {\n if (v)\n lock();\n else unlock();\n }\n });\n}\n\nfunction onScrollLock() {\n let isMounted = false;\n const state = ref(false);\n return (el, binding) => {\n state.value = binding.value;\n if (isMounted)\n return;\n isMounted = true;\n const isLocked = useScrollLock(el, binding.value);\n watch(state, (v) => isLocked.value = v);\n };\n}\nconst vScrollLock = onScrollLock();\n\nconst UseTimeAgo = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseTimeAgo\",\n props: [\"time\", \"updateInterval\", \"max\", \"fullDateFormatter\", \"messages\", \"showSecond\"],\n setup(props, { slots }) {\n const data = reactive(useTimeAgo(() => props.time, { ...props, controls: true }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseTimestamp = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseTimestamp\",\n props: [\"immediate\", \"interval\", \"offset\"],\n setup(props, { slots }) {\n const data = reactive(useTimestamp({ ...props, controls: true }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseVirtualList = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseVirtualList\",\n props: [\n \"list\",\n \"options\",\n \"height\"\n ],\n setup(props, { slots, expose }) {\n const { list: listRef } = toRefs(props);\n const { list, containerProps, wrapperProps, scrollTo } = useVirtualList(listRef, props.options);\n expose({ scrollTo });\n if (containerProps.style && typeof containerProps.style === \"object\" && !Array.isArray(containerProps.style))\n containerProps.style.height = props.height || \"300px\";\n return () => h(\"div\", { ...containerProps }, [\n h(\"div\", { ...wrapperProps.value }, list.value.map((item) => h(\"div\", { style: { overflow: \"hidden\", height: item.height } }, slots.default ? slots.default(item) : \"Please set content!\")))\n ]);\n }\n});\n\nconst UseWindowFocus = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseWindowFocus\",\n setup(props, { slots }) {\n const data = reactive({\n focused: useWindowFocus()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseWindowSize = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseWindowSize\",\n props: [\"initialWidth\", \"initialHeight\"],\n setup(props, { slots }) {\n const data = reactive(useWindowSize(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nexport { OnClickOutside, OnLongPress, UseActiveElement, UseBattery, UseBrowserLocation, UseClipboard, UseColorMode, UseDark, UseDeviceMotion, UseDeviceOrientation, UseDevicePixelRatio, UseDevicesList, UseDocumentVisibility, UseDraggable, UseElementBounding, UseElementSize, UseElementVisibility, UseEyeDropper, UseFullscreen, UseGeolocation, UseIdle, UseImage, UseMouse, UseMouseInElement, UseMousePressed, UseNetwork, UseNow, UseObjectUrl, UseOffsetPagination, UseOnline, UsePageLeave, UsePointer, UsePointerLock, UsePreferredColorScheme, UsePreferredContrast, UsePreferredDark, UsePreferredLanguages, UsePreferredReducedMotion, UseScreenSafeArea, UseTimeAgo, UseTimestamp, UseVirtualList, UseWindowFocus, UseWindowSize, vOnClickOutside as VOnClickOutside, vOnLongPress as VOnLongPress, vElementHover, vElementSize, vElementVisibility, vInfiniteScroll, vIntersectionObserver, vOnClickOutside, vOnKeyStroke, vOnLongPress, vScroll, vScrollLock };\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon file-multiple-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FileMultipleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FileMultiple.vue?vue&type=template&id=15fca808\"\nimport script from \"./FileMultiple.vue?vue&type=script&lang=js\"\nexport * from \"./FileMultiple.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-multiple-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list-drag-image\"},[_c('span',{staticClass:\"files-list-drag-image__icon\"},[_c('span',{ref:\"previewImg\"}),_vm._v(\" \"),(_vm.isSingleFolder)?_c('FolderIcon'):_c('FileMultipleIcon')],1),_vm._v(\" \"),_c('span',{staticClass:\"files-list-drag-image__name\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropPreview.vue?vue&type=template&id=b63e55d4\"\nimport script from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import DragAndDropPreview from '../components/DragAndDropPreview.vue';\nimport Vue from 'vue';\nconst Preview = Vue.extend(DragAndDropPreview);\nlet preview;\nexport const getDragAndDropPreview = async (nodes) => {\n return new Promise((resolve) => {\n if (!preview) {\n preview = new Preview().$mount();\n document.body.appendChild(preview.$el);\n }\n preview.update(nodes);\n preview.$on('loaded', () => {\n resolve(preview.$el);\n preview.$off('loaded');\n });\n });\n};\n","import { extname } from 'path';\nimport { FileType, Permission, Folder, File as NcFile, NodeStatus, Node, getFileActions } from '@nextcloud/files';\nimport { generateUrl } from '@nextcloud/router';\nimport { showError } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport { vOnClickOutside } from '@vueuse/components';\nimport Vue, { computed, defineComponent } from 'vue';\nimport { action as sidebarAction } from '../actions/sidebarAction.ts';\nimport { dataTransferToFileTree, onDropExternalFiles, onDropInternalFiles } from '../services/DropService.ts';\nimport { getDragAndDropPreview } from '../utils/dragUtils.ts';\nimport { hashCode } from '../utils/hashUtils.ts';\nimport logger from '../logger.js';\nVue.directive('onClickOutside', vOnClickOutside);\nconst actions = getFileActions();\nexport default defineComponent({\n props: {\n source: {\n type: [Folder, NcFile, Node],\n required: true,\n },\n nodes: {\n type: Array,\n required: true,\n },\n filesListWidth: {\n type: Number,\n default: 0,\n },\n },\n provide() {\n return {\n defaultFileAction: computed(() => this.defaultFileAction),\n enabledFileActions: computed(() => this.enabledFileActions),\n };\n },\n data() {\n return {\n loading: '',\n dragover: false,\n gridMode: false,\n };\n },\n computed: {\n currentDir() {\n // Remove any trailing slash but leave root slash\n return (this.$route?.query?.dir?.toString() || '/').replace(/^(.+)\\/$/, '$1');\n },\n currentFileId() {\n return this.$route.params?.fileid || this.$route.query?.fileid || null;\n },\n fileid() {\n return this.source?.fileid;\n },\n uniqueId() {\n return hashCode(this.source.source);\n },\n isLoading() {\n return this.source.status === NodeStatus.LOADING || this.loading !== '';\n },\n /**\n * The display name of the current node\n * Either the nodes filename or a custom display name (e.g. for shares)\n */\n displayName() {\n // basename fallback needed for apps using old `@nextcloud/files` prior 3.6.0\n return this.source.displayname || this.source.basename;\n },\n /**\n * The display name without extension\n */\n basename() {\n if (this.extension === '') {\n return this.displayName;\n }\n return this.displayName.slice(0, 0 - this.extension.length);\n },\n /**\n * The extension of the file\n */\n extension() {\n if (this.source.type === FileType.Folder) {\n return '';\n }\n return extname(this.displayName);\n },\n draggingFiles() {\n return this.draggingStore.dragging;\n },\n selectedFiles() {\n return this.selectionStore.selected;\n },\n isSelected() {\n return this.selectedFiles.includes(this.source.source);\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n isRenamingSmallScreen() {\n return this.isRenaming && this.filesListWidth < 512;\n },\n isActive() {\n return String(this.fileid) === String(this.currentFileId);\n },\n canDrag() {\n if (this.isRenaming) {\n return false;\n }\n const canDrag = (node) => {\n return (node?.permissions & Permission.UPDATE) !== 0;\n };\n // If we're dragging a selection, we need to check all files\n if (this.selectedFiles.length > 0) {\n const nodes = this.selectedFiles.map(source => this.filesStore.getNode(source));\n return nodes.every(canDrag);\n }\n return canDrag(this.source);\n },\n canDrop() {\n if (this.source.type !== FileType.Folder) {\n return false;\n }\n // If the current folder is also being dragged, we can't drop it on itself\n if (this.draggingFiles.includes(this.source.source)) {\n return false;\n }\n return (this.source.permissions & Permission.CREATE) !== 0;\n },\n openedMenu: {\n get() {\n return this.actionsMenuStore.opened === this.uniqueId.toString();\n },\n set(opened) {\n this.actionsMenuStore.opened = opened ? this.uniqueId.toString() : null;\n },\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n /**\n * Sorted actions that are enabled for this node\n */\n enabledFileActions() {\n if (this.source.status === NodeStatus.FAILED) {\n return [];\n }\n return actions\n .filter(action => {\n if (!action.enabled) {\n return true;\n }\n // In case something goes wrong, since we don't want to break\n // the entire list, we filter out actions that throw an error.\n try {\n return action.enabled([this.source], this.currentView);\n }\n catch (error) {\n logger.error('Error while checking action', { action, error });\n return false;\n }\n })\n .sort((a, b) => (a.order || 0) - (b.order || 0));\n },\n defaultFileAction() {\n return this.enabledFileActions.find((action) => action.default !== undefined);\n },\n },\n watch: {\n /**\n * When the source changes, reset the preview\n * and fetch the new one.\n */\n source(a, b) {\n if (a.source !== b.source) {\n this.resetState();\n }\n },\n openedMenu() {\n if (this.openedMenu === false) {\n // TODO: This timeout can be removed once `close` event only triggers after the transition\n // ref: https://github.com/nextcloud-libraries/nextcloud-vue/pull/6065\n window.setTimeout(() => {\n if (this.openedMenu) {\n // was reopened while the animation run\n return;\n }\n // Reset any right menu position potentially set\n const root = document.getElementById('app-content-vue');\n if (root !== null) {\n root.style.removeProperty('--mouse-pos-x');\n root.style.removeProperty('--mouse-pos-y');\n }\n }, 300);\n }\n },\n },\n beforeDestroy() {\n this.resetState();\n },\n methods: {\n resetState() {\n // Reset loading state\n this.loading = '';\n // Reset the preview state\n this.$refs?.preview?.reset?.();\n // Close menu\n this.openedMenu = false;\n },\n // Open the actions menu on right click\n onRightClick(event) {\n // If already opened, fallback to default browser\n if (this.openedMenu) {\n return;\n }\n // The grid mode is compact enough to not care about\n // the actions menu mouse position\n if (!this.gridMode) {\n // Actions menu is contained within the app content\n const root = this.$el?.closest('main.app-content');\n const contentRect = root.getBoundingClientRect();\n // Using Math.min/max to prevent the menu from going out of the AppContent\n // 200 = max width of the menu\n root.style.setProperty('--mouse-pos-x', Math.max(0, event.clientX - contentRect.left - 200) + 'px');\n root.style.setProperty('--mouse-pos-y', Math.max(0, event.clientY - contentRect.top) + 'px');\n }\n else {\n // Reset any right menu position potentially set\n const root = this.$el?.closest('main.app-content');\n root.style.removeProperty('--mouse-pos-x');\n root.style.removeProperty('--mouse-pos-y');\n }\n // If the clicked row is in the selection, open global menu\n const isMoreThanOneSelected = this.selectedFiles.length > 1;\n this.actionsMenuStore.opened = this.isSelected && isMoreThanOneSelected ? 'global' : this.uniqueId.toString();\n // Prevent any browser defaults\n event.preventDefault();\n event.stopPropagation();\n },\n execDefaultAction(event) {\n // Ignore click if we are renaming\n if (this.isRenaming) {\n return;\n }\n // Ignore right click.\n if (event.button > 1) {\n return;\n }\n // if ctrl+click or middle mouse button, open in new tab\n if (event.ctrlKey || event.metaKey || event.button === 1) {\n event.preventDefault();\n window.open(generateUrl('/f/{fileId}', { fileId: this.fileid }));\n return false;\n }\n if (this.defaultFileAction) {\n event.preventDefault();\n event.stopPropagation();\n // Execute the first default action if any\n this.defaultFileAction.exec(this.source, this.currentView, this.currentDir);\n }\n else {\n // fallback to open in current tab\n window.open(generateUrl('/f/{fileId}', { fileId: this.fileid }), '_self');\n }\n },\n openDetailsIfAvailable(event) {\n event.preventDefault();\n event.stopPropagation();\n if (sidebarAction?.enabled?.([this.source], this.currentView)) {\n sidebarAction.exec(this.source, this.currentView, this.currentDir);\n }\n },\n onDragOver(event) {\n this.dragover = this.canDrop;\n if (!this.canDrop) {\n event.dataTransfer.dropEffect = 'none';\n return;\n }\n // Handle copy/move drag and drop\n if (event.ctrlKey) {\n event.dataTransfer.dropEffect = 'copy';\n }\n else {\n event.dataTransfer.dropEffect = 'move';\n }\n },\n onDragLeave(event) {\n // Counter bubbling, make sure we're ending the drag\n // only when we're leaving the current element\n const currentTarget = event.currentTarget;\n if (currentTarget?.contains(event.relatedTarget)) {\n return;\n }\n this.dragover = false;\n },\n async onDragStart(event) {\n event.stopPropagation();\n if (!this.canDrag || !this.fileid) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n logger.debug('Drag started', { event });\n // Make sure that we're not dragging a file like the preview\n event.dataTransfer?.clearData?.();\n // Reset any renaming\n this.renamingStore.$reset();\n // Dragging set of files, if we're dragging a file\n // that is already selected, we use the entire selection\n if (this.selectedFiles.includes(this.source.source)) {\n this.draggingStore.set(this.selectedFiles);\n }\n else {\n this.draggingStore.set([this.source.source]);\n }\n const nodes = this.draggingStore.dragging\n .map(source => this.filesStore.getNode(source));\n const image = await getDragAndDropPreview(nodes);\n event.dataTransfer?.setDragImage(image, -10, -10);\n },\n onDragEnd() {\n this.draggingStore.reset();\n this.dragover = false;\n logger.debug('Drag ended');\n },\n async onDrop(event) {\n // skip if native drop like text drag and drop from files names\n if (!this.draggingFiles && !event.dataTransfer?.items?.length) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n // Caching the selection\n const selection = this.draggingFiles;\n const items = [...event.dataTransfer?.items || []];\n // We need to process the dataTransfer ASAP before the\n // browser clears it. This is why we cache the items too.\n const fileTree = await dataTransferToFileTree(items);\n // We might not have the target directory fetched yet\n const contents = await this.currentView?.getContents(this.source.path);\n const folder = contents?.folder;\n if (!folder) {\n showError(this.t('files', 'Target folder does not exist any more'));\n return;\n }\n // If another button is pressed, cancel it. This\n // allows cancelling the drag with the right click.\n if (!this.canDrop || event.button) {\n return;\n }\n const isCopy = event.ctrlKey;\n this.dragover = false;\n logger.debug('Dropped', { event, folder, selection, fileTree });\n // Check whether we're uploading files\n if (fileTree.contents.length > 0) {\n await onDropExternalFiles(fileTree, folder, contents.contents);\n return;\n }\n // Else we're moving/copying files\n const nodes = selection.map(source => this.filesStore.getNode(source));\n await onDropInternalFiles(nodes, folder, contents.contents, isCopy);\n // Reset selection after we dropped the files\n // if the dropped files are within the selection\n if (selection.some(source => this.selectedFiles.includes(source))) {\n logger.debug('Dropped selection, resetting select store...');\n this.selectionStore.reset();\n }\n },\n t,\n },\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CustomElementRender.vue?vue&type=template&id=08a118c6\"\nimport script from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-actions\",attrs:{\"data-cy-files-list-row-actions\":\"\"}},[_vm._l((_vm.enabledRenderActions),function(action){return _c('CustomElementRender',{key:action.id,staticClass:\"files-list__row-action--inline\",class:'files-list__row-action-' + action.id,attrs:{\"current-view\":_vm.currentView,\"render\":action.renderInline,\"source\":_vm.source}})}),_vm._v(\" \"),_c('NcActions',{ref:\"actionsMenu\",attrs:{\"boundaries-element\":_vm.getBoundariesElement,\"container\":_vm.getBoundariesElement,\"force-name\":true,\"type\":\"tertiary\",\"force-menu\":_vm.enabledInlineActions.length === 0 /* forceMenu only if no inline actions */,\"inline\":_vm.enabledInlineActions.length,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event},\"close\":function($event){_vm.openedSubmenu = null}}},[_vm._l((_vm.enabledMenuActions),function(action){return _c('NcActionButton',{key:action.id,ref:`action-${action.id}`,refInFor:true,class:{\n\t\t\t\t[`files-list__row-action-${action.id}`]: true,\n\t\t\t\t[`files-list__row-action--menu`]: _vm.isMenu(action.id)\n\t\t\t},attrs:{\"close-after-click\":!_vm.isMenu(action.id),\"data-cy-files-list-row-action\":action.id,\"is-menu\":_vm.isMenu(action.id),\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.mountType === 'shared' && action.id === 'sharing-status' ? '' : _vm.actionDisplayName(action))+\"\\n\\t\\t\")])}),_vm._v(\" \"),(_vm.openedSubmenu && _vm.enabledSubmenuActions[_vm.openedSubmenu?.id])?[_c('NcActionButton',{staticClass:\"files-list__row-action-back\",on:{\"click\":function($event){return _vm.onBackToMenuClick(_vm.openedSubmenu)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeftIcon')]},proxy:true}],null,false,3001860362)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Back'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.enabledSubmenuActions[_vm.openedSubmenu?.id]),function(action){return _c('NcActionButton',{key:action.id,staticClass:\"files-list__row-action--submenu\",class:`files-list__row-action-${action.id}`,attrs:{\"close-after-click\":\"\",\"data-cy-files-list-row-action\":action.id,\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(action))+\"\\n\\t\\t\\t\")])})]:_vm._e()],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon arrow-left-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ArrowLeftIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ArrowLeft.vue?vue&type=template&id=16833c02\"\nimport script from \"./ArrowLeft.vue?vue&type=script&lang=js\"\nexport * from \"./ArrowLeft.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon arrow-left-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntryActions.vue?vue&type=template&id=7a49ca87&scoped=true\"\nimport script from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=scss\"\nimport style1 from \"./FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7a49ca87\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[(_vm.isLoading)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.loadingLabel}}):_c('NcCheckboxRadioSwitch',{attrs:{\"aria-label\":_vm.ariaLabel,\"checked\":_vm.isSelected},on:{\"update:checked\":_vm.onSelectionChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\n/**\n * Observe various events and save the current\n * special keys states. Useful for checking the\n * current status of a key when executing a method.\n */\nexport const useKeyboardStore = function (...args) {\n const store = defineStore('keyboard', {\n state: () => ({\n altKey: false,\n ctrlKey: false,\n metaKey: false,\n shiftKey: false,\n }),\n actions: {\n onEvent(event) {\n if (!event) {\n event = window.event;\n }\n Vue.set(this, 'altKey', !!event.altKey);\n Vue.set(this, 'ctrlKey', !!event.ctrlKey);\n Vue.set(this, 'metaKey', !!event.metaKey);\n Vue.set(this, 'shiftKey', !!event.shiftKey);\n },\n },\n });\n const keyboardStore = store(...args);\n // Make sure we only register the listeners once\n if (!keyboardStore._initialized) {\n window.addEventListener('keydown', keyboardStore.onEvent);\n window.addEventListener('keyup', keyboardStore.onEvent);\n window.addEventListener('mousemove', keyboardStore.onEvent);\n keyboardStore._initialized = true;\n }\n return keyboardStore;\n};\n","import { render, staticRenderFns } from \"./FileEntryCheckbox.vue?vue&type=template&id=b393d122\"\nimport script from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.isRenaming)?_c('form',{directives:[{name:\"on-click-outside\",rawName:\"v-on-click-outside\",value:(_vm.onRename),expression:\"onRename\"}],ref:\"renameForm\",staticClass:\"files-list__row-rename\",attrs:{\"aria-label\":_vm.t('files', 'Rename file')},on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onRename.apply(null, arguments)}}},[_c('NcTextField',{ref:\"renameInput\",attrs:{\"label\":_vm.renameLabel,\"autofocus\":true,\"minlength\":1,\"required\":true,\"value\":_vm.newName,\"enterkeyhint\":\"done\"},on:{\"update:value\":function($event){_vm.newName=$event},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;return _vm.stopRenaming.apply(null, arguments)}}})],1):_c(_vm.linkTo.is,_vm._b({ref:\"basename\",tag:\"component\",staticClass:\"files-list__row-name-link\",attrs:{\"aria-hidden\":_vm.isRenaming,\"data-cy-files-list-row-name-link\":\"\"}},'component',_vm.linkTo.params,false),[_c('span',{staticClass:\"files-list__row-name-text\"},[_c('span',{staticClass:\"files-list__row-name-\",domProps:{\"textContent\":_vm._s(_vm.basename)}}),_vm._v(\" \"),_c('span',{staticClass:\"files-list__row-name-ext\",domProps:{\"textContent\":_vm._s(_vm.extension)}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { computed } from 'vue';\nimport { useRoute } from 'vue-router/composables';\n/**\n * Get information about the current route\n */\nexport function useRouteParameters() {\n const route = useRoute();\n /**\n * Get the path of the current active directory\n */\n const directory = computed(() => String(route.query.dir || '/')\n // Remove any trailing slash but leave root slash\n .replace(/^(.+)\\/$/, '$1'));\n /**\n * Get the current fileId used on the route\n */\n const fileId = computed(() => {\n const fileId = Number.parseInt(route.params.fileid ?? '0') || null;\n return Number.isNaN(fileId) ? null : fileId;\n });\n /**\n * State of `openFile` route param\n */\n const openFile = computed(\n // if `openfile` is set it is considered truthy, but allow to explicitly set it to 'false'\n () => 'openfile' in route.query && (typeof route.query.openfile !== 'string' || route.query.openfile.toLocaleLowerCase() !== 'false'));\n return {\n /** Path of currently open directory */\n directory,\n /** Current active fileId */\n fileId,\n /** Should the active node should be opened (`openFile` route param) */\n openFile,\n };\n}\n","/*!\n * vue-router v3.6.5\n * (c) 2022 Evan You\n * @license MIT\n */\nimport { getCurrentInstance, effectScope, shallowReactive, onUnmounted, computed, unref } from 'vue';\n\n// dev only warn if no current instance\n\nfunction throwNoCurrentInstance (method) {\n if (!getCurrentInstance()) {\n throw new Error(\n (\"[vue-router]: Missing current instance. \" + method + \"() must be called inside <script setup> or setup().\")\n )\n }\n}\n\nfunction useRouter () {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('useRouter');\n }\n\n return getCurrentInstance().proxy.$root.$router\n}\n\nfunction useRoute () {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('useRoute');\n }\n\n var root = getCurrentInstance().proxy.$root;\n if (!root._$route) {\n var route = effectScope(true).run(function () { return shallowReactive(Object.assign({}, root.$router.currentRoute)); }\n );\n root._$route = route;\n\n root.$router.afterEach(function (to) {\n Object.assign(route, to);\n });\n }\n\n return root._$route\n}\n\nfunction onBeforeRouteUpdate (guard) {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('onBeforeRouteUpdate');\n }\n\n return useFilteredGuard(guard, isUpdateNavigation)\n}\nfunction isUpdateNavigation (to, from, depth) {\n var toMatched = to.matched;\n var fromMatched = from.matched;\n return (\n toMatched.length >= depth &&\n toMatched\n .slice(0, depth + 1)\n .every(function (record, i) { return record === fromMatched[i]; })\n )\n}\n\nfunction isLeaveNavigation (to, from, depth) {\n var toMatched = to.matched;\n var fromMatched = from.matched;\n return toMatched.length < depth || toMatched[depth] !== fromMatched[depth]\n}\n\nfunction onBeforeRouteLeave (guard) {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('onBeforeRouteLeave');\n }\n\n return useFilteredGuard(guard, isLeaveNavigation)\n}\n\nvar noop = function () {};\nfunction useFilteredGuard (guard, fn) {\n var instance = getCurrentInstance();\n var router = useRouter();\n\n var target = instance.proxy;\n // find the nearest RouterView to know the depth\n while (\n target &&\n target.$vnode &&\n target.$vnode.data &&\n target.$vnode.data.routerViewDepth == null\n ) {\n target = target.$parent;\n }\n\n var depth =\n target && target.$vnode && target.$vnode.data\n ? target.$vnode.data.routerViewDepth\n : null;\n\n if (depth != null) {\n var removeGuard = router.beforeEach(function (to, from, next) {\n return fn(to, from, depth) ? guard(to, from, next) : next()\n });\n\n onUnmounted(removeGuard);\n return removeGuard\n }\n\n return noop\n}\n\n/* */\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction includesParams (outer, inner) {\n var loop = function ( key ) {\n var innerValue = inner[key];\n var outerValue = outer[key];\n if (typeof innerValue === 'string') {\n if (innerValue !== outerValue) { return { v: false } }\n } else {\n if (\n !Array.isArray(outerValue) ||\n outerValue.length !== innerValue.length ||\n innerValue.some(function (value, i) { return value !== outerValue[i]; })\n ) {\n return { v: false }\n }\n }\n };\n\n for (var key in inner) {\n var returned = loop( key );\n\n if ( returned ) return returned.v;\n }\n\n return true\n}\n\n// helpers from vue router 4\n\nfunction isSameRouteLocationParamsValue (a, b) {\n return Array.isArray(a)\n ? isEquivalentArray(a, b)\n : Array.isArray(b)\n ? isEquivalentArray(b, a)\n : a === b\n}\n\nfunction isEquivalentArray (a, b) {\n return Array.isArray(b)\n ? a.length === b.length && a.every(function (value, i) { return value === b[i]; })\n : a.length === 1 && a[0] === b\n}\n\nfunction isSameRouteLocationParams (a, b) {\n if (Object.keys(a).length !== Object.keys(b).length) { return false }\n\n for (var key in a) {\n if (!isSameRouteLocationParamsValue(a[key], b[key])) { return false }\n }\n\n return true\n}\n\nfunction useLink (props) {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('useLink');\n }\n\n var router = useRouter();\n var currentRoute = useRoute();\n\n var resolvedRoute = computed(function () { return router.resolve(unref(props.to), currentRoute); });\n\n var activeRecordIndex = computed(function () {\n var route = resolvedRoute.value.route;\n var matched = route.matched;\n var length = matched.length;\n var routeMatched = matched[length - 1];\n var currentMatched = currentRoute.matched;\n if (!routeMatched || !currentMatched.length) { return -1 }\n var index = currentMatched.indexOf(routeMatched);\n if (index > -1) { return index }\n // possible parent record\n var parentRecord = currentMatched[currentMatched.length - 2];\n\n return (\n // we are dealing with nested routes\n length > 1 &&\n // if the parent and matched route have the same path, this link is\n // referring to the empty child. Or we currently are on a different\n // child of the same parent\n parentRecord && parentRecord === routeMatched.parent\n )\n });\n\n var isActive = computed(\n function () { return activeRecordIndex.value > -1 &&\n includesParams(currentRoute.params, resolvedRoute.value.route.params); }\n );\n var isExactActive = computed(\n function () { return activeRecordIndex.value > -1 &&\n activeRecordIndex.value === currentRoute.matched.length - 1 &&\n isSameRouteLocationParams(currentRoute.params, resolvedRoute.value.route.params); }\n );\n\n var navigate = function (e) {\n var href = resolvedRoute.value.route;\n if (guardEvent(e)) {\n return props.replace\n ? router.replace(href)\n : router.push(href)\n }\n return Promise.resolve()\n };\n\n return {\n href: computed(function () { return resolvedRoute.value.href; }),\n route: computed(function () { return resolvedRoute.value.route; }),\n isExactActive: isExactActive,\n isActive: isActive,\n navigate: navigate\n }\n}\n\nexport { isSameRouteLocationParams, onBeforeRouteLeave, onBeforeRouteUpdate, useLink, useRoute, useRouter };\n","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { InvalidFilenameError, InvalidFilenameErrorReason, validateFilename } from '@nextcloud/files';\nimport { t } from '@nextcloud/l10n';\n/**\n * Get the validity of a filename (empty if valid).\n * This can be used for `setCustomValidity` on input elements\n * @param name The filename\n * @param escape Escape the matched string in the error (only set when used in HTML)\n */\nexport function getFilenameValidity(name, escape = false) {\n if (name.trim() === '') {\n return t('files', 'Filename must not be empty.');\n }\n try {\n validateFilename(name);\n return '';\n }\n catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n throw error;\n }\n switch (error.reason) {\n case InvalidFilenameErrorReason.Character:\n return t('files', '\"{char}\" is not allowed inside a filename.', { char: error.segment }, undefined, { escape });\n case InvalidFilenameErrorReason.ReservedName:\n return t('files', '\"{segment}\" is a reserved name and not allowed for filenames.', { segment: error.segment }, undefined, { escape: false });\n case InvalidFilenameErrorReason.Extension:\n if (error.segment.match(/\\.[a-z]/i)) {\n return t('files', '\"{extension}\" is not an allowed filetype.', { extension: error.segment }, undefined, { escape: false });\n }\n return t('files', 'Filenames must not end with \"{extension}\".', { extension: error.segment }, undefined, { escape: false });\n default:\n return t('files', 'Invalid filename.');\n }\n }\n}\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntryName.vue?vue&type=template&id=1b7d6a24&scoped=true\"\nimport script from \"./FileEntryName.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryName.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1b7d6a24\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"files-list__row-icon\"},[(_vm.source.type === 'folder')?[(_vm.dragover)?_vm._m(0):[_vm._m(1),_vm._v(\" \"),(_vm.folderOverlay)?_c(_vm.folderOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay\"}):_vm._e()]]:(_vm.previewUrl && _vm.backgroundFailed !== true)?_c('img',{ref:\"previewImg\",staticClass:\"files-list__row-icon-preview\",class:{'files-list__row-icon-preview--loaded': _vm.backgroundFailed === false},attrs:{\"alt\":\"\",\"loading\":\"lazy\",\"src\":_vm.previewUrl},on:{\"error\":_vm.onBackgroundError,\"load\":function($event){_vm.backgroundFailed = false}}}):_vm._m(2),_vm._v(\" \"),(_vm.isFavorite)?_c('span',{staticClass:\"files-list__row-icon-favorite\"},[_vm._m(3)],1):_vm._e(),_vm._v(\" \"),(_vm.fileOverlay)?_c(_vm.fileOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay files-list__row-icon-overlay--file\"}):_vm._e()],2)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderOpenIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FileIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FavoriteIcon')\n}]\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon file-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FileIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=0f6b0bb0\"\nimport script from \"./File.vue?vue&type=script&lang=js\"\nexport * from \"./File.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon folder-open-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FolderOpenIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./FolderOpen.vue?vue&type=template&id=ae0c5fc0\"\nimport script from \"./FolderOpen.vue?vue&type=script&lang=js\"\nexport * from \"./FolderOpen.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon folder-open-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon key-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"KeyIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Key.vue?vue&type=template&id=499b3412\"\nimport script from \"./Key.vue?vue&type=script&lang=js\"\nexport * from \"./Key.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon key-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon network-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"NetworkIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Network.vue?vue&type=template&id=7bf2ec80\"\nimport script from \"./Network.vue?vue&type=script&lang=js\"\nexport * from \"./Network.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon network-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon tag-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TagIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=356230e0\"\nimport script from \"./Tag.vue?vue&type=script&lang=js\"\nexport * from \"./Tag.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tag-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon play-circle-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"PlayCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./PlayCircle.vue?vue&type=template&id=3cc1493c\"\nimport script from \"./PlayCircle.vue?vue&type=script&lang=js\"\nexport * from \"./PlayCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon play-circle-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"","<template>\n\t<span :aria-hidden=\"!title\"\n\t\t:aria-label=\"title\"\n\t\tclass=\"material-design-icon collectives-icon\"\n\t\trole=\"img\"\n\t\tv-bind=\"$attrs\"\n\t\t@click=\"$emit('click', $event)\">\n\t\t<svg :fill=\"fillColor\"\n\t\t\tclass=\"material-design-icon__svg\"\n\t\t\t:width=\"size\"\n\t\t\t:height=\"size\"\n\t\t\tviewBox=\"0 0 16 16\">\n\t\t\t<path d=\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\" />\n\t\t\t<path d=\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\" />\n\t\t\t<path d=\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\" />\n\t\t\t<path d=\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\" />\n\t\t\t<path d=\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\" />\n\t\t\t<path d=\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\" />\n\t\t</svg>\n\t</span>\n</template>\n\n<script>\nexport default {\n\tname: 'CollectivesIcon',\n\tprops: {\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tfillColor: {\n\t\t\ttype: String,\n\t\t\tdefault: 'currentColor',\n\t\t},\n\t\tsize: {\n\t\t\ttype: Number,\n\t\t\tdefault: 24,\n\t\t},\n\t},\n}\n</script>\n","import { render, staticRenderFns } from \"./CollectivesIcon.vue?vue&type=template&id=18541dcc\"\nimport script from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\nexport * from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon collectives-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 16 16\"}},[_c('path',{attrs:{\"d\":\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\"}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcIconSvgWrapper',{staticClass:\"favorite-marker-icon\",attrs:{\"name\":_vm.t('files', 'Favorite'),\"svg\":_vm.StarSvg}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FavoriteIcon.vue?vue&type=template&id=42ea6dd4&scoped=true\"\nimport script from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nexport * from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"42ea6dd4\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"","/**\n * @copyright Copyright (c) 2023 Louis Chmn <louis@chmn.me>\n *\n * @author Louis Chmn <louis@chmn.me>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","import { render, staticRenderFns } from \"./FileEntryPreview.vue?vue&type=template&id=0fd56e0d\"\nimport script from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntry.vue?vue&type=template&id=4811ad9b\"\nimport script from \"./FileEntry.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntry.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row\",class:{'files-list__row--active': _vm.isActive, 'files-list__row--dragover': _vm.dragover, 'files-list__row--loading': _vm.isLoading},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag},on:{\"contextmenu\":_vm.onRightClick,\"dragover\":_vm.onDragOver,\"dragleave\":_vm.onDragLeave,\"dragstart\":_vm.onDragStart,\"dragend\":_vm.onDragEnd,\"drop\":_vm.onDrop}},[(_vm.source.attributes.failed)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"dragover\":_vm.dragover,\"grid-mode\":true,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"basename\":_vm.basename,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./FileEntryGrid.vue?vue&type=template&id=827cf09c\"\nimport script from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.enabled),expression:\"enabled\"}],class:`files-list__header-${_vm.header.id}`},[_c('span',{ref:\"mount\"})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesListHeader.vue?vue&type=template&id=0434f153\"\nimport script from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',[_c('th',{staticClass:\"files-list__row-checkbox\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('files', 'Total rows summary')))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\"},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.summary))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-size\"},[_c('span',[_vm._v(_vm._s(_vm.totalSize))])]):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-mtime\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column)},[_c('span',[_vm._v(_vm._s(column.summary?.(_vm.nodes, _vm.currentView)))])])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableFooter.vue?vue&type=template&id=23b7c4eb&scoped=true\"\nimport script from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"23b7c4eb\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row-head\"},[_c('th',{staticClass:\"files-list__column files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[_c('NcCheckboxRadioSwitch',_vm._b({on:{\"update:checked\":_vm.onToggleAll}},'NcCheckboxRadioSwitch',_vm.selectAllBind,false))],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__column files-list__row-name files-list__column--sortable\",attrs:{\"aria-sort\":_vm.ariaSortForMode('basename')}},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Name'),\"mode\":\"basename\"}})],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-size\",class:{ 'files-list__column--sortable': _vm.isSizeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('size')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Size'),\"mode\":\"size\"}})],1):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-mtime\",class:{ 'files-list__column--sortable': _vm.isMtimeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('mtime')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Modified'),\"mode\":\"mtime\"}})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column),attrs:{\"aria-sort\":_vm.ariaSortForMode(column.id)}},[(!!column.sort)?_c('FilesListTableHeaderButton',{attrs:{\"name\":column.title,\"mode\":column.id}}):_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(column.title)+\"\\n\\t\\t\")])],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport Vue from 'vue';\nimport { mapState } from 'pinia';\nimport { useViewConfigStore } from '../store/viewConfig';\nimport { useNavigation } from '../composables/useNavigation';\nexport default Vue.extend({\n setup() {\n const { currentView } = useNavigation();\n return {\n currentView,\n };\n },\n computed: {\n ...mapState(useViewConfigStore, ['getConfig', 'setSortingBy', 'toggleSortingDirection']),\n /**\n * Get the sorting mode for the current view\n */\n sortingMode() {\n return this.getConfig(this.currentView.id)?.sorting_mode\n || this.currentView?.defaultSortKey\n || 'basename';\n },\n /**\n * Get the sorting direction for the current view\n */\n isAscSorting() {\n const sortingDirection = this.getConfig(this.currentView.id)?.sorting_direction;\n return sortingDirection !== 'desc';\n },\n },\n methods: {\n toggleSortBy(key) {\n // If we're already sorting by this key, flip the direction\n if (this.sortingMode === key) {\n this.toggleSortingDirection(this.currentView.id);\n return;\n }\n // else sort ASC by this new key\n this.setSortingBy(key, this.currentView.id);\n },\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcButton',{class:['files-list__column-sort-button', {\n\t\t'files-list__column-sort-button--active': _vm.sortingMode === _vm.mode,\n\t\t'files-list__column-sort-button--size': _vm.sortingMode === 'size',\n\t}],attrs:{\"alignment\":_vm.mode === 'size' ? 'end' : 'start-reverse',\"type\":\"tertiary\",\"title\":_vm.name},on:{\"click\":function($event){return _vm.toggleSortBy(_vm.mode)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.sortingMode !== _vm.mode || _vm.isAscSorting)?_c('MenuUp',{staticClass:\"files-list__column-sort-button-icon\"}):_c('MenuDown',{staticClass:\"files-list__column-sort-button-icon\"})]},proxy:true}])},[_vm._v(\" \"),_c('span',{staticClass:\"files-list__column-sort-button-text\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderButton.vue?vue&type=template&id=db2d1330&scoped=true\"\nimport script from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"db2d1330\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeader.vue?vue&type=template&id=68d3de81&scoped=true\"\nimport script from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"68d3de81\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list\",attrs:{\"data-cy-files-list\":\"\"}},[_c('div',{ref:\"before\",staticClass:\"files-list__before\"},[_vm._t(\"before\")],2),_vm._v(\" \"),(!!_vm.$scopedSlots['header-overlay'])?_c('div',{staticClass:\"files-list__thead-overlay\"},[_vm._t(\"header-overlay\")],2):_vm._e(),_vm._v(\" \"),_c('table',{staticClass:\"files-list__table\",class:{ 'files-list__table--with-thead-overlay': !!_vm.$scopedSlots['header-overlay'] }},[(_vm.caption)?_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.caption)+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('thead',{ref:\"thead\",staticClass:\"files-list__thead\",attrs:{\"data-cy-files-list-thead\":\"\"}},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('tbody',{staticClass:\"files-list__tbody\",class:_vm.gridMode ? 'files-list__tbody--grid' : 'files-list__tbody--list',style:(_vm.tbodyStyle),attrs:{\"data-cy-files-list-tbody\":\"\"}},_vm._l((_vm.renderedItems),function({key, item},i){return _c(_vm.dataComponent,_vm._b({key:key,tag:\"component\",attrs:{\"source\":item,\"index\":i}},'component',_vm.extraProps,false))}),1),_vm._v(\" \"),_c('tfoot',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isReady),expression:\"isReady\"}],staticClass:\"files-list__tfoot\",attrs:{\"data-cy-files-list-tfoot\":\"\"}},[_vm._t(\"footer\")],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./VirtualList.vue?vue&type=template&id=15cca403\"\nimport script from \"./VirtualList.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualList.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list__column files-list__row-actions-batch\"},[_c('NcActions',{ref:\"actionsMenu\",attrs:{\"disabled\":!!_vm.loading || _vm.areSomeNodesLoading,\"force-name\":true,\"inline\":_vm.inlineActions,\"menu-name\":_vm.inlineActions <= 1 ? _vm.t('files', 'Actions') : null,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event}}},_vm._l((_vm.enabledActions),function(action){return _c('NcActionButton',{key:action.id,class:'files-list__row-actions-batch-' + action.id,on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline(_vm.nodes, _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(action.displayName(_vm.nodes, _vm.currentView))+\"\\n\\t\\t\")])}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderActions.vue?vue&type=template&id=91476734&scoped=true\"\nimport script from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"91476734\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('VirtualList',{ref:\"table\",attrs:{\"data-component\":_vm.userConfig.grid_view ? _vm.FileEntryGrid : _vm.FileEntry,\"data-key\":'source',\"data-sources\":_vm.nodes,\"grid-mode\":_vm.userConfig.grid_view,\"extra-props\":{\n\t\tisMtimeAvailable: _vm.isMtimeAvailable,\n\t\tisSizeAvailable: _vm.isSizeAvailable,\n\t\tnodes: _vm.nodes,\n\t\tfilesListWidth: _vm.filesListWidth,\n\t},\"scroll-to-index\":_vm.scrollToIndex,\"caption\":_vm.caption},scopedSlots:_vm._u([(!_vm.isNoneSelected)?{key:\"header-overlay\",fn:function(){return [_c('span',{staticClass:\"files-list__selected\"},[_vm._v(_vm._s(_vm.t('files', '{count} selected', { count: _vm.selectedNodes.length })))]),_vm._v(\" \"),_c('FilesListTableHeaderActions',{attrs:{\"current-view\":_vm.currentView,\"selected-nodes\":_vm.selectedNodes}})]},proxy:true}:null,{key:\"before\",fn:function(){return _vm._l((_vm.sortedHeaders),function(header){return _c('FilesListHeader',{key:header.id,attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"header\":header}})})},proxy:true},{key:\"header\",fn:function(){return [_c('FilesListTableHeader',{ref:\"thead\",attrs:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes}})]},proxy:true},{key:\"footer\",fn:function(){return [_c('FilesListTableFooter',{attrs:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes,\"summary\":_vm.summary}})]},proxy:true}],null,true)})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListVirtual.vue?vue&type=template&id=91ee9762&scoped=true\"\nimport script from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=scss\"\nimport style1 from \"./FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"91ee9762\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon tray-arrow-down-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TrayArrowDownIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./TrayArrowDown.vue?vue&type=template&id=5dbf2618\"\nimport script from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\nexport * from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tray-arrow-down-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.dragover),expression:\"dragover\"}],staticClass:\"files-list__drag-drop-notice\",attrs:{\"data-cy-files-drag-drop-area\":\"\"},on:{\"drop\":_vm.onDrop}},[_c('div',{staticClass:\"files-list__drag-drop-notice-wrapper\"},[(_vm.canUpload && !_vm.isQuotaExceeded)?[_c('TrayArrowDownIcon',{attrs:{\"size\":48}}),_vm._v(\" \"),_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Drag and drop files here to upload'))+\"\\n\\t\\t\\t\")])]:[_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.cantUploadLabel)+\"\\n\\t\\t\\t\")])]],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropNotice.vue?vue&type=template&id=06f3ea08&scoped=true\"\nimport script from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"06f3ea08\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { t } from '@nextcloud/l10n';\n/**\n * Whether error is a WebDAVClientError\n * @param error - Any exception\n * @return {boolean} - Whether error is a WebDAVClientError\n */\nfunction isWebDAVClientError(error) {\n return error instanceof Error && 'status' in error && 'response' in error;\n}\n/**\n * Get a localized error message from webdav request\n * @param error - An exception from webdav request\n * @return {string} Localized error message for end user\n */\nexport function humanizeWebDAVError(error) {\n if (error instanceof Error) {\n if (isWebDAVClientError(error)) {\n const status = error.status || error.response?.status || 0;\n if ([400, 404, 405].includes(status)) {\n return t('files', 'Folder not found');\n }\n else if (status === 403) {\n return t('files', 'This operation is forbidden');\n }\n else if (status === 500) {\n return t('files', 'This directory is unavailable, please check the logs or contact the administrator');\n }\n else if (status === 503) {\n return t('files', 'Storage is temporarily not available');\n }\n }\n return t('files', 'Unexpected error: {error}', { error: error.message });\n }\n return t('files', 'Unknown error');\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesList.vue?vue&type=template&id=575ac9fe&scoped=true\"\nimport script from \"./FilesList.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"575ac9fe\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesApp.vue?vue&type=template&id=11e0f2dd\"\nimport script from \"./FilesApp.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesApp.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { PiniaVuePlugin } from 'pinia';\nimport { getRequestToken } from '@nextcloud/auth';\nimport Vue from 'vue';\nimport { pinia } from './store/index.ts';\nimport router from './router/router';\nimport RouterService from './services/RouterService';\nimport SettingsModel from './models/Setting.js';\nimport SettingsService from './services/Settings.js';\nimport FilesApp from './FilesApp.vue';\n// @ts-expect-error __webpack_nonce__ is injected by webpack\n__webpack_nonce__ = btoa(getRequestToken());\n// Init private and public Files namespace\nwindow.OCA.Files = window.OCA.Files ?? {};\nwindow.OCP.Files = window.OCP.Files ?? {};\n// Expose router\nconst Router = new RouterService(router);\nObject.assign(window.OCP.Files, { Router });\n// Init Pinia store\nVue.use(PiniaVuePlugin);\n// Init Files App Settings Service\nconst Settings = new SettingsService();\nObject.assign(window.OCA.Files, { Settings });\nObject.assign(window.OCA.Files.Settings, { Setting: SettingsModel });\nconst FilesAppVue = Vue.extend(FilesApp);\nnew FilesAppVue({\n router,\n pinia,\n}).$mount('#content');\n","export default class RouterService {\n _router;\n constructor(router) {\n this._router = router;\n }\n get name() {\n return this._router.currentRoute.name;\n }\n get query() {\n return this._router.currentRoute.query || {};\n }\n get params() {\n return this._router.currentRoute.params || {};\n }\n /**\n * Trigger a route change on the files app\n *\n * @param path the url path, eg: '/trashbin?dir=/Deleted'\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goTo(path, replace = false) {\n return this._router.push({\n path,\n replace,\n });\n }\n /**\n * Trigger a route change on the files App\n *\n * @param name the route name\n * @param params the route parameters\n * @param query the url query parameters\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goToRoute(name, params, query, replace) {\n return this._router.push({\n name,\n query,\n params,\n replace,\n });\n }\n}\n","/**\n * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class Settings {\n\n\t_settings\n\n\tconstructor() {\n\t\tthis._settings = []\n\t\tconsole.debug('OCA.Files.Settings initialized')\n\t}\n\n\t/**\n\t * Register a new setting\n\t *\n\t * @since 19.0.0\n\t * @param {OCA.Files.Settings.Setting} view element to add to settings\n\t * @return {boolean} whether registering was successful\n\t */\n\tregister(view) {\n\t\tif (this._settings.filter(e => e.name === view.name).length > 0) {\n\t\t\tconsole.error('A setting with the same name is already registered')\n\t\t\treturn false\n\t\t}\n\t\tthis._settings.push(view)\n\t\treturn true\n\t}\n\n\t/**\n\t * All settings elements\n\t *\n\t * @return {OCA.Files.Settings.Setting[]} All currently registered settings\n\t */\n\tget settings() {\n\t\treturn this._settings\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class Setting {\n\n\t_close\n\t_el\n\t_name\n\t_open\n\n\t/**\n\t * Create a new files app setting\n\t *\n\t * @since 19.0.0\n\t * @param {string} name the name of this setting\n\t * @param {object} component the component\n\t * @param {Function} component.el function that returns an unmounted dom element to be added\n\t * @param {Function} [component.open] callback for when setting is added\n\t * @param {Function} [component.close] callback for when setting is closed\n\t */\n\tconstructor(name, { el, open, close }) {\n\t\tthis._name = name\n\t\tthis._el = el\n\t\tthis._open = open\n\t\tthis._close = close\n\n\t\tif (typeof this._open !== 'function') {\n\t\t\tthis._open = () => {}\n\t\t}\n\n\t\tif (typeof this._close !== 'function') {\n\t\t\tthis._close = () => {}\n\t\t}\n\t}\n\n\tget name() {\n\t\treturn this._name\n\t}\n\n\tget el() {\n\t\treturn this._el\n\t}\n\n\tget open() {\n\t\treturn this._open\n\t}\n\n\tget close() {\n\t\treturn this._close\n\t}\n\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../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, `.upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-c5517ef8] {\\n display: inline-flex;\\n align-items: center;\\n height: var(--default-clickable-area);\\n}\\n.upload-picker__progress[data-v-c5517ef8] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-c5517ef8] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\\n animation: breathing-c5517ef8 3s ease-out infinite normal;\\n}\\n@keyframes breathing-c5517ef8 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__breadcrumbs[data-v-20858d70]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px;min-width:0}.files-list__breadcrumbs[data-v-20858d70] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-20858d70]{flex-direction:column !important;align-items:flex-start !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/BreadCrumbs.vue\"],\"names\":[],\"mappings\":\"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,WAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA\",\"sourcesContent\":[\"\\n.files-list__breadcrumbs {\\n\\t// Take as much space as possible\\n\\tflex: 1 1 100% !important;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tmargin-block: 0;\\n\\tmargin-inline: 10px;\\n\\tmin-width: 0;\\n\\n\\t:deep() {\\n\\t\\ta {\\n\\t\\t\\tcursor: pointer !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&--with-progress {\\n\\t\\tflex-direction: column !important;\\n\\t\\talign-items: flex-start !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__drag-drop-notice[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-06f3ea08]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropNotice.vue\"],\"names\":[],\"mappings\":\"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA\",\"sourcesContent\":[\"\\n.files-list__drag-drop-notice {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\t// Breadcrumbs height + row thead height\\n\\tmin-height: calc(58px + 55px);\\n\\tmargin: 0;\\n\\tuser-select: none;\\n\\tcolor: var(--color-text-maxcontrast);\\n\\tbackground-color: var(--color-main-background);\\n\\tborder-color: black;\\n\\n\\th3 {\\n\\t\\tmargin-left: 16px;\\n\\t\\tcolor: inherit;\\n\\t}\\n\\n\\t&-wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\theight: 15vh;\\n\\t\\tmax-height: 70%;\\n\\t\\tpadding: 0 5vw;\\n\\t\\tborder: 2px var(--color-border-dark) dashed;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropPreview.vue\"],\"names\":[],\"mappings\":\"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n$size: 32px;\\n$stack-shift: 6px;\\n\\n.files-list-drag-image {\\n\\tposition: absolute;\\n\\ttop: -9999px;\\n\\tleft: -9999px;\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\tpadding: 6px 12px;\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__icon,\\n\\t.files-list__row-icon {\\n\\t\\tdisplay: flex;\\n\\t\\toverflow: hidden;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t&__icon {\\n\\t\\toverflow: visible;\\n\\t\\tmargin-right: 12px;\\n\\n\\t\\timg {\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tmax-height: 100%;\\n\\t\\t}\\n\\n\\t\\t.material-design-icon {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t&.folder-icon {\\n\\t\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Previews container\\n\\t\\t> span {\\n\\t\\t\\tdisplay: flex;\\n\\n\\t\\t\\t// Stack effect if more than one element\\n\\t\\t\\t.files-list__row-icon + .files-list__row-icon {\\n\\t\\t\\t\\tmargin-top: $stack-shift;\\n\\t\\t\\t\\tmargin-left: $stack-shift - $size;\\n\\t\\t\\t\\t& + .files-list__row-icon {\\n\\t\\t\\t\\t\\tmargin-top: $stack-shift * 2;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t// If we have manually clone the preview,\\n\\t\\t\\t// let's hide any fallback icons\\n\\t\\t\\t&:not(:empty) + * {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.favorite-marker-icon[data-v-42ea6dd4]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.favorite-marker-icon {\\n\\tcolor: var(--color-favorite);\\n\\t// Override NcIconSvgWrapper defaults (clickable area)\\n\\tmin-width: unset !important;\\n min-height: unset !important;\\n\\n\\t:deep() {\\n\\t\\tsvg {\\n\\t\\t\\t// We added a stroke for a11y so we must increase the size to include the stroke\\n\\t\\t\\twidth: 26px !important;\\n\\t\\t\\theight: 26px !important;\\n\\n\\t\\t\\t// Override NcIconSvgWrapper defaults of 20px\\n\\t\\t\\tmax-width: unset !important;\\n\\t\\t\\tmax-height: unset !important;\\n\\n\\t\\t\\t// Sow a border around the icon for better contrast\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-main-background);\\n\\t\\t\\t\\tstroke-width: 8px;\\n\\t\\t\\t\\tstroke-linejoin: round;\\n\\t\\t\\t\\tpaint-order: stroke;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA\",\"sourcesContent\":[\"\\n// Allow right click to define the position of the menu\\n// only if defined\\nmain.app-content[style*=\\\"mouse-pos-x\\\"] .v-popper__popper {\\n\\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\\n\\n\\t// If the menu is too close to the bottom, we move it up\\n\\t&[data-popper-placement=\\\"top\\\"] {\\n\\t\\t// 34px added to align with the top of the cursor\\n\\t\\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\\n\\t}\\n\\t// Hide arrow if floating\\n\\t.v-popper__arrow-container {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA\",\"sourcesContent\":[\"\\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\\n\\t.button-vue__text {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n\\t.button-vue__icon {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `button.files-list__row-name-link[data-v-1b7d6a24]{background-color:unset;border:none;font-weight:normal}button.files-list__row-name-link[data-v-1b7d6a24]:active{background-color:unset !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryName.vue\"],\"names\":[],\"mappings\":\"AACA,kDACC,sBAAA,CACA,WAAA,CACA,kBAAA,CAEA,yDAEC,iCAAA\",\"sourcesContent\":[\"\\nbutton.files-list__row-name-link {\\n\\tbackground-color: unset;\\n\\tborder: none;\\n\\tfont-weight: normal;\\n\\n\\t&:active {\\n\\t\\t// No active styles - handled by the row entry\\n\\t\\tbackground-color: unset !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `tr[data-v-23b7c4eb]{margin-bottom:max(25vh,var(--body-container-margin));border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-23b7c4eb]{user-select:none;color:var(--color-text-maxcontrast) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableFooter.vue\"],\"names\":[],\"mappings\":\"AAEA,oBACC,oDAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA\",\"sourcesContent\":[\"\\n// Scoped row\\ntr {\\n\\tmargin-bottom: max(25vh, var(--body-container-margin));\\n\\tborder-top: 1px solid var(--color-border);\\n\\t// Prevent hover effect on the whole row\\n\\tbackground-color: transparent !important;\\n\\tborder-bottom: none !important;\\n\\n\\ttd {\\n\\t\\tuser-select: none;\\n\\t\\t// Make sure the cell colors don't apply to column headers\\n\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__column[data-v-68d3de81]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-68d3de81]{cursor:pointer}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeader.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA\",\"sourcesContent\":[\"\\n.files-list__column {\\n\\tuser-select: none;\\n\\t// Make sure the cell colors don't apply to column headers\\n\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t&--sortable {\\n\\t\\tcursor: pointer;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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-actions-batch[data-v-91476734]{flex:1 1 100% !important;max-width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderActions.vue\"],\"names\":[],\"mappings\":\"AACA,gDACC,wBAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n.files-list__row-actions-batch {\\n\\tflex: 1 1 100% !important;\\n\\tmax-width: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__column-sort-button[data-v-db2d1330]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-db2d1330]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-db2d1330]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-db2d1330]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-db2d1330]{opacity:1}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderButton.vue\"],\"names\":[],\"mappings\":\"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA\",\"sourcesContent\":[\"\\n.files-list__column-sort-button {\\n\\t// Compensate for cells margin\\n\\tmargin: 0 calc(var(--cell-margin) * -1);\\n\\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\\n\\n\\t&-text {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tfont-weight: normal;\\n\\t}\\n\\n\\t&-icon {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\topacity: 0;\\n\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\tinset-inline-start: -10px;\\n\\t}\\n\\n\\t&--size &-icon {\\n\\t\\tinset-inline-start: 10px;\\n\\t}\\n\\n\\t&--active &-icon,\\n\\t&:hover &-icon,\\n\\t&:focus &-icon,\\n\\t&:active &-icon {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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[data-v-91ee9762]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-91ee9762] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-91ee9762] tbody tr{contain:strict}.files-list[data-v-91ee9762] tbody tr:hover,.files-list[data-v-91ee9762] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-91ee9762] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-91ee9762] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-91ee9762] .files-list__table{display:block}.files-list[data-v-91ee9762] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-91ee9762] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-91ee9762] .files-list__thead,.files-list[data-v-91ee9762] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-91ee9762] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-91ee9762] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-91ee9762] td,.files-list[data-v-91ee9762] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-91ee9762] td span,.files-list[data-v-91ee9762] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-91ee9762] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-91ee9762] .files-list__row-checkbox{justify-content:center}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-91ee9762] .files-list__row:hover,.files-list[data-v-91ee9762] .files-list__row:focus,.files-list[data-v-91ee9762] .files-list__row:active,.files-list[data-v-91ee9762] .files-list__row--active,.files-list[data-v-91ee9762] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-91ee9762] .files-list__row:hover>*,.files-list[data-v-91ee9762] .files-list__row:focus>*,.files-list[data-v-91ee9762] .files-list__row:active>*,.files-list[data-v-91ee9762] .files-list__row--active>*,.files-list[data-v-91ee9762] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-91ee9762] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-91ee9762] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-91ee9762] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-91ee9762] .files-list__row-icon *{cursor:pointer}.files-list[data-v-91ee9762] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-91ee9762] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-91ee9762] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-91ee9762] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-91ee9762] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-91ee9762] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link{display:flex;align-items:center;text-align:start;width:100%;height:100%;min-width:0;margin:0}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus-visible{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus .files-list__row-name-text{outline:var(--border-width-input-focused) solid var(--color-main-text) !important;border-radius:var(--border-radius-element)}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:var(--default-grid-baseline) calc(2*var(--default-grid-baseline));margin-left:-10px;display:inline-flex}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-91ee9762] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-91ee9762] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-91ee9762] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-91ee9762] .files-list__row-actions{width:auto}.files-list[data-v-91ee9762] .files-list__row-actions~td,.files-list[data-v-91ee9762] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-91ee9762] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-91ee9762] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-91ee9762] .files-list__row-mtime,.files-list[data-v-91ee9762] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-91ee9762] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-91ee9762] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-91ee9762] .files-list__row-column-custom{width:calc(var(--row-height)*2)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,qFACC,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CACA,QAAA,CAGA,mGACC,uBAAA,CAID,sHACC,iFAAA,CACA,0CAAA,CAED,0IACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,yEAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA\",\"sourcesContent\":[\"\\n.files-list {\\n\\t--row-height: 55px;\\n\\t--cell-margin: 14px;\\n\\n\\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\\n\\t--checkbox-size: 24px;\\n\\t--clickable-area: 44px;\\n\\t--icon-preview-size: 32px;\\n\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\twill-change: scroll-position;\\n\\n\\t& :deep() {\\n\\t\\t// Table head, body and footer\\n\\t\\ttbody {\\n\\t\\t\\twill-change: padding;\\n\\t\\t\\tcontain: layout paint style;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\t// Necessary for virtual scrolling absolute\\n\\t\\t\\tposition: relative;\\n\\n\\t\\t\\t/* Hover effect on tbody lines only */\\n\\t\\t\\ttr {\\n\\t\\t\\t\\tcontain: strict;\\n\\t\\t\\t\\t&:hover,\\n\\t\\t\\t\\t&:focus {\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Before table and thead\\n\\t\\t.files-list__before {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t}\\n\\n\\t\\t.files-list__selected {\\n\\t\\t\\tpadding-right: 12px;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t.files-list__table {\\n\\t\\t\\tdisplay: block;\\n\\n\\t\\t\\t&.files-list__table--with-thead-overlay {\\n\\t\\t\\t\\t// Hide the table header below the overlay\\n\\t\\t\\t\\tmargin-top: calc(-1 * var(--row-height));\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__thead-overlay {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\t// Save space for a row checkbox\\n\\t\\t\\tmargin-left: var(--row-height);\\n\\t\\t\\t// More than .files-list__thead\\n\\t\\t\\tz-index: 20;\\n\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\t// Reuse row styles\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\t.files-list__thead,\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\t}\\n\\n\\t\\t// Table header\\n\\t\\t.files-list__thead {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tz-index: 10;\\n\\t\\t\\ttop: 0;\\n\\t\\t}\\n\\n\\t\\ttr {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\ttd, th {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t\\tjustify-content: left;\\n\\t\\t\\twidth: var(--row-height);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tborder: none;\\n\\n\\t\\t\\t// Columns should try to add any text\\n\\t\\t\\t// node wrapped in a span. That should help\\n\\t\\t\\t// with the ellipsis on overflow.\\n\\t\\t\\tspan {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row--failed {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\topacity: .1;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\tbackground: var(--color-error);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-checkbox {\\n\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t.checkbox-radio-switch {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\t--icon-size: var(--checkbox-size);\\n\\n\\t\\t\\t\\tlabel.checkbox-radio-switch__label {\\n\\t\\t\\t\\t\\twidth: var(--clickable-area);\\n\\t\\t\\t\\t\\theight: var(--clickable-area);\\n\\t\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t\\t\\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\t\\tmargin: 0 !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row {\\n\\t\\t\\t&:hover, &:focus, &:active, &--active, &--dragover {\\n\\t\\t\\t\\t// WCAG AA compliant\\n\\t\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\t\\t// text-maxcontrast have been designed to pass WCAG AA over\\n\\t\\t\\t\\t// a white background, we need to adjust then.\\n\\t\\t\\t\\t--color-text-maxcontrast: var(--color-main-text);\\n\\t\\t\\t\\t> * {\\n\\t\\t\\t\\t\\t--color-border: var(--color-border-dark);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Hover state of the row should also change the favorite markers background\\n\\t\\t\\t\\t.favorite-marker-icon svg path {\\n\\t\\t\\t\\t\\tstroke: var(--color-background-hover);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--dragover * {\\n\\t\\t\\t\\t// Prevent dropping on row children\\n\\t\\t\\t\\tpointer-events: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry preview or mime icon\\n\\t\\t.files-list__row-icon {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\toverflow: visible;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\t// No shrinking or growing allowed\\n\\t\\t\\tflex: 0 0 var(--icon-preview-size);\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Show same padding as the checkbox right padding for visual balance\\n\\t\\t\\tmargin-right: var(--checkbox-padding);\\n\\t\\t\\tcolor: var(--color-primary-element);\\n\\n\\t\\t\\t// Icon is also clickable\\n\\t\\t\\t* {\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& > span {\\n\\t\\t\\t\\tjustify-content: flex-start;\\n\\n\\t\\t\\t\\t&:not(.files-list__row-icon-favorite) svg {\\n\\t\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Slightly increase the size of the folder icon\\n\\t\\t\\t\\t&.folder-icon,\\n\\t\\t\\t\\t&.folder-open-icon {\\n\\t\\t\\t\\t\\tmargin: -3px;\\n\\t\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\t\\twidth: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t\\theight: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-preview {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\t\\t// Center and contain the preview\\n\\t\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t\\tobject-position: center;\\n\\n\\t\\t\\t\\t/* Preview not loaded animation effect */\\n\\t\\t\\t\\t&:not(.files-list__row-icon-preview--loaded) {\\n\\t\\t\\t\\t\\tbackground: var(--color-loading-dark);\\n\\t\\t\\t\\t\\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-favorite {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: -10px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// File and folder overlay\\n\\t\\t\\t&-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tmax-height: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tmax-width: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\t\\t\\t// better alignment with the folder icon\\n\\t\\t\\t\\tmargin-top: 2px;\\n\\n\\t\\t\\t\\t// Improve icon contrast with a background for files\\n\\t\\t\\t\\t&--file {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t\\t\\t\\tborder-radius: 100%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry link\\n\\t\\t.files-list__row-name {\\n\\t\\t\\t// Prevent link from overflowing\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\t// Take as much space as possible\\n\\t\\t\\tflex: 1 1 auto;\\n\\n\\t\\t\\tbutton.files-list__row-name-link {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\ttext-align: start;\\n\\t\\t\\t\\t// Fill cell height and width\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\t// Necessary for flex grow to work\\n\\t\\t\\t\\tmin-width: 0;\\n\\t\\t\\t\\tmargin: 0;\\n\\n\\t\\t\\t\\t// Already added to the inner text, see rule below\\n\\t\\t\\t\\t&:focus-visible {\\n\\t\\t\\t\\t\\toutline: none !important;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Keyboard indicator a11y\\n\\t\\t\\t\\t&:focus .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: var(--border-width-input-focused) solid var(--color-main-text) !important;\\n\\t\\t\\t\\t\\tborder-radius: var(--border-radius-element);\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&:focus:not(:focus-visible) .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: none !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-text {\\n\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t// Make some space for the outline\\n\\t\\t\\t\\tpadding: var(--default-grid-baseline) calc(2 * var(--default-grid-baseline));\\n\\t\\t\\t\\tmargin-left: -10px;\\n\\t\\t\\t\\t// Align two name and ext\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-ext {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\t// always show the extension\\n\\t\\t\\t\\toverflow: visible;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Rename form\\n\\t\\t.files-list__row-rename {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmax-width: 600px;\\n\\t\\t\\tinput {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\t// Align with text, 0 - padding - border\\n\\t\\t\\t\\tmargin-left: -8px;\\n\\t\\t\\t\\tpadding: 2px 6px;\\n\\t\\t\\t\\tborder-width: 2px;\\n\\n\\t\\t\\t\\t&:invalid {\\n\\t\\t\\t\\t\\t// Show red border on invalid input\\n\\t\\t\\t\\t\\tborder-color: var(--color-error);\\n\\t\\t\\t\\t\\tcolor: red;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-actions {\\n\\t\\t\\t// take as much space as necessary\\n\\t\\t\\twidth: auto;\\n\\n\\t\\t\\t// Add margin to all cells after the actions\\n\\t\\t\\t& ~ td,\\n\\t\\t\\t& ~ th {\\n\\t\\t\\t\\tmargin: 0 var(--cell-margin);\\n\\t\\t\\t}\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\t.button-vue__text {\\n\\t\\t\\t\\t\\t// Remove bold from default button styling\\n\\t\\t\\t\\t\\tfont-weight: normal;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-action--inline {\\n\\t\\t\\tmargin-right: 7px;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime,\\n\\t\\t.files-list__row-size {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t\\t.files-list__row-size {\\n\\t\\t\\twidth: calc(var(--row-height) * 1.5);\\n\\t\\t\\t// Right align content/text\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-column-custom {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA\",\"sourcesContent\":[\"\\n// Grid mode\\ntbody.files-list__tbody.files-list__tbody--grid {\\n\\t--half-clickable-area: calc(var(--clickable-area) / 2);\\n\\t--row-width: 160px;\\n\\t// We use half of the clickable area as visual balance margin\\n\\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\\n\\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\\n\\t--checkbox-padding: 0px;\\n\\n\\tdisplay: grid;\\n\\tgrid-template-columns: repeat(auto-fill, var(--row-width));\\n\\tgrid-gap: 15px;\\n\\trow-gap: 15px;\\n\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tjustify-content: space-around;\\n\\tjustify-items: center;\\n\\n\\ttr {\\n\\t\\twidth: var(--row-width);\\n\\t\\theight: calc(var(--row-height) + var(--clickable-area));\\n\\t\\tborder: none;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t// Checkbox in the top left\\n\\t.files-list__row-checkbox {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 9;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\toverflow: hidden;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t\\tborder-radius: var(--half-clickable-area);\\n\\t}\\n\\n\\t// Star icon in the top right\\n\\t.files-list__row-icon-favorite {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n\\n\\t.files-list__row-name {\\n\\t\\tdisplay: grid;\\n\\t\\tjustify-content: stretch;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tgrid-auto-rows: var(--row-height) var(--clickable-area);\\n\\n\\t\\tspan.files-list__row-icon {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Visual balance, we use half of the clickable area\\n\\t\\t\\t// as a margin around the preview\\n\\t\\t\\tpadding-top: var(--half-clickable-area);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-name-text {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding-right: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t.files-list__row-actions {\\n\\t\\tposition: absolute;\\n\\t\\tright: 0;\\n\\t\\tbottom: 0;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.app-navigation-entry__settings-quota--not-unlimited[data-v-400127b6] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-400127b6]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NavigationQuota.vue\"],\"names\":[],\"mappings\":\"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA\",\"sourcesContent\":[\"\\n// User storage stats display\\n.app-navigation-entry__settings-quota {\\n\\t// Align title with progress and icon\\n\\t&--not-unlimited::v-deep .app-navigation-entry__name {\\n\\t\\tmargin-top: -6px;\\n\\t}\\n\\n\\tprogress {\\n\\t\\tposition: absolute;\\n\\t\\tbottom: 12px;\\n\\t\\tmargin-left: 44px;\\n\\t\\twidth: calc(100% - 44px - 22px);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.toast-loading-icon{margin-inline-start:-4px;min-width:26px}.app-content[data-v-575ac9fe]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-575ac9fe]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-575ac9fe]{flex:0 0}.files-list__header-share-button[data-v-575ac9fe]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-575ac9fe]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-575ac9fe]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-575ac9fe]{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FilesList.vue\"],\"names\":[],\"mappings\":\"AACA,oBAEC,wBAAA,CAEA,cAAA,CAGD,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA\",\"sourcesContent\":[\"\\n:global(.toast-loading-icon) {\\n\\t// Reduce start margin (it was made for text but this is an icon)\\n\\tmargin-inline-start: -4px;\\n\\t// 16px icon + 5px on both sides\\n\\tmin-width: 26px;\\n}\\n\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n\\tposition: relative !important;\\n}\\n\\n.files-list {\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t// Do not grow or shrink (vertically)\\n\\t\\tflex: 0 0;\\n\\t\\tmax-width: 100%;\\n\\t\\t// Align with the navigation toggle icon\\n\\t\\tmargin-block: var(--app-navigation-padding, 4px);\\n\\t\\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\\n\\n\\t\\t>* {\\n\\t\\t\\t// Do not grow or shrink (horizontally)\\n\\t\\t\\t// Only the breadcrumbs shrinks\\n\\t\\t\\tflex: 0 0;\\n\\t\\t}\\n\\n\\t\\t&-share-button {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t\\t\\t&--shared {\\n\\t\\t\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__refresh-icon {\\n\\t\\tflex: 0 0 44px;\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t}\\n\\n\\t&__loading-icon {\\n\\t\\tmargin: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.app-navigation[data-v-d0738916] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-d0738916] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-d0738916]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-d0738916]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Navigation.vue\"],\"names\":[],\"mappings\":\"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA\",\"sourcesContent\":[\"\\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\\n.app-navigation::v-deep .app-navigation-entry-icon {\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-position: center;\\n}\\n\\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\\n\\tcolor: var(--color-primary-element-text);\\n}\\n\\n.app-navigation > ul.app-navigation__list {\\n\\t// Use flex gap value for more elegant spacing\\n\\tpadding-bottom: var(--default-grid-baseline, 4px);\\n}\\n\\n.app-navigation-entry__settings {\\n\\theight: auto !important;\\n\\toverflow: hidden !important;\\n\\tpadding-top: 0 !important;\\n\\t// Prevent shrinking or growing\\n\\tflex: 0 0 auto;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.setting-link[data-v-00f09e69]:hover{text-decoration:underline}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Settings.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,yBAAA\",\"sourcesContent\":[\"\\n.setting-link:hover {\\n\\ttext-decoration: underline;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n",";(function (sax) { // wrapper for non-node envs\n sax.parser = function (strict, opt) { return new SAXParser(strict, opt) }\n sax.SAXParser = SAXParser\n sax.SAXStream = SAXStream\n sax.createStream = createStream\n\n // When we pass the MAX_BUFFER_LENGTH position, start checking for buffer overruns.\n // When we check, schedule the next check for MAX_BUFFER_LENGTH - (max(buffer lengths)),\n // since that's the earliest that a buffer overrun could occur. This way, checks are\n // as rare as required, but as often as necessary to ensure never crossing this bound.\n // Furthermore, buffers are only tested at most once per write(), so passing a very\n // large string into write() might have undesirable effects, but this is manageable by\n // the caller, so it is assumed to be safe. Thus, a call to write() may, in the extreme\n // edge case, result in creating at most one complete copy of the string passed in.\n // Set to Infinity to have unlimited buffers.\n sax.MAX_BUFFER_LENGTH = 64 * 1024\n\n var buffers = [\n 'comment', 'sgmlDecl', 'textNode', 'tagName', 'doctype',\n 'procInstName', 'procInstBody', 'entity', 'attribName',\n 'attribValue', 'cdata', 'script'\n ]\n\n sax.EVENTS = [\n 'text',\n 'processinginstruction',\n 'sgmldeclaration',\n 'doctype',\n 'comment',\n 'opentagstart',\n 'attribute',\n 'opentag',\n 'closetag',\n 'opencdata',\n 'cdata',\n 'closecdata',\n 'error',\n 'end',\n 'ready',\n 'script',\n 'opennamespace',\n 'closenamespace'\n ]\n\n function SAXParser (strict, opt) {\n if (!(this instanceof SAXParser)) {\n return new SAXParser(strict, opt)\n }\n\n var parser = this\n clearBuffers(parser)\n parser.q = parser.c = ''\n parser.bufferCheckPosition = sax.MAX_BUFFER_LENGTH\n parser.opt = opt || {}\n parser.opt.lowercase = parser.opt.lowercase || parser.opt.lowercasetags\n parser.looseCase = parser.opt.lowercase ? 'toLowerCase' : 'toUpperCase'\n parser.tags = []\n parser.closed = parser.closedRoot = parser.sawRoot = false\n parser.tag = parser.error = null\n parser.strict = !!strict\n parser.noscript = !!(strict || parser.opt.noscript)\n parser.state = S.BEGIN\n parser.strictEntities = parser.opt.strictEntities\n parser.ENTITIES = parser.strictEntities ? Object.create(sax.XML_ENTITIES) : Object.create(sax.ENTITIES)\n parser.attribList = []\n\n // namespaces form a prototype chain.\n // it always points at the current tag,\n // which protos to its parent tag.\n if (parser.opt.xmlns) {\n parser.ns = Object.create(rootNS)\n }\n\n // mostly just for error reporting\n parser.trackPosition = parser.opt.position !== false\n if (parser.trackPosition) {\n parser.position = parser.line = parser.column = 0\n }\n emit(parser, 'onready')\n }\n\n if (!Object.create) {\n Object.create = function (o) {\n function F () {}\n F.prototype = o\n var newf = new F()\n return newf\n }\n }\n\n if (!Object.keys) {\n Object.keys = function (o) {\n var a = []\n for (var i in o) if (o.hasOwnProperty(i)) a.push(i)\n return a\n }\n }\n\n function checkBufferLength (parser) {\n var maxAllowed = Math.max(sax.MAX_BUFFER_LENGTH, 10)\n var maxActual = 0\n for (var i = 0, l = buffers.length; i < l; i++) {\n var len = parser[buffers[i]].length\n if (len > maxAllowed) {\n // Text/cdata nodes can get big, and since they're buffered,\n // we can get here under normal conditions.\n // Avoid issues by emitting the text node now,\n // so at least it won't get any bigger.\n switch (buffers[i]) {\n case 'textNode':\n closeText(parser)\n break\n\n case 'cdata':\n emitNode(parser, 'oncdata', parser.cdata)\n parser.cdata = ''\n break\n\n case 'script':\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n break\n\n default:\n error(parser, 'Max buffer length exceeded: ' + buffers[i])\n }\n }\n maxActual = Math.max(maxActual, len)\n }\n // schedule the next check for the earliest possible buffer overrun.\n var m = sax.MAX_BUFFER_LENGTH - maxActual\n parser.bufferCheckPosition = m + parser.position\n }\n\n function clearBuffers (parser) {\n for (var i = 0, l = buffers.length; i < l; i++) {\n parser[buffers[i]] = ''\n }\n }\n\n function flushBuffers (parser) {\n closeText(parser)\n if (parser.cdata !== '') {\n emitNode(parser, 'oncdata', parser.cdata)\n parser.cdata = ''\n }\n if (parser.script !== '') {\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n }\n }\n\n SAXParser.prototype = {\n end: function () { end(this) },\n write: write,\n resume: function () { this.error = null; return this },\n close: function () { return this.write(null) },\n flush: function () { flushBuffers(this) }\n }\n\n var Stream\n try {\n Stream = require('stream').Stream\n } catch (ex) {\n Stream = function () {}\n }\n if (!Stream) Stream = function () {}\n\n var streamWraps = sax.EVENTS.filter(function (ev) {\n return ev !== 'error' && ev !== 'end'\n })\n\n function createStream (strict, opt) {\n return new SAXStream(strict, opt)\n }\n\n function SAXStream (strict, opt) {\n if (!(this instanceof SAXStream)) {\n return new SAXStream(strict, opt)\n }\n\n Stream.apply(this)\n\n this._parser = new SAXParser(strict, opt)\n this.writable = true\n this.readable = true\n\n var me = this\n\n this._parser.onend = function () {\n me.emit('end')\n }\n\n this._parser.onerror = function (er) {\n me.emit('error', er)\n\n // if didn't throw, then means error was handled.\n // go ahead and clear error, so we can write again.\n me._parser.error = null\n }\n\n this._decoder = null\n\n streamWraps.forEach(function (ev) {\n Object.defineProperty(me, 'on' + ev, {\n get: function () {\n return me._parser['on' + ev]\n },\n set: function (h) {\n if (!h) {\n me.removeAllListeners(ev)\n me._parser['on' + ev] = h\n return h\n }\n me.on(ev, h)\n },\n enumerable: true,\n configurable: false\n })\n })\n }\n\n SAXStream.prototype = Object.create(Stream.prototype, {\n constructor: {\n value: SAXStream\n }\n })\n\n SAXStream.prototype.write = function (data) {\n if (typeof Buffer === 'function' &&\n typeof Buffer.isBuffer === 'function' &&\n Buffer.isBuffer(data)) {\n if (!this._decoder) {\n var SD = require('string_decoder').StringDecoder\n this._decoder = new SD('utf8')\n }\n data = this._decoder.write(data)\n }\n\n this._parser.write(data.toString())\n this.emit('data', data)\n return true\n }\n\n SAXStream.prototype.end = function (chunk) {\n if (chunk && chunk.length) {\n this.write(chunk)\n }\n this._parser.end()\n return true\n }\n\n SAXStream.prototype.on = function (ev, handler) {\n var me = this\n if (!me._parser['on' + ev] && streamWraps.indexOf(ev) !== -1) {\n me._parser['on' + ev] = function () {\n var args = arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments)\n args.splice(0, 0, ev)\n me.emit.apply(me, args)\n }\n }\n\n return Stream.prototype.on.call(me, ev, handler)\n }\n\n // this really needs to be replaced with character classes.\n // XML allows all manner of ridiculous numbers and digits.\n var CDATA = '[CDATA['\n var DOCTYPE = 'DOCTYPE'\n var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'\n var XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/'\n var rootNS = { xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }\n\n // http://www.w3.org/TR/REC-xml/#NT-NameStartChar\n // This implementation works on strings, a single character at a time\n // as such, it cannot ever support astral-plane characters (10000-EFFFF)\n // without a significant breaking change to either this parser, or the\n // JavaScript language. Implementation of an emoji-capable xml parser\n // is left as an exercise for the reader.\n var nameStart = /[:_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]/\n\n var nameBody = /[:_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\\u00B7\\u0300-\\u036F\\u203F-\\u2040.\\d-]/\n\n var entityStart = /[#:_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]/\n var entityBody = /[#:_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\\u00B7\\u0300-\\u036F\\u203F-\\u2040.\\d-]/\n\n function isWhitespace (c) {\n return c === ' ' || c === '\\n' || c === '\\r' || c === '\\t'\n }\n\n function isQuote (c) {\n return c === '\"' || c === '\\''\n }\n\n function isAttribEnd (c) {\n return c === '>' || isWhitespace(c)\n }\n\n function isMatch (regex, c) {\n return regex.test(c)\n }\n\n function notMatch (regex, c) {\n return !isMatch(regex, c)\n }\n\n var S = 0\n sax.STATE = {\n BEGIN: S++, // leading byte order mark or whitespace\n BEGIN_WHITESPACE: S++, // leading whitespace\n TEXT: S++, // general stuff\n TEXT_ENTITY: S++, // &amp and such.\n OPEN_WAKA: S++, // <\n SGML_DECL: S++, // <!BLARG\n SGML_DECL_QUOTED: S++, // <!BLARG foo \"bar\n DOCTYPE: S++, // <!DOCTYPE\n DOCTYPE_QUOTED: S++, // <!DOCTYPE \"//blah\n DOCTYPE_DTD: S++, // <!DOCTYPE \"//blah\" [ ...\n DOCTYPE_DTD_QUOTED: S++, // <!DOCTYPE \"//blah\" [ \"foo\n COMMENT_STARTING: S++, // <!-\n COMMENT: S++, // <!--\n COMMENT_ENDING: S++, // <!-- blah -\n COMMENT_ENDED: S++, // <!-- blah --\n CDATA: S++, // <![CDATA[ something\n CDATA_ENDING: S++, // ]\n CDATA_ENDING_2: S++, // ]]\n PROC_INST: S++, // <?hi\n PROC_INST_BODY: S++, // <?hi there\n PROC_INST_ENDING: S++, // <?hi \"there\" ?\n OPEN_TAG: S++, // <strong\n OPEN_TAG_SLASH: S++, // <strong /\n ATTRIB: S++, // <a\n ATTRIB_NAME: S++, // <a foo\n ATTRIB_NAME_SAW_WHITE: S++, // <a foo _\n ATTRIB_VALUE: S++, // <a foo=\n ATTRIB_VALUE_QUOTED: S++, // <a foo=\"bar\n ATTRIB_VALUE_CLOSED: S++, // <a foo=\"bar\"\n ATTRIB_VALUE_UNQUOTED: S++, // <a foo=bar\n ATTRIB_VALUE_ENTITY_Q: S++, // <foo bar=\"&quot;\"\n ATTRIB_VALUE_ENTITY_U: S++, // <foo bar=&quot\n CLOSE_TAG: S++, // </a\n CLOSE_TAG_SAW_WHITE: S++, // </a >\n SCRIPT: S++, // <script> ...\n SCRIPT_ENDING: S++ // <script> ... <\n }\n\n sax.XML_ENTITIES = {\n 'amp': '&',\n 'gt': '>',\n 'lt': '<',\n 'quot': '\"',\n 'apos': \"'\"\n }\n\n sax.ENTITIES = {\n 'amp': '&',\n 'gt': '>',\n 'lt': '<',\n 'quot': '\"',\n 'apos': \"'\",\n 'AElig': 198,\n 'Aacute': 193,\n 'Acirc': 194,\n 'Agrave': 192,\n 'Aring': 197,\n 'Atilde': 195,\n 'Auml': 196,\n 'Ccedil': 199,\n 'ETH': 208,\n 'Eacute': 201,\n 'Ecirc': 202,\n 'Egrave': 200,\n 'Euml': 203,\n 'Iacute': 205,\n 'Icirc': 206,\n 'Igrave': 204,\n 'Iuml': 207,\n 'Ntilde': 209,\n 'Oacute': 211,\n 'Ocirc': 212,\n 'Ograve': 210,\n 'Oslash': 216,\n 'Otilde': 213,\n 'Ouml': 214,\n 'THORN': 222,\n 'Uacute': 218,\n 'Ucirc': 219,\n 'Ugrave': 217,\n 'Uuml': 220,\n 'Yacute': 221,\n 'aacute': 225,\n 'acirc': 226,\n 'aelig': 230,\n 'agrave': 224,\n 'aring': 229,\n 'atilde': 227,\n 'auml': 228,\n 'ccedil': 231,\n 'eacute': 233,\n 'ecirc': 234,\n 'egrave': 232,\n 'eth': 240,\n 'euml': 235,\n 'iacute': 237,\n 'icirc': 238,\n 'igrave': 236,\n 'iuml': 239,\n 'ntilde': 241,\n 'oacute': 243,\n 'ocirc': 244,\n 'ograve': 242,\n 'oslash': 248,\n 'otilde': 245,\n 'ouml': 246,\n 'szlig': 223,\n 'thorn': 254,\n 'uacute': 250,\n 'ucirc': 251,\n 'ugrave': 249,\n 'uuml': 252,\n 'yacute': 253,\n 'yuml': 255,\n 'copy': 169,\n 'reg': 174,\n 'nbsp': 160,\n 'iexcl': 161,\n 'cent': 162,\n 'pound': 163,\n 'curren': 164,\n 'yen': 165,\n 'brvbar': 166,\n 'sect': 167,\n 'uml': 168,\n 'ordf': 170,\n 'laquo': 171,\n 'not': 172,\n 'shy': 173,\n 'macr': 175,\n 'deg': 176,\n 'plusmn': 177,\n 'sup1': 185,\n 'sup2': 178,\n 'sup3': 179,\n 'acute': 180,\n 'micro': 181,\n 'para': 182,\n 'middot': 183,\n 'cedil': 184,\n 'ordm': 186,\n 'raquo': 187,\n 'frac14': 188,\n 'frac12': 189,\n 'frac34': 190,\n 'iquest': 191,\n 'times': 215,\n 'divide': 247,\n 'OElig': 338,\n 'oelig': 339,\n 'Scaron': 352,\n 'scaron': 353,\n 'Yuml': 376,\n 'fnof': 402,\n 'circ': 710,\n 'tilde': 732,\n 'Alpha': 913,\n 'Beta': 914,\n 'Gamma': 915,\n 'Delta': 916,\n 'Epsilon': 917,\n 'Zeta': 918,\n 'Eta': 919,\n 'Theta': 920,\n 'Iota': 921,\n 'Kappa': 922,\n 'Lambda': 923,\n 'Mu': 924,\n 'Nu': 925,\n 'Xi': 926,\n 'Omicron': 927,\n 'Pi': 928,\n 'Rho': 929,\n 'Sigma': 931,\n 'Tau': 932,\n 'Upsilon': 933,\n 'Phi': 934,\n 'Chi': 935,\n 'Psi': 936,\n 'Omega': 937,\n 'alpha': 945,\n 'beta': 946,\n 'gamma': 947,\n 'delta': 948,\n 'epsilon': 949,\n 'zeta': 950,\n 'eta': 951,\n 'theta': 952,\n 'iota': 953,\n 'kappa': 954,\n 'lambda': 955,\n 'mu': 956,\n 'nu': 957,\n 'xi': 958,\n 'omicron': 959,\n 'pi': 960,\n 'rho': 961,\n 'sigmaf': 962,\n 'sigma': 963,\n 'tau': 964,\n 'upsilon': 965,\n 'phi': 966,\n 'chi': 967,\n 'psi': 968,\n 'omega': 969,\n 'thetasym': 977,\n 'upsih': 978,\n 'piv': 982,\n 'ensp': 8194,\n 'emsp': 8195,\n 'thinsp': 8201,\n 'zwnj': 8204,\n 'zwj': 8205,\n 'lrm': 8206,\n 'rlm': 8207,\n 'ndash': 8211,\n 'mdash': 8212,\n 'lsquo': 8216,\n 'rsquo': 8217,\n 'sbquo': 8218,\n 'ldquo': 8220,\n 'rdquo': 8221,\n 'bdquo': 8222,\n 'dagger': 8224,\n 'Dagger': 8225,\n 'bull': 8226,\n 'hellip': 8230,\n 'permil': 8240,\n 'prime': 8242,\n 'Prime': 8243,\n 'lsaquo': 8249,\n 'rsaquo': 8250,\n 'oline': 8254,\n 'frasl': 8260,\n 'euro': 8364,\n 'image': 8465,\n 'weierp': 8472,\n 'real': 8476,\n 'trade': 8482,\n 'alefsym': 8501,\n 'larr': 8592,\n 'uarr': 8593,\n 'rarr': 8594,\n 'darr': 8595,\n 'harr': 8596,\n 'crarr': 8629,\n 'lArr': 8656,\n 'uArr': 8657,\n 'rArr': 8658,\n 'dArr': 8659,\n 'hArr': 8660,\n 'forall': 8704,\n 'part': 8706,\n 'exist': 8707,\n 'empty': 8709,\n 'nabla': 8711,\n 'isin': 8712,\n 'notin': 8713,\n 'ni': 8715,\n 'prod': 8719,\n 'sum': 8721,\n 'minus': 8722,\n 'lowast': 8727,\n 'radic': 8730,\n 'prop': 8733,\n 'infin': 8734,\n 'ang': 8736,\n 'and': 8743,\n 'or': 8744,\n 'cap': 8745,\n 'cup': 8746,\n 'int': 8747,\n 'there4': 8756,\n 'sim': 8764,\n 'cong': 8773,\n 'asymp': 8776,\n 'ne': 8800,\n 'equiv': 8801,\n 'le': 8804,\n 'ge': 8805,\n 'sub': 8834,\n 'sup': 8835,\n 'nsub': 8836,\n 'sube': 8838,\n 'supe': 8839,\n 'oplus': 8853,\n 'otimes': 8855,\n 'perp': 8869,\n 'sdot': 8901,\n 'lceil': 8968,\n 'rceil': 8969,\n 'lfloor': 8970,\n 'rfloor': 8971,\n 'lang': 9001,\n 'rang': 9002,\n 'loz': 9674,\n 'spades': 9824,\n 'clubs': 9827,\n 'hearts': 9829,\n 'diams': 9830\n }\n\n Object.keys(sax.ENTITIES).forEach(function (key) {\n var e = sax.ENTITIES[key]\n var s = typeof e === 'number' ? String.fromCharCode(e) : e\n sax.ENTITIES[key] = s\n })\n\n for (var s in sax.STATE) {\n sax.STATE[sax.STATE[s]] = s\n }\n\n // shorthand\n S = sax.STATE\n\n function emit (parser, event, data) {\n parser[event] && parser[event](data)\n }\n\n function emitNode (parser, nodeType, data) {\n if (parser.textNode) closeText(parser)\n emit(parser, nodeType, data)\n }\n\n function closeText (parser) {\n parser.textNode = textopts(parser.opt, parser.textNode)\n if (parser.textNode) emit(parser, 'ontext', parser.textNode)\n parser.textNode = ''\n }\n\n function textopts (opt, text) {\n if (opt.trim) text = text.trim()\n if (opt.normalize) text = text.replace(/\\s+/g, ' ')\n return text\n }\n\n function error (parser, er) {\n closeText(parser)\n if (parser.trackPosition) {\n er += '\\nLine: ' + parser.line +\n '\\nColumn: ' + parser.column +\n '\\nChar: ' + parser.c\n }\n er = new Error(er)\n parser.error = er\n emit(parser, 'onerror', er)\n return parser\n }\n\n function end (parser) {\n if (parser.sawRoot && !parser.closedRoot) strictFail(parser, 'Unclosed root tag')\n if ((parser.state !== S.BEGIN) &&\n (parser.state !== S.BEGIN_WHITESPACE) &&\n (parser.state !== S.TEXT)) {\n error(parser, 'Unexpected end')\n }\n closeText(parser)\n parser.c = ''\n parser.closed = true\n emit(parser, 'onend')\n SAXParser.call(parser, parser.strict, parser.opt)\n return parser\n }\n\n function strictFail (parser, message) {\n if (typeof parser !== 'object' || !(parser instanceof SAXParser)) {\n throw new Error('bad call to strictFail')\n }\n if (parser.strict) {\n error(parser, message)\n }\n }\n\n function newTag (parser) {\n if (!parser.strict) parser.tagName = parser.tagName[parser.looseCase]()\n var parent = parser.tags[parser.tags.length - 1] || parser\n var tag = parser.tag = { name: parser.tagName, attributes: {} }\n\n // will be overridden if tag contails an xmlns=\"foo\" or xmlns:foo=\"bar\"\n if (parser.opt.xmlns) {\n tag.ns = parent.ns\n }\n parser.attribList.length = 0\n emitNode(parser, 'onopentagstart', tag)\n }\n\n function qname (name, attribute) {\n var i = name.indexOf(':')\n var qualName = i < 0 ? [ '', name ] : name.split(':')\n var prefix = qualName[0]\n var local = qualName[1]\n\n // <x \"xmlns\"=\"http://foo\">\n if (attribute && name === 'xmlns') {\n prefix = 'xmlns'\n local = ''\n }\n\n return { prefix: prefix, local: local }\n }\n\n function attrib (parser) {\n if (!parser.strict) {\n parser.attribName = parser.attribName[parser.looseCase]()\n }\n\n if (parser.attribList.indexOf(parser.attribName) !== -1 ||\n parser.tag.attributes.hasOwnProperty(parser.attribName)) {\n parser.attribName = parser.attribValue = ''\n return\n }\n\n if (parser.opt.xmlns) {\n var qn = qname(parser.attribName, true)\n var prefix = qn.prefix\n var local = qn.local\n\n if (prefix === 'xmlns') {\n // namespace binding attribute. push the binding into scope\n if (local === 'xml' && parser.attribValue !== XML_NAMESPACE) {\n strictFail(parser,\n 'xml: prefix must be bound to ' + XML_NAMESPACE + '\\n' +\n 'Actual: ' + parser.attribValue)\n } else if (local === 'xmlns' && parser.attribValue !== XMLNS_NAMESPACE) {\n strictFail(parser,\n 'xmlns: prefix must be bound to ' + XMLNS_NAMESPACE + '\\n' +\n 'Actual: ' + parser.attribValue)\n } else {\n var tag = parser.tag\n var parent = parser.tags[parser.tags.length - 1] || parser\n if (tag.ns === parent.ns) {\n tag.ns = Object.create(parent.ns)\n }\n tag.ns[local] = parser.attribValue\n }\n }\n\n // defer onattribute events until all attributes have been seen\n // so any new bindings can take effect. preserve attribute order\n // so deferred events can be emitted in document order\n parser.attribList.push([parser.attribName, parser.attribValue])\n } else {\n // in non-xmlns mode, we can emit the event right away\n parser.tag.attributes[parser.attribName] = parser.attribValue\n emitNode(parser, 'onattribute', {\n name: parser.attribName,\n value: parser.attribValue\n })\n }\n\n parser.attribName = parser.attribValue = ''\n }\n\n function openTag (parser, selfClosing) {\n if (parser.opt.xmlns) {\n // emit namespace binding events\n var tag = parser.tag\n\n // add namespace info to tag\n var qn = qname(parser.tagName)\n tag.prefix = qn.prefix\n tag.local = qn.local\n tag.uri = tag.ns[qn.prefix] || ''\n\n if (tag.prefix && !tag.uri) {\n strictFail(parser, 'Unbound namespace prefix: ' +\n JSON.stringify(parser.tagName))\n tag.uri = qn.prefix\n }\n\n var parent = parser.tags[parser.tags.length - 1] || parser\n if (tag.ns && parent.ns !== tag.ns) {\n Object.keys(tag.ns).forEach(function (p) {\n emitNode(parser, 'onopennamespace', {\n prefix: p,\n uri: tag.ns[p]\n })\n })\n }\n\n // handle deferred onattribute events\n // Note: do not apply default ns to attributes:\n // http://www.w3.org/TR/REC-xml-names/#defaulting\n for (var i = 0, l = parser.attribList.length; i < l; i++) {\n var nv = parser.attribList[i]\n var name = nv[0]\n var value = nv[1]\n var qualName = qname(name, true)\n var prefix = qualName.prefix\n var local = qualName.local\n var uri = prefix === '' ? '' : (tag.ns[prefix] || '')\n var a = {\n name: name,\n value: value,\n prefix: prefix,\n local: local,\n uri: uri\n }\n\n // if there's any attributes with an undefined namespace,\n // then fail on them now.\n if (prefix && prefix !== 'xmlns' && !uri) {\n strictFail(parser, 'Unbound namespace prefix: ' +\n JSON.stringify(prefix))\n a.uri = prefix\n }\n parser.tag.attributes[name] = a\n emitNode(parser, 'onattribute', a)\n }\n parser.attribList.length = 0\n }\n\n parser.tag.isSelfClosing = !!selfClosing\n\n // process the tag\n parser.sawRoot = true\n parser.tags.push(parser.tag)\n emitNode(parser, 'onopentag', parser.tag)\n if (!selfClosing) {\n // special case for <script> in non-strict mode.\n if (!parser.noscript && parser.tagName.toLowerCase() === 'script') {\n parser.state = S.SCRIPT\n } else {\n parser.state = S.TEXT\n }\n parser.tag = null\n parser.tagName = ''\n }\n parser.attribName = parser.attribValue = ''\n parser.attribList.length = 0\n }\n\n function closeTag (parser) {\n if (!parser.tagName) {\n strictFail(parser, 'Weird empty close tag.')\n parser.textNode += '</>'\n parser.state = S.TEXT\n return\n }\n\n if (parser.script) {\n if (parser.tagName !== 'script') {\n parser.script += '</' + parser.tagName + '>'\n parser.tagName = ''\n parser.state = S.SCRIPT\n return\n }\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n }\n\n // first make sure that the closing tag actually exists.\n // <a><b></c></b></a> will close everything, otherwise.\n var t = parser.tags.length\n var tagName = parser.tagName\n if (!parser.strict) {\n tagName = tagName[parser.looseCase]()\n }\n var closeTo = tagName\n while (t--) {\n var close = parser.tags[t]\n if (close.name !== closeTo) {\n // fail the first time in strict mode\n strictFail(parser, 'Unexpected close tag')\n } else {\n break\n }\n }\n\n // didn't find it. we already failed for strict, so just abort.\n if (t < 0) {\n strictFail(parser, 'Unmatched closing tag: ' + parser.tagName)\n parser.textNode += '</' + parser.tagName + '>'\n parser.state = S.TEXT\n return\n }\n parser.tagName = tagName\n var s = parser.tags.length\n while (s-- > t) {\n var tag = parser.tag = parser.tags.pop()\n parser.tagName = parser.tag.name\n emitNode(parser, 'onclosetag', parser.tagName)\n\n var x = {}\n for (var i in tag.ns) {\n x[i] = tag.ns[i]\n }\n\n var parent = parser.tags[parser.tags.length - 1] || parser\n if (parser.opt.xmlns && tag.ns !== parent.ns) {\n // remove namespace bindings introduced by tag\n Object.keys(tag.ns).forEach(function (p) {\n var n = tag.ns[p]\n emitNode(parser, 'onclosenamespace', { prefix: p, uri: n })\n })\n }\n }\n if (t === 0) parser.closedRoot = true\n parser.tagName = parser.attribValue = parser.attribName = ''\n parser.attribList.length = 0\n parser.state = S.TEXT\n }\n\n function parseEntity (parser) {\n var entity = parser.entity\n var entityLC = entity.toLowerCase()\n var num\n var numStr = ''\n\n if (parser.ENTITIES[entity]) {\n return parser.ENTITIES[entity]\n }\n if (parser.ENTITIES[entityLC]) {\n return parser.ENTITIES[entityLC]\n }\n entity = entityLC\n if (entity.charAt(0) === '#') {\n if (entity.charAt(1) === 'x') {\n entity = entity.slice(2)\n num = parseInt(entity, 16)\n numStr = num.toString(16)\n } else {\n entity = entity.slice(1)\n num = parseInt(entity, 10)\n numStr = num.toString(10)\n }\n }\n entity = entity.replace(/^0+/, '')\n if (isNaN(num) || numStr.toLowerCase() !== entity) {\n strictFail(parser, 'Invalid character entity')\n return '&' + parser.entity + ';'\n }\n\n return String.fromCodePoint(num)\n }\n\n function beginWhiteSpace (parser, c) {\n if (c === '<') {\n parser.state = S.OPEN_WAKA\n parser.startTagPosition = parser.position\n } else if (!isWhitespace(c)) {\n // have to process this as a text node.\n // weird, but happens.\n strictFail(parser, 'Non-whitespace before first tag.')\n parser.textNode = c\n parser.state = S.TEXT\n }\n }\n\n function charAt (chunk, i) {\n var result = ''\n if (i < chunk.length) {\n result = chunk.charAt(i)\n }\n return result\n }\n\n function write (chunk) {\n var parser = this\n if (this.error) {\n throw this.error\n }\n if (parser.closed) {\n return error(parser,\n 'Cannot write after close. Assign an onready handler.')\n }\n if (chunk === null) {\n return end(parser)\n }\n if (typeof chunk === 'object') {\n chunk = chunk.toString()\n }\n var i = 0\n var c = ''\n while (true) {\n c = charAt(chunk, i++)\n parser.c = c\n\n if (!c) {\n break\n }\n\n if (parser.trackPosition) {\n parser.position++\n if (c === '\\n') {\n parser.line++\n parser.column = 0\n } else {\n parser.column++\n }\n }\n\n switch (parser.state) {\n case S.BEGIN:\n parser.state = S.BEGIN_WHITESPACE\n if (c === '\\uFEFF') {\n continue\n }\n beginWhiteSpace(parser, c)\n continue\n\n case S.BEGIN_WHITESPACE:\n beginWhiteSpace(parser, c)\n continue\n\n case S.TEXT:\n if (parser.sawRoot && !parser.closedRoot) {\n var starti = i - 1\n while (c && c !== '<' && c !== '&') {\n c = charAt(chunk, i++)\n if (c && parser.trackPosition) {\n parser.position++\n if (c === '\\n') {\n parser.line++\n parser.column = 0\n } else {\n parser.column++\n }\n }\n }\n parser.textNode += chunk.substring(starti, i - 1)\n }\n if (c === '<' && !(parser.sawRoot && parser.closedRoot && !parser.strict)) {\n parser.state = S.OPEN_WAKA\n parser.startTagPosition = parser.position\n } else {\n if (!isWhitespace(c) && (!parser.sawRoot || parser.closedRoot)) {\n strictFail(parser, 'Text data outside of root node.')\n }\n if (c === '&') {\n parser.state = S.TEXT_ENTITY\n } else {\n parser.textNode += c\n }\n }\n continue\n\n case S.SCRIPT:\n // only non-strict\n if (c === '<') {\n parser.state = S.SCRIPT_ENDING\n } else {\n parser.script += c\n }\n continue\n\n case S.SCRIPT_ENDING:\n if (c === '/') {\n parser.state = S.CLOSE_TAG\n } else {\n parser.script += '<' + c\n parser.state = S.SCRIPT\n }\n continue\n\n case S.OPEN_WAKA:\n // either a /, ?, !, or text is coming next.\n if (c === '!') {\n parser.state = S.SGML_DECL\n parser.sgmlDecl = ''\n } else if (isWhitespace(c)) {\n // wait for it...\n } else if (isMatch(nameStart, c)) {\n parser.state = S.OPEN_TAG\n parser.tagName = c\n } else if (c === '/') {\n parser.state = S.CLOSE_TAG\n parser.tagName = ''\n } else if (c === '?') {\n parser.state = S.PROC_INST\n parser.procInstName = parser.procInstBody = ''\n } else {\n strictFail(parser, 'Unencoded <')\n // if there was some whitespace, then add that in.\n if (parser.startTagPosition + 1 < parser.position) {\n var pad = parser.position - parser.startTagPosition\n c = new Array(pad).join(' ') + c\n }\n parser.textNode += '<' + c\n parser.state = S.TEXT\n }\n continue\n\n case S.SGML_DECL:\n if ((parser.sgmlDecl + c).toUpperCase() === CDATA) {\n emitNode(parser, 'onopencdata')\n parser.state = S.CDATA\n parser.sgmlDecl = ''\n parser.cdata = ''\n } else if (parser.sgmlDecl + c === '--') {\n parser.state = S.COMMENT\n parser.comment = ''\n parser.sgmlDecl = ''\n } else if ((parser.sgmlDecl + c).toUpperCase() === DOCTYPE) {\n parser.state = S.DOCTYPE\n if (parser.doctype || parser.sawRoot) {\n strictFail(parser,\n 'Inappropriately located doctype declaration')\n }\n parser.doctype = ''\n parser.sgmlDecl = ''\n } else if (c === '>') {\n emitNode(parser, 'onsgmldeclaration', parser.sgmlDecl)\n parser.sgmlDecl = ''\n parser.state = S.TEXT\n } else if (isQuote(c)) {\n parser.state = S.SGML_DECL_QUOTED\n parser.sgmlDecl += c\n } else {\n parser.sgmlDecl += c\n }\n continue\n\n case S.SGML_DECL_QUOTED:\n if (c === parser.q) {\n parser.state = S.SGML_DECL\n parser.q = ''\n }\n parser.sgmlDecl += c\n continue\n\n case S.DOCTYPE:\n if (c === '>') {\n parser.state = S.TEXT\n emitNode(parser, 'ondoctype', parser.doctype)\n parser.doctype = true // just remember that we saw it.\n } else {\n parser.doctype += c\n if (c === '[') {\n parser.state = S.DOCTYPE_DTD\n } else if (isQuote(c)) {\n parser.state = S.DOCTYPE_QUOTED\n parser.q = c\n }\n }\n continue\n\n case S.DOCTYPE_QUOTED:\n parser.doctype += c\n if (c === parser.q) {\n parser.q = ''\n parser.state = S.DOCTYPE\n }\n continue\n\n case S.DOCTYPE_DTD:\n parser.doctype += c\n if (c === ']') {\n parser.state = S.DOCTYPE\n } else if (isQuote(c)) {\n parser.state = S.DOCTYPE_DTD_QUOTED\n parser.q = c\n }\n continue\n\n case S.DOCTYPE_DTD_QUOTED:\n parser.doctype += c\n if (c === parser.q) {\n parser.state = S.DOCTYPE_DTD\n parser.q = ''\n }\n continue\n\n case S.COMMENT:\n if (c === '-') {\n parser.state = S.COMMENT_ENDING\n } else {\n parser.comment += c\n }\n continue\n\n case S.COMMENT_ENDING:\n if (c === '-') {\n parser.state = S.COMMENT_ENDED\n parser.comment = textopts(parser.opt, parser.comment)\n if (parser.comment) {\n emitNode(parser, 'oncomment', parser.comment)\n }\n parser.comment = ''\n } else {\n parser.comment += '-' + c\n parser.state = S.COMMENT\n }\n continue\n\n case S.COMMENT_ENDED:\n if (c !== '>') {\n strictFail(parser, 'Malformed comment')\n // allow <!-- blah -- bloo --> in non-strict mode,\n // which is a comment of \" blah -- bloo \"\n parser.comment += '--' + c\n parser.state = S.COMMENT\n } else {\n parser.state = S.TEXT\n }\n continue\n\n case S.CDATA:\n if (c === ']') {\n parser.state = S.CDATA_ENDING\n } else {\n parser.cdata += c\n }\n continue\n\n case S.CDATA_ENDING:\n if (c === ']') {\n parser.state = S.CDATA_ENDING_2\n } else {\n parser.cdata += ']' + c\n parser.state = S.CDATA\n }\n continue\n\n case S.CDATA_ENDING_2:\n if (c === '>') {\n if (parser.cdata) {\n emitNode(parser, 'oncdata', parser.cdata)\n }\n emitNode(parser, 'onclosecdata')\n parser.cdata = ''\n parser.state = S.TEXT\n } else if (c === ']') {\n parser.cdata += ']'\n } else {\n parser.cdata += ']]' + c\n parser.state = S.CDATA\n }\n continue\n\n case S.PROC_INST:\n if (c === '?') {\n parser.state = S.PROC_INST_ENDING\n } else if (isWhitespace(c)) {\n parser.state = S.PROC_INST_BODY\n } else {\n parser.procInstName += c\n }\n continue\n\n case S.PROC_INST_BODY:\n if (!parser.procInstBody && isWhitespace(c)) {\n continue\n } else if (c === '?') {\n parser.state = S.PROC_INST_ENDING\n } else {\n parser.procInstBody += c\n }\n continue\n\n case S.PROC_INST_ENDING:\n if (c === '>') {\n emitNode(parser, 'onprocessinginstruction', {\n name: parser.procInstName,\n body: parser.procInstBody\n })\n parser.procInstName = parser.procInstBody = ''\n parser.state = S.TEXT\n } else {\n parser.procInstBody += '?' + c\n parser.state = S.PROC_INST_BODY\n }\n continue\n\n case S.OPEN_TAG:\n if (isMatch(nameBody, c)) {\n parser.tagName += c\n } else {\n newTag(parser)\n if (c === '>') {\n openTag(parser)\n } else if (c === '/') {\n parser.state = S.OPEN_TAG_SLASH\n } else {\n if (!isWhitespace(c)) {\n strictFail(parser, 'Invalid character in tag name')\n }\n parser.state = S.ATTRIB\n }\n }\n continue\n\n case S.OPEN_TAG_SLASH:\n if (c === '>') {\n openTag(parser, true)\n closeTag(parser)\n } else {\n strictFail(parser, 'Forward-slash in opening tag not followed by >')\n parser.state = S.ATTRIB\n }\n continue\n\n case S.ATTRIB:\n // haven't read the attribute name yet.\n if (isWhitespace(c)) {\n continue\n } else if (c === '>') {\n openTag(parser)\n } else if (c === '/') {\n parser.state = S.OPEN_TAG_SLASH\n } else if (isMatch(nameStart, c)) {\n parser.attribName = c\n parser.attribValue = ''\n parser.state = S.ATTRIB_NAME\n } else {\n strictFail(parser, 'Invalid attribute name')\n }\n continue\n\n case S.ATTRIB_NAME:\n if (c === '=') {\n parser.state = S.ATTRIB_VALUE\n } else if (c === '>') {\n strictFail(parser, 'Attribute without value')\n parser.attribValue = parser.attribName\n attrib(parser)\n openTag(parser)\n } else if (isWhitespace(c)) {\n parser.state = S.ATTRIB_NAME_SAW_WHITE\n } else if (isMatch(nameBody, c)) {\n parser.attribName += c\n } else {\n strictFail(parser, 'Invalid attribute name')\n }\n continue\n\n case S.ATTRIB_NAME_SAW_WHITE:\n if (c === '=') {\n parser.state = S.ATTRIB_VALUE\n } else if (isWhitespace(c)) {\n continue\n } else {\n strictFail(parser, 'Attribute without value')\n parser.tag.attributes[parser.attribName] = ''\n parser.attribValue = ''\n emitNode(parser, 'onattribute', {\n name: parser.attribName,\n value: ''\n })\n parser.attribName = ''\n if (c === '>') {\n openTag(parser)\n } else if (isMatch(nameStart, c)) {\n parser.attribName = c\n parser.state = S.ATTRIB_NAME\n } else {\n strictFail(parser, 'Invalid attribute name')\n parser.state = S.ATTRIB\n }\n }\n continue\n\n case S.ATTRIB_VALUE:\n if (isWhitespace(c)) {\n continue\n } else if (isQuote(c)) {\n parser.q = c\n parser.state = S.ATTRIB_VALUE_QUOTED\n } else {\n strictFail(parser, 'Unquoted attribute value')\n parser.state = S.ATTRIB_VALUE_UNQUOTED\n parser.attribValue = c\n }\n continue\n\n case S.ATTRIB_VALUE_QUOTED:\n if (c !== parser.q) {\n if (c === '&') {\n parser.state = S.ATTRIB_VALUE_ENTITY_Q\n } else {\n parser.attribValue += c\n }\n continue\n }\n attrib(parser)\n parser.q = ''\n parser.state = S.ATTRIB_VALUE_CLOSED\n continue\n\n case S.ATTRIB_VALUE_CLOSED:\n if (isWhitespace(c)) {\n parser.state = S.ATTRIB\n } else if (c === '>') {\n openTag(parser)\n } else if (c === '/') {\n parser.state = S.OPEN_TAG_SLASH\n } else if (isMatch(nameStart, c)) {\n strictFail(parser, 'No whitespace between attributes')\n parser.attribName = c\n parser.attribValue = ''\n parser.state = S.ATTRIB_NAME\n } else {\n strictFail(parser, 'Invalid attribute name')\n }\n continue\n\n case S.ATTRIB_VALUE_UNQUOTED:\n if (!isAttribEnd(c)) {\n if (c === '&') {\n parser.state = S.ATTRIB_VALUE_ENTITY_U\n } else {\n parser.attribValue += c\n }\n continue\n }\n attrib(parser)\n if (c === '>') {\n openTag(parser)\n } else {\n parser.state = S.ATTRIB\n }\n continue\n\n case S.CLOSE_TAG:\n if (!parser.tagName) {\n if (isWhitespace(c)) {\n continue\n } else if (notMatch(nameStart, c)) {\n if (parser.script) {\n parser.script += '</' + c\n parser.state = S.SCRIPT\n } else {\n strictFail(parser, 'Invalid tagname in closing tag.')\n }\n } else {\n parser.tagName = c\n }\n } else if (c === '>') {\n closeTag(parser)\n } else if (isMatch(nameBody, c)) {\n parser.tagName += c\n } else if (parser.script) {\n parser.script += '</' + parser.tagName\n parser.tagName = ''\n parser.state = S.SCRIPT\n } else {\n if (!isWhitespace(c)) {\n strictFail(parser, 'Invalid tagname in closing tag')\n }\n parser.state = S.CLOSE_TAG_SAW_WHITE\n }\n continue\n\n case S.CLOSE_TAG_SAW_WHITE:\n if (isWhitespace(c)) {\n continue\n }\n if (c === '>') {\n closeTag(parser)\n } else {\n strictFail(parser, 'Invalid characters in closing tag')\n }\n continue\n\n case S.TEXT_ENTITY:\n case S.ATTRIB_VALUE_ENTITY_Q:\n case S.ATTRIB_VALUE_ENTITY_U:\n var returnState\n var buffer\n switch (parser.state) {\n case S.TEXT_ENTITY:\n returnState = S.TEXT\n buffer = 'textNode'\n break\n\n case S.ATTRIB_VALUE_ENTITY_Q:\n returnState = S.ATTRIB_VALUE_QUOTED\n buffer = 'attribValue'\n break\n\n case S.ATTRIB_VALUE_ENTITY_U:\n returnState = S.ATTRIB_VALUE_UNQUOTED\n buffer = 'attribValue'\n break\n }\n\n if (c === ';') {\n if (parser.opt.unparsedEntities) {\n var parsedEntity = parseEntity(parser)\n parser.entity = ''\n parser.state = returnState\n parser.write(parsedEntity)\n } else {\n parser[buffer] += parseEntity(parser)\n parser.entity = ''\n parser.state = returnState\n }\n } else if (isMatch(parser.entity.length ? entityBody : entityStart, c)) {\n parser.entity += c\n } else {\n strictFail(parser, 'Invalid character in entity name')\n parser[buffer] += '&' + parser.entity + c\n parser.entity = ''\n parser.state = returnState\n }\n\n continue\n\n default: /* istanbul ignore next */ {\n throw new Error(parser, 'Unknown state: ' + parser.state)\n }\n }\n } // while\n\n if (parser.position >= parser.bufferCheckPosition) {\n checkBufferLength(parser)\n }\n return parser\n }\n\n /*! http://mths.be/fromcodepoint v0.1.0 by @mathias */\n /* istanbul ignore next */\n if (!String.fromCodePoint) {\n (function () {\n var stringFromCharCode = String.fromCharCode\n var floor = Math.floor\n var fromCodePoint = function () {\n var MAX_SIZE = 0x4000\n var codeUnits = []\n var highSurrogate\n var lowSurrogate\n var index = -1\n var length = arguments.length\n if (!length) {\n return ''\n }\n var result = ''\n while (++index < length) {\n var codePoint = Number(arguments[index])\n if (\n !isFinite(codePoint) || // `NaN`, `+Infinity`, or `-Infinity`\n codePoint < 0 || // not a valid Unicode code point\n codePoint > 0x10FFFF || // not a valid Unicode code point\n floor(codePoint) !== codePoint // not an integer\n ) {\n throw RangeError('Invalid code point: ' + codePoint)\n }\n if (codePoint <= 0xFFFF) { // BMP code point\n codeUnits.push(codePoint)\n } else { // Astral code point; split in surrogate halves\n // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n codePoint -= 0x10000\n highSurrogate = (codePoint >> 10) + 0xD800\n lowSurrogate = (codePoint % 0x400) + 0xDC00\n codeUnits.push(highSurrogate, lowSurrogate)\n }\n if (index + 1 === length || codeUnits.length > MAX_SIZE) {\n result += stringFromCharCode.apply(null, codeUnits)\n codeUnits.length = 0\n }\n }\n return result\n }\n /* istanbul ignore next */\n if (Object.defineProperty) {\n Object.defineProperty(String, 'fromCodePoint', {\n value: fromCodePoint,\n configurable: true,\n writable: true\n })\n } else {\n String.fromCodePoint = fromCodePoint\n }\n }())\n }\n})(typeof exports === 'undefined' ? this.sax = {} : exports)\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: <T>*/(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n exports.stripBOM = function(str) {\n if (str[0] === '\\uFEFF') {\n return str.substring(1);\n } else {\n return str;\n }\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var builder, defaults, escapeCDATA, requiresCDATA, wrapCDATA,\n hasProp = {}.hasOwnProperty;\n\n builder = require('xmlbuilder');\n\n defaults = require('./defaults').defaults;\n\n requiresCDATA = function(entry) {\n return typeof entry === \"string\" && (entry.indexOf('&') >= 0 || entry.indexOf('>') >= 0 || entry.indexOf('<') >= 0);\n };\n\n wrapCDATA = function(entry) {\n return \"<![CDATA[\" + (escapeCDATA(entry)) + \"]]>\";\n };\n\n escapeCDATA = function(entry) {\n return entry.replace(']]>', ']]]]><![CDATA[>');\n };\n\n exports.Builder = (function() {\n function Builder(opts) {\n var key, ref, value;\n this.options = {};\n ref = defaults[\"0.2\"];\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this.options[key] = value;\n }\n for (key in opts) {\n if (!hasProp.call(opts, key)) continue;\n value = opts[key];\n this.options[key] = value;\n }\n }\n\n Builder.prototype.buildObject = function(rootObj) {\n var attrkey, charkey, render, rootElement, rootName;\n attrkey = this.options.attrkey;\n charkey = this.options.charkey;\n if ((Object.keys(rootObj).length === 1) && (this.options.rootName === defaults['0.2'].rootName)) {\n rootName = Object.keys(rootObj)[0];\n rootObj = rootObj[rootName];\n } else {\n rootName = this.options.rootName;\n }\n render = (function(_this) {\n return function(element, obj) {\n var attr, child, entry, index, key, value;\n if (typeof obj !== 'object') {\n if (_this.options.cdata && requiresCDATA(obj)) {\n element.raw(wrapCDATA(obj));\n } else {\n element.txt(obj);\n }\n } else if (Array.isArray(obj)) {\n for (index in obj) {\n if (!hasProp.call(obj, index)) continue;\n child = obj[index];\n for (key in child) {\n entry = child[key];\n element = render(element.ele(key), entry).up();\n }\n }\n } else {\n for (key in obj) {\n if (!hasProp.call(obj, key)) continue;\n child = obj[key];\n if (key === attrkey) {\n if (typeof child === \"object\") {\n for (attr in child) {\n value = child[attr];\n element = element.att(attr, value);\n }\n }\n } else if (key === charkey) {\n if (_this.options.cdata && requiresCDATA(child)) {\n element = element.raw(wrapCDATA(child));\n } else {\n element = element.txt(child);\n }\n } else if (Array.isArray(child)) {\n for (index in child) {\n if (!hasProp.call(child, index)) continue;\n entry = child[index];\n if (typeof entry === 'string') {\n if (_this.options.cdata && requiresCDATA(entry)) {\n element = element.ele(key).raw(wrapCDATA(entry)).up();\n } else {\n element = element.ele(key, entry).up();\n }\n } else {\n element = render(element.ele(key), entry).up();\n }\n }\n } else if (typeof child === \"object\") {\n element = render(element.ele(key), child).up();\n } else {\n if (typeof child === 'string' && _this.options.cdata && requiresCDATA(child)) {\n element = element.ele(key).raw(wrapCDATA(child)).up();\n } else {\n if (child == null) {\n child = '';\n }\n element = element.ele(key, child.toString()).up();\n }\n }\n }\n }\n return element;\n };\n })(this);\n rootElement = builder.create(rootName, this.options.xmldec, this.options.doctype, {\n headless: this.options.headless,\n allowSurrogateChars: this.options.allowSurrogateChars\n });\n return render(rootElement, rootObj).end(this.options.renderOpts);\n };\n\n return Builder;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n exports.defaults = {\n \"0.1\": {\n explicitCharkey: false,\n trim: true,\n normalize: true,\n normalizeTags: false,\n attrkey: \"@\",\n charkey: \"#\",\n explicitArray: false,\n ignoreAttrs: false,\n mergeAttrs: false,\n explicitRoot: false,\n validator: null,\n xmlns: false,\n explicitChildren: false,\n childkey: '@@',\n charsAsChildren: false,\n includeWhiteChars: false,\n async: false,\n strict: true,\n attrNameProcessors: null,\n attrValueProcessors: null,\n tagNameProcessors: null,\n valueProcessors: null,\n emptyTag: ''\n },\n \"0.2\": {\n explicitCharkey: false,\n trim: false,\n normalize: false,\n normalizeTags: false,\n attrkey: \"$\",\n charkey: \"_\",\n explicitArray: true,\n ignoreAttrs: false,\n mergeAttrs: false,\n explicitRoot: true,\n validator: null,\n xmlns: false,\n explicitChildren: false,\n preserveChildrenOrder: false,\n childkey: '$$',\n charsAsChildren: false,\n includeWhiteChars: false,\n async: false,\n strict: true,\n attrNameProcessors: null,\n attrValueProcessors: null,\n tagNameProcessors: null,\n valueProcessors: null,\n rootName: 'root',\n xmldec: {\n 'version': '1.0',\n 'encoding': 'UTF-8',\n 'standalone': true\n },\n doctype: null,\n renderOpts: {\n 'pretty': true,\n 'indent': ' ',\n 'newline': '\\n'\n },\n headless: false,\n chunkSize: 10000,\n emptyTag: '',\n cdata: false\n }\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var bom, defaults, defineProperty, events, isEmpty, processItem, processors, sax, setImmediate,\n bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n sax = require('sax');\n\n events = require('events');\n\n bom = require('./bom');\n\n processors = require('./processors');\n\n setImmediate = require('timers').setImmediate;\n\n defaults = require('./defaults').defaults;\n\n isEmpty = function(thing) {\n return typeof thing === \"object\" && (thing != null) && Object.keys(thing).length === 0;\n };\n\n processItem = function(processors, item, key) {\n var i, len, process;\n for (i = 0, len = processors.length; i < len; i++) {\n process = processors[i];\n item = process(item, key);\n }\n return item;\n };\n\n defineProperty = function(obj, key, value) {\n var descriptor;\n descriptor = Object.create(null);\n descriptor.value = value;\n descriptor.writable = true;\n descriptor.enumerable = true;\n descriptor.configurable = true;\n return Object.defineProperty(obj, key, descriptor);\n };\n\n exports.Parser = (function(superClass) {\n extend(Parser, superClass);\n\n function Parser(opts) {\n this.parseStringPromise = bind(this.parseStringPromise, this);\n this.parseString = bind(this.parseString, this);\n this.reset = bind(this.reset, this);\n this.assignOrPush = bind(this.assignOrPush, this);\n this.processAsync = bind(this.processAsync, this);\n var key, ref, value;\n if (!(this instanceof exports.Parser)) {\n return new exports.Parser(opts);\n }\n this.options = {};\n ref = defaults[\"0.2\"];\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this.options[key] = value;\n }\n for (key in opts) {\n if (!hasProp.call(opts, key)) continue;\n value = opts[key];\n this.options[key] = value;\n }\n if (this.options.xmlns) {\n this.options.xmlnskey = this.options.attrkey + \"ns\";\n }\n if (this.options.normalizeTags) {\n if (!this.options.tagNameProcessors) {\n this.options.tagNameProcessors = [];\n }\n this.options.tagNameProcessors.unshift(processors.normalize);\n }\n this.reset();\n }\n\n Parser.prototype.processAsync = function() {\n var chunk, err;\n try {\n if (this.remaining.length <= this.options.chunkSize) {\n chunk = this.remaining;\n this.remaining = '';\n this.saxParser = this.saxParser.write(chunk);\n return this.saxParser.close();\n } else {\n chunk = this.remaining.substr(0, this.options.chunkSize);\n this.remaining = this.remaining.substr(this.options.chunkSize, this.remaining.length);\n this.saxParser = this.saxParser.write(chunk);\n return setImmediate(this.processAsync);\n }\n } catch (error1) {\n err = error1;\n if (!this.saxParser.errThrown) {\n this.saxParser.errThrown = true;\n return this.emit(err);\n }\n }\n };\n\n Parser.prototype.assignOrPush = function(obj, key, newValue) {\n if (!(key in obj)) {\n if (!this.options.explicitArray) {\n return defineProperty(obj, key, newValue);\n } else {\n return defineProperty(obj, key, [newValue]);\n }\n } else {\n if (!(obj[key] instanceof Array)) {\n defineProperty(obj, key, [obj[key]]);\n }\n return obj[key].push(newValue);\n }\n };\n\n Parser.prototype.reset = function() {\n var attrkey, charkey, ontext, stack;\n this.removeAllListeners();\n this.saxParser = sax.parser(this.options.strict, {\n trim: false,\n normalize: false,\n xmlns: this.options.xmlns\n });\n this.saxParser.errThrown = false;\n this.saxParser.onerror = (function(_this) {\n return function(error) {\n _this.saxParser.resume();\n if (!_this.saxParser.errThrown) {\n _this.saxParser.errThrown = true;\n return _this.emit(\"error\", error);\n }\n };\n })(this);\n this.saxParser.onend = (function(_this) {\n return function() {\n if (!_this.saxParser.ended) {\n _this.saxParser.ended = true;\n return _this.emit(\"end\", _this.resultObject);\n }\n };\n })(this);\n this.saxParser.ended = false;\n this.EXPLICIT_CHARKEY = this.options.explicitCharkey;\n this.resultObject = null;\n stack = [];\n attrkey = this.options.attrkey;\n charkey = this.options.charkey;\n this.saxParser.onopentag = (function(_this) {\n return function(node) {\n var key, newValue, obj, processedKey, ref;\n obj = {};\n obj[charkey] = \"\";\n if (!_this.options.ignoreAttrs) {\n ref = node.attributes;\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n if (!(attrkey in obj) && !_this.options.mergeAttrs) {\n obj[attrkey] = {};\n }\n newValue = _this.options.attrValueProcessors ? processItem(_this.options.attrValueProcessors, node.attributes[key], key) : node.attributes[key];\n processedKey = _this.options.attrNameProcessors ? processItem(_this.options.attrNameProcessors, key) : key;\n if (_this.options.mergeAttrs) {\n _this.assignOrPush(obj, processedKey, newValue);\n } else {\n defineProperty(obj[attrkey], processedKey, newValue);\n }\n }\n }\n obj[\"#name\"] = _this.options.tagNameProcessors ? processItem(_this.options.tagNameProcessors, node.name) : node.name;\n if (_this.options.xmlns) {\n obj[_this.options.xmlnskey] = {\n uri: node.uri,\n local: node.local\n };\n }\n return stack.push(obj);\n };\n })(this);\n this.saxParser.onclosetag = (function(_this) {\n return function() {\n var cdata, emptyStr, key, node, nodeName, obj, objClone, old, s, xpath;\n obj = stack.pop();\n nodeName = obj[\"#name\"];\n if (!_this.options.explicitChildren || !_this.options.preserveChildrenOrder) {\n delete obj[\"#name\"];\n }\n if (obj.cdata === true) {\n cdata = obj.cdata;\n delete obj.cdata;\n }\n s = stack[stack.length - 1];\n if (obj[charkey].match(/^\\s*$/) && !cdata) {\n emptyStr = obj[charkey];\n delete obj[charkey];\n } else {\n if (_this.options.trim) {\n obj[charkey] = obj[charkey].trim();\n }\n if (_this.options.normalize) {\n obj[charkey] = obj[charkey].replace(/\\s{2,}/g, \" \").trim();\n }\n obj[charkey] = _this.options.valueProcessors ? processItem(_this.options.valueProcessors, obj[charkey], nodeName) : obj[charkey];\n if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {\n obj = obj[charkey];\n }\n }\n if (isEmpty(obj)) {\n if (typeof _this.options.emptyTag === 'function') {\n obj = _this.options.emptyTag();\n } else {\n obj = _this.options.emptyTag !== '' ? _this.options.emptyTag : emptyStr;\n }\n }\n if (_this.options.validator != null) {\n xpath = \"/\" + ((function() {\n var i, len, results;\n results = [];\n for (i = 0, len = stack.length; i < len; i++) {\n node = stack[i];\n results.push(node[\"#name\"]);\n }\n return results;\n })()).concat(nodeName).join(\"/\");\n (function() {\n var err;\n try {\n return obj = _this.options.validator(xpath, s && s[nodeName], obj);\n } catch (error1) {\n err = error1;\n return _this.emit(\"error\", err);\n }\n })();\n }\n if (_this.options.explicitChildren && !_this.options.mergeAttrs && typeof obj === 'object') {\n if (!_this.options.preserveChildrenOrder) {\n node = {};\n if (_this.options.attrkey in obj) {\n node[_this.options.attrkey] = obj[_this.options.attrkey];\n delete obj[_this.options.attrkey];\n }\n if (!_this.options.charsAsChildren && _this.options.charkey in obj) {\n node[_this.options.charkey] = obj[_this.options.charkey];\n delete obj[_this.options.charkey];\n }\n if (Object.getOwnPropertyNames(obj).length > 0) {\n node[_this.options.childkey] = obj;\n }\n obj = node;\n } else if (s) {\n s[_this.options.childkey] = s[_this.options.childkey] || [];\n objClone = {};\n for (key in obj) {\n if (!hasProp.call(obj, key)) continue;\n defineProperty(objClone, key, obj[key]);\n }\n s[_this.options.childkey].push(objClone);\n delete obj[\"#name\"];\n if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {\n obj = obj[charkey];\n }\n }\n }\n if (stack.length > 0) {\n return _this.assignOrPush(s, nodeName, obj);\n } else {\n if (_this.options.explicitRoot) {\n old = obj;\n obj = {};\n defineProperty(obj, nodeName, old);\n }\n _this.resultObject = obj;\n _this.saxParser.ended = true;\n return _this.emit(\"end\", _this.resultObject);\n }\n };\n })(this);\n ontext = (function(_this) {\n return function(text) {\n var charChild, s;\n s = stack[stack.length - 1];\n if (s) {\n s[charkey] += text;\n if (_this.options.explicitChildren && _this.options.preserveChildrenOrder && _this.options.charsAsChildren && (_this.options.includeWhiteChars || text.replace(/\\\\n/g, '').trim() !== '')) {\n s[_this.options.childkey] = s[_this.options.childkey] || [];\n charChild = {\n '#name': '__text__'\n };\n charChild[charkey] = text;\n if (_this.options.normalize) {\n charChild[charkey] = charChild[charkey].replace(/\\s{2,}/g, \" \").trim();\n }\n s[_this.options.childkey].push(charChild);\n }\n return s;\n }\n };\n })(this);\n this.saxParser.ontext = ontext;\n return this.saxParser.oncdata = (function(_this) {\n return function(text) {\n var s;\n s = ontext(text);\n if (s) {\n return s.cdata = true;\n }\n };\n })(this);\n };\n\n Parser.prototype.parseString = function(str, cb) {\n var err;\n if ((cb != null) && typeof cb === \"function\") {\n this.on(\"end\", function(result) {\n this.reset();\n return cb(null, result);\n });\n this.on(\"error\", function(err) {\n this.reset();\n return cb(err);\n });\n }\n try {\n str = str.toString();\n if (str.trim() === '') {\n this.emit(\"end\", null);\n return true;\n }\n str = bom.stripBOM(str);\n if (this.options.async) {\n this.remaining = str;\n setImmediate(this.processAsync);\n return this.saxParser;\n }\n return this.saxParser.write(str).close();\n } catch (error1) {\n err = error1;\n if (!(this.saxParser.errThrown || this.saxParser.ended)) {\n this.emit('error', err);\n return this.saxParser.errThrown = true;\n } else if (this.saxParser.ended) {\n throw err;\n }\n }\n };\n\n Parser.prototype.parseStringPromise = function(str) {\n return new Promise((function(_this) {\n return function(resolve, reject) {\n return _this.parseString(str, function(err, value) {\n if (err) {\n return reject(err);\n } else {\n return resolve(value);\n }\n });\n };\n })(this));\n };\n\n return Parser;\n\n })(events);\n\n exports.parseString = function(str, a, b) {\n var cb, options, parser;\n if (b != null) {\n if (typeof b === 'function') {\n cb = b;\n }\n if (typeof a === 'object') {\n options = a;\n }\n } else {\n if (typeof a === 'function') {\n cb = a;\n }\n options = {};\n }\n parser = new exports.Parser(options);\n return parser.parseString(str, cb);\n };\n\n exports.parseStringPromise = function(str, a) {\n var options, parser;\n if (typeof a === 'object') {\n options = a;\n }\n parser = new exports.Parser(options);\n return parser.parseStringPromise(str);\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var prefixMatch;\n\n prefixMatch = new RegExp(/(?!xmlns)^.*:/);\n\n exports.normalize = function(str) {\n return str.toLowerCase();\n };\n\n exports.firstCharLowerCase = function(str) {\n return str.charAt(0).toLowerCase() + str.slice(1);\n };\n\n exports.stripPrefix = function(str) {\n return str.replace(prefixMatch, '');\n };\n\n exports.parseNumbers = function(str) {\n if (!isNaN(str)) {\n str = str % 1 === 0 ? parseInt(str, 10) : parseFloat(str);\n }\n return str;\n };\n\n exports.parseBooleans = function(str) {\n if (/^(?:true|false)$/i.test(str)) {\n str = str.toLowerCase() === 'true';\n }\n return str;\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var builder, defaults, parser, processors,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n defaults = require('./defaults');\n\n builder = require('./builder');\n\n parser = require('./parser');\n\n processors = require('./processors');\n\n exports.defaults = defaults.defaults;\n\n exports.processors = processors;\n\n exports.ValidationError = (function(superClass) {\n extend(ValidationError, superClass);\n\n function ValidationError(message) {\n this.message = message;\n }\n\n return ValidationError;\n\n })(Error);\n\n exports.Builder = builder.Builder;\n\n exports.Parser = parser.Parser;\n\n exports.parseString = parser.parseString;\n\n exports.parseStringPromise = parser.parseStringPromise;\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n Disconnected: 1,\n Preceding: 2,\n Following: 4,\n Contains: 8,\n ContainedBy: 16,\n ImplementationSpecific: 32\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n Element: 1,\n Attribute: 2,\n Text: 3,\n CData: 4,\n EntityReference: 5,\n EntityDeclaration: 6,\n ProcessingInstruction: 7,\n Comment: 8,\n Document: 9,\n DocType: 10,\n DocumentFragment: 11,\n NotationDeclaration: 12,\n Declaration: 201,\n Raw: 202,\n AttributeDeclaration: 203,\n ElementDeclaration: 204,\n Dummy: 205\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var assign, getValue, isArray, isEmpty, isFunction, isObject, isPlainObject,\n slice = [].slice,\n hasProp = {}.hasOwnProperty;\n\n assign = function() {\n var i, key, len, source, sources, target;\n target = arguments[0], sources = 2 <= arguments.length ? slice.call(arguments, 1) : [];\n if (isFunction(Object.assign)) {\n Object.assign.apply(null, arguments);\n } else {\n for (i = 0, len = sources.length; i < len; i++) {\n source = sources[i];\n if (source != null) {\n for (key in source) {\n if (!hasProp.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n }\n }\n return target;\n };\n\n isFunction = function(val) {\n return !!val && Object.prototype.toString.call(val) === '[object Function]';\n };\n\n isObject = function(val) {\n var ref;\n return !!val && ((ref = typeof val) === 'function' || ref === 'object');\n };\n\n isArray = function(val) {\n if (isFunction(Array.isArray)) {\n return Array.isArray(val);\n } else {\n return Object.prototype.toString.call(val) === '[object Array]';\n }\n };\n\n isEmpty = function(val) {\n var key;\n if (isArray(val)) {\n return !val.length;\n } else {\n for (key in val) {\n if (!hasProp.call(val, key)) continue;\n return false;\n }\n return true;\n }\n };\n\n isPlainObject = function(val) {\n var ctor, proto;\n return isObject(val) && (proto = Object.getPrototypeOf(val)) && (ctor = proto.constructor) && (typeof ctor === 'function') && (ctor instanceof ctor) && (Function.prototype.toString.call(ctor) === Function.prototype.toString.call(Object));\n };\n\n getValue = function(obj) {\n if (isFunction(obj.valueOf)) {\n return obj.valueOf();\n } else {\n return obj;\n }\n };\n\n module.exports.assign = assign;\n\n module.exports.isFunction = isFunction;\n\n module.exports.isObject = isObject;\n\n module.exports.isArray = isArray;\n\n module.exports.isEmpty = isEmpty;\n\n module.exports.isPlainObject = isPlainObject;\n\n module.exports.getValue = getValue;\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n None: 0,\n OpenTag: 1,\n InsideTag: 2,\n CloseTag: 3\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLAttribute, XMLNode;\n\n NodeType = require('./NodeType');\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLAttribute = (function() {\n function XMLAttribute(parent, name, value) {\n this.parent = parent;\n if (this.parent) {\n this.options = this.parent.options;\n this.stringify = this.parent.stringify;\n }\n if (name == null) {\n throw new Error(\"Missing attribute name. \" + this.debugInfo(name));\n }\n this.name = this.stringify.name(name);\n this.value = this.stringify.attValue(value);\n this.type = NodeType.Attribute;\n this.isId = false;\n this.schemaTypeInfo = null;\n }\n\n Object.defineProperty(XMLAttribute.prototype, 'nodeType', {\n get: function() {\n return this.type;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'ownerElement', {\n get: function() {\n return this.parent;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'textContent', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'namespaceURI', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'prefix', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'localName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'specified', {\n get: function() {\n return true;\n }\n });\n\n XMLAttribute.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLAttribute.prototype.toString = function(options) {\n return this.options.writer.attribute(this, this.options.writer.filterOptions(options));\n };\n\n XMLAttribute.prototype.debugInfo = function(name) {\n name = name || this.name;\n if (name == null) {\n return \"parent: <\" + this.parent.name + \">\";\n } else {\n return \"attribute: {\" + name + \"}, parent: <\" + this.parent.name + \">\";\n }\n };\n\n XMLAttribute.prototype.isEqualNode = function(node) {\n if (node.namespaceURI !== this.namespaceURI) {\n return false;\n }\n if (node.prefix !== this.prefix) {\n return false;\n }\n if (node.localName !== this.localName) {\n return false;\n }\n if (node.value !== this.value) {\n return false;\n }\n return true;\n };\n\n return XMLAttribute;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCData, XMLCharacterData,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLCData = (function(superClass) {\n extend(XMLCData, superClass);\n\n function XMLCData(parent, text) {\n XMLCData.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing CDATA text. \" + this.debugInfo());\n }\n this.name = \"#cdata-section\";\n this.type = NodeType.CData;\n this.value = this.stringify.cdata(text);\n }\n\n XMLCData.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLCData.prototype.toString = function(options) {\n return this.options.writer.cdata(this, this.options.writer.filterOptions(options));\n };\n\n return XMLCData;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLCharacterData, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLCharacterData = (function(superClass) {\n extend(XMLCharacterData, superClass);\n\n function XMLCharacterData(parent) {\n XMLCharacterData.__super__.constructor.call(this, parent);\n this.value = '';\n }\n\n Object.defineProperty(XMLCharacterData.prototype, 'data', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n Object.defineProperty(XMLCharacterData.prototype, 'length', {\n get: function() {\n return this.value.length;\n }\n });\n\n Object.defineProperty(XMLCharacterData.prototype, 'textContent', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n XMLCharacterData.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLCharacterData.prototype.substringData = function(offset, count) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.appendData = function(arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.insertData = function(offset, arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.deleteData = function(offset, count) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.replaceData = function(offset, count, arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.isEqualNode = function(node) {\n if (!XMLCharacterData.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.data !== this.data) {\n return false;\n }\n return true;\n };\n\n return XMLCharacterData;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLComment,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLComment = (function(superClass) {\n extend(XMLComment, superClass);\n\n function XMLComment(parent, text) {\n XMLComment.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing comment text. \" + this.debugInfo());\n }\n this.name = \"#comment\";\n this.type = NodeType.Comment;\n this.value = this.stringify.comment(text);\n }\n\n XMLComment.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLComment.prototype.toString = function(options) {\n return this.options.writer.comment(this, this.options.writer.filterOptions(options));\n };\n\n return XMLComment;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMConfiguration, XMLDOMErrorHandler, XMLDOMStringList;\n\n XMLDOMErrorHandler = require('./XMLDOMErrorHandler');\n\n XMLDOMStringList = require('./XMLDOMStringList');\n\n module.exports = XMLDOMConfiguration = (function() {\n function XMLDOMConfiguration() {\n var clonedSelf;\n this.defaultParams = {\n \"canonical-form\": false,\n \"cdata-sections\": false,\n \"comments\": false,\n \"datatype-normalization\": false,\n \"element-content-whitespace\": true,\n \"entities\": true,\n \"error-handler\": new XMLDOMErrorHandler(),\n \"infoset\": true,\n \"validate-if-schema\": false,\n \"namespaces\": true,\n \"namespace-declarations\": true,\n \"normalize-characters\": false,\n \"schema-location\": '',\n \"schema-type\": '',\n \"split-cdata-sections\": true,\n \"validate\": false,\n \"well-formed\": true\n };\n this.params = clonedSelf = Object.create(this.defaultParams);\n }\n\n Object.defineProperty(XMLDOMConfiguration.prototype, 'parameterNames', {\n get: function() {\n return new XMLDOMStringList(Object.keys(this.defaultParams));\n }\n });\n\n XMLDOMConfiguration.prototype.getParameter = function(name) {\n if (this.params.hasOwnProperty(name)) {\n return this.params[name];\n } else {\n return null;\n }\n };\n\n XMLDOMConfiguration.prototype.canSetParameter = function(name, value) {\n return true;\n };\n\n XMLDOMConfiguration.prototype.setParameter = function(name, value) {\n if (value != null) {\n return this.params[name] = value;\n } else {\n return delete this.params[name];\n }\n };\n\n return XMLDOMConfiguration;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMErrorHandler;\n\n module.exports = XMLDOMErrorHandler = (function() {\n function XMLDOMErrorHandler() {}\n\n XMLDOMErrorHandler.prototype.handleError = function(error) {\n throw new Error(error);\n };\n\n return XMLDOMErrorHandler;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMImplementation;\n\n module.exports = XMLDOMImplementation = (function() {\n function XMLDOMImplementation() {}\n\n XMLDOMImplementation.prototype.hasFeature = function(feature, version) {\n return true;\n };\n\n XMLDOMImplementation.prototype.createDocumentType = function(qualifiedName, publicId, systemId) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.createDocument = function(namespaceURI, qualifiedName, doctype) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.createHTMLDocument = function(title) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.getFeature = function(feature, version) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n return XMLDOMImplementation;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMStringList;\n\n module.exports = XMLDOMStringList = (function() {\n function XMLDOMStringList(arr) {\n this.arr = arr || [];\n }\n\n Object.defineProperty(XMLDOMStringList.prototype, 'length', {\n get: function() {\n return this.arr.length;\n }\n });\n\n XMLDOMStringList.prototype.item = function(index) {\n return this.arr[index] || null;\n };\n\n XMLDOMStringList.prototype.contains = function(str) {\n return this.arr.indexOf(str) !== -1;\n };\n\n return XMLDOMStringList;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDAttList, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDAttList = (function(superClass) {\n extend(XMLDTDAttList, superClass);\n\n function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n XMLDTDAttList.__super__.constructor.call(this, parent);\n if (elementName == null) {\n throw new Error(\"Missing DTD element name. \" + this.debugInfo());\n }\n if (attributeName == null) {\n throw new Error(\"Missing DTD attribute name. \" + this.debugInfo(elementName));\n }\n if (!attributeType) {\n throw new Error(\"Missing DTD attribute type. \" + this.debugInfo(elementName));\n }\n if (!defaultValueType) {\n throw new Error(\"Missing DTD attribute default. \" + this.debugInfo(elementName));\n }\n if (defaultValueType.indexOf('#') !== 0) {\n defaultValueType = '#' + defaultValueType;\n }\n if (!defaultValueType.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/)) {\n throw new Error(\"Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. \" + this.debugInfo(elementName));\n }\n if (defaultValue && !defaultValueType.match(/^(#FIXED|#DEFAULT)$/)) {\n throw new Error(\"Default value only applies to #FIXED or #DEFAULT. \" + this.debugInfo(elementName));\n }\n this.elementName = this.stringify.name(elementName);\n this.type = NodeType.AttributeDeclaration;\n this.attributeName = this.stringify.name(attributeName);\n this.attributeType = this.stringify.dtdAttType(attributeType);\n if (defaultValue) {\n this.defaultValue = this.stringify.dtdAttDefault(defaultValue);\n }\n this.defaultValueType = defaultValueType;\n }\n\n XMLDTDAttList.prototype.toString = function(options) {\n return this.options.writer.dtdAttList(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDAttList;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDElement, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDElement = (function(superClass) {\n extend(XMLDTDElement, superClass);\n\n function XMLDTDElement(parent, name, value) {\n XMLDTDElement.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD element name. \" + this.debugInfo());\n }\n if (!value) {\n value = '(#PCDATA)';\n }\n if (Array.isArray(value)) {\n value = '(' + value.join(',') + ')';\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.ElementDeclaration;\n this.value = this.stringify.dtdElementValue(value);\n }\n\n XMLDTDElement.prototype.toString = function(options) {\n return this.options.writer.dtdElement(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDElement;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDEntity, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDEntity = (function(superClass) {\n extend(XMLDTDEntity, superClass);\n\n function XMLDTDEntity(parent, pe, name, value) {\n XMLDTDEntity.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD entity name. \" + this.debugInfo(name));\n }\n if (value == null) {\n throw new Error(\"Missing DTD entity value. \" + this.debugInfo(name));\n }\n this.pe = !!pe;\n this.name = this.stringify.name(name);\n this.type = NodeType.EntityDeclaration;\n if (!isObject(value)) {\n this.value = this.stringify.dtdEntityValue(value);\n this.internal = true;\n } else {\n if (!value.pubID && !value.sysID) {\n throw new Error(\"Public and/or system identifiers are required for an external entity. \" + this.debugInfo(name));\n }\n if (value.pubID && !value.sysID) {\n throw new Error(\"System identifier is required for a public external entity. \" + this.debugInfo(name));\n }\n this.internal = false;\n if (value.pubID != null) {\n this.pubID = this.stringify.dtdPubID(value.pubID);\n }\n if (value.sysID != null) {\n this.sysID = this.stringify.dtdSysID(value.sysID);\n }\n if (value.nData != null) {\n this.nData = this.stringify.dtdNData(value.nData);\n }\n if (this.pe && this.nData) {\n throw new Error(\"Notation declaration is not allowed in a parameter entity. \" + this.debugInfo(name));\n }\n }\n }\n\n Object.defineProperty(XMLDTDEntity.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'notationName', {\n get: function() {\n return this.nData || null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'inputEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'xmlEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'xmlVersion', {\n get: function() {\n return null;\n }\n });\n\n XMLDTDEntity.prototype.toString = function(options) {\n return this.options.writer.dtdEntity(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDEntity;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDNotation, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDNotation = (function(superClass) {\n extend(XMLDTDNotation, superClass);\n\n function XMLDTDNotation(parent, name, value) {\n XMLDTDNotation.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD notation name. \" + this.debugInfo(name));\n }\n if (!value.pubID && !value.sysID) {\n throw new Error(\"Public or system identifiers are required for an external entity. \" + this.debugInfo(name));\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.NotationDeclaration;\n if (value.pubID != null) {\n this.pubID = this.stringify.dtdPubID(value.pubID);\n }\n if (value.sysID != null) {\n this.sysID = this.stringify.dtdSysID(value.sysID);\n }\n }\n\n Object.defineProperty(XMLDTDNotation.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDTDNotation.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n XMLDTDNotation.prototype.toString = function(options) {\n return this.options.writer.dtdNotation(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDNotation;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDeclaration, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDeclaration = (function(superClass) {\n extend(XMLDeclaration, superClass);\n\n function XMLDeclaration(parent, version, encoding, standalone) {\n var ref;\n XMLDeclaration.__super__.constructor.call(this, parent);\n if (isObject(version)) {\n ref = version, version = ref.version, encoding = ref.encoding, standalone = ref.standalone;\n }\n if (!version) {\n version = '1.0';\n }\n this.type = NodeType.Declaration;\n this.version = this.stringify.xmlVersion(version);\n if (encoding != null) {\n this.encoding = this.stringify.xmlEncoding(encoding);\n }\n if (standalone != null) {\n this.standalone = this.stringify.xmlStandalone(standalone);\n }\n }\n\n XMLDeclaration.prototype.toString = function(options) {\n return this.options.writer.declaration(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDeclaration;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLNamedNodeMap, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n\n module.exports = XMLDocType = (function(superClass) {\n extend(XMLDocType, superClass);\n\n function XMLDocType(parent, pubID, sysID) {\n var child, i, len, ref, ref1, ref2;\n XMLDocType.__super__.constructor.call(this, parent);\n this.type = NodeType.DocType;\n if (parent.children) {\n ref = parent.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.Element) {\n this.name = child.name;\n break;\n }\n }\n }\n this.documentObject = parent;\n if (isObject(pubID)) {\n ref1 = pubID, pubID = ref1.pubID, sysID = ref1.sysID;\n }\n if (sysID == null) {\n ref2 = [pubID, sysID], sysID = ref2[0], pubID = ref2[1];\n }\n if (pubID != null) {\n this.pubID = this.stringify.dtdPubID(pubID);\n }\n if (sysID != null) {\n this.sysID = this.stringify.dtdSysID(sysID);\n }\n }\n\n Object.defineProperty(XMLDocType.prototype, 'entities', {\n get: function() {\n var child, i, len, nodes, ref;\n nodes = {};\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if ((child.type === NodeType.EntityDeclaration) && !child.pe) {\n nodes[child.name] = child;\n }\n }\n return new XMLNamedNodeMap(nodes);\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'notations', {\n get: function() {\n var child, i, len, nodes, ref;\n nodes = {};\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.NotationDeclaration) {\n nodes[child.name] = child;\n }\n }\n return new XMLNamedNodeMap(nodes);\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'internalSubset', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n XMLDocType.prototype.element = function(name, value) {\n var child;\n child = new XMLDTDElement(this, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n var child;\n child = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.entity = function(name, value) {\n var child;\n child = new XMLDTDEntity(this, false, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.pEntity = function(name, value) {\n var child;\n child = new XMLDTDEntity(this, true, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.notation = function(name, value) {\n var child;\n child = new XMLDTDNotation(this, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.toString = function(options) {\n return this.options.writer.docType(this, this.options.writer.filterOptions(options));\n };\n\n XMLDocType.prototype.ele = function(name, value) {\n return this.element(name, value);\n };\n\n XMLDocType.prototype.att = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n return this.attList(elementName, attributeName, attributeType, defaultValueType, defaultValue);\n };\n\n XMLDocType.prototype.ent = function(name, value) {\n return this.entity(name, value);\n };\n\n XMLDocType.prototype.pent = function(name, value) {\n return this.pEntity(name, value);\n };\n\n XMLDocType.prototype.not = function(name, value) {\n return this.notation(name, value);\n };\n\n XMLDocType.prototype.up = function() {\n return this.root() || this.documentObject;\n };\n\n XMLDocType.prototype.isEqualNode = function(node) {\n if (!XMLDocType.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.name !== this.name) {\n return false;\n }\n if (node.publicId !== this.publicId) {\n return false;\n }\n if (node.systemId !== this.systemId) {\n return false;\n }\n return true;\n };\n\n return XMLDocType;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDOMConfiguration, XMLDOMImplementation, XMLDocument, XMLNode, XMLStringWriter, XMLStringifier, isPlainObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isPlainObject = require('./Utility').isPlainObject;\n\n XMLDOMImplementation = require('./XMLDOMImplementation');\n\n XMLDOMConfiguration = require('./XMLDOMConfiguration');\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLStringifier = require('./XMLStringifier');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n module.exports = XMLDocument = (function(superClass) {\n extend(XMLDocument, superClass);\n\n function XMLDocument(options) {\n XMLDocument.__super__.constructor.call(this, null);\n this.name = \"#document\";\n this.type = NodeType.Document;\n this.documentURI = null;\n this.domConfig = new XMLDOMConfiguration();\n options || (options = {});\n if (!options.writer) {\n options.writer = new XMLStringWriter();\n }\n this.options = options;\n this.stringify = new XMLStringifier(options);\n }\n\n Object.defineProperty(XMLDocument.prototype, 'implementation', {\n value: new XMLDOMImplementation()\n });\n\n Object.defineProperty(XMLDocument.prototype, 'doctype', {\n get: function() {\n var child, i, len, ref;\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.DocType) {\n return child;\n }\n }\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'documentElement', {\n get: function() {\n return this.rootObject || null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'inputEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'strictErrorChecking', {\n get: function() {\n return false;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlEncoding', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].encoding;\n } else {\n return null;\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlStandalone', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].standalone === 'yes';\n } else {\n return false;\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlVersion', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].version;\n } else {\n return \"1.0\";\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'URL', {\n get: function() {\n return this.documentURI;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'origin', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'compatMode', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'characterSet', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'contentType', {\n get: function() {\n return null;\n }\n });\n\n XMLDocument.prototype.end = function(writer) {\n var writerOptions;\n writerOptions = {};\n if (!writer) {\n writer = this.options.writer;\n } else if (isPlainObject(writer)) {\n writerOptions = writer;\n writer = this.options.writer;\n }\n return writer.document(this, writer.filterOptions(writerOptions));\n };\n\n XMLDocument.prototype.toString = function(options) {\n return this.options.writer.document(this, this.options.writer.filterOptions(options));\n };\n\n XMLDocument.prototype.createElement = function(tagName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createDocumentFragment = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createTextNode = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createComment = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createCDATASection = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createProcessingInstruction = function(target, data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createAttribute = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createEntityReference = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByTagName = function(tagname) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.importNode = function(importedNode, deep) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createElementNS = function(namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createAttributeNS = function(namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementById = function(elementId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.adoptNode = function(source) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.normalizeDocument = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.renameNode = function(node, namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByClassName = function(classNames) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createEvent = function(eventInterface) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createRange = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createNodeIterator = function(root, whatToShow, filter) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createTreeWalker = function(root, whatToShow, filter) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n return XMLDocument;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLAttribute, XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLDocument, XMLDocumentCB, XMLElement, XMLProcessingInstruction, XMLRaw, XMLStringWriter, XMLStringifier, XMLText, getValue, isFunction, isObject, isPlainObject, ref,\n hasProp = {}.hasOwnProperty;\n\n ref = require('./Utility'), isObject = ref.isObject, isFunction = ref.isFunction, isPlainObject = ref.isPlainObject, getValue = ref.getValue;\n\n NodeType = require('./NodeType');\n\n XMLDocument = require('./XMLDocument');\n\n XMLElement = require('./XMLElement');\n\n XMLCData = require('./XMLCData');\n\n XMLComment = require('./XMLComment');\n\n XMLRaw = require('./XMLRaw');\n\n XMLText = require('./XMLText');\n\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n\n XMLDeclaration = require('./XMLDeclaration');\n\n XMLDocType = require('./XMLDocType');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n XMLAttribute = require('./XMLAttribute');\n\n XMLStringifier = require('./XMLStringifier');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLDocumentCB = (function() {\n function XMLDocumentCB(options, onData, onEnd) {\n var writerOptions;\n this.name = \"?xml\";\n this.type = NodeType.Document;\n options || (options = {});\n writerOptions = {};\n if (!options.writer) {\n options.writer = new XMLStringWriter();\n } else if (isPlainObject(options.writer)) {\n writerOptions = options.writer;\n options.writer = new XMLStringWriter();\n }\n this.options = options;\n this.writer = options.writer;\n this.writerOptions = this.writer.filterOptions(writerOptions);\n this.stringify = new XMLStringifier(options);\n this.onDataCallback = onData || function() {};\n this.onEndCallback = onEnd || function() {};\n this.currentNode = null;\n this.currentLevel = -1;\n this.openTags = {};\n this.documentStarted = false;\n this.documentCompleted = false;\n this.root = null;\n }\n\n XMLDocumentCB.prototype.createChildNode = function(node) {\n var att, attName, attributes, child, i, len, ref1, ref2;\n switch (node.type) {\n case NodeType.CData:\n this.cdata(node.value);\n break;\n case NodeType.Comment:\n this.comment(node.value);\n break;\n case NodeType.Element:\n attributes = {};\n ref1 = node.attribs;\n for (attName in ref1) {\n if (!hasProp.call(ref1, attName)) continue;\n att = ref1[attName];\n attributes[attName] = att.value;\n }\n this.node(node.name, attributes);\n break;\n case NodeType.Dummy:\n this.dummy();\n break;\n case NodeType.Raw:\n this.raw(node.value);\n break;\n case NodeType.Text:\n this.text(node.value);\n break;\n case NodeType.ProcessingInstruction:\n this.instruction(node.target, node.value);\n break;\n default:\n throw new Error(\"This XML node type is not supported in a JS object: \" + node.constructor.name);\n }\n ref2 = node.children;\n for (i = 0, len = ref2.length; i < len; i++) {\n child = ref2[i];\n this.createChildNode(child);\n if (child.type === NodeType.Element) {\n this.up();\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.dummy = function() {\n return this;\n };\n\n XMLDocumentCB.prototype.node = function(name, attributes, text) {\n var ref1;\n if (name == null) {\n throw new Error(\"Missing node name.\");\n }\n if (this.root && this.currentLevel === -1) {\n throw new Error(\"Document can only have one root node. \" + this.debugInfo(name));\n }\n this.openCurrent();\n name = getValue(name);\n if (attributes == null) {\n attributes = {};\n }\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref1 = [attributes, text], text = ref1[0], attributes = ref1[1];\n }\n this.currentNode = new XMLElement(this, name, attributes);\n this.currentNode.children = false;\n this.currentLevel++;\n this.openTags[this.currentLevel] = this.currentNode;\n if (text != null) {\n this.text(text);\n }\n return this;\n };\n\n XMLDocumentCB.prototype.element = function(name, attributes, text) {\n var child, i, len, oldValidationFlag, ref1, root;\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n this.dtdElement.apply(this, arguments);\n } else {\n if (Array.isArray(name) || isObject(name) || isFunction(name)) {\n oldValidationFlag = this.options.noValidation;\n this.options.noValidation = true;\n root = new XMLDocument(this.options).element('TEMP_ROOT');\n root.element(name);\n this.options.noValidation = oldValidationFlag;\n ref1 = root.children;\n for (i = 0, len = ref1.length; i < len; i++) {\n child = ref1[i];\n this.createChildNode(child);\n if (child.type === NodeType.Element) {\n this.up();\n }\n }\n } else {\n this.node(name, attributes, text);\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.attribute = function(name, value) {\n var attName, attValue;\n if (!this.currentNode || this.currentNode.children) {\n throw new Error(\"att() can only be used immediately after an ele() call in callback mode. \" + this.debugInfo(name));\n }\n if (name != null) {\n name = getValue(name);\n }\n if (isObject(name)) {\n for (attName in name) {\n if (!hasProp.call(name, attName)) continue;\n attValue = name[attName];\n this.attribute(attName, attValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n if (this.options.keepNullAttributes && (value == null)) {\n this.currentNode.attribs[name] = new XMLAttribute(this, name, \"\");\n } else if (value != null) {\n this.currentNode.attribs[name] = new XMLAttribute(this, name, value);\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.text = function(value) {\n var node;\n this.openCurrent();\n node = new XMLText(this, value);\n this.onData(this.writer.text(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.cdata = function(value) {\n var node;\n this.openCurrent();\n node = new XMLCData(this, value);\n this.onData(this.writer.cdata(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.comment = function(value) {\n var node;\n this.openCurrent();\n node = new XMLComment(this, value);\n this.onData(this.writer.comment(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.raw = function(value) {\n var node;\n this.openCurrent();\n node = new XMLRaw(this, value);\n this.onData(this.writer.raw(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.instruction = function(target, value) {\n var i, insTarget, insValue, len, node;\n this.openCurrent();\n if (target != null) {\n target = getValue(target);\n }\n if (value != null) {\n value = getValue(value);\n }\n if (Array.isArray(target)) {\n for (i = 0, len = target.length; i < len; i++) {\n insTarget = target[i];\n this.instruction(insTarget);\n }\n } else if (isObject(target)) {\n for (insTarget in target) {\n if (!hasProp.call(target, insTarget)) continue;\n insValue = target[insTarget];\n this.instruction(insTarget, insValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n node = new XMLProcessingInstruction(this, target, value);\n this.onData(this.writer.processingInstruction(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n }\n return this;\n };\n\n XMLDocumentCB.prototype.declaration = function(version, encoding, standalone) {\n var node;\n this.openCurrent();\n if (this.documentStarted) {\n throw new Error(\"declaration() must be the first node.\");\n }\n node = new XMLDeclaration(this, version, encoding, standalone);\n this.onData(this.writer.declaration(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.doctype = function(root, pubID, sysID) {\n this.openCurrent();\n if (root == null) {\n throw new Error(\"Missing root node name.\");\n }\n if (this.root) {\n throw new Error(\"dtd() must come before the root node.\");\n }\n this.currentNode = new XMLDocType(this, pubID, sysID);\n this.currentNode.rootNodeName = root;\n this.currentNode.children = false;\n this.currentLevel++;\n this.openTags[this.currentLevel] = this.currentNode;\n return this;\n };\n\n XMLDocumentCB.prototype.dtdElement = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDElement(this, name, value);\n this.onData(this.writer.dtdElement(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n var node;\n this.openCurrent();\n node = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);\n this.onData(this.writer.dtdAttList(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.entity = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDEntity(this, false, name, value);\n this.onData(this.writer.dtdEntity(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.pEntity = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDEntity(this, true, name, value);\n this.onData(this.writer.dtdEntity(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.notation = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDNotation(this, name, value);\n this.onData(this.writer.dtdNotation(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.up = function() {\n if (this.currentLevel < 0) {\n throw new Error(\"The document node has no parent.\");\n }\n if (this.currentNode) {\n if (this.currentNode.children) {\n this.closeNode(this.currentNode);\n } else {\n this.openNode(this.currentNode);\n }\n this.currentNode = null;\n } else {\n this.closeNode(this.openTags[this.currentLevel]);\n }\n delete this.openTags[this.currentLevel];\n this.currentLevel--;\n return this;\n };\n\n XMLDocumentCB.prototype.end = function() {\n while (this.currentLevel >= 0) {\n this.up();\n }\n return this.onEnd();\n };\n\n XMLDocumentCB.prototype.openCurrent = function() {\n if (this.currentNode) {\n this.currentNode.children = true;\n return this.openNode(this.currentNode);\n }\n };\n\n XMLDocumentCB.prototype.openNode = function(node) {\n var att, chunk, name, ref1;\n if (!node.isOpen) {\n if (!this.root && this.currentLevel === 0 && node.type === NodeType.Element) {\n this.root = node;\n }\n chunk = '';\n if (node.type === NodeType.Element) {\n this.writerOptions.state = WriterState.OpenTag;\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '<' + node.name;\n ref1 = node.attribs;\n for (name in ref1) {\n if (!hasProp.call(ref1, name)) continue;\n att = ref1[name];\n chunk += this.writer.attribute(att, this.writerOptions, this.currentLevel);\n }\n chunk += (node.children ? '>' : '/>') + this.writer.endline(node, this.writerOptions, this.currentLevel);\n this.writerOptions.state = WriterState.InsideTag;\n } else {\n this.writerOptions.state = WriterState.OpenTag;\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '<!DOCTYPE ' + node.rootNodeName;\n if (node.pubID && node.sysID) {\n chunk += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.sysID) {\n chunk += ' SYSTEM \"' + node.sysID + '\"';\n }\n if (node.children) {\n chunk += ' [';\n this.writerOptions.state = WriterState.InsideTag;\n } else {\n this.writerOptions.state = WriterState.CloseTag;\n chunk += '>';\n }\n chunk += this.writer.endline(node, this.writerOptions, this.currentLevel);\n }\n this.onData(chunk, this.currentLevel);\n return node.isOpen = true;\n }\n };\n\n XMLDocumentCB.prototype.closeNode = function(node) {\n var chunk;\n if (!node.isClosed) {\n chunk = '';\n this.writerOptions.state = WriterState.CloseTag;\n if (node.type === NodeType.Element) {\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '</' + node.name + '>' + this.writer.endline(node, this.writerOptions, this.currentLevel);\n } else {\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + ']>' + this.writer.endline(node, this.writerOptions, this.currentLevel);\n }\n this.writerOptions.state = WriterState.None;\n this.onData(chunk, this.currentLevel);\n return node.isClosed = true;\n }\n };\n\n XMLDocumentCB.prototype.onData = function(chunk, level) {\n this.documentStarted = true;\n return this.onDataCallback(chunk, level + 1);\n };\n\n XMLDocumentCB.prototype.onEnd = function() {\n this.documentCompleted = true;\n return this.onEndCallback();\n };\n\n XMLDocumentCB.prototype.debugInfo = function(name) {\n if (name == null) {\n return \"\";\n } else {\n return \"node: <\" + name + \">\";\n }\n };\n\n XMLDocumentCB.prototype.ele = function() {\n return this.element.apply(this, arguments);\n };\n\n XMLDocumentCB.prototype.nod = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.txt = function(value) {\n return this.text(value);\n };\n\n XMLDocumentCB.prototype.dat = function(value) {\n return this.cdata(value);\n };\n\n XMLDocumentCB.prototype.com = function(value) {\n return this.comment(value);\n };\n\n XMLDocumentCB.prototype.ins = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLDocumentCB.prototype.dec = function(version, encoding, standalone) {\n return this.declaration(version, encoding, standalone);\n };\n\n XMLDocumentCB.prototype.dtd = function(root, pubID, sysID) {\n return this.doctype(root, pubID, sysID);\n };\n\n XMLDocumentCB.prototype.e = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.n = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.t = function(value) {\n return this.text(value);\n };\n\n XMLDocumentCB.prototype.d = function(value) {\n return this.cdata(value);\n };\n\n XMLDocumentCB.prototype.c = function(value) {\n return this.comment(value);\n };\n\n XMLDocumentCB.prototype.r = function(value) {\n return this.raw(value);\n };\n\n XMLDocumentCB.prototype.i = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLDocumentCB.prototype.att = function() {\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n return this.attList.apply(this, arguments);\n } else {\n return this.attribute.apply(this, arguments);\n }\n };\n\n XMLDocumentCB.prototype.a = function() {\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n return this.attList.apply(this, arguments);\n } else {\n return this.attribute.apply(this, arguments);\n }\n };\n\n XMLDocumentCB.prototype.ent = function(name, value) {\n return this.entity(name, value);\n };\n\n XMLDocumentCB.prototype.pent = function(name, value) {\n return this.pEntity(name, value);\n };\n\n XMLDocumentCB.prototype.not = function(name, value) {\n return this.notation(name, value);\n };\n\n return XMLDocumentCB;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDummy, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDummy = (function(superClass) {\n extend(XMLDummy, superClass);\n\n function XMLDummy(parent) {\n XMLDummy.__super__.constructor.call(this, parent);\n this.type = NodeType.Dummy;\n }\n\n XMLDummy.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLDummy.prototype.toString = function(options) {\n return '';\n };\n\n return XMLDummy;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLAttribute, XMLElement, XMLNamedNodeMap, XMLNode, getValue, isFunction, isObject, ref,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n ref = require('./Utility'), isObject = ref.isObject, isFunction = ref.isFunction, getValue = ref.getValue;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLAttribute = require('./XMLAttribute');\n\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n\n module.exports = XMLElement = (function(superClass) {\n extend(XMLElement, superClass);\n\n function XMLElement(parent, name, attributes) {\n var child, j, len, ref1;\n XMLElement.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing element name. \" + this.debugInfo());\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.Element;\n this.attribs = {};\n this.schemaTypeInfo = null;\n if (attributes != null) {\n this.attribute(attributes);\n }\n if (parent.type === NodeType.Document) {\n this.isRoot = true;\n this.documentObject = parent;\n parent.rootObject = this;\n if (parent.children) {\n ref1 = parent.children;\n for (j = 0, len = ref1.length; j < len; j++) {\n child = ref1[j];\n if (child.type === NodeType.DocType) {\n child.name = this.name;\n break;\n }\n }\n }\n }\n }\n\n Object.defineProperty(XMLElement.prototype, 'tagName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'namespaceURI', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'prefix', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'localName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'id', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'className', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'classList', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'attributes', {\n get: function() {\n if (!this.attributeMap || !this.attributeMap.nodes) {\n this.attributeMap = new XMLNamedNodeMap(this.attribs);\n }\n return this.attributeMap;\n }\n });\n\n XMLElement.prototype.clone = function() {\n var att, attName, clonedSelf, ref1;\n clonedSelf = Object.create(this);\n if (clonedSelf.isRoot) {\n clonedSelf.documentObject = null;\n }\n clonedSelf.attribs = {};\n ref1 = this.attribs;\n for (attName in ref1) {\n if (!hasProp.call(ref1, attName)) continue;\n att = ref1[attName];\n clonedSelf.attribs[attName] = att.clone();\n }\n clonedSelf.children = [];\n this.children.forEach(function(child) {\n var clonedChild;\n clonedChild = child.clone();\n clonedChild.parent = clonedSelf;\n return clonedSelf.children.push(clonedChild);\n });\n return clonedSelf;\n };\n\n XMLElement.prototype.attribute = function(name, value) {\n var attName, attValue;\n if (name != null) {\n name = getValue(name);\n }\n if (isObject(name)) {\n for (attName in name) {\n if (!hasProp.call(name, attName)) continue;\n attValue = name[attName];\n this.attribute(attName, attValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n if (this.options.keepNullAttributes && (value == null)) {\n this.attribs[name] = new XMLAttribute(this, name, \"\");\n } else if (value != null) {\n this.attribs[name] = new XMLAttribute(this, name, value);\n }\n }\n return this;\n };\n\n XMLElement.prototype.removeAttribute = function(name) {\n var attName, j, len;\n if (name == null) {\n throw new Error(\"Missing attribute name. \" + this.debugInfo());\n }\n name = getValue(name);\n if (Array.isArray(name)) {\n for (j = 0, len = name.length; j < len; j++) {\n attName = name[j];\n delete this.attribs[attName];\n }\n } else {\n delete this.attribs[name];\n }\n return this;\n };\n\n XMLElement.prototype.toString = function(options) {\n return this.options.writer.element(this, this.options.writer.filterOptions(options));\n };\n\n XMLElement.prototype.att = function(name, value) {\n return this.attribute(name, value);\n };\n\n XMLElement.prototype.a = function(name, value) {\n return this.attribute(name, value);\n };\n\n XMLElement.prototype.getAttribute = function(name) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name].value;\n } else {\n return null;\n }\n };\n\n XMLElement.prototype.setAttribute = function(name, value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNode = function(name) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name];\n } else {\n return null;\n }\n };\n\n XMLElement.prototype.setAttributeNode = function(newAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.removeAttributeNode = function(oldAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagName = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setAttributeNS = function(namespaceURI, qualifiedName, value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.removeAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNodeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setAttributeNodeNS = function(newAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.hasAttribute = function(name) {\n return this.attribs.hasOwnProperty(name);\n };\n\n XMLElement.prototype.hasAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setIdAttribute = function(name, isId) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name].isId;\n } else {\n return isId;\n }\n };\n\n XMLElement.prototype.setIdAttributeNS = function(namespaceURI, localName, isId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setIdAttributeNode = function(idAttr, isId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagName = function(tagname) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByClassName = function(classNames) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.isEqualNode = function(node) {\n var i, j, ref1;\n if (!XMLElement.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.namespaceURI !== this.namespaceURI) {\n return false;\n }\n if (node.prefix !== this.prefix) {\n return false;\n }\n if (node.localName !== this.localName) {\n return false;\n }\n if (node.attribs.length !== this.attribs.length) {\n return false;\n }\n for (i = j = 0, ref1 = this.attribs.length - 1; 0 <= ref1 ? j <= ref1 : j >= ref1; i = 0 <= ref1 ? ++j : --j) {\n if (!this.attribs[i].isEqualNode(node.attribs[i])) {\n return false;\n }\n }\n return true;\n };\n\n return XMLElement;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLNamedNodeMap;\n\n module.exports = XMLNamedNodeMap = (function() {\n function XMLNamedNodeMap(nodes) {\n this.nodes = nodes;\n }\n\n Object.defineProperty(XMLNamedNodeMap.prototype, 'length', {\n get: function() {\n return Object.keys(this.nodes).length || 0;\n }\n });\n\n XMLNamedNodeMap.prototype.clone = function() {\n return this.nodes = null;\n };\n\n XMLNamedNodeMap.prototype.getNamedItem = function(name) {\n return this.nodes[name];\n };\n\n XMLNamedNodeMap.prototype.setNamedItem = function(node) {\n var oldNode;\n oldNode = this.nodes[node.nodeName];\n this.nodes[node.nodeName] = node;\n return oldNode || null;\n };\n\n XMLNamedNodeMap.prototype.removeNamedItem = function(name) {\n var oldNode;\n oldNode = this.nodes[name];\n delete this.nodes[name];\n return oldNode || null;\n };\n\n XMLNamedNodeMap.prototype.item = function(index) {\n return this.nodes[Object.keys(this.nodes)[index]] || null;\n };\n\n XMLNamedNodeMap.prototype.getNamedItemNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLNamedNodeMap.prototype.setNamedItemNS = function(node) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLNamedNodeMap.prototype.removeNamedItemNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n return XMLNamedNodeMap;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var DocumentPosition, NodeType, XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLDummy, XMLElement, XMLNamedNodeMap, XMLNode, XMLNodeList, XMLProcessingInstruction, XMLRaw, XMLText, getValue, isEmpty, isFunction, isObject, ref1,\n hasProp = {}.hasOwnProperty;\n\n ref1 = require('./Utility'), isObject = ref1.isObject, isFunction = ref1.isFunction, isEmpty = ref1.isEmpty, getValue = ref1.getValue;\n\n XMLElement = null;\n\n XMLCData = null;\n\n XMLComment = null;\n\n XMLDeclaration = null;\n\n XMLDocType = null;\n\n XMLRaw = null;\n\n XMLText = null;\n\n XMLProcessingInstruction = null;\n\n XMLDummy = null;\n\n NodeType = null;\n\n XMLNodeList = null;\n\n XMLNamedNodeMap = null;\n\n DocumentPosition = null;\n\n module.exports = XMLNode = (function() {\n function XMLNode(parent1) {\n this.parent = parent1;\n if (this.parent) {\n this.options = this.parent.options;\n this.stringify = this.parent.stringify;\n }\n this.value = null;\n this.children = [];\n this.baseURI = null;\n if (!XMLElement) {\n XMLElement = require('./XMLElement');\n XMLCData = require('./XMLCData');\n XMLComment = require('./XMLComment');\n XMLDeclaration = require('./XMLDeclaration');\n XMLDocType = require('./XMLDocType');\n XMLRaw = require('./XMLRaw');\n XMLText = require('./XMLText');\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n XMLDummy = require('./XMLDummy');\n NodeType = require('./NodeType');\n XMLNodeList = require('./XMLNodeList');\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n DocumentPosition = require('./DocumentPosition');\n }\n }\n\n Object.defineProperty(XMLNode.prototype, 'nodeName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nodeType', {\n get: function() {\n return this.type;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nodeValue', {\n get: function() {\n return this.value;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'parentNode', {\n get: function() {\n return this.parent;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'childNodes', {\n get: function() {\n if (!this.childNodeList || !this.childNodeList.nodes) {\n this.childNodeList = new XMLNodeList(this.children);\n }\n return this.childNodeList;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'firstChild', {\n get: function() {\n return this.children[0] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'lastChild', {\n get: function() {\n return this.children[this.children.length - 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'previousSibling', {\n get: function() {\n var i;\n i = this.parent.children.indexOf(this);\n return this.parent.children[i - 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nextSibling', {\n get: function() {\n var i;\n i = this.parent.children.indexOf(this);\n return this.parent.children[i + 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'ownerDocument', {\n get: function() {\n return this.document() || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'textContent', {\n get: function() {\n var child, j, len, ref2, str;\n if (this.nodeType === NodeType.Element || this.nodeType === NodeType.DocumentFragment) {\n str = '';\n ref2 = this.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (child.textContent) {\n str += child.textContent;\n }\n }\n return str;\n } else {\n return null;\n }\n },\n set: function(value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n XMLNode.prototype.setParent = function(parent) {\n var child, j, len, ref2, results;\n this.parent = parent;\n if (parent) {\n this.options = parent.options;\n this.stringify = parent.stringify;\n }\n ref2 = this.children;\n results = [];\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n results.push(child.setParent(this));\n }\n return results;\n };\n\n XMLNode.prototype.element = function(name, attributes, text) {\n var childNode, item, j, k, key, lastChild, len, len1, ref2, ref3, val;\n lastChild = null;\n if (attributes === null && (text == null)) {\n ref2 = [{}, null], attributes = ref2[0], text = ref2[1];\n }\n if (attributes == null) {\n attributes = {};\n }\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref3 = [attributes, text], text = ref3[0], attributes = ref3[1];\n }\n if (name != null) {\n name = getValue(name);\n }\n if (Array.isArray(name)) {\n for (j = 0, len = name.length; j < len; j++) {\n item = name[j];\n lastChild = this.element(item);\n }\n } else if (isFunction(name)) {\n lastChild = this.element(name.apply());\n } else if (isObject(name)) {\n for (key in name) {\n if (!hasProp.call(name, key)) continue;\n val = name[key];\n if (isFunction(val)) {\n val = val.apply();\n }\n if (!this.options.ignoreDecorators && this.stringify.convertAttKey && key.indexOf(this.stringify.convertAttKey) === 0) {\n lastChild = this.attribute(key.substr(this.stringify.convertAttKey.length), val);\n } else if (!this.options.separateArrayItems && Array.isArray(val) && isEmpty(val)) {\n lastChild = this.dummy();\n } else if (isObject(val) && isEmpty(val)) {\n lastChild = this.element(key);\n } else if (!this.options.keepNullNodes && (val == null)) {\n lastChild = this.dummy();\n } else if (!this.options.separateArrayItems && Array.isArray(val)) {\n for (k = 0, len1 = val.length; k < len1; k++) {\n item = val[k];\n childNode = {};\n childNode[key] = item;\n lastChild = this.element(childNode);\n }\n } else if (isObject(val)) {\n if (!this.options.ignoreDecorators && this.stringify.convertTextKey && key.indexOf(this.stringify.convertTextKey) === 0) {\n lastChild = this.element(val);\n } else {\n lastChild = this.element(key);\n lastChild.element(val);\n }\n } else {\n lastChild = this.element(key, val);\n }\n }\n } else if (!this.options.keepNullNodes && text === null) {\n lastChild = this.dummy();\n } else {\n if (!this.options.ignoreDecorators && this.stringify.convertTextKey && name.indexOf(this.stringify.convertTextKey) === 0) {\n lastChild = this.text(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertCDataKey && name.indexOf(this.stringify.convertCDataKey) === 0) {\n lastChild = this.cdata(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertCommentKey && name.indexOf(this.stringify.convertCommentKey) === 0) {\n lastChild = this.comment(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertRawKey && name.indexOf(this.stringify.convertRawKey) === 0) {\n lastChild = this.raw(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertPIKey && name.indexOf(this.stringify.convertPIKey) === 0) {\n lastChild = this.instruction(name.substr(this.stringify.convertPIKey.length), text);\n } else {\n lastChild = this.node(name, attributes, text);\n }\n }\n if (lastChild == null) {\n throw new Error(\"Could not create any elements with: \" + name + \". \" + this.debugInfo());\n }\n return lastChild;\n };\n\n XMLNode.prototype.insertBefore = function(name, attributes, text) {\n var child, i, newChild, refChild, removed;\n if (name != null ? name.type : void 0) {\n newChild = name;\n refChild = attributes;\n newChild.setParent(this);\n if (refChild) {\n i = children.indexOf(refChild);\n removed = children.splice(i);\n children.push(newChild);\n Array.prototype.push.apply(children, removed);\n } else {\n children.push(newChild);\n }\n return newChild;\n } else {\n if (this.isRoot) {\n throw new Error(\"Cannot insert elements at root level. \" + this.debugInfo(name));\n }\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.element(name, attributes, text);\n Array.prototype.push.apply(this.parent.children, removed);\n return child;\n }\n };\n\n XMLNode.prototype.insertAfter = function(name, attributes, text) {\n var child, i, removed;\n if (this.isRoot) {\n throw new Error(\"Cannot insert elements at root level. \" + this.debugInfo(name));\n }\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.element(name, attributes, text);\n Array.prototype.push.apply(this.parent.children, removed);\n return child;\n };\n\n XMLNode.prototype.remove = function() {\n var i, ref2;\n if (this.isRoot) {\n throw new Error(\"Cannot remove the root element. \" + this.debugInfo());\n }\n i = this.parent.children.indexOf(this);\n [].splice.apply(this.parent.children, [i, i - i + 1].concat(ref2 = [])), ref2;\n return this.parent;\n };\n\n XMLNode.prototype.node = function(name, attributes, text) {\n var child, ref2;\n if (name != null) {\n name = getValue(name);\n }\n attributes || (attributes = {});\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref2 = [attributes, text], text = ref2[0], attributes = ref2[1];\n }\n child = new XMLElement(this, name, attributes);\n if (text != null) {\n child.text(text);\n }\n this.children.push(child);\n return child;\n };\n\n XMLNode.prototype.text = function(value) {\n var child;\n if (isObject(value)) {\n this.element(value);\n }\n child = new XMLText(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.cdata = function(value) {\n var child;\n child = new XMLCData(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.comment = function(value) {\n var child;\n child = new XMLComment(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.commentBefore = function(value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.comment(value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.commentAfter = function(value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.comment(value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.raw = function(value) {\n var child;\n child = new XMLRaw(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.dummy = function() {\n var child;\n child = new XMLDummy(this);\n return child;\n };\n\n XMLNode.prototype.instruction = function(target, value) {\n var insTarget, insValue, instruction, j, len;\n if (target != null) {\n target = getValue(target);\n }\n if (value != null) {\n value = getValue(value);\n }\n if (Array.isArray(target)) {\n for (j = 0, len = target.length; j < len; j++) {\n insTarget = target[j];\n this.instruction(insTarget);\n }\n } else if (isObject(target)) {\n for (insTarget in target) {\n if (!hasProp.call(target, insTarget)) continue;\n insValue = target[insTarget];\n this.instruction(insTarget, insValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n instruction = new XMLProcessingInstruction(this, target, value);\n this.children.push(instruction);\n }\n return this;\n };\n\n XMLNode.prototype.instructionBefore = function(target, value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.instruction(target, value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.instructionAfter = function(target, value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.instruction(target, value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.declaration = function(version, encoding, standalone) {\n var doc, xmldec;\n doc = this.document();\n xmldec = new XMLDeclaration(doc, version, encoding, standalone);\n if (doc.children.length === 0) {\n doc.children.unshift(xmldec);\n } else if (doc.children[0].type === NodeType.Declaration) {\n doc.children[0] = xmldec;\n } else {\n doc.children.unshift(xmldec);\n }\n return doc.root() || doc;\n };\n\n XMLNode.prototype.dtd = function(pubID, sysID) {\n var child, doc, doctype, i, j, k, len, len1, ref2, ref3;\n doc = this.document();\n doctype = new XMLDocType(doc, pubID, sysID);\n ref2 = doc.children;\n for (i = j = 0, len = ref2.length; j < len; i = ++j) {\n child = ref2[i];\n if (child.type === NodeType.DocType) {\n doc.children[i] = doctype;\n return doctype;\n }\n }\n ref3 = doc.children;\n for (i = k = 0, len1 = ref3.length; k < len1; i = ++k) {\n child = ref3[i];\n if (child.isRoot) {\n doc.children.splice(i, 0, doctype);\n return doctype;\n }\n }\n doc.children.push(doctype);\n return doctype;\n };\n\n XMLNode.prototype.up = function() {\n if (this.isRoot) {\n throw new Error(\"The root node has no parent. Use doc() if you need to get the document object.\");\n }\n return this.parent;\n };\n\n XMLNode.prototype.root = function() {\n var node;\n node = this;\n while (node) {\n if (node.type === NodeType.Document) {\n return node.rootObject;\n } else if (node.isRoot) {\n return node;\n } else {\n node = node.parent;\n }\n }\n };\n\n XMLNode.prototype.document = function() {\n var node;\n node = this;\n while (node) {\n if (node.type === NodeType.Document) {\n return node;\n } else {\n node = node.parent;\n }\n }\n };\n\n XMLNode.prototype.end = function(options) {\n return this.document().end(options);\n };\n\n XMLNode.prototype.prev = function() {\n var i;\n i = this.parent.children.indexOf(this);\n if (i < 1) {\n throw new Error(\"Already at the first node. \" + this.debugInfo());\n }\n return this.parent.children[i - 1];\n };\n\n XMLNode.prototype.next = function() {\n var i;\n i = this.parent.children.indexOf(this);\n if (i === -1 || i === this.parent.children.length - 1) {\n throw new Error(\"Already at the last node. \" + this.debugInfo());\n }\n return this.parent.children[i + 1];\n };\n\n XMLNode.prototype.importDocument = function(doc) {\n var clonedRoot;\n clonedRoot = doc.root().clone();\n clonedRoot.parent = this;\n clonedRoot.isRoot = false;\n this.children.push(clonedRoot);\n return this;\n };\n\n XMLNode.prototype.debugInfo = function(name) {\n var ref2, ref3;\n name = name || this.name;\n if ((name == null) && !((ref2 = this.parent) != null ? ref2.name : void 0)) {\n return \"\";\n } else if (name == null) {\n return \"parent: <\" + this.parent.name + \">\";\n } else if (!((ref3 = this.parent) != null ? ref3.name : void 0)) {\n return \"node: <\" + name + \">\";\n } else {\n return \"node: <\" + name + \">, parent: <\" + this.parent.name + \">\";\n }\n };\n\n XMLNode.prototype.ele = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLNode.prototype.nod = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLNode.prototype.txt = function(value) {\n return this.text(value);\n };\n\n XMLNode.prototype.dat = function(value) {\n return this.cdata(value);\n };\n\n XMLNode.prototype.com = function(value) {\n return this.comment(value);\n };\n\n XMLNode.prototype.ins = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLNode.prototype.doc = function() {\n return this.document();\n };\n\n XMLNode.prototype.dec = function(version, encoding, standalone) {\n return this.declaration(version, encoding, standalone);\n };\n\n XMLNode.prototype.e = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLNode.prototype.n = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLNode.prototype.t = function(value) {\n return this.text(value);\n };\n\n XMLNode.prototype.d = function(value) {\n return this.cdata(value);\n };\n\n XMLNode.prototype.c = function(value) {\n return this.comment(value);\n };\n\n XMLNode.prototype.r = function(value) {\n return this.raw(value);\n };\n\n XMLNode.prototype.i = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLNode.prototype.u = function() {\n return this.up();\n };\n\n XMLNode.prototype.importXMLBuilder = function(doc) {\n return this.importDocument(doc);\n };\n\n XMLNode.prototype.replaceChild = function(newChild, oldChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.removeChild = function(oldChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.appendChild = function(newChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.hasChildNodes = function() {\n return this.children.length !== 0;\n };\n\n XMLNode.prototype.cloneNode = function(deep) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.normalize = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isSupported = function(feature, version) {\n return true;\n };\n\n XMLNode.prototype.hasAttributes = function() {\n return this.attribs.length !== 0;\n };\n\n XMLNode.prototype.compareDocumentPosition = function(other) {\n var ref, res;\n ref = this;\n if (ref === other) {\n return 0;\n } else if (this.document() !== other.document()) {\n res = DocumentPosition.Disconnected | DocumentPosition.ImplementationSpecific;\n if (Math.random() < 0.5) {\n res |= DocumentPosition.Preceding;\n } else {\n res |= DocumentPosition.Following;\n }\n return res;\n } else if (ref.isAncestor(other)) {\n return DocumentPosition.Contains | DocumentPosition.Preceding;\n } else if (ref.isDescendant(other)) {\n return DocumentPosition.Contains | DocumentPosition.Following;\n } else if (ref.isPreceding(other)) {\n return DocumentPosition.Preceding;\n } else {\n return DocumentPosition.Following;\n }\n };\n\n XMLNode.prototype.isSameNode = function(other) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.lookupPrefix = function(namespaceURI) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isDefaultNamespace = function(namespaceURI) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.lookupNamespaceURI = function(prefix) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isEqualNode = function(node) {\n var i, j, ref2;\n if (node.nodeType !== this.nodeType) {\n return false;\n }\n if (node.children.length !== this.children.length) {\n return false;\n }\n for (i = j = 0, ref2 = this.children.length - 1; 0 <= ref2 ? j <= ref2 : j >= ref2; i = 0 <= ref2 ? ++j : --j) {\n if (!this.children[i].isEqualNode(node.children[i])) {\n return false;\n }\n }\n return true;\n };\n\n XMLNode.prototype.getFeature = function(feature, version) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.setUserData = function(key, data, handler) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.getUserData = function(key) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.contains = function(other) {\n if (!other) {\n return false;\n }\n return other === this || this.isDescendant(other);\n };\n\n XMLNode.prototype.isDescendant = function(node) {\n var child, isDescendantChild, j, len, ref2;\n ref2 = this.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (node === child) {\n return true;\n }\n isDescendantChild = child.isDescendant(node);\n if (isDescendantChild) {\n return true;\n }\n }\n return false;\n };\n\n XMLNode.prototype.isAncestor = function(node) {\n return node.isDescendant(this);\n };\n\n XMLNode.prototype.isPreceding = function(node) {\n var nodePos, thisPos;\n nodePos = this.treePosition(node);\n thisPos = this.treePosition(this);\n if (nodePos === -1 || thisPos === -1) {\n return false;\n } else {\n return nodePos < thisPos;\n }\n };\n\n XMLNode.prototype.isFollowing = function(node) {\n var nodePos, thisPos;\n nodePos = this.treePosition(node);\n thisPos = this.treePosition(this);\n if (nodePos === -1 || thisPos === -1) {\n return false;\n } else {\n return nodePos > thisPos;\n }\n };\n\n XMLNode.prototype.treePosition = function(node) {\n var found, pos;\n pos = 0;\n found = false;\n this.foreachTreeNode(this.document(), function(childNode) {\n pos++;\n if (!found && childNode === node) {\n return found = true;\n }\n });\n if (found) {\n return pos;\n } else {\n return -1;\n }\n };\n\n XMLNode.prototype.foreachTreeNode = function(node, func) {\n var child, j, len, ref2, res;\n node || (node = this.document());\n ref2 = node.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (res = func(child)) {\n return res;\n } else {\n res = this.foreachTreeNode(child, func);\n if (res) {\n return res;\n }\n }\n }\n };\n\n return XMLNode;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLNodeList;\n\n module.exports = XMLNodeList = (function() {\n function XMLNodeList(nodes) {\n this.nodes = nodes;\n }\n\n Object.defineProperty(XMLNodeList.prototype, 'length', {\n get: function() {\n return this.nodes.length || 0;\n }\n });\n\n XMLNodeList.prototype.clone = function() {\n return this.nodes = null;\n };\n\n XMLNodeList.prototype.item = function(index) {\n return this.nodes[index] || null;\n };\n\n return XMLNodeList;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLProcessingInstruction,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLProcessingInstruction = (function(superClass) {\n extend(XMLProcessingInstruction, superClass);\n\n function XMLProcessingInstruction(parent, target, value) {\n XMLProcessingInstruction.__super__.constructor.call(this, parent);\n if (target == null) {\n throw new Error(\"Missing instruction target. \" + this.debugInfo());\n }\n this.type = NodeType.ProcessingInstruction;\n this.target = this.stringify.insTarget(target);\n this.name = this.target;\n if (value) {\n this.value = this.stringify.insValue(value);\n }\n }\n\n XMLProcessingInstruction.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLProcessingInstruction.prototype.toString = function(options) {\n return this.options.writer.processingInstruction(this, this.options.writer.filterOptions(options));\n };\n\n XMLProcessingInstruction.prototype.isEqualNode = function(node) {\n if (!XMLProcessingInstruction.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.target !== this.target) {\n return false;\n }\n return true;\n };\n\n return XMLProcessingInstruction;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLNode, XMLRaw,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLRaw = (function(superClass) {\n extend(XMLRaw, superClass);\n\n function XMLRaw(parent, text) {\n XMLRaw.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing raw text. \" + this.debugInfo());\n }\n this.type = NodeType.Raw;\n this.value = this.stringify.raw(text);\n }\n\n XMLRaw.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLRaw.prototype.toString = function(options) {\n return this.options.writer.raw(this, this.options.writer.filterOptions(options));\n };\n\n return XMLRaw;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLStreamWriter, XMLWriterBase,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLWriterBase = require('./XMLWriterBase');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLStreamWriter = (function(superClass) {\n extend(XMLStreamWriter, superClass);\n\n function XMLStreamWriter(stream, options) {\n this.stream = stream;\n XMLStreamWriter.__super__.constructor.call(this, options);\n }\n\n XMLStreamWriter.prototype.endline = function(node, options, level) {\n if (node.isLastRootNode && options.state === WriterState.CloseTag) {\n return '';\n } else {\n return XMLStreamWriter.__super__.endline.call(this, node, options, level);\n }\n };\n\n XMLStreamWriter.prototype.document = function(doc, options) {\n var child, i, j, k, len, len1, ref, ref1, results;\n ref = doc.children;\n for (i = j = 0, len = ref.length; j < len; i = ++j) {\n child = ref[i];\n child.isLastRootNode = i === doc.children.length - 1;\n }\n options = this.filterOptions(options);\n ref1 = doc.children;\n results = [];\n for (k = 0, len1 = ref1.length; k < len1; k++) {\n child = ref1[k];\n results.push(this.writeChildNode(child, options, 0));\n }\n return results;\n };\n\n XMLStreamWriter.prototype.attribute = function(att, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.attribute.call(this, att, options, level));\n };\n\n XMLStreamWriter.prototype.cdata = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.cdata.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.comment = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.comment.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.declaration = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.declaration.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.docType = function(node, options, level) {\n var child, j, len, ref;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n this.stream.write(this.indent(node, options, level));\n this.stream.write('<!DOCTYPE ' + node.root().name);\n if (node.pubID && node.sysID) {\n this.stream.write(' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"');\n } else if (node.sysID) {\n this.stream.write(' SYSTEM \"' + node.sysID + '\"');\n }\n if (node.children.length > 0) {\n this.stream.write(' [');\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.InsideTag;\n ref = node.children;\n for (j = 0, len = ref.length; j < len; j++) {\n child = ref[j];\n this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n this.stream.write(']');\n }\n options.state = WriterState.CloseTag;\n this.stream.write(options.spaceBeforeSlash + '>');\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.None;\n return this.closeNode(node, options, level);\n };\n\n XMLStreamWriter.prototype.element = function(node, options, level) {\n var att, child, childNodeCount, firstChildNode, j, len, name, prettySuppressed, ref, ref1;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n this.stream.write(this.indent(node, options, level) + '<' + node.name);\n ref = node.attribs;\n for (name in ref) {\n if (!hasProp.call(ref, name)) continue;\n att = ref[name];\n this.attribute(att, options, level);\n }\n childNodeCount = node.children.length;\n firstChildNode = childNodeCount === 0 ? null : node.children[0];\n if (childNodeCount === 0 || node.children.every(function(e) {\n return (e.type === NodeType.Text || e.type === NodeType.Raw) && e.value === '';\n })) {\n if (options.allowEmpty) {\n this.stream.write('>');\n options.state = WriterState.CloseTag;\n this.stream.write('</' + node.name + '>');\n } else {\n options.state = WriterState.CloseTag;\n this.stream.write(options.spaceBeforeSlash + '/>');\n }\n } else if (options.pretty && childNodeCount === 1 && (firstChildNode.type === NodeType.Text || firstChildNode.type === NodeType.Raw) && (firstChildNode.value != null)) {\n this.stream.write('>');\n options.state = WriterState.InsideTag;\n options.suppressPrettyCount++;\n prettySuppressed = true;\n this.writeChildNode(firstChildNode, options, level + 1);\n options.suppressPrettyCount--;\n prettySuppressed = false;\n options.state = WriterState.CloseTag;\n this.stream.write('</' + node.name + '>');\n } else {\n this.stream.write('>' + this.endline(node, options, level));\n options.state = WriterState.InsideTag;\n ref1 = node.children;\n for (j = 0, len = ref1.length; j < len; j++) {\n child = ref1[j];\n this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n this.stream.write(this.indent(node, options, level) + '</' + node.name + '>');\n }\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.None;\n return this.closeNode(node, options, level);\n };\n\n XMLStreamWriter.prototype.processingInstruction = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.processingInstruction.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.raw = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.raw.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.text = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.text.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdAttList = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdAttList.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdElement = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdElement.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdEntity = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdEntity.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdNotation = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdNotation.call(this, node, options, level));\n };\n\n return XMLStreamWriter;\n\n })(XMLWriterBase);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLStringWriter, XMLWriterBase,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLWriterBase = require('./XMLWriterBase');\n\n module.exports = XMLStringWriter = (function(superClass) {\n extend(XMLStringWriter, superClass);\n\n function XMLStringWriter(options) {\n XMLStringWriter.__super__.constructor.call(this, options);\n }\n\n XMLStringWriter.prototype.document = function(doc, options) {\n var child, i, len, r, ref;\n options = this.filterOptions(options);\n r = '';\n ref = doc.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n r += this.writeChildNode(child, options, 0);\n }\n if (options.pretty && r.slice(-options.newline.length) === options.newline) {\n r = r.slice(0, -options.newline.length);\n }\n return r;\n };\n\n return XMLStringWriter;\n\n })(XMLWriterBase);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLStringifier,\n bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },\n hasProp = {}.hasOwnProperty;\n\n module.exports = XMLStringifier = (function() {\n function XMLStringifier(options) {\n this.assertLegalName = bind(this.assertLegalName, this);\n this.assertLegalChar = bind(this.assertLegalChar, this);\n var key, ref, value;\n options || (options = {});\n this.options = options;\n if (!this.options.version) {\n this.options.version = '1.0';\n }\n ref = options.stringify || {};\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this[key] = value;\n }\n }\n\n XMLStringifier.prototype.name = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalName('' + val || '');\n };\n\n XMLStringifier.prototype.text = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar(this.textEscape('' + val || ''));\n };\n\n XMLStringifier.prototype.cdata = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n val = val.replace(']]>', ']]]]><![CDATA[>');\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.comment = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (val.match(/--/)) {\n throw new Error(\"Comment text cannot contain double-hypen: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.raw = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return '' + val || '';\n };\n\n XMLStringifier.prototype.attValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar(this.attEscape(val = '' + val || ''));\n };\n\n XMLStringifier.prototype.insTarget = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.insValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (val.match(/\\?>/)) {\n throw new Error(\"Invalid processing instruction value: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.xmlVersion = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (!val.match(/1\\.[0-9]+/)) {\n throw new Error(\"Invalid version number: \" + val);\n }\n return val;\n };\n\n XMLStringifier.prototype.xmlEncoding = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (!val.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/)) {\n throw new Error(\"Invalid encoding: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.xmlStandalone = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n if (val) {\n return \"yes\";\n } else {\n return \"no\";\n }\n };\n\n XMLStringifier.prototype.dtdPubID = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdSysID = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdElementValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdAttType = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdAttDefault = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdEntityValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdNData = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.convertAttKey = '@';\n\n XMLStringifier.prototype.convertPIKey = '?';\n\n XMLStringifier.prototype.convertTextKey = '#text';\n\n XMLStringifier.prototype.convertCDataKey = '#cdata';\n\n XMLStringifier.prototype.convertCommentKey = '#comment';\n\n XMLStringifier.prototype.convertRawKey = '#raw';\n\n XMLStringifier.prototype.assertLegalChar = function(str) {\n var regex, res;\n if (this.options.noValidation) {\n return str;\n }\n regex = '';\n if (this.options.version === '1.0') {\n regex = /[\\0-\\x08\\x0B\\f\\x0E-\\x1F\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n if (res = str.match(regex)) {\n throw new Error(\"Invalid character in string: \" + str + \" at index \" + res.index);\n }\n } else if (this.options.version === '1.1') {\n regex = /[\\0\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n if (res = str.match(regex)) {\n throw new Error(\"Invalid character in string: \" + str + \" at index \" + res.index);\n }\n }\n return str;\n };\n\n XMLStringifier.prototype.assertLegalName = function(str) {\n var regex;\n if (this.options.noValidation) {\n return str;\n }\n this.assertLegalChar(str);\n regex = /^([:A-Z_a-z\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF])([\\x2D\\.0-:A-Z_a-z\\xB7\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u203F\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF])*$/;\n if (!str.match(regex)) {\n throw new Error(\"Invalid character in name\");\n }\n return str;\n };\n\n XMLStringifier.prototype.textEscape = function(str) {\n var ampregex;\n if (this.options.noValidation) {\n return str;\n }\n ampregex = this.options.noDoubleEncoding ? /(?!&\\S+;)&/g : /&/g;\n return str.replace(ampregex, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\\r/g, '&#xD;');\n };\n\n XMLStringifier.prototype.attEscape = function(str) {\n var ampregex;\n if (this.options.noValidation) {\n return str;\n }\n ampregex = this.options.noDoubleEncoding ? /(?!&\\S+;)&/g : /&/g;\n return str.replace(ampregex, '&amp;').replace(/</g, '&lt;').replace(/\"/g, '&quot;').replace(/\\t/g, '&#x9;').replace(/\\n/g, '&#xA;').replace(/\\r/g, '&#xD;');\n };\n\n return XMLStringifier;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLText,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLText = (function(superClass) {\n extend(XMLText, superClass);\n\n function XMLText(parent, text) {\n XMLText.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing element text. \" + this.debugInfo());\n }\n this.name = \"#text\";\n this.type = NodeType.Text;\n this.value = this.stringify.text(text);\n }\n\n Object.defineProperty(XMLText.prototype, 'isElementContentWhitespace', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLText.prototype, 'wholeText', {\n get: function() {\n var next, prev, str;\n str = '';\n prev = this.previousSibling;\n while (prev) {\n str = prev.data + str;\n prev = prev.previousSibling;\n }\n str += this.data;\n next = this.nextSibling;\n while (next) {\n str = str + next.data;\n next = next.nextSibling;\n }\n return str;\n }\n });\n\n XMLText.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLText.prototype.toString = function(options) {\n return this.options.writer.text(this, this.options.writer.filterOptions(options));\n };\n\n XMLText.prototype.splitText = function(offset) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLText.prototype.replaceWholeText = function(content) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n return XMLText;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLDummy, XMLElement, XMLProcessingInstruction, XMLRaw, XMLText, XMLWriterBase, assign,\n hasProp = {}.hasOwnProperty;\n\n assign = require('./Utility').assign;\n\n NodeType = require('./NodeType');\n\n XMLDeclaration = require('./XMLDeclaration');\n\n XMLDocType = require('./XMLDocType');\n\n XMLCData = require('./XMLCData');\n\n XMLComment = require('./XMLComment');\n\n XMLElement = require('./XMLElement');\n\n XMLRaw = require('./XMLRaw');\n\n XMLText = require('./XMLText');\n\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n\n XMLDummy = require('./XMLDummy');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLWriterBase = (function() {\n function XMLWriterBase(options) {\n var key, ref, value;\n options || (options = {});\n this.options = options;\n ref = options.writer || {};\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this[\"_\" + key] = this[key];\n this[key] = value;\n }\n }\n\n XMLWriterBase.prototype.filterOptions = function(options) {\n var filteredOptions, ref, ref1, ref2, ref3, ref4, ref5, ref6;\n options || (options = {});\n options = assign({}, this.options, options);\n filteredOptions = {\n writer: this\n };\n filteredOptions.pretty = options.pretty || false;\n filteredOptions.allowEmpty = options.allowEmpty || false;\n filteredOptions.indent = (ref = options.indent) != null ? ref : ' ';\n filteredOptions.newline = (ref1 = options.newline) != null ? ref1 : '\\n';\n filteredOptions.offset = (ref2 = options.offset) != null ? ref2 : 0;\n filteredOptions.dontPrettyTextNodes = (ref3 = (ref4 = options.dontPrettyTextNodes) != null ? ref4 : options.dontprettytextnodes) != null ? ref3 : 0;\n filteredOptions.spaceBeforeSlash = (ref5 = (ref6 = options.spaceBeforeSlash) != null ? ref6 : options.spacebeforeslash) != null ? ref5 : '';\n if (filteredOptions.spaceBeforeSlash === true) {\n filteredOptions.spaceBeforeSlash = ' ';\n }\n filteredOptions.suppressPrettyCount = 0;\n filteredOptions.user = {};\n filteredOptions.state = WriterState.None;\n return filteredOptions;\n };\n\n XMLWriterBase.prototype.indent = function(node, options, level) {\n var indentLevel;\n if (!options.pretty || options.suppressPrettyCount) {\n return '';\n } else if (options.pretty) {\n indentLevel = (level || 0) + options.offset + 1;\n if (indentLevel > 0) {\n return new Array(indentLevel).join(options.indent);\n }\n }\n return '';\n };\n\n XMLWriterBase.prototype.endline = function(node, options, level) {\n if (!options.pretty || options.suppressPrettyCount) {\n return '';\n } else {\n return options.newline;\n }\n };\n\n XMLWriterBase.prototype.attribute = function(att, options, level) {\n var r;\n this.openAttribute(att, options, level);\n r = ' ' + att.name + '=\"' + att.value + '\"';\n this.closeAttribute(att, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.cdata = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<![CDATA[';\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += ']]>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.comment = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!-- ';\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += ' -->' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.declaration = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<?xml';\n options.state = WriterState.InsideTag;\n r += ' version=\"' + node.version + '\"';\n if (node.encoding != null) {\n r += ' encoding=\"' + node.encoding + '\"';\n }\n if (node.standalone != null) {\n r += ' standalone=\"' + node.standalone + '\"';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '?>';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.docType = function(node, options, level) {\n var child, i, len, r, ref;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n r += '<!DOCTYPE ' + node.root().name;\n if (node.pubID && node.sysID) {\n r += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.sysID) {\n r += ' SYSTEM \"' + node.sysID + '\"';\n }\n if (node.children.length > 0) {\n r += ' [';\n r += this.endline(node, options, level);\n options.state = WriterState.InsideTag;\n ref = node.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n r += this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n r += ']';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.element = function(node, options, level) {\n var att, child, childNodeCount, firstChildNode, i, j, len, len1, name, prettySuppressed, r, ref, ref1, ref2;\n level || (level = 0);\n prettySuppressed = false;\n r = '';\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r += this.indent(node, options, level) + '<' + node.name;\n ref = node.attribs;\n for (name in ref) {\n if (!hasProp.call(ref, name)) continue;\n att = ref[name];\n r += this.attribute(att, options, level);\n }\n childNodeCount = node.children.length;\n firstChildNode = childNodeCount === 0 ? null : node.children[0];\n if (childNodeCount === 0 || node.children.every(function(e) {\n return (e.type === NodeType.Text || e.type === NodeType.Raw) && e.value === '';\n })) {\n if (options.allowEmpty) {\n r += '>';\n options.state = WriterState.CloseTag;\n r += '</' + node.name + '>' + this.endline(node, options, level);\n } else {\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '/>' + this.endline(node, options, level);\n }\n } else if (options.pretty && childNodeCount === 1 && (firstChildNode.type === NodeType.Text || firstChildNode.type === NodeType.Raw) && (firstChildNode.value != null)) {\n r += '>';\n options.state = WriterState.InsideTag;\n options.suppressPrettyCount++;\n prettySuppressed = true;\n r += this.writeChildNode(firstChildNode, options, level + 1);\n options.suppressPrettyCount--;\n prettySuppressed = false;\n options.state = WriterState.CloseTag;\n r += '</' + node.name + '>' + this.endline(node, options, level);\n } else {\n if (options.dontPrettyTextNodes) {\n ref1 = node.children;\n for (i = 0, len = ref1.length; i < len; i++) {\n child = ref1[i];\n if ((child.type === NodeType.Text || child.type === NodeType.Raw) && (child.value != null)) {\n options.suppressPrettyCount++;\n prettySuppressed = true;\n break;\n }\n }\n }\n r += '>' + this.endline(node, options, level);\n options.state = WriterState.InsideTag;\n ref2 = node.children;\n for (j = 0, len1 = ref2.length; j < len1; j++) {\n child = ref2[j];\n r += this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n r += this.indent(node, options, level) + '</' + node.name + '>';\n if (prettySuppressed) {\n options.suppressPrettyCount--;\n }\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n }\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.writeChildNode = function(node, options, level) {\n switch (node.type) {\n case NodeType.CData:\n return this.cdata(node, options, level);\n case NodeType.Comment:\n return this.comment(node, options, level);\n case NodeType.Element:\n return this.element(node, options, level);\n case NodeType.Raw:\n return this.raw(node, options, level);\n case NodeType.Text:\n return this.text(node, options, level);\n case NodeType.ProcessingInstruction:\n return this.processingInstruction(node, options, level);\n case NodeType.Dummy:\n return '';\n case NodeType.Declaration:\n return this.declaration(node, options, level);\n case NodeType.DocType:\n return this.docType(node, options, level);\n case NodeType.AttributeDeclaration:\n return this.dtdAttList(node, options, level);\n case NodeType.ElementDeclaration:\n return this.dtdElement(node, options, level);\n case NodeType.EntityDeclaration:\n return this.dtdEntity(node, options, level);\n case NodeType.NotationDeclaration:\n return this.dtdNotation(node, options, level);\n default:\n throw new Error(\"Unknown XML node type: \" + node.constructor.name);\n }\n };\n\n XMLWriterBase.prototype.processingInstruction = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<?';\n options.state = WriterState.InsideTag;\n r += node.target;\n if (node.value) {\n r += ' ' + node.value;\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '?>';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.raw = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.text = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdAttList = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!ATTLIST';\n options.state = WriterState.InsideTag;\n r += ' ' + node.elementName + ' ' + node.attributeName + ' ' + node.attributeType;\n if (node.defaultValueType !== '#DEFAULT') {\n r += ' ' + node.defaultValueType;\n }\n if (node.defaultValue) {\n r += ' \"' + node.defaultValue + '\"';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdElement = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!ELEMENT';\n options.state = WriterState.InsideTag;\n r += ' ' + node.name + ' ' + node.value;\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdEntity = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!ENTITY';\n options.state = WriterState.InsideTag;\n if (node.pe) {\n r += ' %';\n }\n r += ' ' + node.name;\n if (node.value) {\n r += ' \"' + node.value + '\"';\n } else {\n if (node.pubID && node.sysID) {\n r += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.sysID) {\n r += ' SYSTEM \"' + node.sysID + '\"';\n }\n if (node.nData) {\n r += ' NDATA ' + node.nData;\n }\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdNotation = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!NOTATION';\n options.state = WriterState.InsideTag;\n r += ' ' + node.name;\n if (node.pubID && node.sysID) {\n r += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.pubID) {\n r += ' PUBLIC \"' + node.pubID + '\"';\n } else if (node.sysID) {\n r += ' SYSTEM \"' + node.sysID + '\"';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.openNode = function(node, options, level) {};\n\n XMLWriterBase.prototype.closeNode = function(node, options, level) {};\n\n XMLWriterBase.prototype.openAttribute = function(att, options, level) {};\n\n XMLWriterBase.prototype.closeAttribute = function(att, options, level) {};\n\n return XMLWriterBase;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLDOMImplementation, XMLDocument, XMLDocumentCB, XMLStreamWriter, XMLStringWriter, assign, isFunction, ref;\n\n ref = require('./Utility'), assign = ref.assign, isFunction = ref.isFunction;\n\n XMLDOMImplementation = require('./XMLDOMImplementation');\n\n XMLDocument = require('./XMLDocument');\n\n XMLDocumentCB = require('./XMLDocumentCB');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n XMLStreamWriter = require('./XMLStreamWriter');\n\n NodeType = require('./NodeType');\n\n WriterState = require('./WriterState');\n\n module.exports.create = function(name, xmldec, doctype, options) {\n var doc, root;\n if (name == null) {\n throw new Error(\"Root element needs a name.\");\n }\n options = assign({}, xmldec, doctype, options);\n doc = new XMLDocument(options);\n root = doc.element(name);\n if (!options.headless) {\n doc.declaration(options);\n if ((options.pubID != null) || (options.sysID != null)) {\n doc.dtd(options);\n }\n }\n return root;\n };\n\n module.exports.begin = function(options, onData, onEnd) {\n var ref1;\n if (isFunction(options)) {\n ref1 = [options, onData], onData = ref1[0], onEnd = ref1[1];\n options = {};\n }\n if (onData) {\n return new XMLDocumentCB(options, onData, onEnd);\n } else {\n return new XMLDocument(options);\n }\n };\n\n module.exports.stringWriter = function(options) {\n return new XMLStringWriter(options);\n };\n\n module.exports.streamWriter = function(stream, options) {\n return new XMLStreamWriter(stream, options);\n };\n\n module.exports.implementation = new XMLDOMImplementation();\n\n module.exports.nodeType = NodeType;\n\n module.exports.writerState = WriterState;\n\n}).call(this);\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\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 \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\n/**\n * Linear delay\n * @param {number | undefined} delayFactor - delay factor in milliseconds (default: 100)\n * @returns {function} (retryNumber: number, error: AxiosError | undefined) => number\n */\nexport function linearDelay(delayFactor = 100) {\n return (retryNumber = 0, error = undefined) => {\n const delay = retryNumber * delayFactor;\n return Math.max(delay, retryAfter(error));\n };\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions, resetLastRequestTime = false) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n if (!currentState.lastRequestTime || resetLastRequestTime) {\n currentState.lastRequestTime = Date.now();\n }\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions, true);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.linearDelay = linearDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import '../assets/index-7UBhRcxV.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { Folder, Permission, davRootPath, FileType, davGetClient, davRemoteURL, validateFilename, InvalidFilenameError, getUniqueName, NewMenuEntryCategory, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry, { exponentialDelay } from \"axios-retry\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nimport { spawnDialog, showInfo, showWarning } from \"@nextcloud/dialogs\";\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n logger.debug(\"Created temporary upload workspace\", { url });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n /**\n * Add multiple children at once\n * @param files The files to add\n */\n async addChildren(files) {\n for (const file of files) {\n await this.addChild(file);\n }\n }\n /**\n * Add a child to the directory.\n * If it is a nested child the parents will be created if not already exist.\n * @param file The child to add\n */\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n const child = new Directory(`${rootPath}${file.name}`);\n await child.addChildren(entries);\n this._children.set(file.name, child);\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n await this._children.get(base).addChild(file);\n } else {\n const child = new Directory(`${rootPath}${base}`);\n await child.addChild(file);\n this._children.set(base, child);\n }\n }\n }\n }\n}\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"abusaud, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli <alimahwer@yahoo.com>, 2024\\nabusaud, 2024\\n\" }, \"msgstr\": [\"Last-Translator: abusaud, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" هو اسم ممنوع لملف أو مجلد.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" هو نوع ممنوع أن يكون لملف.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" هو غير مسموح به في اسم ملف أو مجلد.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفان متعارضان في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفات متعارضة في {dirname}\", \"{count} ملفات متعارضة في {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"بضع ثوانٍ متبقية\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['غير مسموح ان ينتهي اسم الملف بـ \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"اسم ملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معروف\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"اسم ملف جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"رفع الملفات\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"تمّ تجاوز الرفع\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['رفع \"{folder}\" تمّ تجاوزه'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp <enolp@softastur.org>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev <microphprashad@gmail.com>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev <microphprashad@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera <marcriera@softcatala.org>, 2022\\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\\nMartin Hankovec, 2024\\nAppukonrad <appukonrad@gmail.com>, 2024\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít jako název souboru či složky.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ není povoleného typu souboru.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít v rámci názvu souboru či složky.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvořit nový\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Názvy souborů nemohou končit na „{segment}“.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný název souboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový název souboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Přejmenovat\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Přeskočit\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrát\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrát složky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrát ze zařízení\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávání bylo zrušeno\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrání bylo přeskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Nahrání „{folder}“ bylo přeskočeno\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRasmus Rosendahl-Kaa, 2024\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tilladt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opret ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavne må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldigt filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nyt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøb\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Spring over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload fra enhed\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload er blevet annulleret\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload er blevet sprunget over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload af \"{folder}\" er blevet sprunget over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andy Scherzinger <info@andy-scherzinger.de>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMartin Wilichowski, 2024\\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is a forbidden file or folder name.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is a forbidden file type.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is not allowed inside a file or folder name.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Create new\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filenames must not end with \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Invalid filename\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"New filename\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rename\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Skip\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload folders\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload from device\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload has been cancelled\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload has been skipped\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload of \"{folder}\" has been skipped'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"You can either rename the file, skip this file or cancel the whole operation.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa de imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Cargar archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Cargar carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Cargar desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Carga cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la carga\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿Cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} archivos en conflicto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} archivo en conflicto en {dirname}\", \"{count} archivos en conflicto en {dirname}\", \"{count} archivo en conflicto en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Cuáles archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"teemue, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\nteemue, 2024\\n\" }, \"msgstr\": [\"Last-Translator: teemue, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" on kielletty tiedoston tai hakemiston nimi.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" on kielletty tiedostotyyppi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ei ole sallittu tiedoston tai hakemiston nimessä.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} tiedoston ristiriita\", \"{count} tiedoston ristiriita\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tiedoston ristiriita kansiossa {dirname}\", \"{count} tiedoston ristiriita kansiossa {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Peruuta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Peruuta koko toimenpide\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jatka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Luo uusi\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemassa oleva versio\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tiedoston nimi ei saa päättyä \"{segment}\"'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Kielletty/väärä tiedoston nimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimeisin muokkauspäivä on tuntematon\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uusi tiedostonimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uusi versio\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Esikatsele kuva\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Nimeä uudelleen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Valitse kaikki valintaruudut\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Valitse kaikki olemassa olevat tiedostot\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Valitse kaikki uudet tiedostot\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ohita\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ohita tämä tiedosto\", \"Ohita {count} tiedostoa\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tuntematon koko\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Lähetä\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Lähetä kansioita\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Lähetä laitteelta\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Lähetys on peruttu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Lähetys on ohitettu\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Hakemiston \"{folder}\" lähetys on ohitettu'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Lähetyksen edistyminen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mitkä tiedostot haluat säilyttää?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi.\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Arnaud Cazenave, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\nJérôme HERBINET, 2024\\nArnaud Cazenave, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Arnaud Cazenave, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" est un nom de fichier ou de dossier interdit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" est un type de fichier interdit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les téléversements\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Créer un nouveau\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Le nom des fichiers ne doit pas finir par \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fichier invalide\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nouveau nom de fichier\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renommer\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Téléverser\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléverser des fichiers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Téléverser des dossiers\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Téléverser depuis l'appareil\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Le téléversement a été annulé\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Le téléversement a été ignoré\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Le téléversement de \"{folder}\" a été ignoré'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléversement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Is ainm toirmiscthe comhaid nó fillteáin é \"{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Is cineál comhaid toirmiscthe é \"{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`Ní cheadaítear \"{segment}\" taobh istigh d'ainm comhaid nó fillteáin.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soicind fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Níor cheart go gcríochnaíonn comhaid chomhad le \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ainm comhaid nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uaslódáil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó ghléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Léiríodh an uaslódáil\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Léiríodh an uaslódáil \"{folder}\".'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» é un nome vedado para un ficheiro ou cartafol.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» é un tipo de ficheiro vedado.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Os nomes de ficheiros non deben rematar con «{segment}».\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O envío foi omitido\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"O envío de «{folder}» foi omitido\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Tiltott fájl- vagy mappanév: „{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Tiltott fájltípus: „{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Nem megengedett egy fájl- vagy mappanévben: „{segment}\".'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fájlt érintő konfliktus\", \"{count} fájlt érintő konfliktus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fájlt érintő konfliktus a mappában: {dirname}\", \"{count}fájlt érintő konfliktus a mappában: {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Mégse\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Teljes művelet megszakítása\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tovább\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Új létrehozása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Jelenlegi változat\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Fájlnevek nem végződhetnek erre: „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Érvénytelen fájlnév\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Utolsó módosítás dátuma ismeretlen\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Új fájlnév\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Új verzió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Kép előnézete\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Átnevezés\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Minden jelölőnégyzet kijelölése\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Minden jelenlegi fájl kijelölése\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Minden új fájl kijelölése\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Kihagyás\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ezen fájl kihagyása\", \"{count}fájl kihagyása\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ismeretlen méret\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Feltöltés\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappák feltöltése\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Feltöltés eszközről\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Feltöltés meg lett szakítva\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Feltöltés át lett ugorva\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}” feltöltése át lett ugorva\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Feltöltési folyamat\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mely fájlokat kívánja megtartani?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"A folytatáshoz minden fájlból legalább egy verziót ki kell választani.\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly <linerly@proton.me>, 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nEmpty Slot Filler, 2023\\nLinerly <linerly@proton.me>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly <linerly@proton.me>, 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"albanobattistella <albanobattistella@gmail.com>, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFrancesco Sercia, 2024\\nalbanobattistella <albanobattistella@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" è un nome di file o cartella proibito.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"è un tipo di file proibito.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" non è consentito all'interno di un nome di file o cartella.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annulla\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annulla l'intera operazione\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nuovo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['I nomi dei file non devono terminare con \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome file non valido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuovo nome file\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rinomina\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Salta\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Caricamento\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carica cartelle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carica dal dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Caricamento annullato\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Il caricamento è stato saltato\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Il caricamento di \"{folder}\" è stato saltato'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso del caricamento\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"È possibile rinominare il file, ignorarlo o annullare l'intera operazione.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"ja\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"kshimohata, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\nkshimohata, 2024\\n\" }, \"msgstr\": [\"Last-Translator: kshimohata, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" は禁止されているファイルまたはフォルダ名です。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" は禁止されているファイルタイプです。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ファイルまたはフォルダ名に \"{segment}\" を含めることはできません。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ファイル数の競合\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} で {count} 個のファイルが競合しています\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"キャンセル\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"すべての操作をキャンセルする\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"続ける\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新規作成\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既存バージョン\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ファイル名の末尾に \"{segment}\" を付けることはできません。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無効なファイル名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最終更新日不明\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新しいファイル名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新しいバージョン\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"プレビュー画像\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"名前を変更\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"すべて選択\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"すべての既存ファイルを選択\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"すべての新規ファイルを選択\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"スキップ\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} 個のファイルをスキップする\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"サイズ不明\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"アップロード\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップロード\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"フォルダのアップロード\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"デバイスからのアップロード\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"アップロードはキャンセルされました\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"アップロードがスキップされました\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" のアップロードがスキップされました'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"アップロード進行状況\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"どのファイルを保持しますか?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров <sasetodorov@gmail.com>, 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров <sasetodorov@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Roger Knutsen, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRoger Knutsen, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Roger Knutsen, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tillatt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hele operasjonen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opprett ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavn må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldig filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøp\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hopp over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Last opp mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Last opp fra enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Opplastingen er kansellert\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Opplastingen er hoppet over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Opplasting av \"{folder}\" er hoppet over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico <rico-schwab@hotmail.com>, 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico <rico-schwab@hotmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” to zabroniona nazwa pliku lub folderu.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” jest zabronionym typem pliku.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Utwórz nowe\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Nazwy plików nie mogą kończyć się na „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nieprawidłowa nazwa pliku\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nowa nazwa pliku\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Zmiana nazwy\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie pola wyboru\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pomiń\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Prześlij\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Prześlij foldery\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Prześlij z urządzenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Przesyłanie zostało anulowane\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Przesyłanie zostało pominięte\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Przesyłanie „{folder}” zostało pominięte\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Paulo Schopf, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\\nPaulo Schopf, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Paulo Schopf, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de arquivo proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido dentro de um nome de arquivo ou pasta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes dos arquivos não devem terminar com \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de arquivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de arquivo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pular\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carregar do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O upload foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O upload foi pulado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O upload de \"{folder}\" foi ignorado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva <mmsrs@sky.com>, 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva <mmsrs@sky.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Александр, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nВлад, 2024\\nAlex <fedotov22091982@gmail.com>, 2024\\nRoman Stepanov, 2024\\nMaksim Sukharev, 2024\\nАлександр, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Александр, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» — это запрещенное имя файла или папки.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» — это запрещенный тип файла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» не допускается в имени файла или папки.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отменить\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена файлов не должны заканчиваться на «{segment}»\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неверное имя файла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Новое имя файла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Выбрать все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустить\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Загрузить\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузить файлы\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузить папки\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузить с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Загрузка была пропущена\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Загрузка «{folder}» была пропущена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Прогресс загрузки\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Вы можете переименовать файл, пропустить этот файл или отменить всю операцию.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJozef Gaal <preklady@mayday.sk>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ je zakázaný názov súboru alebo priečinka.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je zákazaný typ súboru.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}“ je zakázané v názve súboru alebo adresára.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} súbor má konflikt\", \"{count} súbory majú konflikt\", \"{count} súborov má konflikt\", \"{count} súborov má konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} súborový konflikt v {dirname}\", \"{count} súborové konflikty v {dirname}\", \"{count} súborových konfliktov v {dirname}\", \"{count} súborových konfliktov v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúnd zostáva\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} zostáva\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zostáva niekoľko sekúnd\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušiť\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušiť celú operáciu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušiť nahrávanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovať\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvoriť nové\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovanie zostávajúceho času\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existujúca verzia\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Názvy súborov nesmú končiť znakom \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný názov súboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dátum poslednej úpravy neznámy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nový\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový názov súboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verzia\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastavené\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhľad obrázka\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Premenovať\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označiť všetky výberové políčka\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrať všetky existujúce súbory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrať všetky nové súbory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskočiť\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskočiť tento súbor\", \"Preskočiť {count} súbory\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súborov\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznáma veľkosť\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrať\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrať súbory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrať priečinky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrať zo zariadenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávanie bolo zrušené\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrávanie bolo preskočené\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nahrávanie \"{folder}\" bolo preskočené'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Priebeh nahrávania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Ktoré súbory chcete ponechať?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru.\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJan Kraljič <jan.kraljic@patware.eu>, 2024\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" je prepovedano ime datoteka ali mape.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je prepovedan tip datoteke.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ni dovoljeno v imenu datoteke ali mape.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"1{count} datoteka je v konfliktu\", \"1{count} datoteki sta v konfiktu\", \"1{count} datotek je v konfliktu\", \"{count} datotek je v konfliktu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} datoteka je v konfiktu v {dirname}\", \"{count} datoteki sta v konfiktu v {dirname}\", \"{count} datotek je v konfiktu v {dirname}\", \"{count} konfliktov datotek v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Prekliči\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Prekliči celotni postopek\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Nadaljuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Ustvari nov\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjujem čas do konca\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Obstoječa različica\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Imena datotek se ne smejo končati s \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nepravilno ime datoteke\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum zadnje spremembe neznan\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo ime datoteke\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova različica\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Predogled slike\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Preimenuj\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Izberi vsa potrditvena polja\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Označi vse obstoječe datoteke\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Označi vse nove datoteke\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskoči\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskoči datoteko\", \"Preskoči {count} datoteki\", \"Preskoči {count} datotek\", \"Preskoči {count} datotek\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznana velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Naloži\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Naloži datoteke\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Naloži mape\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Naloži iz naprave\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nalaganje je bilo preklicano\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nalaganje je bilo preskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nalaganje \"{folder}\" je bilo preskočeno'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Napredek nalaganja\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Katere datoteke želite obdržati?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Izbrati morate vsaj eno različico vsake datoteke da nadaljujete.\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” је забрањено име фајла или фолдера.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” је забрањен тип фајла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}” није дозвољено унутар имена фајла или фолдера.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Откажи\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отказује комплетну операцију\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Креирај ново\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена фајлова не смеју да се завршавају на „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име долазног фајла ће се додати број.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неисправно име фајла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ново име фајла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Промени име\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Прескочи\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Отпреми\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Отпреми фолдере\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Отпреми са уређаја\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Отпремање је прескочено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Отпремање „{folder}”је прескочено\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" är ett förbjudet fil- eller mappnamn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" är en förbjuden filtyp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" är inte tillåtet i ett fil- eller mappnamn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnamn får inte sluta med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnamn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Ladda upp\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Uppladdningen har hoppats över\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Uppladdningen av \"{folder}\" har hoppats över'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat <ppnplus@protonmail.com>, 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" dosya ya da klasör adına izin verilmiyor.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" dosya türüne izin verilmiyor.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Bir dosya ya da klasör adında \"{segment}\" ifadesine izin verilmiyor.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dosya adları \"{segment}\" ile bitmemeli.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yeni dosya adı\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yükle\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yükleme atlandı\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" klasörünün yüklenmesi atlandı'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [`\"{segment}\" не є дозволеним ім'ям файлу або каталогу.`] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" не є дозволеним типом файлу.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" не дозволене сполучення символів в назві файлу або каталогу.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Створити новий\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Ім'я файлів не можуть закінчуватися на \"{segment}\".`] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Недійсне ім'я файлу\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Нове ім'я файлу\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Перейменувати\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустити\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Завантажити\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Завантажити каталоги\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Завантажити з пристрою\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Завантаження пропущено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Завантаження \"{folder}\" пропущено'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gloryandel, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGloryandel, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gloryandel, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是被禁止的文件名或文件夹名。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是被禁止的文件类型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允许包含在文件名或文件夹名中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整个操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新建\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"服务端版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['文件名不得以 \"{segment}\" 结尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"如果同时选择两个版本,则上传文件的名称中将添加一个数字。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"无效文件名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新文件名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"上传版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"保留所有服务端版本\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"保留所有上传版本\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳过\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上传文件夹\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"从设备上传\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上传已取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上传已跳过\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['已跳过上传\"{folder}\"'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上传进度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以重命名文件、跳过此文件或取消整个操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择保留一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案或資料夾名稱。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案類型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允許出現在檔案或資料夾名稱中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"創建新\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['檔案名不得以 \"{segment}\" 結尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無效的檔案名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新檔案名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重新命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳過\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上傳資料夾\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"從裝置上傳\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上傳已被取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上傳已被跳過\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 的上傳已被跳過'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以選擇重新命名檔案、跳過此檔案或取消整個操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 <s8321414@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n _customHeaders;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({\n // Maximum number of concurrent uploads\n // @ts-expect-error TS2339 Object has no defined properties\n concurrency: getCapabilities().files?.chunked_upload?.max_parallel_count ?? 5\n });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n this._customHeaders = {};\n if (!destinationFolder) {\n const source = `${davRemoteURL}${davRootPath}`;\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder || folder.type !== FileType.Folder || !folder.source) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get registered custom headers for uploads\n */\n get customHeaders() {\n return structuredClone(this._customHeaders);\n }\n /**\n * Set a custom header\n * @param name The header to set\n * @param value The string value\n */\n setCustomHeader(name, value = \"\") {\n this._customHeaders[name] = value;\n }\n /**\n * Unset a custom header\n * @param name The header to unset\n */\n deleteCustomerHeader(name) {\n delete this._customHeaders[name];\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n if (this._uploadQueue.length === 0 && this._jobQueue.size === 0) {\n return;\n }\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n logger.debug(\"Uploader state reset\");\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array<File|FileSystemEntry>} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conflicts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n if (!callback) {\n callback = async (files2) => files2;\n }\n return new PCancelable(async (resolve, reject, onCancel) => {\n const rootFolder = new Directory(\"\");\n await rootFolder.addChildren(files);\n const target = `${this.root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const upload2 = new Upload(target, false, 0, rootFolder);\n upload2.status = Status$1.UPLOADING;\n this._uploadQueue.push(upload2);\n logger.debug(\"Starting new batch upload\", { target });\n try {\n const client = davGetClient(this.root, this._customHeaders);\n const promise = this.uploadDirectory(destination, rootFolder, callback, client);\n onCancel(() => promise.cancel());\n const uploads = await promise;\n upload2.status = Status$1.FINISHED;\n resolve(uploads);\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n } finally {\n this._notifyAll(upload2);\n this.updateStats();\n }\n });\n }\n /**\n * Helper to create a directory wrapped inside an Upload class\n * @param destination Destination where to create the directory\n * @param directory The directory to create\n * @param client The cached WebDAV client\n */\n createDirectory(destination, directory, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n if (!directory.name) {\n throw new Error(\"Can not create empty directory\");\n }\n const currentUpload = new Upload(rootPath, false, 0, directory);\n this._uploadQueue.push(currentUpload);\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n await this._jobQueue.add(async () => {\n currentUpload.status = Status$1.UPLOADING;\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n resolve(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n currentUpload.status = Status$1.FINISHED;\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n currentUpload.status = Status$1.FAILED;\n reject(error);\n }\n } finally {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n });\n });\n }\n // Helper for uploading directories (recursively)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n logger.debug(\"Upload canceled by user\", { directory });\n reject(t(\"Upload has been cancelled\"));\n return;\n } else if (selectedForUpload.length === 0 && directory.children.length > 0) {\n logger.debug(\"Skipping directory, as all files were skipped by user\", { directory });\n resolve([]);\n return;\n }\n const directories = [];\n const uploads = [];\n abort.signal.addEventListener(\"abort\", () => {\n directories.forEach((upload2) => upload2.cancel());\n uploads.forEach((upload2) => upload2.cancel());\n });\n logger.debug(\"Start directory upload\", { directory });\n try {\n if (directory.name) {\n uploads.push(this.createDirectory(destination, directory, client));\n await uploads.at(-1);\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n reject(e);\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n this._jobQueue.onIdle().then(() => this.reset());\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nfunction showInvalidFilenameDialog(error) {\n const InvalidFilenameDialog = defineAsyncComponent(() => import(\"./InvalidFilenameDialog-B2HT8YV2.mjs\"));\n const { promise, reject, resolve } = Promise.withResolvers();\n spawnDialog(\n InvalidFilenameDialog,\n {\n error,\n validateFilename\n },\n (...rest) => {\n const [{ skip, rename }] = rest;\n if (skip) {\n resolve(false);\n } else if (rename) {\n resolve(rename);\n } else {\n reject();\n }\n }\n );\n return promise;\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nfunction uploadConflictHandler(contentsCallback) {\n return async (nodes, path) => {\n try {\n const content = await contentsCallback(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n try {\n validateFilename(file.name);\n filesToUpload.push(file);\n } catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n logger.error(`Unexpected error while validating ${file.name}`, { error });\n throw error;\n }\n let newName = await showInvalidFilenameDialog(error);\n if (newName !== false) {\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n }\n if (filesToUpload.length === 0 && nodes.length > 0) {\n const folder = basename(path);\n showInfo(\n folder ? t('Upload of \"{folder}\" has been skipped', { folder }) : t(\"Upload has been skipped\")\n );\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n };\n}\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n /**\n * Allow to disable the \"new\"-menu for this UploadPicker instance\n * @default false\n */\n noMenu: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n /**\n * Overwrite forbidden characters (by default the capabilities of the server are used)\n * @deprecated Deprecated and will be removed in the next major version\n */\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n buttonLabel() {\n return this.noMenu ? t(\"Upload\") : t(\"New\");\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return this.buttonLabel;\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Handle clicking a new-menu entry\n * @param entry The entry that was clicked\n */\n async onClick(entry) {\n entry.handler(\n this.destination,\n await this.getContent().catch(() => [])\n );\n },\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, uploadConflictHandler(this.getContent)).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [(_vm.noMenu || _vm.newFileMenuEntries.length === 0) && !_vm.canUploadFolders ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"aria-label\": _vm.buttonLabel, \"menu-name\": _vm.buttonName, \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-folder\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), !_vm.noMenu ? _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }) : _vm._e(), !_vm.noMenu && _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), !_vm.noMenu && _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesOther, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"c5517ef8\"\n);\nconst UploadPicker = __component__.exports;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (forceRecreate || window._nc_uploader === void 0) {\n window._nc_uploader = new Uploader(isPublic);\n }\n return window._nc_uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-qDivo0Si.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nexport {\n Status$1 as S,\n UploadPicker as U,\n isFileSystemEntry as a,\n n as b,\n getConflicts as c,\n uploadConflictHandler as d,\n Upload as e,\n Uploader as f,\n getUploader as g,\n hasConflict as h,\n isFileSystemFileEntry as i,\n Status as j,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","import Toastify from \"toastify-js\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali <alimahwer@yahoo.com>, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAli <alimahwer@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali <alimahwer@yahoo.com>, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" لا يصلح كاسم مجلد.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" غير مسموح به كاسم مجلد'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" غير مسموح به داخل اسم مجلد.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"كل الملفات\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"إختَر\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"إختَر {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملفات\", \"إختَر %n ملف\", \"إختَر %n ملف\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"نسخ\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"نسخٌ إلى {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"تعذّر إنشاء المجلد الجديد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"يتعذّر تحميل إعدادات الملفات\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"يتعذّر تحميل مناظير views الملفات\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"أنشِيءْ مجلّداً\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"مُنتقِي المنظور الحالي\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"المُفضَّلة\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فلترة قائمة الملفات\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"اسم المجلد لا يمكن أن يكون فارغاً.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"البداية\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"مُعدَّل\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"أُنقُل\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"أُنقُل إلى {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"الاسم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"مٌجلّد جديد\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"اسم المجلد الجديد\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"لا توجد ملفات هنا\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"لا توجد ملفات تتطابق مع الفلتر الذي وضعته\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"لا توجد ملفات مُطابِقة\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"الحالي\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"حدِّد كل المداخل\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"إختَر المدخل\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"إختر سطر الـ {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"الحجم\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"تراجع\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"قُم برفع محتوىً أو قُم بمزامنة أجهزتك!\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2024\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nenolp <enolp@softastur.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2024\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Nun se permite'l caráuter «/» dientro'l nome de les carpetes.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tolos ficheros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoyer\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoyer «{ficheru}»\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoyer %n ficheru\", \"Escoyer %n ficheros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nun se pudo crear la carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nun se pudo cargar la configuración de los ficheros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nun se pudieron cargar les vistes de los ficheros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un direutoriu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de la vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Equí apaecen los ficheros y les carpetes que metas en Favoritos.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Equí apaecen los fichero y les carpetes que modificares apocayá.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Peñerar la llista de ficheros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nome de la carpeta nun pue tar baleru.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Aniciu\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificóse\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nueva\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nome de carpeta nuevu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Equí nun hai nengún ficheru\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nun s'atopó nengún ficheru que concasare cola peñera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nun hai nengún ficheru que concase\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"De recién\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleicionar toles entraes\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleicionar la entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleicionar la filera de: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamañu\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Xubi dalgún elementu o sincroniza colos tos preseos!\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Disober\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sergi Font, 2024\", \"Language-Team\": \"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nv v <e670006006@gmail.com>, 2024\\nMarc Riera <marcriera@softcatala.org>, 2024\\nSergi Font, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sergi Font, 2024\\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" és un nom de carpeta no vàlid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no és permès en el nom de carpeta'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no és permès en el nom de carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tots els fitxers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Tria\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Tria {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Tria %n fitxer\", \"Tria %n fitxers\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No s'ha pogut crear la carpeta nova\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No es poden carregar fitxers de configuració\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No es poden carregar fitxers de vistes\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de visualització actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferits\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes recentment modificats es mostraran aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar llistat de fitxers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nom de la carpeta no pot estar buit.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inici\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Data de modificació\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Desplaça\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Desplaça a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Crea\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nova\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom de la carpeta nova\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hi ha cap fitxer\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No s'ha trobat cap fitxer que coincideixi amb el filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hi ha cap fitxer que coincideixi\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecciona totes les entrades\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecciona l'entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecciona la fila per a {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mida\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfés\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2020\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:187\" }, \"msgstr\": [\"Zpět\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}“ není platný název složky.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}“ není povolený název složky.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Veškeré soubory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Zvolit\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Zvolit {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Zvolte %n soubor\", \"Zvolte %n soubory\", \"Zvolte %n souborů\", \"Zvolte %n soubory\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Zkopírovat\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Zkopírovat do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Novou složku se nepodařilo vytvořit\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodařilo se načíst nastavení pro soubory\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodařilo se načíst pohledy souborů\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvořit složku\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výběr stávajícího zobrazení\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Oblíbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které označíte jako oblíbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které jste nedávno pozměnili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovat seznam souborů\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Složku je třeba nějak nazvat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domů\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Změněno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Přesounout\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Přesunout do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Název\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nová složka\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Název pro novou složku\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nejsou zde žádné soubory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenalezeny žádné soubory odpovídající vašemu filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žádné odpovídající soubory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávné\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrat všechny položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrat položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vybrat řádek pro {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Zpět\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldigt mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tilladt mappenavn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tilladt i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vælg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vælg {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vælg %n fil\", \"Vælg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke oprette den nye mappe\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Filindstillingerne kunne ikke indlæses\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke indlæse filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opret mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuel visningsvælger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper, du markerer som foretrukne, vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper, du for nylig har ændret, vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer fil liste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavnet må ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ændret\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flyt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flyt til {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ny mappe navn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Der blev ikke fundet nogen filer, der matcher dit filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen matchende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Seneste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vælg alle poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vælg post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vælg rækken for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Fortryd\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload noget indhold eller synkroniser med dine enheder!\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ettore Atalan <atalanttore@googlemail.com>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2023\\nMarkus Eckstein, 2023\\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\\nJoachim Sokolowski, 2023\\nEttore Atalan <atalanttore@googlemail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden.\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Startseite\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Keine Dateien vorhanden\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die deinem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Jüngste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann <mario_siegmann@web.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Hier sind keine Dateien\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Neueste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig machen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Αναίρεση\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2023\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is an invalid folder name.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is not an allowed folder name'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is not allowed inside a folder name.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All files\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choose\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choose {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choose %n file\", \"Choose %n files\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copy\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copy to {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Could not create the new folder\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Could not load files settings\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Could not load files views\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Create directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Current view selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favourites\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Files and folders you mark as favourite will show up here.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Files and folders you recently modified will show up here.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter file list\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Folder name cannot be empty.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modified\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Move\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Move to {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New folder name\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No files in here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No files matching your filter were found.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No matching files\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Select all entries\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Select entry\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Select the row for {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Size\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undo\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload some content or sync with your devices!\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Malfari\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta no válido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido dentro del nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elige %n archivo\", \"Elige %n archivos\", \"Seleccione %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudieron cargar los ajustes de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\" Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuevo nombre de carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidiesen con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Elegir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Elija {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elija %n archivo\", \"Elija %n archivos\", \"Elija %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de la carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleccionar %n archivo\", \"Seleccionar %n archivos\", \"Seleccionar %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear carpeta\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Suba algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Desegin\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"reza reza <forghan89@yahoo.com>, 2024\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAmir Shekoohi, 2024\\nreza reza <forghan89@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: reza reza <forghan89@yahoo.com>, 2024\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} نام پوشه معتبر نیست\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} نام پوشه مجاز نیست\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" نمی‌تواند در نام پوشه استفاده شود.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"همه فایل‌ها\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"انتخاب\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"انتخاب {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"انتخاب %n فایل\", \"انتخاب %n فایل\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"رونوشت\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"رونوشت از {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"پوشه جدید ایجاد نشد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"تنظیمات فایل باز نشد\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"نمای فایل‌ها بارگیری نشد\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ایجاد فهرست\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"انتخابگر نماگر فعلی\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"علایق\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فیلتر لیست فایل\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"نام پوشه نمی تواند خالی باشد.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"خانه\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"اصلاح شده\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"انتقال\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"انتقال به {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"نام\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جدید\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"پوشه جدید\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"نام پوشه جدید\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"فایلی اینجا نیست\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"هیچ فایلی مطابق با فیلتر شما یافت نشد.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"فایل منطبقی وجود ندارد\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"اخیر\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"انتخاب همه ورودی ها\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"انتخاب ورودی\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"انتخاب ردیف برای {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"اندازه\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"بازگردانی\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"thingumy, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\n\" }, \"msgstr\": [\"Last-Translator: thingumy, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" on virheellinen kansion nimi.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ei ole sallittu kansion nimi'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ei ole sallittu kansion nimessä.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Kaikki tiedostot\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Valitse\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Valitse {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Valitse %n tiedosto\", \"Valitse %n tiedostoa\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopioi\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopioi sijaintiin {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Uutta kansiota ei voitu luoda\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tiedoston asetuksia ei saa ladattua\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tiedoston näkymiä ei saa ladattua\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Luo kansio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nykyisen näkymän valinta\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Suosikit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Suodata tiedostolistaa\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Kansion nimi ei voi olla tyhjä.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Koti\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Muokattu\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Siirrä\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Siirrä sijaintiin {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nimi\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Uusi kansio\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Uuden kansion nimi\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Täällä ei ole tiedostoja\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Suodatinta vastaavia tiedostoja ei löytynyt.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ei vastaavia tiedostoja\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Viimeisimmät\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Valitse kaikki tietueet\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Valitse tietue\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Valitse rivi {nodename}:lle\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Koko\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Kumoa\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"DEV314R, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nRémi LEBLOND, 2023\\nMordecai, 2023\\nfleopaulD, 2023\\nFrançois Ch., 2024\\nJérôme HERBINET, 2024\\nBenoit Pruneau, 2024\\nDEV314R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: DEV314R, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier valide.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier autorisé.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Le caractère « / » n'est pas autorisé dans un nom de dossier.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tous les fichiers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choisir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choisir {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choisir %n fichier\", \"Choisir %n fichiers\", \"Choisir %n fichiers \"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copier vers {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossible de créer le nouveau dossier\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Les paramètres des fichiers n'ont pas pu être chargés\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Les aperçus des fichiers n'ont pas pu être chargés\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Créer un répertoire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Sélecteur de vue courante\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoris\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Les fichiers et répertoires marqués en favoris apparaîtront ici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Les fichiers et répertoires modifiés récemment apparaîtront ici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer la liste des fichiers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Le nom du dossier ne peut pas être vide.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Accueil\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifié\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Déplacer\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Déplacer vers {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nouveau répertoire\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom du nouveau répertoire\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aucun fichier ici\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Aucun fichier trouvé correspondant à votre filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Aucun fichier trouvé\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Récents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tous sélectionner\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Sélectionner une entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Sélectionner l'enregistrement pour {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taille\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rétablir\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Charger du contenu ou synchroniser avec vos équipements !\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['Is ainm fillteáin neamhbhailí é \"{name}\".'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['Ní ainm fillteáin ceadaithe é \"{name}\".'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Ní cheadaítear \"/\" taobh istigh d\\'ainm fillteáin.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Gach comhad\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Roghnaigh\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Roghnaigh {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Roghnaigh %n comhad\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Cóip\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Cóipeáil chuig {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Níorbh fhéidir an fillteán nua a chruthú\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Níorbh fhéidir socruithe comhaid a lódáil\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Níorbh fhéidir radhairc comhad a lódáil\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Cruthaigh eolaire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Roghnóir amhairc reatha\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ceanáin\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Scag liosta comhad\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ní féidir ainm fillteáin a bheith folamh.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Baile\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Athraithe\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Bog\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Bog go{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ainm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Fillteán nua\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ainm fillteáin nua\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Níl aon chomhaid istigh anseo\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Níor aimsíodh aon chomhad a tháinig le do scagaire.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Gan comhaid meaitseála\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"le déanaí\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Roghnaigh gach iontráil\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Roghnaigh iontráil\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Roghnaigh an ró do {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méid\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cealaigh\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» non é un nome de cartafol válido.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» non é un nome de cartafol permitido\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"A «/» non está permitida no nome dun cartafol.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os ficheiros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoller\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoller {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoller %n ficheiro\", \"Escoller %n ficheiros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Non foi posíbel crear o novo cartafol\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Non foi posíbel cargar os axustes dos ficheiros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Non foi posíbel cargar as vistas dos ficheiros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que modificou recentemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar a lista de ficheiros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome do cartafol non pode estar baleiro.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover cara a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novo cartafol\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome do cartafol\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aquí non hai ficheiros\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Non se atopou ningún ficheiro que coincida co filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Non hai ficheiros coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccionar a fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Enviar algún contido ou sincronizalo cos seus dispositivos!\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"ביטול\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFőnyedi Áron <sajtman@gmail.com>, 2023\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” érvénytelen mappanév.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” nem engedélyezett mappanév\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” jel nem szerepelhet mappa nevében.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Minden fájl\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kiválasztás\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} kiválasztása\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n fájl kiválasztása\", \"%n fájl kiválasztása\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Másolás\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Másolás ide: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Az új mappa létrehozása nem lehetséges\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Fájlbeállítások betöltése nem lehetséges\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Fájlnézetek betöltése nem lehetséges\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Mappa létrehozása\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Jelenlegi nézet választó\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Kedvencek\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"A kedvencként megjelölt fájlok és mappák itt jelennek meg.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"A nemrég módosított fájlok és mappák itt jelennek meg.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fájl lista szűrése\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"A mappa neve nem lehet üres.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Kezdőlap\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Módosítva\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mozgatás\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mozgatás ide: {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Név\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Új mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Új mappa név\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Itt nincsenek fájlok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nincs a szűrési feltételeknek megfelelő fájl.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nincs ilyen fájl\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gyakori\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Minden bejegyzés kijelölése\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Bejegyzés kijelölése\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Válassz sort a következőnek: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méret\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Visszavonás\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Lun May, 2024\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nLinerly <linerly@proton.me>, 2023\\nLun May, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Lun May, 2024\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" bukan nama folder yang valid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" merupakan nama folder yang tidak diperbolehkan'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" tidak diperbolehkan di dalam nama folder.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Semua berkas\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Pilih\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Pilih {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Pilih %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Salin\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Salin ke {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Tidak dapat membuat folder baru\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tidak dapat memuat pengaturan file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tidak dapat memuat tampilan file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Buat direktori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Pemilih tampilan saat ini\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Saring daftar berkas\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Name berkas tidak boleh kosong.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Beranda\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Diubah\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Pindahkan\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Pindahkan ke {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nama\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Folder baru\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nama folder baru\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tidak ada berkas di sini\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Tidak ada berkas yang cocok dengan penyaringan Anda.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Tidak ada berkas yang cocok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Terkini\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Pilih semua entri\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Pilih entri\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Pilih baris untuk {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Ukuran\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Tidak jadi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Unggah beberapa konten atau sinkronkan dengan perangkat Anda!\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er ógilt möppuheiti.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ekki leyfilegt möppuheiti'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er er ekki leyfilegt innan í skráarheiti.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Allar skrár\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Veldu\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Veldu {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Afrita\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Afrita í {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Get ekki búið til nýju möppuna\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Búa til möppu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Núverandi val sýnar\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Eftirlæti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú merkir sem eftirlæti birtast hér.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú breyttir nýlega birtast hér.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Sía skráalista\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Möppuheiti má ekki vera tómt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Heim\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Breytt\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Færa\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Færa í {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Heiti\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ný mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Heiti nýrrar möppu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Engar skrár hér\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Engar skrár fundust sem passa við síuna.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Engar samsvarandi skrár\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nýlegt\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velja allar færslur\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velja færslu\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Veldu röðina fyrir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Stærð\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Afturkalla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Sendu inn eitthvað efni eða samstilltu við tækin þín!\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sebastiano Furlan, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nClaudio Scandella, 2023\\nRaffaele Silano <raffaelone@gmail.com>, 2024\\nSebastiano Furlan, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sebastiano Furlan, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" non è un nome di cartella valido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" non è un nome di cartella ammesso'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" non è ammesso all\\'interno del nome di una cartella.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tutti i file\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Scegli\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Scegli {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleziona %n file\", \"Seleziona %n file\", \"Seleziona %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia in {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossibile creare la nuova cartella\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Impossibile caricare le impostazioni dei file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Impossibile caricare le visualizzazioni dei file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crea directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selettore della vista corrente\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferiti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"I file e le cartelle contrassegnate come preferite saranno mostrate qui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"I file e le cartelle che hai modificato di recente saranno mostrate qui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtra elenco file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Il nome della cartella non può essere vuoto.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificato\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Sposta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Sposta in {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nuova cartella\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuovo nome cartella\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nessun file qui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nessun file che corrisponde al tuo filtro è stato trovato.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nessun file corrispondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Scegli tutte le voci\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleziona la voce\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleziona la riga per {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taglia/dimensioni\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Annulla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carica qualche contenuto o sincronizza con i tuoi dispositivi!\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"devi, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\\ntakehito kondo, 2023\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\n\" }, \"msgstr\": [\"Last-Translator: devi, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" はフォルダー名に使用できません。'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\"は許可されたフォルダー名ではありません'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"フォルダー名に「/(スラッシュ)」は使用できません。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"すべてのファイル\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選択\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} を選択\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n 個のファイルを選択\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"コピー\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} にコピー\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"新しいフォルダーを作成できませんでした\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"ファイル設定を読み込めませんでした\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"ファイルビューを読み込めませんでした\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ディレクトリを作成\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"現在のビューセレクタ\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"お気に入り\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"お気に入りとしてマークしたファイルとフォルダがここに表示されます。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"最近変更したファイルとフォルダがここに表示されます。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"ファイルリストをフィルタ\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"フォルダ名は空にできません。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"ホーム\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"変更済み\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} に移動\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名前\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新しいフォルダー\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新しいフォルダーの名前\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"ファイルがありません\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"フィルタに一致するファイルは見つかりませんでした。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"一致するファイルはありません\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"すべてのエントリを選択\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"エントリを選択\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} の行を選択\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"サイズ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"元に戻す\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"コンテンツをアップロードするか、デバイスと同期してください!\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Sefsex\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"되돌리기\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"VoXaN24ch, 2024\", \"Language-Team\": \"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nVoXaN24ch, 2024\\n\" }, \"msgstr\": [\"Last-Translator: VoXaN24ch, 2024\\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} ass en ongëlteg Dossier\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ass net en erlaabten Dossiernumm\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ass net an engem Dossier Numm erlaabt'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wielt\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wielt {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wielt %n Fichieren\", \"Wielt %n Fichier\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopie\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopie op {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Konnt den neien Dossier net erstellen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Konnt d'Dateienastellungen net lueden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Konnt d'Dateien net lueden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Erstellt Verzeechnes\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell Vue selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter Datei Lëscht\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Dossier Numm kann net eidel sinn\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Wëllkomm\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geännert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Plënne\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Plënneren {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Numm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nei\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neien dossier\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neien dossier numm\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Kee fichier hei\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Kee fichier deen äre filter passt gouf fonnt\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keng passende dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Rezent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wielt all entréen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wielt entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wielt d'zeil fir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Gréisst\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undoen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Luet en inhalt erop oder synchroniséiert mat ären apparater\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Atšaukti\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Врати\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Буцаах\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"पूर्ववत करा\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"နဂိုအတိုင်းပြန်ထားရန်\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"armandg <geirawsm@pm.me>, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nD PE, 2023\\nSyvert Fossdal, 2024\\narmandg <geirawsm@pm.me>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: armandg <geirawsm@pm.me>, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldig mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tillatt mappenavn.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tillatt inne i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Velg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Velg {fil}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Velg %n fil\", \"Velg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {destinasjon}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke opprette den nye mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunne ikke laste filinnstillinger\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke laste filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opprett mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nåværende visningsvelger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper du markerer som favoritter vil vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper du nylig har endret, vil vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer filliste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavn kan ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifisert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytt til {destinasjon}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappenavn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer her\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ingen filer funnet med ditt filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen treffende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nylig\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velg alle oppføringer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velg oppføring\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Velg raden for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størrelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Angre\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Last opp innhold eller synkroniser med enhetene dine!\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Casper <casper@vrije-mens.org>, 2024\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJoost <joho500@hotmail.com>, 2023\\nJeroen Gui, 2023\\nCasper <casper@vrije-mens.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Casper <casper@vrije-mens.org>, 2024\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is een ongeldige mapnaam.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is geen toegestane mapnaam'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is niet toegestaan binnen een bestandsnaam'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle bestanden\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kies\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Kies {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Kies %n bestand\", \"Kies %n bestanden\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieer\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopieer naar {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kon de nieuwe map niet maken\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kon de bestandsinstellingen niet laden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kon de bestandsweergaves niet laden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Maak map\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Huidige weergave keuze\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorieten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Bestanden en mappen die je favoriet maakt, worden hier getoond.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter bestandslijst\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mapnaam mag niet leeg zijn.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Gewijzigd\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verplaatsen\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Verplaats naar {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naam\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nieuw\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nieuwe map\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nieuwe mapnaam\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Geen bestanden hier\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Geen bestanden gevonden die voldoen aan je filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Geen gevonden bestanden\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecteer alle invoer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecteer invoer\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecteer de rij voor {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Grootte\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ongedaan maken\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload inhoud of synchroniseer met je apparaten!\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anullar\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJUJER wtf, 2023\\nM H <haincu@o2.pl>, 2023\\nValdnet, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" jest nieprawidłową nazwą folderu'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie jest dozwoloną nazwą folderu'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Znak \"/\" nie jest dozwolony w nazwie folderu'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Wszystkie pliki\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wybierz\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wybierz {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wybierz %n plik\", \"Wybierz %n pliki\", \"Wybierz %n plików\", \"Wybierz %n plików\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiuj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Skopiuj do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nie można utworzyć nowego folderu\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nie można wczytać ustawień plików\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nie można wczytać widoków plików\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Utwórz katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Bieżący selektor widoku\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ulubione\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtruj listę plików\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Nazwa folderu nie może być pusta\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Strona główna\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Zmodyfikowano\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Przenieś\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Przejdź do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nazwa\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nowy folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nowa nazwa folderu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Brak plików\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nie znaleziono plików spełniających warunki filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Brak pasujących plików\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Ostatni\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wybierz wszystkie wpisy\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wybierz wpis\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wybierz wiersz dla {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Rozmiar\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cofnij\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFlávio Veras <flaviove@gmail.com>, 2023\\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" é um nome de pasta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" não é um nome de pasta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" não é permitido dentro de um nome de pasta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os arquivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escolher\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escolher arquivo}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escolher %n arquivo\", \"Escolher %n arquivos\", \"Escolher %n arquivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar para {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Não foi possível criar a nova pasta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Não foi possível carregar configurações de arquivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Não foi possível carregar exibições de arquivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Criar diretório\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Seletor de visualização atual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os arquivos e pastas marcados como favoritos aparecerão aqui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Arquivos e pastas que você modificou recentemente aparecerão aqui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de arquivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome da pasta não pode ficar vazio.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover para {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova pasta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome de pasta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nenhum arquivo aqui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenhum arquivo correspondente ao seu filtro foi encontrado.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nenhum arquivo correspondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecione todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecione a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecione a linha para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamanho\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfazer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carregue algum conteúdo ou sincronize com seus dispositivos!\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anular\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Daniel MD <dmihaidumitru@gmail.com>, 2023\", \"Language-Team\": \"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nDaniel MD <dmihaidumitru@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" este un nume de director invalid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nu este un nume de director permis'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nu este permis în numele unui director.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Toate fișierele\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Alege\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Alege {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiază\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiază în {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nu s-a putut crea noul director\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Creează director\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selectorul curent al vizualizării\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorite\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le marcați ca favorite vor apărea aici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le-ați modificat recent vor apărea aici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrează lista de fișiere\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Numele de director nu poate fi necompletat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Acasă\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificat\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mută\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mută către {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nume\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nou\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Director nou\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Numele noului director\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nu există fișiere\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nu există fișiere potrivite pentru filtrul selectat\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nu există fișiere potrivite\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selectează toate înregistrările\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selectează înregistrarea\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selectează rândul pentru {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mărime\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Anulează\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kitsune R, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMax Smith <sevinfolds@gmail.com>, 2023\\nashed <craysy@gmail.com>, 2023\\nAlex <kekcuha@gmail.com>, 2024\\nR4SAS, 2024\\nВлад, 2024\\nKitsune R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kitsune R, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» — недопустимое имя папки.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» не является разрешенным именем папки\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Символ «/» не допускается внутри имени папки.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Все файлы\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Выбрать\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Выбрать {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Выбрать %n файл\", \"Выбрать %n файла\", \"Выбрать %n файлов\", \"Выбрать %n файлов\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копировать\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копировать в «{target}»\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не удалось создать новую папку\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не удалось загрузить настройки файлов\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не удалось загрузить файлы просмотров\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Создать папку\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Переключатель текущего вида\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Избранное\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Здесь появятся файлы и папки, которые вы пометили как избранные.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Здесь будут отображаться файлы и папки, которые вы недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фильтровать список файлов\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Имя папки не может быть пустым.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Изменен\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Переместить\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перейти к {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Имя\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новая папка\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Имя новой папки\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Здесь нет файлов\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Файлы, соответствующие вашему фильтру, не найдены.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нет подходящих файлов\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Недавний\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Выбрать все записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Выберите запись\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Выберите строку для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Размер\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Отменить\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Загрузите контент или синхронизируйте его со своими устройствами!\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"පෙරසේ\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nStanislav Prekop <prekop3@gmail.com>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" je neplatný názov pričinka.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie je povolený názov priečinka.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nie je povolené v názve priečinka.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Všetky súbory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vybrať\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vybrať {súbor}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vybraný %n súbor\", \"Vybrané %n súbory\", \"Vybraných %n súborov\", \"Vybraných %n súborov\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopírovať\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopírovať do {umiestnenia}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nepodarilo sa vytvoriť nový priečinok\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodarilo sa načítať nastavenia súborov\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodarilo sa načítať pohľady súborov\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvoriť adresár\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výber aktuálneho zobrazenia\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Obľúbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovať zoznam súborov\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Názov priečinka nemôže byť prázdny.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Upravené\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Prejsť\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Prejsť na {umiestnenie}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Názov\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Pridať\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Pridať priečinok\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Pridať názov priečinka\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nie sú tu žiadne súbory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenašli sa žiadne súbory zodpovedajúce vášmu filtru.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žiadne zodpovedajúce súbory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrať všetky položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrať položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vyberte riadok pre {názov uzla}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veľkosť\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Späť\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} je neveljavno ime mape.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ni dovoljeno ime mape\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ni dovoljen v imenu mape.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Vse datoteke\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izberi\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izberi {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izberi %n datoteko\", \"Izberi %n datoteki\", \"Izberi %n datotek\", \"Izberi %n datotek\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj v {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nisem mogel ustvariti nove mape\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"NIsem mogel naložiti nastavitev datotek\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nisem mogel naložiti pogledov datotek\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Ustvari mapo\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Izbirnik trenutnega pogleda\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Priljubljene\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtriraj seznam datotek\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ime mape ne more biti prazno\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Spremenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premakni\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premakni v {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ime\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova mapa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo ime mape\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tukaj ni datotek\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ni bilo najdenih ujemajočih datotek glede na vaš filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ni ujemajočih datotek\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedavne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izberi vse vnose\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izberi vnos\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izberi vrstico za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Razveljavi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” није исправно име фолдера.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” није дозвољено име за фолдер.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” није дозвољено унутар имена фолдера.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Сви фајлови\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Изаберите\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Изаберите {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Изаберите %n фајл\", \"Изаберите %n фајла\", \"Изаберите %n фајлова\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копирај\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копирај у {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Није могао да се креира нови фолдер\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не могу да се учитају подешавања фајлова\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не могу да се учитају прикази фајлова\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Креирај директоријум\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Бирач тренутног приказа\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Омиљено\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери које сте означили као омиљене.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери који се се недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фитрирање листе фајлова\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Име фолдера не може бити празно.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Почетак\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Измењено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Премести\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Премести у {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Име\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Нови фолдер\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Име новог фолдера\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Овде нема фајлова\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Није пронађен ниједан фајл који задовољава ваш филтер.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нема таквих фајлова\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Скорашње\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Изаберите све ставке\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Изаберите ставку\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Изаберите ред за {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Величина\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Поништи\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Отпремите нешто или синхронизујте са својим уређајима!\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Bogdan Vuković, 2024\", \"Language-Team\": \"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBogdan Vuković, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Bogdan Vuković, 2024\\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” je neispravan naziv foldera.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” je nedozvoljen naziv foldera.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” se ne može koristiti unutar naziva foldera.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Svi fajlovi\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izaberite\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izaberite {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izaberite %n fajl\", \"Izaberite %n fajla\", \"Izaberite %n fajlova\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj u {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Neuspešno kreiranje novog foldera\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Neuspešno učitavanje podešavanja fajlova\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Neuspešno učitavanje prikaza fajlova\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Kreiraj direktorijum\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Birač trenutnog prikaza\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Omiljeno\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Lista omiljenih fajlova i foldera.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Lista fajlova i foldera sa skorašnjim izmenama.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fitriranje liste fajlova\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Naziv foldera ne može biti prazan.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Početak\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Izmenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premesti\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premesti u {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naziv\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novi folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Naziv novog foldera\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Bez fajlova\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nema fajlova koji zadovoljavaju uslove filtera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nema takvih fajlova\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Skorašnje\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izaberite sve stavke\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izaberite stavku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izaberite red za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veličina\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Vrati\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Otpremite sadržaj ili sinhronizujte sa svojim uređajima!\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" är ett ogiltigt mappnamn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" är inte ett tillåtet mappnamn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" är inte tillåtet i ett mappnamn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alla filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Välj\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Välj {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Välj %n fil\", \"Välj %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiera\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiera till {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunde inte skapa den nya mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunde inte ladda filinställningar\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunde inte ladda läsa in filvyer\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Skapa katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell vyväljare\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer och mappar som du markerar som favorit kommer att visas här.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer och mappar som du nyligen ändrat kommer att visas här.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrera fillistan\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappnamnet får inte vara tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ändrad\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytta till {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Namn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mapp\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappnamn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Inga filer här\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Inga filer som matchar ditt filter hittades.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Inga matchande filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nyligen\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Välj alla poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Välj post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Välj raden för {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Storlek\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ångra\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Ladda upp lite innehåll eller synkronisera med dina enheter!\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"செயல்தவிர்\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"เลิกทำ\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" geçersiz bir klasör adı.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" izin verilen bir klasör adı değil'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" karakteri klasör adında kullanılamaz.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tüm dosyalar\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seçin\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} seçin\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n dosya seçin\", \"%n dosya seçin\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopyala\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} üzerine kopyala\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Yeni klasör oluşturulamadı\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dosyalar uygulamasının ayarları yüklenemedi\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dosyalar uygulamasının görünümleri yüklenemedi\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Klasör oluştur\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Geçerli görünüm seçici\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Sık kullanılanlar\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dosya listesini süz\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Klasör adı boş olamaz.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Giriş\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Değiştirilme\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Taşı\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} üzerine taşı\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ad\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Yeni klasör\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Yeni klasör adı\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Burada herhangi bir dosya yok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Süzgece uyan bir dosya bulunamadı.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Eşleşen bir dosya yok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Son kullanılanlar\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tüm kayıtları seç\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Kaydı seç\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} satırını seçin\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Boyut\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Geri al\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" є недійсною назвою для каталогу.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" не є дозволеною назвою для каталогу.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" не дозволено у назві каталогу.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Всі файли\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Вибрати\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Вибрати {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Вибрати %n файл\", \"Вибрати %n файли\", \"Вибрати %n файлів\", \"Вибрати %n файлів\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копіювати\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копіювати до {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не вдалося створити новий каталог\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не вдалося завантажити налаштування файлів\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не вдалося завантажити подання файлів\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Створити каталог\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Вибір подання\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Із зірочкою\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які ви позначите зірочкою.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які було нещодавно змінено.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фільтрувати список файлів\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ім'я каталогу не може бути порожнім.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Домівка\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Змінено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Перемістити\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перемістити до {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ім'я\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новий\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новий каталог\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ім'я нового каталогу\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Тут відсутні файли\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Відсутні збіги за фільтром.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Відсутні збіги файлів.\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Останні\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Вибрати всі записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Вибрати запис\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Вибрати рядок для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Розмір\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Повернути\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Завантажте вміст або синхронізуйте з вашим пристроєм!\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Trần Đình Tuyển, 2024\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTran Duc, 2024\\nTrần Đình Tuyển, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Trần Đình Tuyển, 2024\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" là tên thư mục không hợp lệ.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"1{name}\"không phải là tên thư mục được cho phép'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\"không được phép đặt trong tên thư mục.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tất cả tệp\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Chọn\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Chọn {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Chọn %n tệp\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Sao chép\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Sao chép đến {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Không thể tạo thư mục mới\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Không thể tải tập tin cài đặt\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Không thể tải xuống tệp xem\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Tạo thư mục\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Hiện tại chế độ xem của bộ chọn\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Yêu cầu thích\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter list file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Thư mục tên không được để trống.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Trang chủ\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Đã sửa đổi\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Di chuyển\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Di chuyển đến{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Tên\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Mới\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New thư mục\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New thư mục tên\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No file at here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Không tìm thấy tệp nào phù hợp với bộ lọc của bạn.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No file phù hợp\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gần đây\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Choose all items\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Chọn mục nhập\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Choose hang cho{nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Kích cỡ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Hoàn tác\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ruijian Deng, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nken, 2023\\nEric, 2023\\nPhonebook3599, 2024\\nRuijian Deng, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ruijian Deng, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"“{name}”是无效的文件夹名称。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"“{name}”不是允许的文件夹名称\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"文件夹名称中不允许包含“/”。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有文件\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"选择\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"选择 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"选择 %n 个文件\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"复制\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"复制到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"无法创建新文件夹\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"无法加载文件设置\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"无法加载文件视图\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"创建目录\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"当前视图选择器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最爱\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您标记为最爱的文件与文件夹会显示在这里\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的文件与文件夹会显示在这里\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"过滤文件列表\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"文件夹名称不能为空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"主目录\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移动\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移动至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名称\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新文件夹\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新文件夹名称\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此处无文件\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您过滤条件的文件\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"无符合的文件\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"选择所有条目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"选择条目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"选择 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\" 撤消\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上传一些项目或与您的设备同步!\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['資料夾名稱中不允許使用 \"/\"。'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"選擇 %n 個檔案\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"無法載入檔案設定\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"無法載入文件視圖\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"資料夾名稱不能為空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"首頁\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"還原\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2023\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\n黃柏諺 <s8321414@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid file name.': { \"msgid\": '\"{name}\" is an invalid file name.', \"msgstr\": [\"「{name}」是無效的檔案名稱。\"] }, '\"{name}\" is not an allowed filetype': { \"msgid\": '\"{name}\" is not an allowed filetype', \"msgstr\": [\"「{name}」並非允許的檔案類型\"] }, '\"/\" is not allowed inside a file name.': { \"msgid\": '\"/\" is not allowed inside a file name.', \"msgstr\": [\"檔案名稱中不允許使用「/」。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"File name cannot be empty.\": { \"msgid\": \"File name cannot be empty.\", \"msgstr\": [\"檔案名稱不能為空。\"] }, \"Filepicker sections\": { \"msgid\": \"Filepicker sections\", \"msgstr\": [\"檔案挑選器選取\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"家\"] }, \"Mime type {mime}\": { \"msgid\": \"Mime type {mime}\", \"msgstr\": [\"Mime type {mime}\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"復原\"] }, \"unknown\": { \"msgid\": \"unknown\", \"msgstr\": [\"未知\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zu_ZA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zu_ZA\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zu_ZA\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar ToastType = /* @__PURE__ */ ((ToastType2) => {\n ToastType2[\"ERROR\"] = \"toast-error\";\n ToastType2[\"WARNING\"] = \"toast-warning\";\n ToastType2[\"INFO\"] = \"toast-info\";\n ToastType2[\"SUCCESS\"] = \"toast-success\";\n ToastType2[\"PERMANENT\"] = \"toast-error\";\n ToastType2[\"UNDO\"] = \"toast-undo\";\n return ToastType2;\n})(ToastType || {});\nconst TOAST_ARIA_LIVE_OFF = \"off\";\nconst TOAST_ARIA_LIVE_POLITE = \"polite\";\nconst TOAST_ARIA_LIVE_ASSERTIVE = \"assertive\";\nvar ToastAriaLive = /* @__PURE__ */ ((ToastAriaLive2) => {\n ToastAriaLive2[ToastAriaLive2[\"OFF\"] = TOAST_ARIA_LIVE_OFF] = \"OFF\";\n ToastAriaLive2[ToastAriaLive2[\"POLITE\"] = TOAST_ARIA_LIVE_POLITE] = \"POLITE\";\n ToastAriaLive2[ToastAriaLive2[\"ASSERTIVE\"] = TOAST_ARIA_LIVE_ASSERTIVE] = \"ASSERTIVE\";\n return ToastAriaLive2;\n})(ToastAriaLive || {});\nconst TOAST_UNDO_TIMEOUT = 1e4;\nconst TOAST_DEFAULT_TIMEOUT = 7e3;\nconst TOAST_PERMANENT_TIMEOUT = -1;\nfunction showMessage(data, options) {\n var _a;\n options = Object.assign({\n timeout: TOAST_DEFAULT_TIMEOUT,\n isHTML: false,\n type: void 0,\n // An undefined selector defaults to the body element\n selector: void 0,\n onRemove: () => {\n },\n onClick: void 0,\n close: true\n }, options);\n if (typeof data === \"string\" && !options.isHTML) {\n const element = document.createElement(\"div\");\n element.innerHTML = data;\n data = element.innerText;\n }\n let classes = (_a = options.type) != null ? _a : \"\";\n if (typeof options.onClick === \"function\") {\n classes += \" toast-with-click \";\n }\n const isNode = data instanceof Node;\n let ariaLive = ToastAriaLive.POLITE;\n if (options.ariaLive) {\n ariaLive = options.ariaLive;\n } else if (options.type === \"toast-error\" || options.type === \"toast-undo\") {\n ariaLive = ToastAriaLive.ASSERTIVE;\n }\n const toast = Toastify({\n [!isNode ? \"text\" : \"node\"]: data,\n duration: options.timeout,\n callback: options.onRemove,\n onClick: options.onClick,\n close: options.close,\n gravity: \"top\",\n selector: options.selector,\n position: \"right\",\n backgroundColor: \"\",\n className: \"dialogs \" + classes,\n escapeMarkup: !options.isHTML,\n ariaLive\n });\n toast.showToast();\n return toast;\n}\nfunction showError(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-error\"\n /* ERROR */\n });\n}\nfunction showWarning(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-warning\"\n /* WARNING */\n });\n}\nfunction showInfo(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-info\"\n /* INFO */\n });\n}\nfunction showSuccess(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-success\"\n /* SUCCESS */\n });\n}\nfunction showUndo(text, onUndo, options) {\n if (!(onUndo instanceof Function)) {\n throw new Error(\"Please provide a valid onUndo method\");\n }\n let toast;\n options = Object.assign(options || {}, {\n // force 10 seconds of timeout\n timeout: TOAST_UNDO_TIMEOUT,\n // remove close button\n close: false\n });\n const undoContent = document.createElement(\"span\");\n const undoButton = document.createElement(\"button\");\n undoContent.classList.add(\"toast-undo-container\");\n undoButton.classList.add(\"toast-undo-button\");\n undoButton.innerText = t(\"Undo\");\n undoContent.innerText = text;\n undoContent.appendChild(undoButton);\n undoButton.addEventListener(\"click\", function(event) {\n event.stopPropagation();\n onUndo(event);\n if ((toast == null ? void 0 : toast.hideToast) instanceof Function) {\n toast.hideToast();\n }\n });\n toast = showMessage(undoContent, {\n ...options,\n type: \"toast-undo\"\n /* UNDO */\n });\n return toast;\n}\nfunction normalizeComponent(scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render) {\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nexport {\n ToastAriaLive as T,\n normalizeComponent as a,\n ToastType as b,\n TOAST_UNDO_TIMEOUT as c,\n TOAST_DEFAULT_TIMEOUT as d,\n TOAST_PERMANENT_TIMEOUT as e,\n TOAST_ARIA_LIVE_OFF as f,\n TOAST_ARIA_LIVE_POLITE as g,\n TOAST_ARIA_LIVE_ASSERTIVE as h,\n showSuccess as i,\n showWarning as j,\n showInfo as k,\n showError as l,\n showUndo as m,\n n,\n showMessage as s,\n t\n};\n","import { basename } from \"path\";\nimport Vue, { toRaw, defineComponent, onMounted, onUnmounted } from \"vue\";\nimport { t, n, a as normalizeComponent } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport { h, f, g, d, e, c, T, b, l, k, s, i, m, j } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport NcDialog from \"@nextcloud/vue/dist/Components/NcDialog.js\";\nimport NcNoteCard from \"@nextcloud/vue/dist/Components/NcNoteCard.js\";\nconst spawnDialog = (dialog, props, onClose = () => {\n}) => {\n const el = document.createElement(\"div\");\n const container = document.querySelector(props == null ? void 0 : props.container) || document.body;\n container.appendChild(el);\n const vue = new Vue({\n el,\n name: \"VueDialogHelper\",\n render: (h2) => h2(dialog, {\n props,\n on: {\n close: (...rest) => {\n onClose(...rest.map((v) => toRaw(v)));\n vue.$destroy();\n }\n }\n })\n });\n return vue;\n};\nconst IconMove = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-move\" viewBox=\"0 0 24 24\"><path d=\"M14,18V15H10V11H14V8L19,13M20,6H12L10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6Z\" /></svg>';\nconst IconCopy = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-multiple\" viewBox=\"0 0 24 24\"><path d=\"M22,4H14L12,2H6A2,2 0 0,0 4,4V16A2,2 0 0,0 6,18H22A2,2 0 0,0 24,16V6A2,2 0 0,0 22,4M2,6H0V11H0V20A2,2 0 0,0 2,22H20V20H2V6Z\" /></svg>';\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nvar FilePickerType = /* @__PURE__ */ ((FilePickerType2) => {\n FilePickerType2[FilePickerType2[\"Choose\"] = 1] = \"Choose\";\n FilePickerType2[FilePickerType2[\"Move\"] = 2] = \"Move\";\n FilePickerType2[FilePickerType2[\"Copy\"] = 3] = \"Copy\";\n FilePickerType2[FilePickerType2[\"CopyMove\"] = 4] = \"CopyMove\";\n FilePickerType2[FilePickerType2[\"Custom\"] = 5] = \"Custom\";\n return FilePickerType2;\n})(FilePickerType || {});\nclass FilePickerClosed extends Error {\n}\nclass FilePicker {\n constructor(title, multiSelect, mimeTypeFilter, directoriesAllowed, buttons, path, filter, container, disabledNavigation = false) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\");\n __publicField(this, \"mimeTypeFilter\");\n __publicField(this, \"directoriesAllowed\");\n __publicField(this, \"buttons\");\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\");\n this.title = title;\n this.multiSelect = multiSelect;\n this.mimeTypeFilter = mimeTypeFilter;\n this.directoriesAllowed = directoriesAllowed;\n this.path = path;\n this.filter = filter;\n this.buttons = buttons;\n this.container = container;\n this.disabledNavigation = disabledNavigation;\n }\n /**\n * Pick files using the FilePicker\n *\n * @return Promise with array of picked files or rejected promise on close without picking\n */\n async pick() {\n const { FilePickerVue } = await import(\"./chunks/index-D5FJasts.mjs\");\n return new Promise((resolve, reject) => {\n spawnDialog(FilePickerVue, {\n allowPickDirectory: this.directoriesAllowed,\n buttons: this.buttons,\n container: this.container,\n name: this.title,\n path: this.path,\n mimetypeFilter: this.mimeTypeFilter,\n multiselect: this.multiSelect,\n filterFn: this.filter,\n disabledNavigation: this.disabledNavigation\n }, (...rest) => {\n var _a;\n const [nodes] = rest;\n if (!Array.isArray(nodes) || nodes.length === 0) {\n reject(new FilePickerClosed(\"FilePicker: No nodes selected\"));\n } else {\n if (this.multiSelect) {\n resolve(nodes.map((node) => node.path));\n } else {\n resolve(((_a = nodes[0]) == null ? void 0 : _a.path) || \"/\");\n }\n }\n });\n });\n }\n}\nclass FilePickerBuilder {\n /**\n * Construct a new FilePicker\n *\n * @param title Title of the FilePicker\n */\n constructor(title) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\", false);\n __publicField(this, \"mimeTypeFilter\", []);\n __publicField(this, \"directoriesAllowed\", false);\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"buttons\", []);\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\", false);\n this.title = title;\n }\n /**\n * Set the container where the FilePicker will be mounted\n * By default 'body' is used\n *\n * @param container The dialog container\n */\n setContainer(container) {\n this.container = container;\n return this;\n }\n /**\n * Enable or disable picking multiple files\n *\n * @param ms True to enable picking multiple files, false otherwise\n */\n setMultiSelect(ms) {\n this.multiSelect = ms;\n return this;\n }\n /**\n * Add allowed MIME type\n *\n * @param filter MIME type to allow\n */\n addMimeTypeFilter(filter) {\n this.mimeTypeFilter.push(filter);\n return this;\n }\n /**\n * Set allowed MIME types\n *\n * @param filter Array of allowed MIME types\n */\n setMimeTypeFilter(filter) {\n this.mimeTypeFilter = filter;\n return this;\n }\n /**\n * Add a button to the FilePicker\n * Note: This overrides any previous `setButtonFactory` call\n *\n * @param button The button\n */\n addButton(button) {\n if (typeof this.buttons === \"function\") {\n console.warn(\"FilePicker buttons were set to factory, now overwritten with button object.\");\n this.buttons = [];\n }\n this.buttons.push(button);\n return this;\n }\n /**\n * Set the button factory which is used to generate buttons from current view, path and selected nodes\n * Note: This overrides any previous `addButton` call\n *\n * @param factory The button factory\n */\n setButtonFactory(factory) {\n this.buttons = factory;\n return this;\n }\n /**\n * Set FilePicker type based on legacy file picker types\n * @param type The legacy filepicker type to emulate\n * @deprecated Use `addButton` or `setButtonFactory` instead as with setType you do not know which button was pressed\n */\n setType(type) {\n this.buttons = (nodes, path) => {\n var _a, _b, _c;\n const buttons = [];\n const node = ((_b = (_a = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _a.attributes) == null ? void 0 : _b.displayName) || ((_c = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _c.basename);\n const target = node || basename(path);\n if (type === 1) {\n let label = t(\"Choose\");\n if (nodes.length === 1) {\n label = t(\"Choose {file}\", { file: node });\n } else if (this.multiSelect) {\n label = n(\"Choose %n file\", \"Choose %n files\", nodes.length);\n }\n buttons.push({\n callback: () => {\n },\n type: \"primary\",\n label\n });\n }\n if (type === 4 || type === 3) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Copy to {target}\", { target }) : t(\"Copy\"),\n type: \"primary\",\n icon: IconCopy\n });\n }\n if (type === 2 || type === 4) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Move to {target}\", { target }) : t(\"Move\"),\n type: type === 2 ? \"primary\" : \"secondary\",\n icon: IconMove\n });\n }\n return buttons;\n };\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n allowDirectories(allow = true) {\n this.directoriesAllowed = allow;\n return this;\n }\n /**\n * Set starting path of the FilePicker\n *\n * @param path Path to start from picking\n */\n startAt(path) {\n this.path = path;\n return this;\n }\n /**\n * Add filter function to filter file list of FilePicker\n *\n * @param filter Filter function to apply\n */\n setFilter(filter) {\n this.filter = filter;\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n disableNavigation() {\n this.disabledNavigation = true;\n return this;\n }\n /**\n * Construct the configured FilePicker\n */\n build() {\n return new FilePicker(\n this.title,\n this.multiSelect,\n this.mimeTypeFilter,\n this.directoriesAllowed,\n this.buttons,\n this.path,\n this.filter,\n this.container,\n this.disabledNavigation\n );\n }\n}\nfunction getFilePickerBuilder(title) {\n return new FilePickerBuilder(title);\n}\nvar DialogSeverity = /* @__PURE__ */ ((DialogSeverity2) => {\n DialogSeverity2[\"Info\"] = \"info\";\n DialogSeverity2[\"Warning\"] = \"warning\";\n DialogSeverity2[\"Error\"] = \"error\";\n return DialogSeverity2;\n})(DialogSeverity || {});\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"GenericDialog\",\n props: {\n name: null,\n text: null,\n html: null,\n buttons: null,\n severity: null\n },\n setup(__props) {\n const props = __props;\n const handleUnload = () => \"\".concat(props.name, \": \").concat(props.text);\n onMounted(() => window.addEventListener(\"unload\", handleUnload));\n onUnmounted(() => window.removeEventListener(\"unload\", handleUnload));\n return { __sfc: true, props, handleUnload, NcDialog, NcNoteCard };\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(_setup.NcDialog, { attrs: { \"dialog-classes\": \"nc-generic-dialog\", \"buttons\": _vm.buttons, \"name\": _vm.name, \"message\": _vm.text }, on: { \"update:open\": function($event) {\n return _vm.$emit(\"close\");\n } } }, [_vm.severity ? _c(_setup.NcNoteCard, { attrs: { \"type\": _vm.severity } }, [_c(\"p\", { domProps: { \"textContent\": _vm._s(_vm.text) } })]) : _vm._e(), _vm.html ? _c(\"div\", { domProps: { \"innerHTML\": _vm._s(_vm.html) } }) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst GenericDialog = __component__.exports;\nvar __typeError = (msg) => {\n throw TypeError(msg);\n};\nvar __accessCheck = (obj, member, msg) => member.has(obj) || __typeError(\"Cannot \" + msg);\nvar __privateGet = (obj, member, getter) => (__accessCheck(obj, member, \"read from private field\"), member.get(obj));\nvar __privateAdd = (obj, member, value) => member.has(obj) ? __typeError(\"Cannot add the same private member more than once\") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);\nvar __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, \"write to private field\"), member.set(obj, value), value);\nvar _name, _text, _buttons, _severity, _dialog, _html, _severity2, _text2, _name2, _buttons2;\nclass Dialog {\n constructor(name, text, buttons = [], severity) {\n __privateAdd(this, _name);\n __privateAdd(this, _text);\n __privateAdd(this, _buttons);\n __privateAdd(this, _severity);\n __privateAdd(this, _dialog);\n __privateAdd(this, _html);\n __privateSet(this, _name, name);\n __privateSet(this, _text, text);\n __privateSet(this, _buttons, buttons);\n __privateSet(this, _severity, severity);\n __privateSet(this, _dialog, void 0);\n __privateSet(this, _html, void 0);\n }\n /**\n * @deprecated DO NOT USE! It will be removed in the near future!\n * @param html HTML content\n */\n setHTML(html) {\n __privateSet(this, _html, html);\n return this;\n }\n /**\n * Spawn and show the dialog - if already open the previous instance will be destroyed\n * @return Promise that resolves when the dialog is answered successfully and rejects on close\n */\n show() {\n if (__privateGet(this, _dialog)) {\n __privateGet(this, _dialog).$destroy();\n }\n return new Promise((resolve) => {\n __privateSet(this, _dialog, spawnDialog(\n GenericDialog,\n {\n buttons: __privateGet(this, _buttons),\n name: __privateGet(this, _name),\n text: __privateGet(this, _text),\n severity: __privateGet(this, _severity),\n html: __privateGet(this, _html)\n },\n resolve\n ));\n });\n }\n /**\n * Hide and destroy the current dialog instance\n */\n hide() {\n var _a;\n (_a = __privateGet(this, _dialog)) == null ? void 0 : _a.$destroy();\n }\n}\n_name = /* @__PURE__ */ new WeakMap();\n_text = /* @__PURE__ */ new WeakMap();\n_buttons = /* @__PURE__ */ new WeakMap();\n_severity = /* @__PURE__ */ new WeakMap();\n_dialog = /* @__PURE__ */ new WeakMap();\n_html = /* @__PURE__ */ new WeakMap();\nclass DialogBuilder {\n constructor(name) {\n __privateAdd(this, _severity2);\n __privateAdd(this, _text2);\n __privateAdd(this, _name2);\n __privateAdd(this, _buttons2);\n __privateSet(this, _severity2, void 0);\n __privateSet(this, _text2, \"\");\n __privateSet(this, _name2, name != null ? name : \"\");\n __privateSet(this, _buttons2, []);\n }\n /**\n * Set dialog name\n * @param name The name or headline of the dialog\n */\n setName(name) {\n __privateSet(this, _name2, name);\n return this;\n }\n /**\n * Set the dialog text\n * @param text Main text of the dialog\n */\n setText(text) {\n __privateSet(this, _text2, text);\n return this;\n }\n /**\n * Set the severity of the dialog\n * @param severity Severity of the dialog\n */\n setSeverity(severity) {\n __privateSet(this, _severity2, severity);\n return this;\n }\n /**\n * Set buttons from array\n * @param buttons Either an array of dialog buttons\n */\n setButtons(buttons) {\n if (__privateGet(this, _buttons2).length > 0) {\n console.warn(\"[@nextcloud/dialogs] Dialog buttons are already set - this overrides previous buttons.\");\n }\n __privateSet(this, _buttons2, buttons);\n return this;\n }\n /**\n * Add a single button\n * @param button Button to add\n */\n addButton(button) {\n __privateGet(this, _buttons2).push(button);\n return this;\n }\n build() {\n return new Dialog(__privateGet(this, _name2), __privateGet(this, _text2), __privateGet(this, _buttons2), __privateGet(this, _severity2));\n }\n}\n_severity2 = /* @__PURE__ */ new WeakMap();\n_text2 = /* @__PURE__ */ new WeakMap();\n_name2 = /* @__PURE__ */ new WeakMap();\n_buttons2 = /* @__PURE__ */ new WeakMap();\nfunction getDialogBuilder(name) {\n return new DialogBuilder(name);\n}\nexport {\n Dialog,\n DialogBuilder,\n DialogSeverity,\n FilePicker,\n FilePickerBuilder,\n FilePickerClosed,\n FilePickerType,\n h as TOAST_ARIA_LIVE_ASSERTIVE,\n f as TOAST_ARIA_LIVE_OFF,\n g as TOAST_ARIA_LIVE_POLITE,\n d as TOAST_DEFAULT_TIMEOUT,\n e as TOAST_PERMANENT_TIMEOUT,\n c as TOAST_UNDO_TIMEOUT,\n T as ToastAriaLive,\n b as ToastType,\n getDialogBuilder,\n getFilePickerBuilder,\n l as showError,\n k as showInfo,\n s as showMessage,\n i as showSuccess,\n m as showUndo,\n j as showWarning,\n spawnDialog\n};\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"918\":\"42dc18350820a2df996f\",\"1902\":\"15c69743cf3911d7117d\",\"2400\":\"e05bb23ce5cd8e8e3b27\",\"6429\":\"89166d2636e7cbd574e0\",\"6880\":\"367ddfc725b6ef2ee02b\",\"8066\":\"f1f0a3884f0b92377e6a\"}[chunkId] + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 2882;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t2882: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(38536)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","pinia","createPinia","token","singleMatcher","RegExp","multiMatcher","decodeComponents","components","split","decodeURIComponent","join","left","right","decode","input","tokens","match","splitOnFirst","string","separator","separatorIndex","indexOf","includeKeys","object","predicate","result","isArray","key","descriptor","getOwnPropertyDescriptor","enumerable","defineProperty","Reflect","ownKeys","isNullOrUndefined","value","strictUriEncode","encodeURIComponent","replaceAll","x","charCodeAt","toString","toUpperCase","encodeFragmentIdentifier","Symbol","validateArrayFormatSeparator","encode","options","strict","encodedURI","replaceMap","exec","entries","keys","replace","customDecodeURIComponent","keysSorter","sort","a","b","Number","map","removeHash","hashStart","parseValue","parseNumbers","isNaN","trim","parseBooleans","toLowerCase","extract","queryStart","parse","query","arrayFormat","arrayFormatSeparator","formatter","accumulator","includes","isEncodedArray","newValue","item","test","arrayValue","flat","parserForArrayFormat","returnValue","parameter","parameter_","key2","value2","reduce","Boolean","stringify","shouldFilter","skipNull","skipEmptyString","index","keyValueSeparator","encoderForArrayFormat","objectCopy","filter","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryString","getHash","urlObjectForFragmentEncode","URL","pick","exclude","Vue","use","Router","originalPush","to","onComplete","onAbort","catch","err","mode","base","generateUrl","linkActiveClass","routes","path","redirect","params","view","props","stringifyQuery","emits","title","type","String","fillColor","default","size","_vm","_c","_self","_b","staticClass","attrs","$event","$emit","$attrs","_v","_s","_e","throttle","delay","callback","timeoutID","_ref","_ref$noTrailing","noTrailing","_ref$noLeading","noLeading","_ref$debounceMode","debounceMode","cancelled","lastExec","clearExistingTimeout","clearTimeout","wrapper","_len","arguments_","_key","self","elapsed","Date","now","clear","setTimeout","cancel","_ref2$upcomingOnly","upcomingOnly","getLoggerBuilder","setApp","detectUser","build","ChartPie","NcAppNavigationItem","NcProgressBar","data","loadingStorageStats","storageStats","loadState","computed","storageStatsTitle","_this$storageStats","_this$storageStats2","_this$storageStats3","usedQuotaByte","formatFileSize","used","quotaByte","quota","t","storageStatsTooltip","relative","beforeMount","setInterval","throttleUpdateStorageStats","subscribe","mounted","_this$storageStats4","_this$storageStats5","free","showStorageFullWarning","methods","debounceUpdateStorageStats","_ref$atBegin","atBegin","updateStorageStats","_response$data","_this$storageStats6","_response$data$data","_response$data$data2","response","axios","get","Error","error","logger","showError","translate","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","class","stopPropagation","preventDefault","slot","Math","min","el","Function","required","$el","appendChild","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","useUserConfigStore","userConfigStore","defineStore","state","actions","onUpdate","update","put","store","_initialized","Clipboard","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","NcInputField","Setting","open","setup","_window$OCA","_getCurrentUser","_loadState$enable_non","settings","window","OCA","Files","Settings","webdavUrl","generateRemoteUrl","getCurrentUser","uid","webdavDocs","appPasswordUrl","webdavUrlCopied","enableGridView","forEach","setting","beforeDestroy","close","onClose","setConfig","copyCloudId","document","querySelector","select","navigator","clipboard","writeText","showSuccess","_l","target","scopedSlots","_u","proxy","useNavigation","navigation","getNavigation","views","shallowRef","currentView","active","onUpdateActive","detail","onUpdateViews","onMounted","addEventListener","onUnmounted","removeEventListener","viewConfig","useViewConfigStore","getters","getConfig","setSortingBy","toggleSortingDirection","newDirection","sorting_direction","viewConfigStore","defineComponent","IconCog","NavigationQuota","NcAppNavigation","NcIconSvgWrapper","SettingsModal","settingsOpened","currentViewId","_this$$route","$route","parentViews","parent","order","childViews","list","watch","newView","oldView","_this$currentView","id","find","showView","debug","_ref2","useExactRouteMatching","_this$childViews$view","_window$OCA$close","Sidebar","setActive","onToggleExpand","isExpanded","expanded","_this$viewConfigStore","generateToNavigation","dir","openSettings","onSettingsClose","_setupProxy","iconClass","sticky","icon","child","action","FileAction","displayName","iconSvgInline","InformationSvg","enabled","nodes","_window","_nodes$0$root","root","startsWith","permissions","Permission","NONE","node","OCP","goToRoute","fileid","rootPath","defaultRootUrl","client","davGetClient","rootUrl","getClient","fetchNode","async","propfindPayload","davGetDefaultPropfind","stat","davRootPath","details","davResultToNode","useFilesStore","fileStore","files","roots","getNode","source","getNodes","sources","getNodesById","fileId","values","getRoot","service","updateNodes","acc","deleteNodes","delete","setRoot","onDeletedNode","onCreatedNode","onMovedNode","oldSource","onUpdatedNode","Promise","all","then","n","usePathsStore","pathsStore","paths","getPath","addPath","payload","deletePath","_getNavigation","FileType","Folder","addNodeToParentChildren","_getNavigation2","deleteNodeFromParentChildren","_getNavigation3","oldPath","oldNode","File","owner","mime","_getNavigation4","parentSource","dirname","folder","_folder$_children","children","Set","_children","_getNavigation5","_folder$_children2","add","useSelectionStore","selected","lastSelection","lastSelectedIndex","set","selection","setLastIndex","reset","uploader","useUploaderStore","getUploader","queue","Directory","constructor","contents","super","_contents","_computeDirectorySize","lastModified","_computeDirectoryMtime","directory","file","entry","traverseTree","isFile","resolve","reject","readDirectory","dirReader","createReader","getEntries","readEntries","results","createDirectoryIfNotExists","davClient","exists","absolutePath","createDirectory","recursive","resolveConflict","destination","conflicts","basename","uploads","renamed","openConflictPicker","showInfo","info","console","getQueue","PQueue","concurrency","MoveCopyAction","canMove","ALL","UPDATE","canCopy","every","_node$attributes$shar","_node$attributes","JSON","attributes","some","attribute","scope","canDownload","resultToNode","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","method","overwrite","NodeStatus","LOADING","actionFinished","text","toast","isHTML","timeout","TOAST_PERMANENT_TIMEOUT","onRemove","_toast","hideToast","createLoadingNotification","copySuffix","currentPath","destinationPath","otherNodes","getDirectoryContents","getUniqueName","suffix","ignoreFileExtension","copyFile","controller","AbortController","CancelablePromise","onCancel","abort","contentsResponse","includeSelf","signal","filename","getContents","hasConflict","moveFile","_error$response","_parser$parseFromStri","parser","DOMParser","message","parseFromString","textContent","AxiosError","_error$response2","_error$response3","_error$response4","status","openFilePickerForAction","promise","withResolvers","fileIDs","getFilePickerBuilder","allowDirectories","setFilter","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","buttons","dirnames","label","escape","sanitize","CopyIconSvg","FolderMoveSvg","FilePickerClosed","_node$root","e","displayname","execBatch","promises","dataTransferToFileTree","items","kind","_item$getAsEntry","_item$getAsEntry2","_item$webkitGetAsEntr","getAsEntry","webkitGetAsEntry","warned","fileTree","DataTransferItem","warn","getAsFile","showWarning","onDropExternalFiles","uploadDirectoryContents","relativePath","joinPaths","upload","pause","start","errors","allSettled","onDropInternalFiles","isCopy","useDragAndDropStore","dragging","extend","filesListWidth","_fileListEl$clientWid","fileListEl","clientWidth","$resizeObserver","ResizeObserver","contentRect","width","observe","disconnect","NcBreadcrumbs","NcBreadcrumb","mixins","filesListWidthMixin","draggingStore","filesStore","selectionStore","uploaderStore","dirs","sections","getFileSourceFromPath","getNodeFromSource","exact","getDirDisplayName","disableDrop","isUploadInProgress","wrapUploadProgressBar","viewIcon","_this$currentView$ico","selectedFiles","draggingFiles","_this$currentView2","onClick","_to$query","onDragOver","dataTransfer","ctrlKey","dropEffect","onDrop","_event$dataTransfer","_event$dataTransfer2","_this$currentView3","canDrop","CREATE","button","titleForSection","section","_section$to","ariaForSection","_section$to2","_t","nativeOn","getSummaryFor","fileCount","folderCount","useActionsMenuStore","opened","useRenamingStore","renamingStore","renamingNode","newName","rename","_this$newName$trim","_this$newName","oldName","oldEncodedSource","encodedSource","headers","Destination","Overwrite","$reset","isAxiosError","util","unrefElement","elRef","_a","plain","defaultWindow","useEventListener","cleanups","cleanup","stopWatch","options2","optionsClone","flatMap","register","immediate","flush","stop","_iOSWorkaround","onClickOutside","handler","ignore","capture","detectIframe","from","body","documentElement","shouldListen","shouldIgnore","target2","querySelectorAll","composedPath","passive","activeElement","tagName","contains","vOnClickOutside","binding","modifiers","bubble","__onClickOutside_stop","assign","unmounted","globalThis","global","FileMultipleIcon","FolderIcon","isSingleNode","isSingleFolder","summary","totalSize","total","parseInt","$refs","previewImg","replaceChildren","preview","parentNode","cloneNode","$nextTick","ref","Preview","DragAndDropPreview","directive","getFileActions","NcFile","Node","provide","defaultFileAction","enabledFileActions","loading","dragover","gridMode","currentDir","currentFileId","_this$$route$params","_this$$route$query","_this$source","uniqueId","str","hashCode","isLoading","extension","extname","isSelected","isRenaming","isRenamingSmallScreen","isActive","canDrag","openedMenu","actionsMenuStore","FAILED","resetState","getElementById","style","removeProperty","_this$$refs","_this$$refs$reset","onRightClick","_this$$el2","closest","_this$$el","getBoundingClientRect","setProperty","max","clientX","clientY","top","isMoreThanOneSelected","execDefaultAction","metaKey","openDetailsIfAvailable","_sidebarAction$enable","sidebarAction","onDragLeave","currentTarget","relatedTarget","onDragStart","_event$dataTransfer$c","clearData","image","$mount","$on","$off","getDragAndDropPreview","setDragImage","onDragEnd","_event$dataTransfer3","_event$dataTransfer4","render","updateRootElement","element","ArrowLeftIcon","CustomElementRender","NcActionButton","NcActions","NcActionSeparator","NcLoadingIcon","inject","openedSubmenu","enabledInlineActions","_action$inline","inline","enabledRenderActions","renderInline","enabledMenuActions","DefaultType","HIDDEN","findIndex","topActionsIds","enabledSubmenuActions","arr","getBoundariesElement","mountType","actionDisplayName","onActionClick","isSubmenu","$set","success","isMenu","_this$enabledSubmenuA","onBackToMenuClick","menuAction","_menuAction$$el$query","focus","_vm$openedSubmenu","_vm$openedSubmenu2","_action$title","refInFor","_action$title2","keyboardStore","altKey","shiftKey","onEvent","useKeyboardStore","loadingLabel","ariaLabel","onSelectionChange","_this$keyboardStore","newSelectedIndex","isAlreadySelected","end","filesToSelect","resetSelection","_k","keyCode","useRouteParameters","route","$root","_$route","run","$router","currentRoute","afterEach","useRoute","_route$params$fileid","openFile","openfile","toLocaleLowerCase","getFilenameValidity","validateFilename","InvalidFilenameError","reason","InvalidFilenameErrorReason","Character","char","segment","ReservedName","Extension","NcTextField","renameLabel","linkTo","failed","is","tabindex","renaming","startRenaming","_this$$refs$renameInp","renameInput","validity","checkIfNodeExists","setCustomValidity","reportValidity","_this$$refs$renameInp2","_this$source$extensio","setSelectionRange","dispatchEvent","Event","stopRenaming","onRename","_this$newName$trim2","_this$newName2","renameForm","checkValidity","nameContainter","directives","rawName","expression","tag","domProps","StarSvg","_el$setAttribute","setAttribute","AccountGroupIcon","AccountPlusIcon","CollectivesIcon","FavoriteIcon","FileIcon","FolderOpenIcon","KeyIcon","LinkIcon","NetworkIcon","TagIcon","backgroundFailed","_this$source$toString","isFavorite","favorite","cropPreviews","previewUrl","location","origin","searchParams","href","fileOverlay","PlayCircleIcon","folderOverlay","_this$source2","_this$source3","_this$source4","_this$source5","shareTypes","ShareType","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","src","onBackgroundError","_event$target","_m","FileEntryActions","FileEntryCheckbox","FileEntryName","FileEntryPreview","NcDateTime","FileEntryMixin","isMtimeAvailable","isSizeAvailable","compact","rowListeners","dragstart","contextmenu","dragleave","dragend","drop","columns","sizeOpacity","ratio","round","pow","color","mtimeOpacity","_this$source$mtime","_this$source$mtime$ge","maxOpacityTime","mtime","getTime","getDate","crtime","mtimeTitle","moment","format","_g","column","_vm$currentView","inheritAttrs","header","currentFolder","updated","mount","_this$currentFolder","classForColumn","_column$summary","mapState","sortingMode","_this$getConfig","sorting_mode","defaultSortKey","isAscSorting","_this$getConfig2","toggleSortBy","MenuDown","MenuUp","NcButton","filesSortingMixin","FilesListTableHeaderButton","selectAllBind","checked","isAllSelected","indeterminate","isSomeSelected","selectedNodes","isNoneSelected","ariaSortForMode","onToggleAll","dataComponent","dataKey","dataSources","extraProps","scrollToIndex","caption","beforeHeight","headerHeight","tableHeight","resizeObserver","isReady","bufferItems","columnCount","itemHeight","itemWidth","rowCount","ceil","floor","startIndex","shownItems","renderedItems","oldItemsKeys","$_recycledPool","unusedKeys","pop","random","substr","totalRowCount","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","paddingTop","paddingBottom","minHeight","scrollTo","oldColumnCount","_this$$refs2","before","thead","debounce","_before$clientHeight","_thead$clientHeight","_root$clientHeight","clientHeight","onScroll","targetRow","scrollTop","_this$_onScrollHandle","_onScrollHandle","requestAnimationFrame","topScroll","$scopedSlots","enabledActions","areSomeNodesLoading","inlineActions","selectionSources","failedSources","FilesListHeader","FilesListTableFooter","FilesListTableHeader","VirtualList","FilesListTableHeaderActions","View","FileEntry","FileEntryGrid","getFileListHeaders","openFileId","sortedHeaders","defaultCaption","viewCaption","sortableCaption","virtualListNote","scrollToFile","handleOpenFile","unselectFile","openSidebarForFile","unsubscribe","_this$currentFolder$f","defaultAction","at","types","tableTop","table","tableBottom","height","count","TrayArrowDownIcon","canUpload","isQuotaExceeded","cantUploadLabel","resetDragOver","mainContent","onContentDrop","_event$relatedTarget","_this$$el$querySelect","lastUpload","findLast","_upload$response","UploadStatus","webkitRelativePath","isSharingEnabled","_getCapabilities","getCapabilities","files_sharing","BreadCrumbs","DragAndDropNotice","FilesListVirtual","ListViewIcon","NcAppContent","NcEmptyContent","PlusIcon","UploadPicker","ViewGridIcon","IconAlertCircleOutline","IconReload","filterText","unsubscribeStoreCallback","pageHeading","_this$currentView$nam","_this$$route$params$f","_this$$route2","number","dirContentsSorted","filteredDirContent","dirContents","customColumn","reverse","sortNodes","sortFavoritesFirst","sortFoldersFirst","sortingOrder","_this$userConfigStore","showHidden","_file$attributes","hidden","isEmptyDir","isRefreshing","toPreviousDir","shareAttributes","_this$currentFolder2","_this$currentFolder3","shareButtonLabel","shareButtonType","Link","User","gridViewButtonLabel","_this$currentFolder4","canShare","SHARE","onSearch","searchEvent","_getCapabilities$them","_getCapabilities$them2","theming","productName","resetSearch","fetchContent","newDir","oldDir","_window$OCA$Files$Sid","filesListVirtual","onNodeDeleted","$subscribe","deep","isWebDAVClientError","humanizeWebDAVError","_this$currentFolder5","_this$currentFolder$d","_this$currentFolder6","onUpload","_this$currentFolder7","onUploadFail","_upload$response2","Parser","explicitRoot","parseStringPromise","_this$currentFolder8","openSharingSidebar","setActiveTab","toggleGridView","_vm$currentView2","emptyTitle","emptyCaption","NcContent","FilesList","Navigation","__webpack_nonce__","btoa","getRequestToken","_window$OCA$Files","_window$OCP$Files","router","_router","goTo","PiniaVuePlugin","_settings","_defineProperty","_name","_el","_open","_close","FilesApp","___CSS_LOADER_EXPORT___","denyList","code","sax","opt","SAXParser","SAXStream","createStream","MAX_BUFFER_LENGTH","Stream","buffers","clearBuffers","q","c","bufferCheckPosition","lowercase","lowercasetags","looseCase","tags","closed","closedRoot","sawRoot","noscript","S","BEGIN","strictEntities","ENTITIES","XML_ENTITIES","attribList","xmlns","ns","rootNS","trackPosition","position","line","EVENTS","o","F","write","chunk","charAt","BEGIN_WHITESPACE","beginWhiteSpace","TEXT","starti","textNode","substring","isWhitespace","strictFail","TEXT_ENTITY","OPEN_WAKA","startTagPosition","SCRIPT","SCRIPT_ENDING","script","CLOSE_TAG","SGML_DECL","sgmlDecl","isMatch","nameStart","OPEN_TAG","PROC_INST","procInstName","procInstBody","pad","CDATA","emitNode","cdata","COMMENT","comment","DOCTYPE","doctype","isQuote","SGML_DECL_QUOTED","DOCTYPE_DTD","DOCTYPE_QUOTED","DOCTYPE_DTD_QUOTED","COMMENT_ENDING","COMMENT_ENDED","textopts","CDATA_ENDING","CDATA_ENDING_2","PROC_INST_ENDING","PROC_INST_BODY","nameBody","newTag","openTag","OPEN_TAG_SLASH","ATTRIB","closeTag","attribName","attribValue","ATTRIB_NAME","ATTRIB_VALUE","attrib","ATTRIB_NAME_SAW_WHITE","ATTRIB_VALUE_QUOTED","ATTRIB_VALUE_UNQUOTED","ATTRIB_VALUE_ENTITY_Q","ATTRIB_VALUE_CLOSED","isAttribEnd","ATTRIB_VALUE_ENTITY_U","CLOSE_TAG_SAW_WHITE","notMatch","returnState","buffer","unparsedEntities","parsedEntity","parseEntity","entity","entityBody","entityStart","maxAllowed","maxActual","closeText","m","checkBufferLength","resume","ex","streamWraps","ev","_parser","writable","readable","me","onend","onerror","er","_decoder","h","configurable","Buffer","isBuffer","SD","splice","XML_NAMESPACE","XMLNS_NAMESPACE","xml","regex","stringFromCharCode","fromCodePoint","s","STATE","COMMENT_STARTING","fromCharCode","nodeType","normalize","qname","qualName","local","qn","selfClosing","uri","p","nv","isSelfClosing","closeTo","num","entityLC","numStr","highSurrogate","lowSurrogate","codeUnits","codePoint","isFinite","RangeError","setImmediate","registerImmediate","html","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","getPrototypeOf","process","handle","nextTick","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","attachEvent","MessageChannel","port1","port2","createElement","onreadystatechange","removeChild","task","clearImmediate","g","def","d","RC","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","report","progress","timestamp","deltaTimestamp","currentRate","estimate","Infinity","estimatedTime","Timeout","clearFn","_id","_clearFn","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","stripBOM","builder","defaults","escapeCDATA","requiresCDATA","wrapCDATA","hasProp","Builder","opts","buildObject","rootObj","attrkey","charkey","rootElement","rootName","_this","obj","attr","raw","txt","ele","up","att","xmldec","headless","allowSurrogateChars","renderOpts","explicitCharkey","normalizeTags","explicitArray","ignoreAttrs","mergeAttrs","validator","explicitChildren","childkey","charsAsChildren","includeWhiteChars","attrNameProcessors","attrValueProcessors","tagNameProcessors","valueProcessors","emptyTag","preserveChildrenOrder","chunkSize","bom","isEmpty","processItem","processors","bind","thing","superClass","parseString","assignOrPush","processAsync","xmlnskey","unshift","ctor","__super__","remaining","saxParser","error1","errThrown","ontext","stack","ended","resultObject","EXPLICIT_CHARKEY","onopentag","processedKey","onclosetag","emptyStr","nodeName","objClone","old","xpath","getOwnPropertyNames","charChild","oncdata","cb","prefixMatch","firstCharLowerCase","stripPrefix","parseFloat","ValidationError","Disconnected","Preceding","Following","Contains","ContainedBy","ImplementationSpecific","Element","Attribute","Text","CData","EntityReference","EntityDeclaration","ProcessingInstruction","Comment","Document","DocType","DocumentFragment","NotationDeclaration","Declaration","Raw","AttributeDeclaration","ElementDeclaration","Dummy","getValue","isFunction","isObject","isPlainObject","val","proto","valueOf","None","OpenTag","InsideTag","CloseTag","NodeType","XMLAttribute","debugInfo","attValue","isId","schemaTypeInfo","clone","writer","filterOptions","isEqualNode","namespaceURI","localName","XMLCharacterData","XMLCData","XMLNode","substringData","offset","appendData","arg","insertData","deleteData","replaceData","XMLComment","XMLDOMErrorHandler","XMLDOMStringList","XMLDOMConfiguration","defaultParams","getParameter","canSetParameter","setParameter","handleError","XMLDOMImplementation","hasFeature","feature","version","createDocumentType","qualifiedName","publicId","systemId","createDocument","createHTMLDocument","getFeature","XMLDTDAttList","elementName","attributeName","attributeType","defaultValueType","defaultValue","dtdAttType","dtdAttDefault","dtdAttList","XMLDTDElement","dtdElementValue","dtdElement","XMLDTDEntity","pe","pubID","sysID","internal","dtdPubID","dtdSysID","nData","dtdNData","dtdEntityValue","dtdEntity","XMLDTDNotation","dtdNotation","XMLDeclaration","encoding","standalone","xmlVersion","xmlEncoding","xmlStandalone","declaration","XMLNamedNodeMap","XMLDocType","ref1","ref2","documentObject","attList","pEntity","notation","docType","ent","pent","not","XMLStringWriter","XMLStringifier","XMLDocument","documentURI","domConfig","rootObject","writerOptions","createDocumentFragment","createTextNode","createComment","createCDATASection","createProcessingInstruction","createAttribute","createEntityReference","getElementsByTagName","tagname","importNode","importedNode","createElementNS","createAttributeNS","getElementsByTagNameNS","elementId","adoptNode","normalizeDocument","renameNode","getElementsByClassName","classNames","createEvent","eventInterface","createRange","createNodeIterator","whatToShow","createTreeWalker","WriterState","XMLElement","XMLProcessingInstruction","XMLRaw","XMLText","XMLDocumentCB","onData","onEnd","onDataCallback","onEndCallback","currentNode","currentLevel","openTags","documentStarted","documentCompleted","createChildNode","attName","attribs","dummy","instruction","openCurrent","oldValidationFlag","noValidation","keepNullAttributes","insTarget","insValue","processingInstruction","rootNodeName","closeNode","openNode","isOpen","indent","endline","isClosed","level","nod","dat","com","ins","dec","dtd","r","XMLDummy","isRoot","attributeMap","clonedSelf","clonedChild","removeAttribute","getAttribute","getAttributeNode","setAttributeNode","newAttr","removeAttributeNode","oldAttr","getAttributeNS","setAttributeNS","removeAttributeNS","getAttributeNodeNS","setAttributeNodeNS","hasAttribute","hasAttributeNS","setIdAttribute","setIdAttributeNS","setIdAttributeNode","idAttr","getNamedItem","setNamedItem","removeNamedItem","getNamedItemNS","setNamedItemNS","removeNamedItemNS","DocumentPosition","XMLNodeList","parent1","baseURI","childNodeList","setParent","childNode","k","lastChild","len1","ref3","ignoreDecorators","convertAttKey","separateArrayItems","keepNullNodes","convertTextKey","convertCDataKey","convertCommentKey","convertRawKey","convertPIKey","insertBefore","newChild","refChild","removed","insertAfter","remove","commentBefore","commentAfter","instructionBefore","instructionAfter","prev","next","importDocument","clonedRoot","u","importXMLBuilder","replaceChild","oldChild","hasChildNodes","isSupported","hasAttributes","compareDocumentPosition","other","res","isAncestor","isDescendant","isPreceding","isSameNode","lookupPrefix","isDefaultNamespace","lookupNamespaceURI","setUserData","getUserData","nodePos","thisPos","treePosition","isFollowing","found","pos","foreachTreeNode","func","XMLWriterBase","XMLStreamWriter","stream","isLastRootNode","writeChildNode","spaceBeforeSlash","childNodeCount","firstChildNode","allowEmpty","pretty","suppressPrettyCount","newline","assertLegalName","assertLegalChar","textEscape","attEscape","ampregex","noDoubleEncoding","previousSibling","nextSibling","splitText","replaceWholeText","content","filteredOptions","ref4","ref5","ref6","dontPrettyTextNodes","dontprettytextnodes","spacebeforeslash","user","indentLevel","openAttribute","closeAttribute","prettySuppressed","begin","stringWriter","streamWriter","implementation","writerState","CancelError","isCanceled","promiseState","freeze","pending","canceled","resolved","rejected","PCancelable","userFunction","executor","description","defineProperties","shouldReject","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","config","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","exponentialDelay","retryNumber","delayFactor","calculatedDelay","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","resetLastRequestTime","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","aborted","abortListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","linearDelay","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","getChunk","getMaxChunksSize","fileSize","maxChunkSize","OC","appConfig","max_chunk_size","minimumChunkSize","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","isFileSystemFileEntry","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","_originalName","_path","Map","sum","latest","originalName","getChild","addChildren","addChild","FileSystemDirectoryEntry","reader","filePath","relPath","gtBuilder","detectLocale","addTranslation","locale","json","gt","ngettext","gettext","Status","Uploader","_destinationFolder","_isPublic","_customHeaders","_uploadQueue","_jobQueue","chunked_upload","max_parallel_count","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","maxChunksSize","customHeaders","structuredClone","setCustomHeader","deleteCustomerHeader","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","batchUpload","files2","rootFolder","UPLOADING","uploadDirectory","FINISHED","folderPath","currentUpload","selectedForUpload","directories","fileHandle","encodedDestinationFile","resolve2","disabledChunkUpload","blob","bytes","tempUrl","initChunkWorkspace","chunksQueue","bufferStart","bufferEnd","onIdle","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","_compiled","_scopeId","IconCancel","IconFolderUpload","IconPlus","IconUpload","showInvalidFilenameDialog","InvalidFilenameDialog","rest","skip","getConflicts","contentNames","_sfc_main","NcActionCaption","accept","disabled","multiple","noMenu","allowFolders","forbiddenCharacters","progressTimeId","eta","timeLeft","newFileMenuEntries","uploadManager","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","isPaused","PAUSED","buttonLabel","buttonName","setDestination","updateStatus","onUploadCompletion","getContent","onTriggerPick","uploadFolders","webkitdirectory","click","onPick","contentsCallback","filesToUpload","resetForm","form","date","setSeconds","time","toISOString","seconds","staticStyle","forceRecreate","_nc_uploader","ConflictPicker","picker","recursiveUpload","submit","$destroy","ToastAriaLive","ToastAriaLive2","TOAST_DEFAULT_TIMEOUT","showMessage","selector","innerHTML","innerText","classes","isNode","ariaLive","POLITE","ASSERTIVE","duration","gravity","backgroundColor","className","escapeMarkup","showToast","spawnDialog","dialog","container","vue","h2","v","__name","severity","__props","handleUnload","__sfc","NcDialog","_sfc_render","_setup","NcNoteCard","_sfc_staticRenderFns","TimeoutError","AbortError","getDOMException","errorMessage","DOMException","getAbortedReason","PriorityQueue","enqueue","priority","array","comparator","first","step","trunc","it","lowerBound","dequeue","shift","carryoverConcurrencyCount","intervalCap","POSITIVE_INFINITY","interval","autoStart","queueClass","throwOnTimeout","canInitializeInterval","job","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","fallback","customTimers","timer","cancelablePromise","sign","timeoutError","pTimeout","race","addAll","functions","onEmpty","onSizeLessThan","limit","sizeBy","Axios","CanceledError","isCancel","CancelToken","VERSION","Cancel","spread","toFormData","AxiosHeaders","HttpStatusCode","formToJSON","getAdapter","mergeConfig","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","O","chunkIds","notFulfilled","fulfilled","getter","__esModule","definition","f","chunkId","prop","done","needAttach","scripts","charset","nc","onScriptComplete","onload","doneFns","head","toStringTag","nmd","scriptUrl","currentScript","installedChunks","installedChunkData","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"files-main.js?v=50c196c93092c7824b11","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/eventemitter3/index.js","webpack:///nextcloud/apps/files/src/store/index.ts","webpack:///nextcloud/node_modules/decode-uri-component/index.js","webpack:///nextcloud/node_modules/split-on-first/index.js","webpack:///nextcloud/node_modules/query-string/node_modules/filter-obj/index.js","webpack:///nextcloud/node_modules/query-string/base.js","webpack:///nextcloud/node_modules/query-string/index.js","webpack:///nextcloud/apps/files/src/router/router.ts","webpack:///nextcloud/apps/files/src/FilesApp.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Cog.vue?4d6d","webpack:///nextcloud/node_modules/vue-material-design-icons/Cog.vue?vue&type=template&id=209aff25","webpack:///nextcloud/node_modules/throttle-debounce/esm/index.js","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ChartPie.vue?421f","webpack:///nextcloud/node_modules/vue-material-design-icons/ChartPie.vue?vue&type=template&id=90a70766","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?1370","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?2966","webpack://nextcloud/./apps/files/src/components/NavigationQuota.vue?08cb","webpack://nextcloud/./apps/files/src/views/Settings.vue?84f7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Clipboard.vue?68c7","webpack:///nextcloud/node_modules/vue-material-design-icons/Clipboard.vue?vue&type=template&id=7fdb151d","webpack:///nextcloud/apps/files/src/components/Setting.vue","webpack:///nextcloud/apps/files/src/components/Setting.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/components/Setting.vue?98ea","webpack://nextcloud/./apps/files/src/components/Setting.vue?8d57","webpack:///nextcloud/apps/files/src/store/userconfig.ts","webpack:///nextcloud/apps/files/src/views/Settings.vue","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=script&lang=js","webpack://nextcloud/./apps/files/src/views/Settings.vue?8bf3","webpack://nextcloud/./apps/files/src/views/Settings.vue?b81b","webpack:///nextcloud/apps/files/src/composables/useNavigation.ts","webpack:///nextcloud/apps/files/src/store/viewConfig.ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/views/Navigation.vue","webpack://nextcloud/./apps/files/src/views/Navigation.vue?26a1","webpack://nextcloud/./apps/files/src/views/Navigation.vue?74b9","webpack:///nextcloud/apps/files/src/views/FilesList.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Reload.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/Reload.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/Reload.vue?2e35","webpack:///nextcloud/node_modules/vue-material-design-icons/Reload.vue?vue&type=template&id=39a07256","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?5dae","webpack:///nextcloud/node_modules/vue-material-design-icons/FormatListBulletedSquare.vue?vue&type=template&id=64cece03","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/AccountPlus.vue?2818","webpack:///nextcloud/node_modules/vue-material-design-icons/AccountPlus.vue?vue&type=template&id=53a26aa0","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/ViewGrid.vue?4e55","webpack:///nextcloud/node_modules/vue-material-design-icons/ViewGrid.vue?vue&type=template&id=672ea5c8","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack:///nextcloud/apps/files/src/services/WebdavClient.ts","webpack:///nextcloud/apps/files/src/store/files.ts","webpack:///nextcloud/apps/files/src/store/paths.ts","webpack:///nextcloud/apps/files/src/store/selection.ts","webpack:///nextcloud/apps/files/src/store/uploader.ts","webpack:///nextcloud/apps/files/src/services/DropServiceUtils.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyActionUtils.ts","webpack:///nextcloud/apps/files/src/services/Files.ts","webpack:///nextcloud/apps/files/src/actions/moveOrCopyAction.ts","webpack:///nextcloud/apps/files/src/services/DropService.ts","webpack:///nextcloud/apps/files/src/store/dragging.ts","webpack:///nextcloud/apps/files/src/mixins/filesListWidth.ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?bcd4","webpack://nextcloud/./apps/files/src/components/BreadCrumbs.vue?d357","webpack:///nextcloud/apps/files/src/utils/fileUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntry.vue","webpack:///nextcloud/apps/files/src/store/actionsmenu.ts","webpack:///nextcloud/apps/files/src/store/renaming.ts","webpack:///nextcloud/node_modules/@vueuse/components/node_modules/vue-demi/lib/index.mjs","webpack:///nextcloud/node_modules/@vueuse/components/index.mjs","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/FileMultiple.vue?6e9d","webpack:///nextcloud/node_modules/vue-material-design-icons/FileMultiple.vue?vue&type=template&id=15fca808","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?8e66","webpack://nextcloud/./apps/files/src/components/DragAndDropPreview.vue?36f6","webpack:///nextcloud/apps/files/src/utils/dragUtils.ts","webpack:///nextcloud/apps/files/src/components/FileEntryMixin.ts","webpack:///nextcloud/apps/files/src/utils/hashUtils.ts","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue","webpack:///nextcloud/apps/files/src/components/CustomElementRender.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/CustomElementRender.vue?5f5c","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/ArrowLeft.vue?f857","webpack:///nextcloud/node_modules/vue-material-design-icons/ArrowLeft.vue?vue&type=template&id=16833c02","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?05b8","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?ff4d","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryActions.vue?7b52","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryCheckbox.vue","webpack:///nextcloud/apps/files/src/store/keyboard.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryCheckbox.vue?a18b","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue","webpack:///nextcloud/apps/files/src/composables/useRouteParameters.ts","webpack:///nextcloud/node_modules/vue-router/composables.mjs","webpack:///nextcloud/apps/files/src/utils/filenameValidity.ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryName.vue?617b","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryName.vue?98a4","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=script&lang=js","webpack://nextcloud/./node_modules/vue-material-design-icons/File.vue?245d","webpack:///nextcloud/node_modules/vue-material-design-icons/File.vue?vue&type=template&id=0f6b0bb0","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/FolderOpen.vue?6818","webpack:///nextcloud/node_modules/vue-material-design-icons/FolderOpen.vue?vue&type=template&id=ae0c5fc0","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Key.vue?157c","webpack:///nextcloud/node_modules/vue-material-design-icons/Key.vue?vue&type=template&id=499b3412","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Network.vue?11eb","webpack:///nextcloud/node_modules/vue-material-design-icons/Network.vue?vue&type=template&id=7bf2ec80","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/Tag.vue?6116","webpack:///nextcloud/node_modules/vue-material-design-icons/Tag.vue?vue&type=template&id=356230e0","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/PlayCircle.vue?0c26","webpack:///nextcloud/node_modules/vue-material-design-icons/PlayCircle.vue?vue&type=template&id=3cc1493c","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue?vue&type=script&lang=js","webpack:///nextcloud/apps/files/src/components/FileEntry/CollectivesIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?1937","webpack://nextcloud/./apps/files/src/components/FileEntry/CollectivesIcon.vue?949d","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?238d","webpack://nextcloud/./apps/files/src/components/FileEntry/FavoriteIcon.vue?62c6","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryPreview.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/services/LivePhotos.ts","webpack://nextcloud/./apps/files/src/components/FileEntry/FileEntryPreview.vue?8c1f","webpack:///nextcloud/apps/files/src/components/FileEntry.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FileEntry.vue?da7c","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FileEntryGrid.vue","webpack://nextcloud/./apps/files/src/components/FileEntryGrid.vue?bb8e","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue","webpack:///nextcloud/apps/files/src/components/FilesListHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListHeader.vue?349b","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?96eb","webpack://nextcloud/./apps/files/src/components/FilesListTableFooter.vue?fa4c","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue","webpack:///nextcloud/apps/files/src/mixins/filesSorting.ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?9017","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderButton.vue?e364","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?8cb2","webpack://nextcloud/./apps/files/src/components/FilesListTableHeader.vue?b1c9","webpack:///nextcloud/apps/files/src/components/VirtualList.vue","webpack:///nextcloud/apps/files/src/components/VirtualList.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/VirtualList.vue?37fa","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?6709","webpack://nextcloud/./apps/files/src/components/FilesListTableHeaderActions.vue?9494","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3eed","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?a1e5","webpack://nextcloud/./apps/files/src/components/FilesListVirtual.vue?3555","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=script&lang=js","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue","webpack://nextcloud/./node_modules/vue-material-design-icons/TrayArrowDown.vue?a897","webpack:///nextcloud/node_modules/vue-material-design-icons/TrayArrowDown.vue?vue&type=template&id=5dbf2618","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?c048","webpack://nextcloud/./apps/files/src/components/DragAndDropNotice.vue?a2e0","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=script&lang=ts","webpack:///nextcloud/apps/files/src/utils/davUtils.ts","webpack://nextcloud/./apps/files/src/views/FilesList.vue?5d15","webpack://nextcloud/./apps/files/src/views/FilesList.vue?1e5b","webpack:///nextcloud/apps/files/src/FilesApp.vue?vue&type=script&lang=ts","webpack://nextcloud/./apps/files/src/FilesApp.vue?597e","webpack:///nextcloud/apps/files/src/main.ts","webpack:///nextcloud/apps/files/src/services/RouterService.ts","webpack:///nextcloud/apps/files/src/services/Settings.js","webpack:///nextcloud/apps/files/src/models/Setting.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css","webpack:///nextcloud/apps/files/src/components/BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/components/FileEntry/FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/components/FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=scss","webpack:///nextcloud/apps/files/src/components/NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true","webpack:///nextcloud/apps/files/src/views/FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=scss","webpack:///nextcloud/apps/files/src/views/Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true","webpack:///nextcloud/node_modules/is-retry-allowed/index.js","webpack:///nextcloud/node_modules/sax/lib/sax.js","webpack:///nextcloud/node_modules/setimmediate/setImmediate.js","webpack:///nextcloud/node_modules/simple-eta/index.js","webpack:///nextcloud/node_modules/timers-browserify/main.js","webpack:///nextcloud/node_modules/xml2js/lib/bom.js","webpack:///nextcloud/node_modules/xml2js/lib/builder.js","webpack:///nextcloud/node_modules/xml2js/lib/defaults.js","webpack:///nextcloud/node_modules/xml2js/lib/parser.js","webpack:///nextcloud/node_modules/xml2js/lib/processors.js","webpack:///nextcloud/node_modules/xml2js/lib/xml2js.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/DocumentPosition.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/NodeType.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/Utility.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/WriterState.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLAttribute.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLCData.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLCharacterData.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLComment.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMImplementation.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDOMStringList.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDAttList.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDElement.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDEntity.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDTDNotation.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDeclaration.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDocType.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDocument.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDocumentCB.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLDummy.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLElement.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLNode.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLNodeList.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLRaw.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLStreamWriter.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLStringWriter.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLStringifier.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLText.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/XMLWriterBase.js","webpack:///nextcloud/node_modules/xmlbuilder/lib/index.js","webpack://nextcloud/./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css?2742","webpack:///nextcloud/node_modules/p-cancelable/index.js","webpack:///nextcloud/node_modules/axios-retry/dist/esm/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/dist/chunks/index-BaUJseCQ.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/@nextcloud/dialogs/dist/index.mjs","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-timeout/index.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/priority-queue.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/lower-bound.js","webpack:///nextcloud/node_modules/@nextcloud/upload/node_modules/p-queue/dist/index.js","webpack:///nextcloud/node_modules/axios/index.js","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * @copyright Copyright (c) 2024 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { createPinia } from 'pinia';\nexport const pinia = createPinia();\n","const token = '%[a-f0-9]{2}';\nconst singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');\nconst multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn [decodeURIComponent(components.join(''))];\n\t} catch {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tconst left = components.slice(0, split);\n\tconst right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch {\n\t\tlet tokens = input.match(singleMatcher) || [];\n\n\t\tfor (let i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher) || [];\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tconst replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD',\n\t};\n\n\tlet match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch {\n\t\t\tconst result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tconst entries = Object.keys(replaceMap);\n\n\tfor (const key of entries) {\n\t\t// Replace all decoded components\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nexport default function decodeUriComponent(encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n}\n","export default function splitOnFirst(string, separator) {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (string === '' || separator === '') {\n\t\treturn [];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n}\n","export function includeKeys(object, predicate) {\n\tconst result = {};\n\n\tif (Array.isArray(predicate)) {\n\t\tfor (const key of predicate) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor?.enumerable) {\n\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t}\n\t\t}\n\t} else {\n\t\t// `Reflect.ownKeys()` is required to retrieve symbol properties\n\t\tfor (const key of Reflect.ownKeys(object)) {\n\t\t\tconst descriptor = Object.getOwnPropertyDescriptor(object, key);\n\t\t\tif (descriptor.enumerable) {\n\t\t\t\tconst value = object[key];\n\t\t\t\tif (predicate(key, value, object)) {\n\t\t\t\t\tObject.defineProperty(result, key, descriptor);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn result;\n}\n\nexport function excludeKeys(object, predicate) {\n\tif (Array.isArray(predicate)) {\n\t\tconst set = new Set(predicate);\n\t\treturn includeKeys(object, key => !set.has(key));\n\t}\n\n\treturn includeKeys(object, (key, value, object) => !predicate(key, value, object));\n}\n","import decodeComponent from 'decode-uri-component';\nimport splitOnFirst from 'split-on-first';\nimport {includeKeys} from 'filter-obj';\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\n// eslint-disable-next-line unicorn/prefer-code-point\nconst strictUriEncode = string => encodeURIComponent(string).replaceAll(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result, [encode(key, options), '[', index, ']'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), '[]'].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[]=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\t[encode(key, options), ':list='].join(''),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), ':list=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\tcase 'bracket-separator': {\n\t\t\tconst keyValueSeparator = options.arrayFormat === 'bracket-separator'\n\t\t\t\t? '[]='\n\t\t\t\t: '=';\n\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\t// Translate null to an empty string so that it doesn't serialize as 'null'\n\t\t\t\tvalue = value === null ? '' : value;\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), keyValueSeparator, encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined\n\t\t\t\t\t|| (options.skipNull && value === null)\n\t\t\t\t\t|| (options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [\n\t\t\t\t\t\t...result,\n\t\t\t\t\t\tencode(key, options),\n\t\t\t\t\t];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '=', encode(value, options)].join(''),\n\t\t\t\t];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'colon-list-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(:list)$/.exec(key);\n\t\t\t\tkey = key.replace(/:list$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], value];\n\t\t\t};\n\t\t}\n\n\t\tcase 'comma':\n\t\tcase 'separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : (value === null ? value : decode(value, options));\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\t\t}\n\n\t\tcase 'bracket-separator': {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = /(\\[])$/.test(key);\n\t\t\t\tkey = key.replace(/\\[]$/, '');\n\n\t\t\t\tif (!isArray) {\n\t\t\t\t\taccumulator[key] = value ? decode(value, options) : value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst arrayValue = value === null\n\t\t\t\t\t? []\n\t\t\t\t\t: value.split(options.arrayFormatSeparator).map(item => decode(item, options));\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = arrayValue;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...accumulator[key], ...arrayValue];\n\t\t\t};\n\t\t}\n\n\t\tdefault: {\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [...[accumulator[key]].flat(), value];\n\t\t\t};\n\t\t}\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nexport function extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nexport function parse(query, options) {\n\toptions = {\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false,\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst returnValue = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn returnValue;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn returnValue;\n\t}\n\n\tfor (const parameter of query.split('&')) {\n\t\tif (parameter === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst parameter_ = options.decode ? parameter.replaceAll('+', ' ') : parameter;\n\n\t\tlet [key, value] = splitOnFirst(parameter_, '=');\n\n\t\tif (key === undefined) {\n\t\t\tkey = parameter_;\n\t\t}\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : (['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options));\n\t\tformatter(decode(key, options), value, returnValue);\n\t}\n\n\tfor (const [key, value] of Object.entries(returnValue)) {\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const [key2, value2] of Object.entries(value)) {\n\t\t\t\tvalue[key2] = parseValue(value2, options);\n\t\t\t}\n\t\t} else {\n\t\t\treturnValue[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn returnValue;\n\t}\n\n\t// TODO: Remove the use of `reduce`.\n\t// eslint-disable-next-line unicorn/no-array-reduce\n\treturn (options.sort === true ? Object.keys(returnValue).sort() : Object.keys(returnValue).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = returnValue[key];\n\t\tresult[key] = Boolean(value) && typeof value === 'object' && !Array.isArray(value) ? keysSorter(value) : value;\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexport function stringify(object, options) {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\t...options,\n\t};\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key]))\n\t\t|| (options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const [key, value] of Object.entries(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = value;\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\tif (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n\t\t\t\treturn encode(key, options) + '[]';\n\t\t\t}\n\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n}\n\nexport function parseUrl(url, options) {\n\toptions = {\n\t\tdecode: true,\n\t\t...options,\n\t};\n\n\tlet [url_, hash] = splitOnFirst(url, '#');\n\n\tif (url_ === undefined) {\n\t\turl_ = url;\n\t}\n\n\treturn {\n\t\turl: url_?.split('?')?.[0] ?? '',\n\t\tquery: parse(extract(url), options),\n\t\t...(options && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}),\n\t};\n}\n\nexport function stringifyUrl(object, options) {\n\toptions = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\t[encodeFragmentIdentifier]: true,\n\t\t...options,\n\t};\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = extract(object.url);\n\n\tconst query = {\n\t\t...parse(queryFromUrl, {sort: false}),\n\t\t...object.query,\n\t};\n\n\tlet queryString = stringify(query, options);\n\tqueryString &&= `?${queryString}`;\n\n\tlet hash = getHash(object.url);\n\tif (typeof object.fragmentIdentifier === 'string') {\n\t\tconst urlObjectForFragmentEncode = new URL(url);\n\t\turlObjectForFragmentEncode.hash = object.fragmentIdentifier;\n\t\thash = options[encodeFragmentIdentifier] ? urlObjectForFragmentEncode.hash : `#${object.fragmentIdentifier}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n}\n\nexport function pick(input, filter, options) {\n\toptions = {\n\t\tparseFragmentIdentifier: true,\n\t\t[encodeFragmentIdentifier]: false,\n\t\t...options,\n\t};\n\n\tconst {url, query, fragmentIdentifier} = parseUrl(input, options);\n\n\treturn stringifyUrl({\n\t\turl,\n\t\tquery: includeKeys(query, filter),\n\t\tfragmentIdentifier,\n\t}, options);\n}\n\nexport function exclude(input, filter, options) {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn pick(input, exclusionFilter, options);\n}\n","import * as queryString from './base.js';\n\nexport default queryString;\n","import { generateUrl } from '@nextcloud/router';\nimport queryString from 'query-string';\nimport Router from 'vue-router';\nimport Vue from 'vue';\nVue.use(Router);\n// Prevent router from throwing errors when we're already on the page we're trying to go to\nconst originalPush = Router.prototype.push;\nRouter.prototype.push = function push(to, onComplete, onAbort) {\n if (onComplete || onAbort)\n return originalPush.call(this, to, onComplete, onAbort);\n return originalPush.call(this, to).catch(err => err);\n};\nconst router = new Router({\n mode: 'history',\n // if index.php is in the url AND we got this far, then it's working:\n // let's keep using index.php in the url\n base: generateUrl('/apps/files'),\n linkActiveClass: 'active',\n routes: [\n {\n path: '/',\n // Pretending we're using the default view\n redirect: { name: 'filelist', params: { view: 'files' } },\n },\n {\n path: '/:view/:fileid(\\\\d+)?',\n name: 'filelist',\n props: true,\n },\n ],\n // Custom stringifyQuery to prevent encoding of slashes in the url\n stringifyQuery(query) {\n const result = queryString.stringify(query).replace(/%2F/gmi, '/');\n return result ? ('?' + result) : '';\n },\n});\nexport default router;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcContent',{attrs:{\"app-name\":\"files\"}},[_c('Navigation'),_vm._v(\" \"),_c('FilesList')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon cog-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CogIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Cog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Cog.vue?vue&type=template&id=209aff25\"\nimport script from \"./Cog.vue?vue&type=script&lang=js\"\nexport * from \"./Cog.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon cog-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M12,15.5A3.5,3.5 0 0,1 8.5,12A3.5,3.5 0 0,1 12,8.5A3.5,3.5 0 0,1 15.5,12A3.5,3.5 0 0,1 12,15.5M19.43,12.97C19.47,12.65 19.5,12.33 19.5,12C19.5,11.67 19.47,11.34 19.43,11L21.54,9.37C21.73,9.22 21.78,8.95 21.66,8.73L19.66,5.27C19.54,5.05 19.27,4.96 19.05,5.05L16.56,6.05C16.04,5.66 15.5,5.32 14.87,5.07L14.5,2.42C14.46,2.18 14.25,2 14,2H10C9.75,2 9.54,2.18 9.5,2.42L9.13,5.07C8.5,5.32 7.96,5.66 7.44,6.05L4.95,5.05C4.73,4.96 4.46,5.05 4.34,5.27L2.34,8.73C2.21,8.95 2.27,9.22 2.46,9.37L4.57,11C4.53,11.34 4.5,11.67 4.5,12C4.5,12.33 4.53,12.65 4.57,12.97L2.46,14.63C2.27,14.78 2.21,15.05 2.34,15.27L4.34,18.73C4.46,18.95 4.73,19.03 4.95,18.95L7.44,17.94C7.96,18.34 8.5,18.68 9.13,18.93L9.5,21.58C9.54,21.82 9.75,22 10,22H14C14.25,22 14.46,21.82 14.5,21.58L14.87,18.93C15.5,18.67 16.04,18.34 16.56,17.94L19.05,18.95C19.27,19.03 19.54,18.95 19.66,18.73L21.66,15.27C21.78,15.05 21.73,14.78 21.54,14.63L19.43,12.97Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)\n * are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,\n * as-is, to `callback` when the throttled-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds\n * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed\n * one final time after the last throttled-function call. (After the throttled-function has not been called for\n * `delay` milliseconds, the internal counter is reset).\n * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback\n * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that\n * callback will never executed if both noLeading = true and noTrailing = true.\n * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is\n * false (at end), schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle (delay, callback, options) {\n var _ref = options || {},\n _ref$noTrailing = _ref.noTrailing,\n noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,\n _ref$noLeading = _ref.noLeading,\n noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,\n _ref$debounceMode = _ref.debounceMode,\n debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;\n /*\n * After wrapper has stopped being called, this timeout ensures that\n * `callback` is executed at the proper times in `throttle` and `end`\n * debounce modes.\n */\n\n\n var timeoutID;\n var cancelled = false; // Keep track of the last time `callback` was executed.\n\n var lastExec = 0; // Function to clear existing timeout\n\n function clearExistingTimeout() {\n if (timeoutID) {\n clearTimeout(timeoutID);\n }\n } // Function to cancel next exec\n\n\n function cancel(options) {\n var _ref2 = options || {},\n _ref2$upcomingOnly = _ref2.upcomingOnly,\n upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;\n\n clearExistingTimeout();\n cancelled = !upcomingOnly;\n }\n /*\n * The `wrapper` function encapsulates all of the throttling / debouncing\n * functionality and when executed will limit the rate at which `callback`\n * is executed.\n */\n\n\n function wrapper() {\n for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n arguments_[_key] = arguments[_key];\n }\n\n var self = this;\n var elapsed = Date.now() - lastExec;\n\n if (cancelled) {\n return;\n } // Execute `callback` and update the `lastExec` timestamp.\n\n\n function exec() {\n lastExec = Date.now();\n callback.apply(self, arguments_);\n }\n /*\n * If `debounceMode` is true (at begin) this is used to clear the flag\n * to allow future `callback` executions.\n */\n\n\n function clear() {\n timeoutID = undefined;\n }\n\n if (!noLeading && debounceMode && !timeoutID) {\n /*\n * Since `wrapper` is being called for the first time and\n * `debounceMode` is true (at begin), execute `callback`\n * and noLeading != true.\n */\n exec();\n }\n\n clearExistingTimeout();\n\n if (debounceMode === undefined && elapsed > delay) {\n if (noLeading) {\n /*\n * In throttle mode with noLeading, if `delay` time has\n * been exceeded, update `lastExec` and schedule `callback`\n * to execute after `delay` ms.\n */\n lastExec = Date.now();\n\n if (!noTrailing) {\n timeoutID = setTimeout(debounceMode ? clear : exec, delay);\n }\n } else {\n /*\n * In throttle mode without noLeading, if `delay` time has been exceeded, execute\n * `callback`.\n */\n exec();\n }\n } else if (noTrailing !== true) {\n /*\n * In trailing throttle mode, since `delay` time has not been\n * exceeded, schedule `callback` to execute `delay` ms after most\n * recent execution.\n *\n * If `debounceMode` is true (at begin), schedule `clear` to execute\n * after `delay` ms.\n *\n * If `debounceMode` is false (at end), schedule `callback` to\n * execute after `delay` ms.\n */\n timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n }\n }\n\n wrapper.cancel = cancel; // Return the wrapper function.\n\n return wrapper;\n}\n\n/* eslint-disable no-undefined */\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the debounced-function is executed.\n * @param {object} [options] - An object to configure options.\n * @param {boolean} [options.atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n *\n * @returns {Function} A new, debounced function.\n */\n\nfunction debounce (delay, callback, options) {\n var _ref = options || {},\n _ref$atBegin = _ref.atBegin,\n atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;\n\n return throttle(delay, callback, {\n debounceMode: atBegin !== false\n });\n}\n\nexport { debounce, throttle };\n//# sourceMappingURL=index.js.map\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon chart-pie-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ChartPieIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChartPie.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ChartPie.vue?vue&type=template&id=90a70766\"\nimport script from \"./ChartPie.vue?vue&type=script&lang=js\"\nexport * from \"./ChartPie.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon chart-pie-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M11,2V22C5.9,21.5 2,17.2 2,12C2,6.8 5.9,2.5 11,2M13,2V11H22C21.5,6.2 17.8,2.5 13,2M13,13V22C17.7,21.5 21.5,17.8 22,13H13Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=script&lang=js\"","<template>\n\t<NcAppNavigationItem v-if=\"storageStats\"\n\t\t:aria-label=\"t('files', 'Storage informations')\"\n\t\t:class=\"{ 'app-navigation-entry__settings-quota--not-unlimited': storageStats.quota >= 0}\"\n\t\t:loading=\"loadingStorageStats\"\n\t\t:name=\"storageStatsTitle\"\n\t\t:title=\"storageStatsTooltip\"\n\t\tclass=\"app-navigation-entry__settings-quota\"\n\t\tdata-cy-files-navigation-settings-quota\n\t\t@click.stop.prevent=\"debounceUpdateStorageStats\">\n\t\t<ChartPie slot=\"icon\" :size=\"20\" />\n\n\t\t<!-- Progress bar -->\n\t\t<NcProgressBar v-if=\"storageStats.quota >= 0\"\n\t\t\tslot=\"extra\"\n\t\t\t:error=\"storageStats.relative > 80\"\n\t\t\t:value=\"Math.min(storageStats.relative, 100)\" />\n\t</NcAppNavigationItem>\n</template>\n\n<script>\nimport { debounce, throttle } from 'throttle-debounce'\nimport { formatFileSize } from '@nextcloud/files'\nimport { generateUrl } from '@nextcloud/router'\nimport { loadState } from '@nextcloud/initial-state'\nimport { showError } from '@nextcloud/dialogs'\nimport { subscribe } from '@nextcloud/event-bus'\nimport { translate } from '@nextcloud/l10n'\nimport axios from '@nextcloud/axios'\n\nimport ChartPie from 'vue-material-design-icons/ChartPie.vue'\nimport NcAppNavigationItem from '@nextcloud/vue/dist/Components/NcAppNavigationItem.js'\nimport NcProgressBar from '@nextcloud/vue/dist/Components/NcProgressBar.js'\n\nimport logger from '../logger.js'\n\nexport default {\n\tname: 'NavigationQuota',\n\n\tcomponents: {\n\t\tChartPie,\n\t\tNcAppNavigationItem,\n\t\tNcProgressBar,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tloadingStorageStats: false,\n\t\t\tstorageStats: loadState('files', 'storageStats', null),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tstorageStatsTitle() {\n\t\t\tconst usedQuotaByte = formatFileSize(this.storageStats?.used, false, false)\n\t\t\tconst quotaByte = formatFileSize(this.storageStats?.quota, false, false)\n\n\t\t\t// If no quota set\n\t\t\tif (this.storageStats?.quota < 0) {\n\t\t\t\treturn this.t('files', '{usedQuotaByte} used', { usedQuotaByte })\n\t\t\t}\n\n\t\t\treturn this.t('files', '{used} of {quota} used', {\n\t\t\t\tused: usedQuotaByte,\n\t\t\t\tquota: quotaByte,\n\t\t\t})\n\t\t},\n\t\tstorageStatsTooltip() {\n\t\t\tif (!this.storageStats.relative) {\n\t\t\t\treturn ''\n\t\t\t}\n\n\t\t\treturn this.t('files', '{relative}% used', this.storageStats)\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\t/**\n\t\t * Update storage stats every minute\n\t\t * TODO: remove when all views are migrated to Vue\n\t\t */\n\t\tsetInterval(this.throttleUpdateStorageStats, 60 * 1000)\n\n\t\tsubscribe('files:node:created', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:deleted', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:moved', this.throttleUpdateStorageStats)\n\t\tsubscribe('files:node:updated', this.throttleUpdateStorageStats)\n\t},\n\n\tmounted() {\n\t\t// If the user has a quota set, warn if the available account storage is <=0\n\t\t//\n\t\t// NOTE: This doesn't catch situations where actual *server* \n\t\t// disk (non-quota) space is low, but those should probably\n\t\t// be handled differently anyway since a regular user can't\n\t\t// can't do much about them (If we did want to indicate server disk \n\t\t// space matters to users, we'd probably want to use a warning\n\t\t// specific to that situation anyhow. So this covers warning covers \n\t\t// our primary day-to-day concern (individual account quota usage).\n\t\t//\n\t\tif (this.storageStats?.quota > 0 && this.storageStats?.free === 0) {\n\t\t\tthis.showStorageFullWarning()\n\t\t}\n\t},\n\n\tmethods: {\n\t\t// From user input\n\t\tdebounceUpdateStorageStats: debounce(200, function(event) {\n\t\t\tthis.updateStorageStats(event)\n\t\t}),\n\t\t// From interval or event bus\n\t\tthrottleUpdateStorageStats: throttle(1000, function(event) {\n\t\t\tthis.updateStorageStats(event)\n\t\t}),\n\n\t\t/**\n\t\t * Update the storage stats\n\t\t * Throttled at max 1 refresh per minute\n\t\t *\n\t\t * @param {Event} [event = null] if user interaction\n\t\t */\n\t\tasync updateStorageStats(event = null) {\n\t\t\tif (this.loadingStorageStats) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tthis.loadingStorageStats = true\n\t\t\ttry {\n\t\t\t\tconst response = await axios.get(generateUrl('/apps/files/api/v1/stats'))\n\t\t\t\tif (!response?.data?.data) {\n\t\t\t\t\tthrow new Error('Invalid storage stats')\n\t\t\t\t}\n\n\t\t\t\t// Warn the user if the available account storage changed from > 0 to 0 \n\t\t\t\t// (unless only because quota was intentionally set to 0 by admin in the interim)\n\t\t\t\tif (this.storageStats?.free > 0 && response.data.data?.free === 0 && response.data.data?.quota > 0) {\n\t\t\t\t\tthis.showStorageFullWarning()\n\t\t\t\t}\n\n\t\t\t\tthis.storageStats = response.data.data\n\t\t\t} catch (error) {\n\t\t\t\tlogger.error('Could not refresh storage stats', { error })\n\t\t\t\t// Only show to the user if it was manually triggered\n\t\t\t\tif (event) {\n\t\t\t\t\tshowError(t('files', 'Could not refresh storage stats'))\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tthis.loadingStorageStats = false\n\t\t\t}\n\t\t},\n\n\t\tshowStorageFullWarning() {\n\t\t\tshowError(this.t('files', 'Your storage is full, files can not be updated or synced anymore!'))\n\t\t},\n\n\t\tt: translate,\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n// User storage stats display\n.app-navigation-entry__settings-quota {\n\t// Align title with progress and icon\n\t&--not-unlimited::v-deep .app-navigation-entry__name {\n\t\tmargin-top: -6px;\n\t}\n\n\tprogress {\n\t\tposition: absolute;\n\t\tbottom: 12px;\n\t\tmargin-left: 44px;\n\t\twidth: calc(100% - 44px - 22px);\n\t}\n}\n</style>\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./NavigationQuota.vue?vue&type=template&id=400127b6&scoped=true\"\nimport script from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nexport * from \"./NavigationQuota.vue?vue&type=script&lang=js\"\nimport style0 from \"./NavigationQuota.vue?vue&type=style&index=0&id=400127b6&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"400127b6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.storageStats)?_c('NcAppNavigationItem',{staticClass:\"app-navigation-entry__settings-quota\",class:{ 'app-navigation-entry__settings-quota--not-unlimited': _vm.storageStats.quota >= 0},attrs:{\"aria-label\":_vm.t('files', 'Storage informations'),\"loading\":_vm.loadingStorageStats,\"name\":_vm.storageStatsTitle,\"title\":_vm.storageStatsTooltip,\"data-cy-files-navigation-settings-quota\":\"\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.debounceUpdateStorageStats.apply(null, arguments)}}},[_c('ChartPie',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"}),_vm._v(\" \"),(_vm.storageStats.quota >= 0)?_c('NcProgressBar',{attrs:{\"slot\":\"extra\",\"error\":_vm.storageStats.relative > 80,\"value\":Math.min(_vm.storageStats.relative, 100)},slot:\"extra\"}):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('NcAppSettingsDialog',{attrs:{\"open\":_vm.open,\"show-navigation\":true,\"name\":_vm.t('files', 'Files settings')},on:{\"update:open\":_vm.onClose}},[_c('NcAppSettingsSection',{attrs:{\"id\":\"settings\",\"name\":_vm.t('files', 'Files settings')}},[_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_favorites_first\",\"checked\":_vm.userConfig.sort_favorites_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_favorites_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort favorites first'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"sort_folders_first\",\"checked\":_vm.userConfig.sort_folders_first},on:{\"update:checked\":function($event){return _vm.setConfig('sort_folders_first', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Sort folders before files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"show_hidden\",\"checked\":_vm.userConfig.show_hidden},on:{\"update:checked\":function($event){return _vm.setConfig('show_hidden', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Show hidden files'))+\"\\n\\t\\t\")]),_vm._v(\" \"),_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"crop_image_previews\",\"checked\":_vm.userConfig.crop_image_previews},on:{\"update:checked\":function($event){return _vm.setConfig('crop_image_previews', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Crop image previews'))+\"\\n\\t\\t\")]),_vm._v(\" \"),(_vm.enableGridView)?_c('NcCheckboxRadioSwitch',{attrs:{\"data-cy-files-settings-setting\":\"grid_view\",\"checked\":_vm.userConfig.grid_view},on:{\"update:checked\":function($event){return _vm.setConfig('grid_view', $event)}}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('files', 'Enable the grid view'))+\"\\n\\t\\t\")]):_vm._e()],1),_vm._v(\" \"),(_vm.settings.length !== 0)?_c('NcAppSettingsSection',{attrs:{\"id\":\"more-settings\",\"name\":_vm.t('files', 'Additional settings')}},[_vm._l((_vm.settings),function(setting){return [_c('Setting',{key:setting.name,attrs:{\"el\":setting.el}})]})],2):_vm._e(),_vm._v(\" \"),_c('NcAppSettingsSection',{attrs:{\"id\":\"webdav\",\"name\":_vm.t('files', 'WebDAV')}},[_c('NcInputField',{attrs:{\"id\":\"webdav-url-input\",\"label\":_vm.t('files', 'WebDAV URL'),\"show-trailing-button\":true,\"success\":_vm.webdavUrlCopied,\"trailing-button-label\":_vm.t('files', 'Copy to clipboard'),\"value\":_vm.webdavUrl,\"readonly\":\"readonly\",\"type\":\"url\"},on:{\"focus\":function($event){return $event.target.select()},\"trailing-button-click\":_vm.copyCloudId},scopedSlots:_vm._u([{key:\"trailing-button-icon\",fn:function(){return [_c('Clipboard',{attrs:{\"size\":20}})]},proxy:true}])}),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.webdavDocs,\"target\":\"_blank\",\"rel\":\"noreferrer noopener\"}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Use this address to access your Files via WebDAV'))+\" ↗\\n\\t\\t\\t\")])]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('em',[_c('a',{staticClass:\"setting-link\",attrs:{\"href\":_vm.appPasswordUrl}},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.'))+\" ↗\\n\\t\\t\\t\")])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon clipboard-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ClipboardIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Clipboard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Clipboard.vue?vue&type=template&id=7fdb151d\"\nimport script from \"./Clipboard.vue?vue&type=script&lang=js\"\nexport * from \"./Clipboard.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon clipboard-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,3H14.82C14.4,1.84 13.3,1 12,1C10.7,1 9.6,1.84 9.18,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M12,3A1,1 0 0,1 13,4A1,1 0 0,1 12,5A1,1 0 0,1 11,4A1,1 0 0,1 12,3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2020 Gary Kim <gary@garykim.dev>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div />\n</template>\n<script>\nexport default {\n\tname: 'Setting',\n\tprops: {\n\t\tel: {\n\t\t\ttype: Function,\n\t\t\trequired: true,\n\t\t},\n\t},\n\tmounted() {\n\t\tthis.$el.appendChild(this.el())\n\t},\n}\n</script>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Setting.vue?vue&type=template&id=61d69eae\"\nimport script from \"./Setting.vue?vue&type=script&lang=js\"\nexport * from \"./Setting.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst userConfig = loadState('files', 'config', {\n show_hidden: false,\n crop_image_previews: true,\n sort_favorites_first: true,\n sort_folders_first: true,\n grid_view: false,\n});\nexport const useUserConfigStore = function (...args) {\n const store = defineStore('userconfig', {\n state: () => ({\n userConfig,\n }),\n actions: {\n /**\n * Update the user config local store\n */\n onUpdate(key, value) {\n Vue.set(this.userConfig, key, value);\n },\n /**\n * Update the user config local store AND on server side\n */\n async update(key, value) {\n await axios.put(generateUrl('/apps/files/api/v1/config/' + key), {\n value,\n });\n emit('files:config:updated', { key, value });\n },\n },\n });\n const userConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!userConfigStore._initialized) {\n subscribe('files:config:updated', function ({ key, value }) {\n userConfigStore.onUpdate(key, value);\n });\n userConfigStore._initialized = true;\n }\n return userConfigStore;\n};\n","<!--\n - @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n<template>\n\t<NcAppSettingsDialog :open=\"open\"\n\t\t:show-navigation=\"true\"\n\t\t:name=\"t('files', 'Files settings')\"\n\t\t@update:open=\"onClose\">\n\t\t<!-- Settings API-->\n\t\t<NcAppSettingsSection id=\"settings\" :name=\"t('files', 'Files settings')\">\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"sort_favorites_first\"\n\t\t\t\t:checked=\"userConfig.sort_favorites_first\"\n\t\t\t\t@update:checked=\"setConfig('sort_favorites_first', $event)\">\n\t\t\t\t{{ t('files', 'Sort favorites first') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"sort_folders_first\"\n\t\t\t\t:checked=\"userConfig.sort_folders_first\"\n\t\t\t\t@update:checked=\"setConfig('sort_folders_first', $event)\">\n\t\t\t\t{{ t('files', 'Sort folders before files') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"show_hidden\"\n\t\t\t\t:checked=\"userConfig.show_hidden\"\n\t\t\t\t@update:checked=\"setConfig('show_hidden', $event)\">\n\t\t\t\t{{ t('files', 'Show hidden files') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch data-cy-files-settings-setting=\"crop_image_previews\"\n\t\t\t\t:checked=\"userConfig.crop_image_previews\"\n\t\t\t\t@update:checked=\"setConfig('crop_image_previews', $event)\">\n\t\t\t\t{{ t('files', 'Crop image previews') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t\t<NcCheckboxRadioSwitch v-if=\"enableGridView\"\n\t\t\t\tdata-cy-files-settings-setting=\"grid_view\"\n\t\t\t\t:checked=\"userConfig.grid_view\"\n\t\t\t\t@update:checked=\"setConfig('grid_view', $event)\">\n\t\t\t\t{{ t('files', 'Enable the grid view') }}\n\t\t\t</NcCheckboxRadioSwitch>\n\t\t</NcAppSettingsSection>\n\n\t\t<!-- Settings API-->\n\t\t<NcAppSettingsSection v-if=\"settings.length !== 0\"\n\t\t\tid=\"more-settings\"\n\t\t\t:name=\"t('files', 'Additional settings')\">\n\t\t\t<template v-for=\"setting in settings\">\n\t\t\t\t<Setting :key=\"setting.name\" :el=\"setting.el\" />\n\t\t\t</template>\n\t\t</NcAppSettingsSection>\n\n\t\t<!-- Webdav URL-->\n\t\t<NcAppSettingsSection id=\"webdav\" :name=\"t('files', 'WebDAV')\">\n\t\t\t<NcInputField id=\"webdav-url-input\"\n\t\t\t\t:label=\"t('files', 'WebDAV URL')\"\n\t\t\t\t:show-trailing-button=\"true\"\n\t\t\t\t:success=\"webdavUrlCopied\"\n\t\t\t\t:trailing-button-label=\"t('files', 'Copy to clipboard')\"\n\t\t\t\t:value=\"webdavUrl\"\n\t\t\t\treadonly=\"readonly\"\n\t\t\t\ttype=\"url\"\n\t\t\t\t@focus=\"$event.target.select()\"\n\t\t\t\t@trailing-button-click=\"copyCloudId\">\n\t\t\t\t<template #trailing-button-icon>\n\t\t\t\t\t<Clipboard :size=\"20\" />\n\t\t\t\t</template>\n\t\t\t</NcInputField>\n\t\t\t<em>\n\t\t\t\t<a class=\"setting-link\"\n\t\t\t\t\t:href=\"webdavDocs\"\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noreferrer noopener\">\n\t\t\t\t\t{{ t('files', 'Use this address to access your Files via WebDAV') }} ↗\n\t\t\t\t</a>\n\t\t\t</em>\n\t\t\t<br>\n\t\t\t<em>\n\t\t\t\t<a class=\"setting-link\" :href=\"appPasswordUrl\">\n\t\t\t\t\t{{ t('files', 'If you have enabled 2FA, you must create and use a new app password by clicking here.') }} ↗\n\t\t\t\t</a>\n\t\t\t</em>\n\t\t</NcAppSettingsSection>\n\t</NcAppSettingsDialog>\n</template>\n\n<script>\nimport NcAppSettingsDialog from '@nextcloud/vue/dist/Components/NcAppSettingsDialog.js'\nimport NcAppSettingsSection from '@nextcloud/vue/dist/Components/NcAppSettingsSection.js'\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/dist/Components/NcCheckboxRadioSwitch.js'\nimport Clipboard from 'vue-material-design-icons/Clipboard.vue'\nimport NcInputField from '@nextcloud/vue/dist/Components/NcInputField.js'\nimport Setting from '../components/Setting.vue'\n\nimport { generateRemoteUrl, generateUrl } from '@nextcloud/router'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { showError, showSuccess } from '@nextcloud/dialogs'\nimport { translate } from '@nextcloud/l10n'\nimport { loadState } from '@nextcloud/initial-state'\nimport { useUserConfigStore } from '../store/userconfig.ts'\n\nexport default {\n\tname: 'Settings',\n\tcomponents: {\n\t\tClipboard,\n\t\tNcAppSettingsDialog,\n\t\tNcAppSettingsSection,\n\t\tNcCheckboxRadioSwitch,\n\t\tNcInputField,\n\t\tSetting,\n\t},\n\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\n\tsetup() {\n\t\tconst userConfigStore = useUserConfigStore()\n\t\treturn {\n\t\t\tuserConfigStore,\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\t// Settings API\n\t\t\tsettings: window.OCA?.Files?.Settings?.settings || [],\n\n\t\t\t// Webdav infos\n\t\t\twebdavUrl: generateRemoteUrl('dav/files/' + encodeURIComponent(getCurrentUser()?.uid)),\n\t\t\twebdavDocs: 'https://docs.nextcloud.com/server/stable/go.php?to=user-webdav',\n\t\t\tappPasswordUrl: generateUrl('/settings/user/security#generate-app-token-section'),\n\t\t\twebdavUrlCopied: false,\n\t\t\tenableGridView: (loadState('core', 'config', [])['enable_non-accessible_features'] ?? true),\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tuserConfig() {\n\t\t\treturn this.userConfigStore.userConfig\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\t// Update the settings API entries state\n\t\tthis.settings.forEach(setting => setting.open())\n\t},\n\n\tbeforeDestroy() {\n\t\t// Update the settings API entries state\n\t\tthis.settings.forEach(setting => setting.close())\n\t},\n\n\tmethods: {\n\t\tonClose() {\n\t\t\tthis.$emit('close')\n\t\t},\n\n\t\tsetConfig(key, value) {\n\t\t\tthis.userConfigStore.update(key, value)\n\t\t},\n\n\t\tasync copyCloudId() {\n\t\t\tdocument.querySelector('input#webdav-url-input').select()\n\n\t\t\tif (!navigator.clipboard) {\n\t\t\t\t// Clipboard API not available\n\t\t\t\tshowError(t('files', 'Clipboard is not available'))\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tawait navigator.clipboard.writeText(this.webdavUrl)\n\t\t\tthis.webdavUrlCopied = true\n\t\t\tshowSuccess(t('files', 'WebDAV URL copied to clipboard'))\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.webdavUrlCopied = false\n\t\t\t}, 5000)\n\t\t},\n\n\t\tt: translate,\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.setting-link:hover {\n\ttext-decoration: underline;\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=script&lang=js\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Settings.vue?vue&type=template&id=00f09e69&scoped=true\"\nimport script from \"./Settings.vue?vue&type=script&lang=js\"\nexport * from \"./Settings.vue?vue&type=script&lang=js\"\nimport style0 from \"./Settings.vue?vue&type=style&index=0&id=00f09e69&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"00f09e69\",\n null\n \n)\n\nexport default component.exports","import { getNavigation } from '@nextcloud/files';\nimport { onMounted, onUnmounted, shallowRef } from 'vue';\n/**\n * Composable to get the currently active files view from the files navigation\n */\nexport function useNavigation() {\n const navigation = getNavigation();\n const views = shallowRef(navigation.views);\n const currentView = shallowRef(navigation.active);\n /**\n * Event listener to update the `currentView`\n * @param event The update event\n */\n function onUpdateActive(event) {\n currentView.value = event.detail;\n }\n /**\n * Event listener to update all registered views\n */\n function onUpdateViews() {\n views.value = navigation.views;\n }\n onMounted(() => {\n navigation.addEventListener('update', onUpdateViews);\n navigation.addEventListener('updateActive', onUpdateActive);\n });\n onUnmounted(() => {\n navigation.removeEventListener('update', onUpdateViews);\n navigation.removeEventListener('updateActive', onUpdateActive);\n });\n return {\n currentView,\n views,\n };\n}\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { generateUrl } from '@nextcloud/router';\nimport { loadState } from '@nextcloud/initial-state';\nimport axios from '@nextcloud/axios';\nimport Vue from 'vue';\nconst viewConfig = loadState('files', 'viewConfigs', {});\nexport const useViewConfigStore = function (...args) {\n const store = defineStore('viewconfig', {\n state: () => ({\n viewConfig,\n }),\n getters: {\n getConfig: (state) => (view) => state.viewConfig[view] || {},\n },\n actions: {\n /**\n * Update the view config local store\n */\n onUpdate(view, key, value) {\n if (!this.viewConfig[view]) {\n Vue.set(this.viewConfig, view, {});\n }\n Vue.set(this.viewConfig[view], key, value);\n },\n /**\n * Update the view config local store AND on server side\n */\n async update(view, key, value) {\n axios.put(generateUrl(`/apps/files/api/v1/views/${view}/${key}`), {\n value,\n });\n emit('files:viewconfig:updated', { view, key, value });\n },\n /**\n * Set the sorting key AND sort by ASC\n * The key param must be a valid key of a File object\n * If not found, will be searched within the File attributes\n */\n setSortingBy(key = 'basename', view = 'files') {\n // Save new config\n this.update(view, 'sorting_mode', key);\n this.update(view, 'sorting_direction', 'asc');\n },\n /**\n * Toggle the sorting direction\n */\n toggleSortingDirection(view = 'files') {\n const config = this.getConfig(view) || { sorting_direction: 'asc' };\n const newDirection = config.sorting_direction === 'asc' ? 'desc' : 'asc';\n // Save new config\n this.update(view, 'sorting_direction', newDirection);\n },\n },\n });\n const viewConfigStore = store(...args);\n // Make sure we only register the listeners once\n if (!viewConfigStore._initialized) {\n subscribe('files:viewconfig:updated', function ({ view, key, value }) {\n viewConfigStore.onUpdate(view, key, value);\n });\n viewConfigStore._initialized = true;\n }\n return viewConfigStore;\n};\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppNavigation',{attrs:{\"data-cy-files-navigation\":\"\",\"aria-label\":_vm.t('files', 'Files')},scopedSlots:_vm._u([{key:\"list\",fn:function(){return _vm._l((_vm.parentViews),function(view){return _c('NcAppNavigationItem',{key:view.id,attrs:{\"allow-collapse\":true,\"data-cy-files-navigation-item\":view.id,\"exact\":_vm.useExactRouteMatching(view),\"icon\":view.iconClass,\"name\":view.name,\"open\":_vm.isExpanded(view),\"pinned\":view.sticky,\"to\":_vm.generateToNavigation(view)},on:{\"update:open\":function($event){return _vm.onToggleExpand(view)}}},[(view.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":view.icon},slot:\"icon\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.childViews[view.id]),function(child){return _c('NcAppNavigationItem',{key:child.id,attrs:{\"data-cy-files-navigation-item\":child.id,\"exact-path\":true,\"icon\":child.iconClass,\"name\":child.name,\"to\":_vm.generateToNavigation(child)}},[(child.icon)?_c('NcIconSvgWrapper',{attrs:{\"slot\":\"icon\",\"svg\":child.icon},slot:\"icon\"}):_vm._e()],1)})],2)})},proxy:true},{key:\"footer\",fn:function(){return [_c('ul',{staticClass:\"app-navigation-entry__settings\"},[_c('NavigationQuota'),_vm._v(\" \"),_c('NcAppNavigationItem',{attrs:{\"aria-label\":_vm.t('files', 'Open the files app settings'),\"name\":_vm.t('files', 'Files settings'),\"data-cy-files-navigation-settings-button\":\"\"},on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.openSettings.apply(null, arguments)}}},[_c('IconCog',{attrs:{\"slot\":\"icon\",\"size\":20},slot:\"icon\"})],1)],1)]},proxy:true}])},[_vm._v(\" \"),_vm._v(\" \"),_c('SettingsModal',{attrs:{\"open\":_vm.settingsOpened,\"data-cy-files-navigation-settings\":\"\"},on:{\"close\":_vm.onSettingsClose}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./Navigation.vue?vue&type=template&id=d0738916&scoped=true\"\nimport script from \"./Navigation.vue?vue&type=script&lang=ts\"\nexport * from \"./Navigation.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Navigation.vue?vue&type=style&index=0&id=d0738916&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d0738916\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcAppContent',{attrs:{\"page-heading\":_vm.pageHeading,\"data-cy-files-content\":\"\"}},[_c('div',{staticClass:\"files-list__header\"},[_c('BreadCrumbs',{attrs:{\"path\":_vm.dir},on:{\"reload\":_vm.fetchContent},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [(_vm.canShare && _vm.filesListWidth >= 512)?_c('NcButton',{staticClass:\"files-list__header-share-button\",class:{ 'files-list__header-share-button--shared': _vm.shareButtonType },attrs:{\"aria-label\":_vm.shareButtonLabel,\"title\":_vm.shareButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.openSharingSidebar},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.shareButtonType === _vm.ShareType.Link)?_c('LinkIcon'):_c('AccountPlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,4106306959)}):_vm._e(),_vm._v(\" \"),(!_vm.canUpload || _vm.isQuotaExceeded)?_c('NcButton',{staticClass:\"files-list__header-upload-button--disabled\",attrs:{\"aria-label\":_vm.cantUploadLabel,\"title\":_vm.cantUploadLabel,\"disabled\":true,\"type\":\"secondary\"},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('PlusIcon',{attrs:{\"size\":20}})]},proxy:true}],null,false,2953566425)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'New'))+\"\\n\\t\\t\\t\\t\")]):(_vm.currentFolder)?_c('UploadPicker',{staticClass:\"files-list__header-upload-button\",attrs:{\"content\":_vm.dirContents,\"destination\":_vm.currentFolder,\"multiple\":true},on:{\"failed\":_vm.onUploadFail,\"uploaded\":_vm.onUpload}}):_vm._e()]},proxy:true}])}),_vm._v(\" \"),(_vm.filesListWidth >= 512 && _vm.enableGridView)?_c('NcButton',{staticClass:\"files-list__header-grid-button\",attrs:{\"aria-label\":_vm.gridViewButtonLabel,\"title\":_vm.gridViewButtonLabel,\"type\":\"tertiary\"},on:{\"click\":_vm.toggleGridView},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.userConfig.grid_view)?_c('ListViewIcon'):_c('ViewGridIcon')]},proxy:true}],null,false,1682960703)}):_vm._e(),_vm._v(\" \"),(_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__refresh-icon\"}):_vm._e()],1),_vm._v(\" \"),(!_vm.loading && _vm.canUpload)?_c('DragAndDropNotice',{attrs:{\"current-folder\":_vm.currentFolder}}):_vm._e(),_vm._v(\" \"),(_vm.loading && !_vm.isRefreshing)?_c('NcLoadingIcon',{staticClass:\"files-list__loading-icon\",attrs:{\"size\":38,\"name\":_vm.t('files', 'Loading current folder')}}):(!_vm.loading && _vm.isEmptyDir)?[(_vm.error)?_c('NcEmptyContent',{attrs:{\"name\":_vm.error,\"data-cy-files-content-error\":\"\"},scopedSlots:_vm._u([{key:\"action\",fn:function(){return [_c('NcButton',{attrs:{\"type\":\"secondary\"},on:{\"click\":_vm.fetchContent},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('IconReload',{attrs:{\"size\":20}})]},proxy:true}],null,false,3448385010)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Retry'))+\"\\n\\t\\t\\t\\t\")])]},proxy:true},{key:\"icon\",fn:function(){return [_c('IconAlertCircleOutline')]},proxy:true}],null,false,2673163798)}):_c('NcEmptyContent',{attrs:{\"name\":_vm.currentView?.emptyTitle || _vm.t('files', 'No files in here'),\"description\":_vm.currentView?.emptyCaption || _vm.t('files', 'Upload some content or sync with your devices!'),\"data-cy-files-content-empty\":\"\"},scopedSlots:_vm._u([(_vm.dir !== '/')?{key:\"action\",fn:function(){return [_c('NcButton',{attrs:{\"aria-label\":_vm.t('files', 'Go to the previous folder'),\"type\":\"primary\",\"to\":_vm.toPreviousDir}},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Go back'))+\"\\n\\t\\t\\t\\t\")])]},proxy:true}:null,{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"svg\":_vm.currentView.icon}})]},proxy:true}],null,true)})]:_c('FilesListVirtual',{ref:\"filesListVirtual\",attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"nodes\":_vm.dirContentsSorted}})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon reload-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M2 12C2 16.97 6.03 21 11 21C13.39 21 15.68 20.06 17.4 18.4L15.9 16.9C14.63 18.25 12.86 19 11 19C4.76 19 1.64 11.46 6.05 7.05C10.46 2.64 18 5.77 18 12H15L19 16H19.1L23 12H20C20 7.03 15.97 3 11 3C6.03 3 2 7.03 2 12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ReloadIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Reload.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Reload.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Reload.vue?vue&type=template&id=39a07256\"\nimport script from \"./Reload.vue?vue&type=script&lang=js\"\nexport * from \"./Reload.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon reload-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2 12C2 16.97 6.03 21 11 21C13.39 21 15.68 20.06 17.4 18.4L15.9 16.9C14.63 18.25 12.86 19 11 19C4.76 19 1.64 11.46 6.05 7.05C10.46 2.64 18 5.77 18 12H15L19 16H19.1L23 12H20C20 7.03 15.97 3 11 3C6.03 3 2 7.03 2 12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon format-list-bulleted-square-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FormatListBulletedSquareIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FormatListBulletedSquare.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FormatListBulletedSquare.vue?vue&type=template&id=64cece03\"\nimport script from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\nexport * from \"./FormatListBulletedSquare.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon format-list-bulleted-square-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,4H7V8H3V4M9,5V7H21V5H9M3,10H7V14H3V10M9,11V13H21V11H9M3,16H7V20H3V16M9,17V19H21V17H9\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon account-plus-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"AccountPlusIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./AccountPlus.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccountPlus.vue?vue&type=template&id=53a26aa0\"\nimport script from \"./AccountPlus.vue?vue&type=script&lang=js\"\nexport * from \"./AccountPlus.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon account-plus-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ViewGrid.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon view-grid-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ViewGridIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./ViewGrid.vue?vue&type=template&id=672ea5c8\"\nimport script from \"./ViewGrid.vue?vue&type=script&lang=js\"\nexport * from \"./ViewGrid.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon view-grid-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M3,11H11V3H3M3,21H11V13H3M13,21H21V13H13M13,3V11H21V3\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // Open sidebar and set active tab to sharing by default\n window.OCA.Files.Sidebar.setActiveTab('sharing');\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser, getRequestToken, onRequestTokenUpdate } from '@nextcloud/auth';\nimport { davGetClient } from '@nextcloud/files';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nexport const defaultRootUrl = generateRemoteUrl('dav' + rootPath);\n/**\n * @deprecated use `davGetClient` from `@nextcloud/files`\n */\nexport const getClient = (rootUrl = defaultRootUrl) => davGetClient(rootUrl);\nexport const client = davGetClient();\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport { defineStore } from 'pinia';\nimport { subscribe } from '@nextcloud/event-bus';\nimport logger from '../logger';\nimport Vue from 'vue';\nimport { getClient } from '../services/WebdavClient.ts';\nconst client = getClient();\nconst fetchNode = async (node) => {\n const propfindPayload = davGetDefaultPropfind();\n const result = await client.stat(`${davRootPath}${node.path}`, {\n details: true,\n data: propfindPayload,\n });\n return davResultToNode(result.data);\n};\nexport const useFilesStore = function (...args) {\n const store = defineStore('files', {\n state: () => ({\n files: {},\n roots: {},\n _initialized: false,\n }),\n getters: {\n /**\n * Get a file or folder by its source\n */\n getNode: (state) => (source) => state.files[source],\n /**\n * Get a list of files or folders by their IDs\n * Note: does not return undefined values\n */\n getNodes: (state) => (sources) => sources\n .map(source => state.files[source])\n .filter(Boolean),\n /**\n * Get files or folders by their file ID\n * Multiple nodes can have the same file ID but different sources\n * (e.g. in a shared context)\n */\n getNodesById: (state) => (fileId) => Object.values(state.files).filter(node => node.fileid === fileId),\n /**\n * Get the root folder of a service\n */\n getRoot: (state) => (service) => state.roots[service],\n },\n actions: {\n updateNodes(nodes) {\n // Update the store all at once\n const files = nodes.reduce((acc, node) => {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return acc;\n }\n acc[node.source] = node;\n return acc;\n }, {});\n Vue.set(this, 'files', { ...this.files, ...files });\n },\n deleteNodes(nodes) {\n nodes.forEach(node => {\n if (node.source) {\n Vue.delete(this.files, node.source);\n }\n });\n },\n setRoot({ service, root }) {\n Vue.set(this.roots, service, root);\n },\n onDeletedNode(node) {\n this.deleteNodes([node]);\n },\n onCreatedNode(node) {\n this.updateNodes([node]);\n },\n onMovedNode({ node, oldSource }) {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return;\n }\n // Update the path of the node\n Vue.delete(this.files, oldSource);\n this.updateNodes([node]);\n },\n async onUpdatedNode(node) {\n if (!node.fileid) {\n logger.error('Trying to update/set a node without fileid', { node });\n return;\n }\n // If we have multiple nodes with the same file ID, we need to update all of them\n const nodes = this.getNodesById(node.fileid);\n if (nodes.length > 1) {\n await Promise.all(nodes.map(fetchNode)).then(this.updateNodes);\n logger.debug(nodes.length + ' nodes updated in store', { fileid: node.fileid });\n return;\n }\n // If we have only one node with the file ID, we can update it directly\n if (node.source === nodes[0].source) {\n this.updateNodes([node]);\n return;\n }\n // Otherwise, it means we receive an event for a node that is not in the store\n fetchNode(node).then(n => this.updateNodes([n]));\n },\n },\n });\n const fileStore = store(...args);\n // Make sure we only register the listeners once\n if (!fileStore._initialized) {\n subscribe('files:node:created', fileStore.onCreatedNode);\n subscribe('files:node:deleted', fileStore.onDeletedNode);\n subscribe('files:node:updated', fileStore.onUpdatedNode);\n subscribe('files:node:moved', fileStore.onMovedNode);\n fileStore._initialized = true;\n }\n return fileStore;\n};\n","import { defineStore } from 'pinia';\nimport { dirname } from '@nextcloud/paths';\nimport { File, FileType, Folder, getNavigation } from '@nextcloud/files';\nimport { subscribe } from '@nextcloud/event-bus';\nimport Vue from 'vue';\nimport logger from '../logger';\nimport { useFilesStore } from './files';\nexport const usePathsStore = function (...args) {\n const files = useFilesStore(...args);\n const store = defineStore('paths', {\n state: () => ({\n paths: {},\n _initialized: false,\n }),\n getters: {\n getPath: (state) => {\n return (service, path) => {\n if (!state.paths[service]) {\n return undefined;\n }\n return state.paths[service][path];\n };\n },\n },\n actions: {\n addPath(payload) {\n // If it doesn't exists, init the service state\n if (!this.paths[payload.service]) {\n Vue.set(this.paths, payload.service, {});\n }\n // Now we can set the provided path\n Vue.set(this.paths[payload.service], payload.path, payload.source);\n },\n deletePath(service, path) {\n // skip if service does not exist\n if (!this.paths[service]) {\n return;\n }\n Vue.delete(this.paths[service], path);\n },\n onCreatedNode(node) {\n const service = getNavigation()?.active?.id || 'files';\n if (!node.fileid) {\n logger.error('Node has no fileid', { node });\n return;\n }\n // Only add path if it's a folder\n if (node.type === FileType.Folder) {\n this.addPath({\n service,\n path: node.path,\n source: node.source,\n });\n }\n // Update parent folder children if exists\n // If the folder is the root, get it and update it\n this.addNodeToParentChildren(node);\n },\n onDeletedNode(node) {\n const service = getNavigation()?.active?.id || 'files';\n if (node.type === FileType.Folder) {\n // Delete the path\n this.deletePath(service, node.path);\n }\n this.deleteNodeFromParentChildren(node);\n },\n onMovedNode({ node, oldSource }) {\n const service = getNavigation()?.active?.id || 'files';\n // Update the path of the node\n if (node.type === FileType.Folder) {\n // Delete the old path if it exists\n const oldPath = Object.entries(this.paths[service]).find(([, source]) => source === oldSource);\n if (oldPath?.[0]) {\n this.deletePath(service, oldPath[0]);\n }\n // Add the new path\n this.addPath({\n service,\n path: node.path,\n source: node.source,\n });\n }\n // Dummy simple clone of the renamed node from a previous state\n const oldNode = new File({ source: oldSource, owner: node.owner, mime: node.mime });\n this.deleteNodeFromParentChildren(oldNode);\n this.addNodeToParentChildren(node);\n },\n deleteNodeFromParentChildren(node) {\n const service = getNavigation()?.active?.id || 'files';\n // Update children of a root folder\n const parentSource = dirname(node.source);\n const folder = (node.dirname === '/' ? files.getRoot(service) : files.getNode(parentSource));\n if (folder) {\n // ensure sources are unique\n const children = new Set(folder._children ?? []);\n children.delete(node.source);\n Vue.set(folder, '_children', [...children.values()]);\n logger.debug('Children updated', { parent: folder, node, children: folder._children });\n return;\n }\n logger.debug('Parent path does not exists, skipping children update', { node });\n },\n addNodeToParentChildren(node) {\n const service = getNavigation()?.active?.id || 'files';\n // Update children of a root folder\n const parentSource = dirname(node.source);\n const folder = (node.dirname === '/' ? files.getRoot(service) : files.getNode(parentSource));\n if (folder) {\n // ensure sources are unique\n const children = new Set(folder._children ?? []);\n children.add(node.source);\n Vue.set(folder, '_children', [...children.values()]);\n logger.debug('Children updated', { parent: folder, node, children: folder._children });\n return;\n }\n logger.debug('Parent path does not exists, skipping children update', { node });\n },\n },\n });\n const pathsStore = store(...args);\n // Make sure we only register the listeners once\n if (!pathsStore._initialized) {\n subscribe('files:node:created', pathsStore.onCreatedNode);\n subscribe('files:node:deleted', pathsStore.onDeletedNode);\n subscribe('files:node:moved', pathsStore.onMovedNode);\n pathsStore._initialized = true;\n }\n return pathsStore;\n};\n","import { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useSelectionStore = defineStore('selection', {\n state: () => ({\n selected: [],\n lastSelection: [],\n lastSelectedIndex: null,\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'selected', [...new Set(selection)]);\n },\n /**\n * Set the last selected index\n */\n setLastIndex(lastSelectedIndex = null) {\n // Update the last selection if we provided a new selection starting point\n Vue.set(this, 'lastSelection', lastSelectedIndex ? this.selected : []);\n Vue.set(this, 'lastSelectedIndex', lastSelectedIndex);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'selected', []);\n Vue.set(this, 'lastSelection', []);\n Vue.set(this, 'lastSelectedIndex', null);\n },\n },\n});\n","import { defineStore } from 'pinia';\nimport { getUploader } from '@nextcloud/upload';\nlet uploader;\nexport const useUploaderStore = function (...args) {\n // Only init on runtime\n uploader = getUploader();\n const store = defineStore('uploader', {\n state: () => ({\n queue: uploader.queue,\n }),\n });\n return store(...args);\n};\n","import { emit } from '@nextcloud/event-bus';\nimport { Folder, Node, davGetClient, davGetDefaultPropfind, davResultToNode } from '@nextcloud/files';\nimport { openConflictPicker } from '@nextcloud/upload';\nimport { showError, showInfo } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport logger from '../logger.js';\n/**\n * This represents a Directory in the file tree\n * We extend the File class to better handling uploading\n * and stay as close as possible as the Filesystem API.\n * This also allow us to hijack the size or lastModified\n * properties to compute them dynamically.\n */\nexport class Directory extends File {\n /* eslint-disable no-use-before-define */\n _contents;\n constructor(name, contents = []) {\n super([], name, { type: 'httpd/unix-directory' });\n this._contents = contents;\n }\n set contents(contents) {\n this._contents = contents;\n }\n get contents() {\n return this._contents;\n }\n get size() {\n return this._computeDirectorySize(this);\n }\n get lastModified() {\n if (this._contents.length === 0) {\n return Date.now();\n }\n return this._computeDirectoryMtime(this);\n }\n /**\n * Get the last modification time of a file tree\n * This is not perfect, but will get us a pretty good approximation\n * @param directory the directory to traverse\n */\n _computeDirectoryMtime(directory) {\n return directory.contents.reduce((acc, file) => {\n return file.lastModified > acc\n // If the file is a directory, the lastModified will\n // also return the results of its _computeDirectoryMtime method\n // Fancy recursion, huh?\n ? file.lastModified\n : acc;\n }, 0);\n }\n /**\n * Get the size of a file tree\n * @param directory the directory to traverse\n */\n _computeDirectorySize(directory) {\n return directory.contents.reduce((acc, entry) => {\n // If the file is a directory, the size will\n // also return the results of its _computeDirectorySize method\n // Fancy recursion, huh?\n return acc + entry.size;\n }, 0);\n }\n}\n/**\n * Traverse a file tree using the Filesystem API\n * @param entry the entry to traverse\n */\nexport const traverseTree = async (entry) => {\n // Handle file\n if (entry.isFile) {\n return new Promise((resolve, reject) => {\n entry.file(resolve, reject);\n });\n }\n // Handle directory\n logger.debug('Handling recursive file tree', { entry: entry.name });\n const directory = entry;\n const entries = await readDirectory(directory);\n const contents = (await Promise.all(entries.map(traverseTree))).flat();\n return new Directory(directory.name, contents);\n};\n/**\n * Read a directory using Filesystem API\n * @param directory the directory to read\n */\nconst readDirectory = (directory) => {\n const dirReader = directory.createReader();\n return new Promise((resolve, reject) => {\n const entries = [];\n const getEntries = () => {\n dirReader.readEntries((results) => {\n if (results.length) {\n entries.push(...results);\n getEntries();\n }\n else {\n resolve(entries);\n }\n }, (error) => {\n reject(error);\n });\n };\n getEntries();\n });\n};\nexport const createDirectoryIfNotExists = async (absolutePath) => {\n const davClient = davGetClient();\n const dirExists = await davClient.exists(absolutePath);\n if (!dirExists) {\n logger.debug('Directory does not exist, creating it', { absolutePath });\n await davClient.createDirectory(absolutePath, { recursive: true });\n const stat = await davClient.stat(absolutePath, { details: true, data: davGetDefaultPropfind() });\n emit('files:node:created', davResultToNode(stat.data));\n }\n};\nexport const resolveConflict = async (files, destination, contents) => {\n try {\n // List all conflicting files\n const conflicts = files.filter((file) => {\n return contents.find((node) => node.basename === (file instanceof File ? file.name : file.basename));\n }).filter(Boolean);\n // List of incoming files that are NOT in conflict\n const uploads = files.filter((file) => {\n return !conflicts.includes(file);\n });\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, conflicts, contents);\n logger.debug('Conflict resolution', { uploads, selected, renamed });\n // If the user selected nothing, we cancel the upload\n if (selected.length === 0 && renamed.length === 0) {\n // User skipped\n showInfo(t('files', 'Conflicts resolution skipped'));\n logger.info('User skipped the conflict resolution');\n return [];\n }\n // Update the list of files to upload\n return [...uploads, ...selected, ...renamed];\n }\n catch (error) {\n console.error(error);\n // User cancelled\n showError(t('files', 'Upload cancelled'));\n logger.error('User cancelled the upload');\n }\n return [];\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\nimport { Permission } from '@nextcloud/files';\nimport PQueue from 'p-queue';\n// This is the processing queue. We only want to allow 3 concurrent requests\nlet queue;\n// Maximum number of concurrent operations\nconst MAX_CONCURRENCY = 5;\n/**\n * Get the processing queue\n */\nexport const getQueue = () => {\n if (!queue) {\n queue = new PQueue({ concurrency: MAX_CONCURRENCY });\n }\n return queue;\n};\nexport var MoveCopyAction;\n(function (MoveCopyAction) {\n MoveCopyAction[\"MOVE\"] = \"Move\";\n MoveCopyAction[\"COPY\"] = \"Copy\";\n MoveCopyAction[\"MOVE_OR_COPY\"] = \"move-or-copy\";\n})(MoveCopyAction || (MoveCopyAction = {}));\nexport const canMove = (nodes) => {\n const minPermission = nodes.reduce((min, node) => Math.min(min, node.permissions), Permission.ALL);\n return (minPermission & Permission.UPDATE) !== 0;\n};\nexport const canDownload = (nodes) => {\n return nodes.every(node => {\n const shareAttributes = JSON.parse(node.attributes?.['share-attributes'] ?? '[]');\n return !shareAttributes.some(attribute => attribute.scope === 'permissions' && attribute.enabled === false && attribute.key === 'download');\n });\n};\nexport const canCopy = (nodes) => {\n // a shared file cannot be copied if the download is disabled\n // it can be copied if the user has at least read permissions\n return canDownload(nodes)\n && !nodes.some(node => node.permissions === Permission.NONE);\n};\n","import { CancelablePromise } from 'cancelable-promise';\nimport { File, Folder, davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files';\nimport logger from '../logger';\n/**\n * Slim wrapper over `@nextcloud/files` `davResultToNode` to allow using the function with `Array.map`\n * @param node The node returned by the webdav library\n */\nexport const resultToNode = (node) => {\n return davResultToNode(node);\n};\nconst client = davGetClient();\nexport const getContents = (path = '/') => {\n path = `${davRootPath}${path}`;\n const controller = new AbortController();\n const propfindPayload = davGetDefaultPropfind();\n return new CancelablePromise(async (resolve, reject, onCancel) => {\n onCancel(() => controller.abort());\n try {\n const contentsResponse = await client.getDirectoryContents(path, {\n details: true,\n data: propfindPayload,\n includeSelf: true,\n signal: controller.signal,\n });\n const root = contentsResponse.data[0];\n const contents = contentsResponse.data.slice(1);\n if (root.filename !== path && `${root.filename}/` !== path) {\n throw new Error('Root node does not match requested path');\n }\n resolve({\n folder: resultToNode(root),\n contents: contents.map(result => {\n try {\n return resultToNode(result);\n }\n catch (error) {\n logger.error(`Invalid node detected '${result.basename}'`, { error });\n return null;\n }\n }).filter(Boolean),\n });\n }\n catch (error) {\n reject(error);\n }\n });\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport '@nextcloud/dialogs/style.css';\n// eslint-disable-next-line n/no-extraneous-import\nimport { AxiosError } from 'axios';\nimport { basename, join } from 'path';\nimport { FilePickerClosed, getFilePickerBuilder, showError, showInfo, TOAST_PERMANENT_TIMEOUT } from '@nextcloud/dialogs';\nimport { emit } from '@nextcloud/event-bus';\nimport { FileAction, FileType, NodeStatus, davGetClient, davRootPath, davResultToNode, davGetDefaultPropfind, getUniqueName } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { openConflictPicker, hasConflict } from '@nextcloud/upload';\nimport Vue from 'vue';\nimport CopyIconSvg from '@mdi/svg/svg/folder-multiple.svg?raw';\nimport FolderMoveSvg from '@mdi/svg/svg/folder-move.svg?raw';\nimport { MoveCopyAction, canCopy, canMove, getQueue } from './moveOrCopyActionUtils';\nimport { getContents } from '../services/Files';\nimport logger from '../logger';\n/**\n * Return the action that is possible for the given nodes\n * @param {Node[]} nodes The nodes to check against\n * @return {MoveCopyAction} The action that is possible for the given nodes\n */\nconst getActionForNodes = (nodes) => {\n if (canMove(nodes)) {\n if (canCopy(nodes)) {\n return MoveCopyAction.MOVE_OR_COPY;\n }\n return MoveCopyAction.MOVE;\n }\n // Assuming we can copy as the enabled checks for copy permissions\n return MoveCopyAction.COPY;\n};\n/**\n * Create a loading notification toast\n * @param mode The move or copy mode\n * @param source Name of the node that is copied / moved\n * @param destination Destination path\n * @return {() => void} Function to hide the notification\n */\nfunction createLoadingNotification(mode, source, destination) {\n const text = mode === MoveCopyAction.MOVE ? t('files', 'Moving \"{source}\" to \"{destination}\" …', { source, destination }) : t('files', 'Copying \"{source}\" to \"{destination}\" …', { source, destination });\n let toast;\n toast = showInfo(`<span class=\"icon icon-loading-small toast-loading-icon\"></span> ${text}`, {\n isHTML: true,\n timeout: TOAST_PERMANENT_TIMEOUT,\n onRemove: () => { toast?.hideToast(); toast = undefined; },\n });\n return () => toast && toast.hideToast();\n}\n/**\n * Handle the copy/move of a node to a destination\n * This can be imported and used by other scripts/components on server\n * @param {Node} node The node to copy/move\n * @param {Folder} destination The destination to copy/move the node to\n * @param {MoveCopyAction} method The method to use for the copy/move\n * @param {boolean} overwrite Whether to overwrite the destination if it exists\n * @return {Promise<void>} A promise that resolves when the copy/move is done\n */\nexport const handleCopyMoveNodeTo = async (node, destination, method, overwrite = false) => {\n if (!destination) {\n return;\n }\n if (destination.type !== FileType.Folder) {\n throw new Error(t('files', 'Destination is not a folder'));\n }\n // Do not allow to MOVE a node to the same folder it is already located\n if (method === MoveCopyAction.MOVE && node.dirname === destination.path) {\n throw new Error(t('files', 'This file/folder is already in that directory'));\n }\n /**\n * Example:\n * - node: /foo/bar/file.txt -> path = /foo/bar/file.txt, destination: /foo\n * Allow move of /foo does not start with /foo/bar/file.txt so allow\n * - node: /foo , destination: /foo/bar\n * Do not allow as it would copy foo within itself\n * - node: /foo/bar.txt, destination: /foo\n * Allow copy a file to the same directory\n * - node: \"/foo/bar\", destination: \"/foo/bar 1\"\n * Allow to move or copy but we need to check with trailing / otherwise it would report false positive\n */\n if (`${destination.path}/`.startsWith(`${node.path}/`)) {\n throw new Error(t('files', 'You cannot move a file/folder onto itself or into a subfolder of itself'));\n }\n // Set loading state\n Vue.set(node, 'status', NodeStatus.LOADING);\n const actionFinished = createLoadingNotification(method, node.basename, destination.path);\n const queue = getQueue();\n return await queue.add(async () => {\n const copySuffix = (index) => {\n if (index === 1) {\n return t('files', '(copy)'); // TRANSLATORS: Mark a file as a copy of another file\n }\n return t('files', '(copy %n)', undefined, index); // TRANSLATORS: Meaning it is the n'th copy of a file\n };\n try {\n const client = davGetClient();\n const currentPath = join(davRootPath, node.path);\n const destinationPath = join(davRootPath, destination.path);\n if (method === MoveCopyAction.COPY) {\n let target = node.basename;\n // If we do not allow overwriting then find an unique name\n if (!overwrite) {\n const otherNodes = await client.getDirectoryContents(destinationPath);\n target = getUniqueName(node.basename, otherNodes.map((n) => n.basename), {\n suffix: copySuffix,\n ignoreFileExtension: node.type === FileType.Folder,\n });\n }\n await client.copyFile(currentPath, join(destinationPath, target));\n // If the node is copied into current directory the view needs to be updated\n if (node.dirname === destination.path) {\n const { data } = await client.stat(join(destinationPath, target), {\n details: true,\n data: davGetDefaultPropfind(),\n });\n emit('files:node:created', davResultToNode(data));\n }\n }\n else {\n // show conflict file popup if we do not allow overwriting\n if (!overwrite) {\n const otherNodes = await getContents(destination.path);\n if (hasConflict([node], otherNodes.contents)) {\n try {\n // Let the user choose what to do with the conflicting files\n const { selected, renamed } = await openConflictPicker(destination.path, [node], otherNodes.contents);\n // two empty arrays: either only old files or conflict skipped -> no action required\n if (!selected.length && !renamed.length) {\n return;\n }\n }\n catch (error) {\n // User cancelled\n showError(t('files', 'Move cancelled'));\n return;\n }\n }\n }\n // getting here means either no conflict, file was renamed to keep both files\n // in a conflict, or the selected file was chosen to be kept during the conflict\n try {\n await client.moveFile(currentPath, join(destinationPath, node.basename));\n }\n catch (error) {\n const parser = new DOMParser();\n const text = await error.response?.text();\n const message = parser.parseFromString(text ?? '', 'text/xml')\n .querySelector('message')?.textContent;\n if (message) {\n showError(message);\n }\n throw error;\n }\n // Delete the node as it will be fetched again\n // when navigating to the destination folder\n emit('files:node:deleted', node);\n }\n }\n catch (error) {\n if (error instanceof AxiosError) {\n if (error?.response?.status === 412) {\n throw new Error(t('files', 'A file or folder with that name already exists in this folder'));\n }\n else if (error?.response?.status === 423) {\n throw new Error(t('files', 'The files are locked'));\n }\n else if (error?.response?.status === 404) {\n throw new Error(t('files', 'The file does not exist anymore'));\n }\n else if (error.message) {\n throw new Error(error.message);\n }\n }\n logger.debug(error);\n throw new Error();\n }\n finally {\n Vue.set(node, 'status', '');\n actionFinished();\n }\n });\n};\n/**\n * Open a file picker for the given action\n * @param action The action to open the file picker for\n * @param dir The directory to start the file picker in\n * @param nodes The nodes to move/copy\n * @return The picked destination or false if cancelled by user\n */\nasync function openFilePickerForAction(action, dir = '/', nodes) {\n const { resolve, reject, promise } = Promise.withResolvers();\n const fileIDs = nodes.map(node => node.fileid).filter(Boolean);\n const filePicker = getFilePickerBuilder(t('files', 'Choose destination'))\n .allowDirectories(true)\n .setFilter((n) => {\n // We don't want to show the current nodes in the file picker\n return !fileIDs.includes(n.fileid);\n })\n .setMimeTypeFilter([])\n .setMultiSelect(false)\n .startAt(dir)\n .setButtonFactory((selection, path) => {\n const buttons = [];\n const target = basename(path);\n const dirnames = nodes.map(node => node.dirname);\n const paths = nodes.map(node => node.path);\n if (action === MoveCopyAction.COPY || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Copy to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Copy'),\n type: 'primary',\n icon: CopyIconSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.COPY,\n });\n },\n });\n }\n // Invalid MOVE targets (but valid copy targets)\n if (dirnames.includes(path)) {\n // This file/folder is already in that directory\n return buttons;\n }\n if (paths.includes(path)) {\n // You cannot move a file/folder onto itself\n return buttons;\n }\n if (action === MoveCopyAction.MOVE || action === MoveCopyAction.MOVE_OR_COPY) {\n buttons.push({\n label: target ? t('files', 'Move to {target}', { target }, undefined, { escape: false, sanitize: false }) : t('files', 'Move'),\n type: action === MoveCopyAction.MOVE ? 'primary' : 'secondary',\n icon: FolderMoveSvg,\n async callback(destination) {\n resolve({\n destination: destination[0],\n action: MoveCopyAction.MOVE,\n });\n },\n });\n }\n return buttons;\n })\n .build();\n filePicker.pick()\n .catch((error) => {\n logger.debug(error);\n if (error instanceof FilePickerClosed) {\n resolve(false);\n }\n else {\n reject(new Error(t('files', 'Move or copy operation failed')));\n }\n });\n return promise;\n}\nexport const action = new FileAction({\n id: 'move-copy',\n displayName(nodes) {\n switch (getActionForNodes(nodes)) {\n case MoveCopyAction.MOVE:\n return t('files', 'Move');\n case MoveCopyAction.COPY:\n return t('files', 'Copy');\n case MoveCopyAction.MOVE_OR_COPY:\n return t('files', 'Move or copy');\n }\n },\n iconSvgInline: () => FolderMoveSvg,\n enabled(nodes) {\n // We only support moving/copying files within the user folder\n if (!nodes.every(node => node.root?.startsWith('/files/'))) {\n return false;\n }\n return nodes.length > 0 && (canMove(nodes) || canCopy(nodes));\n },\n async exec(node, view, dir) {\n const action = getActionForNodes([node]);\n let result;\n try {\n result = await openFilePickerForAction(action, dir, [node]);\n }\n catch (e) {\n logger.error(e);\n return false;\n }\n if (result === false) {\n showInfo(t('files', 'Cancelled move or copy of \"{filename}\".', { filename: node.displayname }));\n return null;\n }\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n if (error instanceof Error && !!error.message) {\n showError(error.message);\n // Silent action as we handle the toast\n return null;\n }\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n const action = getActionForNodes(nodes);\n const result = await openFilePickerForAction(action, dir, nodes);\n // Handle cancellation silently\n if (result === false) {\n showInfo(nodes.length === 1\n ? t('files', 'Cancelled move or copy of \"{filename}\".', { filename: nodes[0].displayname })\n : t('files', 'Cancelled move or copy operation'));\n return nodes.map(() => null);\n }\n const promises = nodes.map(async (node) => {\n try {\n await handleCopyMoveNodeTo(node, result.destination, result.action);\n return true;\n }\n catch (error) {\n logger.error(`Failed to ${result.action} node`, { node, error });\n return false;\n }\n });\n // We need to keep the selection on error!\n // So we do not return null, and for batch action\n // we let the front handle the error.\n return await Promise.all(promises);\n },\n order: 15,\n});\n","/**\n * @copyright Copyright (c) 2023 Ferdinand Thiessen <opensource@fthiessen.de>\n *\n * @author Ferdinand Thiessen <opensource@fthiessen.de>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Folder, Node, NodeStatus, davRootPath } from '@nextcloud/files';\nimport { getUploader, hasConflict } from '@nextcloud/upload';\nimport { join } from 'path';\nimport { joinPaths } from '@nextcloud/paths';\nimport { showError, showInfo, showSuccess, showWarning } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport Vue from 'vue';\nimport { Directory, traverseTree, resolveConflict, createDirectoryIfNotExists } from './DropServiceUtils';\nimport { handleCopyMoveNodeTo } from '../actions/moveOrCopyAction';\nimport { MoveCopyAction } from '../actions/moveOrCopyActionUtils';\nimport logger from '../logger.js';\n/**\n * This function converts a list of DataTransferItems to a file tree.\n * It uses the Filesystem API if available, otherwise it falls back to the File API.\n * The File API will NOT be available if the browser is not in a secure context (e.g. HTTP).\n * ⚠️ When using this method, you need to use it as fast as possible, as the DataTransferItems\n * will be cleared after the first access to the props of one of the entries.\n *\n * @param items the list of DataTransferItems\n */\nexport const dataTransferToFileTree = async (items) => {\n // Check if the browser supports the Filesystem API\n // We need to cache the entries to prevent Blink engine bug that clears\n // the list (`data.items`) after first access props of one of the entries\n const entries = items\n .filter((item) => {\n if (item.kind !== 'file') {\n logger.debug('Skipping dropped item', { kind: item.kind, type: item.type });\n return false;\n }\n return true;\n }).map((item) => {\n // MDN recommends to try both, as it might be renamed in the future\n return item?.getAsEntry?.()\n ?? item?.webkitGetAsEntry?.()\n ?? item;\n });\n let warned = false;\n const fileTree = new Directory('root');\n // Traverse the file tree\n for (const entry of entries) {\n // Handle browser issues if Filesystem API is not available. Fallback to File API\n if (entry instanceof DataTransferItem) {\n logger.warn('Could not get FilesystemEntry of item, falling back to file');\n const file = entry.getAsFile();\n if (file === null) {\n logger.warn('Could not process DataTransferItem', { type: entry.type, kind: entry.kind });\n showError(t('files', 'One of the dropped files could not be processed'));\n continue;\n }\n // Warn the user that the browser does not support the Filesystem API\n // we therefore cannot upload directories recursively.\n if (file.type === 'httpd/unix-directory' || !file.type) {\n if (!warned) {\n logger.warn('Browser does not support Filesystem API. Directories will not be uploaded');\n showWarning(t('files', 'Your browser does not support the Filesystem API. Directories will not be uploaded'));\n warned = true;\n }\n continue;\n }\n fileTree.contents.push(file);\n continue;\n }\n // Use Filesystem API\n try {\n fileTree.contents.push(await traverseTree(entry));\n }\n catch (error) {\n // Do not throw, as we want to continue with the other files\n logger.error('Error while traversing file tree', { error });\n }\n }\n return fileTree;\n};\nexport const onDropExternalFiles = async (root, destination, contents) => {\n const uploader = getUploader();\n // Check for conflicts on root elements\n if (await hasConflict(root.contents, contents)) {\n root.contents = await resolveConflict(root.contents, destination, contents);\n }\n if (root.contents.length === 0) {\n logger.info('No files to upload', { root });\n showInfo(t('files', 'No files to upload'));\n return [];\n }\n // Let's process the files\n logger.debug(`Uploading files to ${destination.path}`, { root, contents: root.contents });\n const queue = [];\n const uploadDirectoryContents = async (directory, path) => {\n for (const file of directory.contents) {\n // This is the relative path to the resource\n // from the current uploader destination\n const relativePath = join(path, file.name);\n // If the file is a directory, we need to create it first\n // then browse its tree and upload its contents.\n if (file instanceof Directory) {\n const absolutePath = joinPaths(davRootPath, destination.path, relativePath);\n try {\n console.debug('Processing directory', { relativePath });\n await createDirectoryIfNotExists(absolutePath);\n await uploadDirectoryContents(file, relativePath);\n }\n catch (error) {\n showError(t('files', 'Unable to create the directory {directory}', { directory: file.name }));\n logger.error('', { error, absolutePath, directory: file });\n }\n continue;\n }\n // If we've reached a file, we can upload it\n logger.debug('Uploading file to ' + join(destination.path, relativePath), { file });\n // Overriding the root to avoid changing the current uploader context\n queue.push(uploader.upload(relativePath, file, destination.source));\n }\n };\n // Pause the uploader to prevent it from starting\n // while we compute the queue\n uploader.pause();\n // Upload the files. Using '/' as the starting point\n // as we already adjusted the uploader destination\n await uploadDirectoryContents(root, '/');\n uploader.start();\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while uploading files', { errors });\n showError(t('files', 'Some files could not be uploaded'));\n return [];\n }\n logger.debug('Files uploaded successfully');\n showSuccess(t('files', 'Files uploaded successfully'));\n return Promise.all(queue);\n};\nexport const onDropInternalFiles = async (nodes, destination, contents, isCopy = false) => {\n const queue = [];\n // Check for conflicts on root elements\n if (await hasConflict(nodes, contents)) {\n nodes = await resolveConflict(nodes, destination, contents);\n }\n if (nodes.length === 0) {\n logger.info('No files to process', { nodes });\n showInfo(t('files', 'No files to process'));\n return;\n }\n for (const node of nodes) {\n Vue.set(node, 'status', NodeStatus.LOADING);\n queue.push(handleCopyMoveNodeTo(node, destination, isCopy ? MoveCopyAction.COPY : MoveCopyAction.MOVE, true));\n }\n // Wait for all promises to settle\n const results = await Promise.allSettled(queue);\n nodes.forEach(node => Vue.set(node, 'status', undefined));\n // Check for errors\n const errors = results.filter(result => result.status === 'rejected');\n if (errors.length > 0) {\n logger.error('Error while copying or moving files', { errors });\n showError(isCopy ? t('files', 'Some files could not be copied') : t('files', 'Some files could not be moved'));\n return;\n }\n logger.debug('Files copy/move successful');\n showSuccess(isCopy ? t('files', 'Files copied successfully') : t('files', 'Files moved successfully'));\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\nexport const useDragAndDropStore = defineStore('dragging', {\n state: () => ({\n dragging: [],\n }),\n actions: {\n /**\n * Set the selection of fileIds\n */\n set(selection = []) {\n Vue.set(this, 'dragging', selection);\n },\n /**\n * Reset the selection\n */\n reset() {\n Vue.set(this, 'dragging', []);\n },\n },\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport Vue from 'vue';\nexport default Vue.extend({\n data() {\n return {\n filesListWidth: null,\n };\n },\n mounted() {\n const fileListEl = document.querySelector('#app-content-vue');\n this.filesListWidth = fileListEl?.clientWidth ?? null;\n this.$resizeObserver = new ResizeObserver((entries) => {\n if (entries.length > 0 && entries[0].target === fileListEl) {\n this.filesListWidth = entries[0].contentRect.width;\n }\n });\n this.$resizeObserver.observe(fileListEl);\n },\n beforeDestroy() {\n this.$resizeObserver.disconnect();\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcBreadcrumbs',{staticClass:\"files-list__breadcrumbs\",class:{ 'files-list__breadcrumbs--with-progress': _vm.wrapUploadProgressBar },attrs:{\"data-cy-files-content-breadcrumbs\":\"\",\"aria-label\":_vm.t('files', 'Current directory path')},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_vm._t(\"actions\")]},proxy:true}],null,true)},_vm._l((_vm.sections),function(section,index){return _c('NcBreadcrumb',_vm._b({key:section.dir,attrs:{\"dir\":\"auto\",\"to\":section.to,\"force-icon-text\":index === 0 && _vm.filesListWidth >= 486,\"title\":_vm.titleForSection(index, section),\"aria-description\":_vm.ariaForSection(section)},on:{\"drop\":function($event){return _vm.onDrop($event, section.dir)}},nativeOn:{\"click\":function($event){return _vm.onClick(section.to)},\"dragover\":function($event){return _vm.onDragOver($event, section.dir)}},scopedSlots:_vm._u([(index === 0)?{key:\"icon\",fn:function(){return [_c('NcIconSvgWrapper',{attrs:{\"size\":20,\"svg\":_vm.viewIcon}})]},proxy:true}:null],null,true)},'NcBreadcrumb',section,false))}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./BreadCrumbs.vue?vue&type=template&id=20858d70&scoped=true\"\nimport script from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nexport * from \"./BreadCrumbs.vue?vue&type=script&lang=ts\"\nimport style0 from \"./BreadCrumbs.vue?vue&type=style&index=0&id=20858d70&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"20858d70\",\n null\n \n)\n\nexport default component.exports","/**\n * @copyright Copyright (c) 2021 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { FileType } from '@nextcloud/files';\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n';\n/**\n * Extract dir and name from file path\n *\n * @param {string} path the full path\n * @return {string[]} [dirPath, fileName]\n */\nexport const extractFilePaths = function (path) {\n const pathSections = path.split('/');\n const fileName = pathSections[pathSections.length - 1];\n const dirPath = pathSections.slice(0, pathSections.length - 1).join('/');\n return [dirPath, fileName];\n};\n/**\n * Generate a translated summary of an array of nodes\n * @param {Node[]} nodes the nodes to summarize\n * @return {string}\n */\nexport const getSummaryFor = (nodes) => {\n const fileCount = nodes.filter(node => node.type === FileType.File).length;\n const folderCount = nodes.filter(node => node.type === FileType.Folder).length;\n if (fileCount === 0) {\n return n('files', '{folderCount} folder', '{folderCount} folders', folderCount, { folderCount });\n }\n else if (folderCount === 0) {\n return n('files', '{fileCount} file', '{fileCount} files', fileCount, { fileCount });\n }\n if (fileCount === 1) {\n return n('files', '1 file and {folderCount} folder', '1 file and {folderCount} folders', folderCount, { folderCount });\n }\n if (folderCount === 1) {\n return n('files', '{fileCount} file and 1 folder', '{fileCount} files and 1 folder', fileCount, { fileCount });\n }\n return t('files', '{fileCount} files and {folderCount} folders', { fileCount, folderCount });\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',_vm._g({staticClass:\"files-list__row\",class:{\n\t\t'files-list__row--dragover': _vm.dragover,\n\t\t'files-list__row--loading': _vm.isLoading,\n\t\t'files-list__row--active': _vm.isActive,\n\t},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag}},_vm.rowListeners),[(_vm.source.attributes.failed)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"source\":_vm.source,\"dragover\":_vm.dragover},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"basename\":_vm.basename,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isRenamingSmallScreen),expression:\"!isRenamingSmallScreen\"}],ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}}),_vm._v(\" \"),(!_vm.compact && _vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__row-size\",style:(_vm.sizeOpacity),attrs:{\"data-cy-files-list-row-size\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('span',[_vm._v(_vm._s(_vm.size))])]):_vm._e(),_vm._v(\" \"),(!_vm.compact && _vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__row-mtime\",style:(_vm.mtimeOpacity),attrs:{\"data-cy-files-list-row-mtime\":\"\"},on:{\"click\":_vm.openDetailsIfAvailable}},[(_vm.mtime)?_c('NcDateTime',{attrs:{\"timestamp\":_vm.mtime,\"ignore-seconds\":true}}):_c('span',[_vm._v(_vm._s(_vm.t('files', 'Unknown date')))])],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('td',{key:column.id,staticClass:\"files-list__row-column-custom\",class:`files-list__row-${_vm.currentView?.id}-${column.id}`,attrs:{\"data-cy-files-list-row-column-custom\":column.id},on:{\"click\":_vm.openDetailsIfAvailable}},[_c('CustomElementRender',{attrs:{\"current-view\":_vm.currentView,\"render\":column.render,\"source\":_vm.source}})],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nexport const useActionsMenuStore = defineStore('actionsmenu', {\n state: () => ({\n opened: null,\n }),\n});\n","import axios, { isAxiosError } from '@nextcloud/axios';\nimport { emit, subscribe } from '@nextcloud/event-bus';\nimport { NodeStatus } from '@nextcloud/files';\nimport { t } from '@nextcloud/l10n';\nimport { basename, dirname } from 'path';\nimport { defineStore } from 'pinia';\nimport logger from '../logger';\nimport Vue from 'vue';\nexport const useRenamingStore = function (...args) {\n const store = defineStore('renaming', {\n state: () => ({\n renamingNode: undefined,\n newName: '',\n }),\n actions: {\n /**\n * Execute the renaming.\n * This will rename the node set as `renamingNode` to the configured new name `newName`.\n * @return true if success, false if skipped (e.g. new and old name are the same)\n * @throws Error if renaming fails, details are set in the error message\n */\n async rename() {\n if (this.renamingNode === undefined) {\n throw new Error('No node is currently being renamed');\n }\n const newName = this.newName.trim?.() || '';\n const oldName = this.renamingNode.basename;\n const oldEncodedSource = this.renamingNode.encodedSource;\n if (oldName === newName) {\n return false;\n }\n const node = this.renamingNode;\n Vue.set(node, 'status', NodeStatus.LOADING);\n try {\n // rename the node\n this.renamingNode.rename(newName);\n logger.debug('Moving file to', { destination: this.renamingNode.encodedSource, oldEncodedSource });\n // create MOVE request\n await axios({\n method: 'MOVE',\n url: oldEncodedSource,\n headers: {\n Destination: this.renamingNode.encodedSource,\n Overwrite: 'F',\n },\n });\n // Success 🎉\n emit('files:node:updated', this.renamingNode);\n emit('files:node:renamed', this.renamingNode);\n emit('files:node:moved', {\n node: this.renamingNode,\n oldSource: `${dirname(this.renamingNode.source)}/${oldName}`,\n });\n this.$reset();\n return true;\n }\n catch (error) {\n logger.error('Error while renaming file', { error });\n // Rename back as it failed\n this.renamingNode.rename(oldName);\n if (isAxiosError(error)) {\n // TODO: 409 means current folder does not exist, redirect ?\n if (error?.response?.status === 404) {\n throw new Error(t('files', 'Could not rename \"{oldName}\", it does not exist any more', { oldName }));\n }\n else if (error?.response?.status === 412) {\n throw new Error(t('files', 'The name \"{newName}\" is already used in the folder \"{dir}\". Please choose a different name.', {\n newName,\n dir: basename(this.renamingNode.dirname),\n }));\n }\n }\n // Unknown error\n throw new Error(t('files', 'Could not rename \"{oldName}\"', { oldName }));\n }\n finally {\n Vue.set(node, 'status', undefined);\n }\n },\n },\n });\n const renamingStore = store(...args);\n // Make sure we only register the listeners once\n if (!renamingStore._initialized) {\n subscribe('files:node:rename', function (node) {\n renamingStore.renamingNode = node;\n renamingStore.newName = node.basename;\n });\n renamingStore._initialized = true;\n }\n return renamingStore;\n};\n","import Vue from 'vue'\nimport { getCurrentInstance } from 'vue'\n\nvar isVue2 = true\nvar isVue3 = false\nvar Vue2 = Vue\nvar warn = Vue.util.warn\n\nfunction install() {}\n\n// createApp polyfill\nexport function createApp(rootComponent, rootProps) {\n var vm\n var provide = {}\n var app = {\n config: Vue.config,\n use: Vue.use.bind(Vue),\n mixin: Vue.mixin.bind(Vue),\n component: Vue.component.bind(Vue),\n provide: function (key, value) {\n provide[key] = value\n return this\n },\n directive: function (name, dir) {\n if (dir) {\n Vue.directive(name, dir)\n return app\n } else {\n return Vue.directive(name)\n }\n },\n mount: function (el, hydrating) {\n if (!vm) {\n vm = new Vue(Object.assign({ propsData: rootProps }, rootComponent, { provide: Object.assign(provide, rootComponent.provide) }))\n vm.$mount(el, hydrating)\n return vm\n } else {\n return vm\n }\n },\n unmount: function () {\n if (vm) {\n vm.$destroy()\n vm = undefined\n }\n },\n }\n return app\n}\n\nexport {\n Vue,\n Vue2,\n isVue2,\n isVue3,\n install,\n warn\n}\n\n// Vue 3 components mock\nfunction createMockComponent(name) {\n return {\n setup() {\n throw new Error('[vue-demi] ' + name + ' is not supported in Vue 2. It\\'s provided to avoid compiler errors.')\n }\n }\n}\nexport var Fragment = /*#__PURE__*/ createMockComponent('Fragment')\nexport var Transition = /*#__PURE__*/ createMockComponent('Transition')\nexport var TransitionGroup = /*#__PURE__*/ createMockComponent('TransitionGroup')\nexport var Teleport = /*#__PURE__*/ createMockComponent('Teleport')\nexport var Suspense = /*#__PURE__*/ createMockComponent('Suspense')\nexport var KeepAlive = /*#__PURE__*/ createMockComponent('KeepAlive')\n\nexport * from 'vue'\n\n// Not implemented https://github.com/vuejs/core/pull/8111, falls back to getCurrentInstance()\nexport function hasInjectionContext() {\n return !!getCurrentInstance()\n}\n","import { defineComponent, ref, h, watch, computed, reactive, shallowRef, nextTick, getCurrentInstance, onMounted, isVue2, watchEffect, toRefs } from 'vue-demi';\nimport { onClickOutside as onClickOutside$1, useActiveElement, useBattery, useBrowserLocation, useClipboard, useDark, useDeviceMotion, useDeviceOrientation, useDevicePixelRatio, useDevicesList, useDocumentVisibility, useStorage as useStorage$1, isClient as isClient$1, useDraggable, useElementBounding, useElementSize as useElementSize$1, useElementVisibility as useElementVisibility$1, useEyeDropper, useFullscreen, useGeolocation, useIdle, useMouse, useMouseInElement, useMousePressed, useNetwork, useNow, useObjectUrl, useOffsetPagination, useOnline, usePageLeave, usePointer, usePointerLock, usePreferredColorScheme, usePreferredContrast, usePreferredDark as usePreferredDark$1, usePreferredLanguages, usePreferredReducedMotion, useTimeAgo, useTimestamp, useVirtualList, useWindowFocus, useWindowSize } from '@vueuse/core';\nimport { toValue, isClient, noop, isObject, tryOnScopeDispose, isIOS, directiveHooks, pausableWatch, tryOnMounted, toRef, useToggle, notNullish, promiseTimeout, until, useDebounceFn, useThrottleFn } from '@vueuse/shared';\n\nconst OnClickOutside = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"OnClickOutside\",\n props: [\"as\", \"options\"],\n emits: [\"trigger\"],\n setup(props, { slots, emit }) {\n const target = ref();\n onClickOutside$1(target, (e) => {\n emit(\"trigger\", e);\n }, props.options);\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default());\n };\n }\n});\n\nfunction unrefElement(elRef) {\n var _a;\n const plain = toValue(elRef);\n return (_a = plain == null ? void 0 : plain.$el) != null ? _a : plain;\n}\n\nconst defaultWindow = isClient ? window : void 0;\n\nfunction useEventListener(...args) {\n let target;\n let events;\n let listeners;\n let options;\n if (typeof args[0] === \"string\" || Array.isArray(args[0])) {\n [events, listeners, options] = args;\n target = defaultWindow;\n } else {\n [target, events, listeners, options] = args;\n }\n if (!target)\n return noop;\n if (!Array.isArray(events))\n events = [events];\n if (!Array.isArray(listeners))\n listeners = [listeners];\n const cleanups = [];\n const cleanup = () => {\n cleanups.forEach((fn) => fn());\n cleanups.length = 0;\n };\n const register = (el, event, listener, options2) => {\n el.addEventListener(event, listener, options2);\n return () => el.removeEventListener(event, listener, options2);\n };\n const stopWatch = watch(\n () => [unrefElement(target), toValue(options)],\n ([el, options2]) => {\n cleanup();\n if (!el)\n return;\n const optionsClone = isObject(options2) ? { ...options2 } : options2;\n cleanups.push(\n ...events.flatMap((event) => {\n return listeners.map((listener) => register(el, event, listener, optionsClone));\n })\n );\n },\n { immediate: true, flush: \"post\" }\n );\n const stop = () => {\n stopWatch();\n cleanup();\n };\n tryOnScopeDispose(stop);\n return stop;\n}\n\nlet _iOSWorkaround = false;\nfunction onClickOutside(target, handler, options = {}) {\n const { window = defaultWindow, ignore = [], capture = true, detectIframe = false } = options;\n if (!window)\n return noop;\n if (isIOS && !_iOSWorkaround) {\n _iOSWorkaround = true;\n Array.from(window.document.body.children).forEach((el) => el.addEventListener(\"click\", noop));\n window.document.documentElement.addEventListener(\"click\", noop);\n }\n let shouldListen = true;\n const shouldIgnore = (event) => {\n return ignore.some((target2) => {\n if (typeof target2 === \"string\") {\n return Array.from(window.document.querySelectorAll(target2)).some((el) => el === event.target || event.composedPath().includes(el));\n } else {\n const el = unrefElement(target2);\n return el && (event.target === el || event.composedPath().includes(el));\n }\n });\n };\n const listener = (event) => {\n const el = unrefElement(target);\n if (!el || el === event.target || event.composedPath().includes(el))\n return;\n if (event.detail === 0)\n shouldListen = !shouldIgnore(event);\n if (!shouldListen) {\n shouldListen = true;\n return;\n }\n handler(event);\n };\n const cleanup = [\n useEventListener(window, \"click\", listener, { passive: true, capture }),\n useEventListener(window, \"pointerdown\", (e) => {\n const el = unrefElement(target);\n shouldListen = !shouldIgnore(e) && !!(el && !e.composedPath().includes(el));\n }, { passive: true }),\n detectIframe && useEventListener(window, \"blur\", (event) => {\n setTimeout(() => {\n var _a;\n const el = unrefElement(target);\n if (((_a = window.document.activeElement) == null ? void 0 : _a.tagName) === \"IFRAME\" && !(el == null ? void 0 : el.contains(window.document.activeElement))) {\n handler(event);\n }\n }, 0);\n })\n ].filter(Boolean);\n const stop = () => cleanup.forEach((fn) => fn());\n return stop;\n}\n\nconst vOnClickOutside = {\n [directiveHooks.mounted](el, binding) {\n const capture = !binding.modifiers.bubble;\n if (typeof binding.value === \"function\") {\n el.__onClickOutside_stop = onClickOutside(el, binding.value, { capture });\n } else {\n const [handler, options] = binding.value;\n el.__onClickOutside_stop = onClickOutside(el, handler, Object.assign({ capture }, options));\n }\n },\n [directiveHooks.unmounted](el) {\n el.__onClickOutside_stop();\n }\n};\n\nfunction createKeyPredicate(keyFilter) {\n if (typeof keyFilter === \"function\")\n return keyFilter;\n else if (typeof keyFilter === \"string\")\n return (event) => event.key === keyFilter;\n else if (Array.isArray(keyFilter))\n return (event) => keyFilter.includes(event.key);\n return () => true;\n}\nfunction onKeyStroke(...args) {\n let key;\n let handler;\n let options = {};\n if (args.length === 3) {\n key = args[0];\n handler = args[1];\n options = args[2];\n } else if (args.length === 2) {\n if (typeof args[1] === \"object\") {\n key = true;\n handler = args[0];\n options = args[1];\n } else {\n key = args[0];\n handler = args[1];\n }\n } else {\n key = true;\n handler = args[0];\n }\n const {\n target = defaultWindow,\n eventName = \"keydown\",\n passive = false,\n dedupe = false\n } = options;\n const predicate = createKeyPredicate(key);\n const listener = (e) => {\n if (e.repeat && toValue(dedupe))\n return;\n if (predicate(e))\n handler(e);\n };\n return useEventListener(target, eventName, listener, passive);\n}\n\nconst vOnKeyStroke = {\n [directiveHooks.mounted](el, binding) {\n var _a, _b;\n const keys = (_b = (_a = binding.arg) == null ? void 0 : _a.split(\",\")) != null ? _b : true;\n if (typeof binding.value === \"function\") {\n onKeyStroke(keys, binding.value, {\n target: el\n });\n } else {\n const [handler, options] = binding.value;\n onKeyStroke(keys, handler, {\n target: el,\n ...options\n });\n }\n }\n};\n\nconst DEFAULT_DELAY = 500;\nconst DEFAULT_THRESHOLD = 10;\nfunction onLongPress(target, handler, options) {\n var _a, _b;\n const elementRef = computed(() => unrefElement(target));\n let timeout;\n let posStart;\n let startTimestamp;\n let hasLongPressed = false;\n function clear() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = void 0;\n }\n posStart = void 0;\n startTimestamp = void 0;\n hasLongPressed = false;\n }\n function onRelease(ev) {\n var _a2, _b2, _c;\n const [_startTimestamp, _posStart, _hasLongPressed] = [startTimestamp, posStart, hasLongPressed];\n clear();\n if (!(options == null ? void 0 : options.onMouseUp) || !_posStart || !_startTimestamp)\n return;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n const dx = ev.x - _posStart.x;\n const dy = ev.y - _posStart.y;\n const distance = Math.sqrt(dx * dx + dy * dy);\n options.onMouseUp(ev.timeStamp - _startTimestamp, distance, _hasLongPressed);\n }\n function onDown(ev) {\n var _a2, _b2, _c, _d;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n clear();\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n posStart = {\n x: ev.x,\n y: ev.y\n };\n startTimestamp = ev.timeStamp;\n timeout = setTimeout(\n () => {\n hasLongPressed = true;\n handler(ev);\n },\n (_d = options == null ? void 0 : options.delay) != null ? _d : DEFAULT_DELAY\n );\n }\n function onMove(ev) {\n var _a2, _b2, _c, _d;\n if (((_a2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _a2.self) && ev.target !== elementRef.value)\n return;\n if (!posStart || (options == null ? void 0 : options.distanceThreshold) === false)\n return;\n if ((_b2 = options == null ? void 0 : options.modifiers) == null ? void 0 : _b2.prevent)\n ev.preventDefault();\n if ((_c = options == null ? void 0 : options.modifiers) == null ? void 0 : _c.stop)\n ev.stopPropagation();\n const dx = ev.x - posStart.x;\n const dy = ev.y - posStart.y;\n const distance = Math.sqrt(dx * dx + dy * dy);\n if (distance >= ((_d = options == null ? void 0 : options.distanceThreshold) != null ? _d : DEFAULT_THRESHOLD))\n clear();\n }\n const listenerOptions = {\n capture: (_a = options == null ? void 0 : options.modifiers) == null ? void 0 : _a.capture,\n once: (_b = options == null ? void 0 : options.modifiers) == null ? void 0 : _b.once\n };\n const cleanup = [\n useEventListener(elementRef, \"pointerdown\", onDown, listenerOptions),\n useEventListener(elementRef, \"pointermove\", onMove, listenerOptions),\n useEventListener(elementRef, [\"pointerup\", \"pointerleave\"], onRelease, listenerOptions)\n ];\n const stop = () => cleanup.forEach((fn) => fn());\n return stop;\n}\n\nconst OnLongPress = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"OnLongPress\",\n props: [\"as\", \"options\"],\n emits: [\"trigger\"],\n setup(props, { slots, emit }) {\n const target = ref();\n onLongPress(\n target,\n (e) => {\n emit(\"trigger\", e);\n },\n props.options\n );\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default());\n };\n }\n});\n\nconst vOnLongPress = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\")\n onLongPress(el, binding.value, { modifiers: binding.modifiers });\n else\n onLongPress(el, ...binding.value);\n }\n};\n\nconst UseActiveElement = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseActiveElement\",\n setup(props, { slots }) {\n const data = reactive({\n element: useActiveElement()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseBattery = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseBattery\",\n setup(props, { slots }) {\n const data = reactive(useBattery(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseBrowserLocation = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseBrowserLocation\",\n setup(props, { slots }) {\n const data = reactive(useBrowserLocation());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseClipboard = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseClipboard\",\n props: [\n \"source\",\n \"read\",\n \"navigator\",\n \"copiedDuring\",\n \"legacy\"\n ],\n setup(props, { slots }) {\n const data = reactive(useClipboard(props));\n return () => {\n var _a;\n return (_a = slots.default) == null ? void 0 : _a.call(slots, data);\n };\n }\n});\n\nconst _global = typeof globalThis !== \"undefined\" ? globalThis : typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : {};\nconst globalKey = \"__vueuse_ssr_handlers__\";\nconst handlers = /* @__PURE__ */ getHandlers();\nfunction getHandlers() {\n if (!(globalKey in _global))\n _global[globalKey] = _global[globalKey] || {};\n return _global[globalKey];\n}\nfunction getSSRHandler(key, fallback) {\n return handlers[key] || fallback;\n}\n\nfunction guessSerializerType(rawInit) {\n return rawInit == null ? \"any\" : rawInit instanceof Set ? \"set\" : rawInit instanceof Map ? \"map\" : rawInit instanceof Date ? \"date\" : typeof rawInit === \"boolean\" ? \"boolean\" : typeof rawInit === \"string\" ? \"string\" : typeof rawInit === \"object\" ? \"object\" : !Number.isNaN(rawInit) ? \"number\" : \"any\";\n}\n\nconst StorageSerializers = {\n boolean: {\n read: (v) => v === \"true\",\n write: (v) => String(v)\n },\n object: {\n read: (v) => JSON.parse(v),\n write: (v) => JSON.stringify(v)\n },\n number: {\n read: (v) => Number.parseFloat(v),\n write: (v) => String(v)\n },\n any: {\n read: (v) => v,\n write: (v) => String(v)\n },\n string: {\n read: (v) => v,\n write: (v) => String(v)\n },\n map: {\n read: (v) => new Map(JSON.parse(v)),\n write: (v) => JSON.stringify(Array.from(v.entries()))\n },\n set: {\n read: (v) => new Set(JSON.parse(v)),\n write: (v) => JSON.stringify(Array.from(v))\n },\n date: {\n read: (v) => new Date(v),\n write: (v) => v.toISOString()\n }\n};\nconst customStorageEventName = \"vueuse-storage\";\nfunction useStorage(key, defaults, storage, options = {}) {\n var _a;\n const {\n flush = \"pre\",\n deep = true,\n listenToStorageChanges = true,\n writeDefaults = true,\n mergeDefaults = false,\n shallow,\n window = defaultWindow,\n eventFilter,\n onError = (e) => {\n console.error(e);\n },\n initOnMounted\n } = options;\n const data = (shallow ? shallowRef : ref)(typeof defaults === \"function\" ? defaults() : defaults);\n if (!storage) {\n try {\n storage = getSSRHandler(\"getDefaultStorage\", () => {\n var _a2;\n return (_a2 = defaultWindow) == null ? void 0 : _a2.localStorage;\n })();\n } catch (e) {\n onError(e);\n }\n }\n if (!storage)\n return data;\n const rawInit = toValue(defaults);\n const type = guessSerializerType(rawInit);\n const serializer = (_a = options.serializer) != null ? _a : StorageSerializers[type];\n const { pause: pauseWatch, resume: resumeWatch } = pausableWatch(\n data,\n () => write(data.value),\n { flush, deep, eventFilter }\n );\n if (window && listenToStorageChanges) {\n tryOnMounted(() => {\n useEventListener(window, \"storage\", update);\n useEventListener(window, customStorageEventName, updateFromCustomEvent);\n if (initOnMounted)\n update();\n });\n }\n if (!initOnMounted)\n update();\n function dispatchWriteEvent(oldValue, newValue) {\n if (window) {\n window.dispatchEvent(new CustomEvent(customStorageEventName, {\n detail: {\n key,\n oldValue,\n newValue,\n storageArea: storage\n }\n }));\n }\n }\n function write(v) {\n try {\n const oldValue = storage.getItem(key);\n if (v == null) {\n dispatchWriteEvent(oldValue, null);\n storage.removeItem(key);\n } else {\n const serialized = serializer.write(v);\n if (oldValue !== serialized) {\n storage.setItem(key, serialized);\n dispatchWriteEvent(oldValue, serialized);\n }\n }\n } catch (e) {\n onError(e);\n }\n }\n function read(event) {\n const rawValue = event ? event.newValue : storage.getItem(key);\n if (rawValue == null) {\n if (writeDefaults && rawInit != null)\n storage.setItem(key, serializer.write(rawInit));\n return rawInit;\n } else if (!event && mergeDefaults) {\n const value = serializer.read(rawValue);\n if (typeof mergeDefaults === \"function\")\n return mergeDefaults(value, rawInit);\n else if (type === \"object\" && !Array.isArray(value))\n return { ...rawInit, ...value };\n return value;\n } else if (typeof rawValue !== \"string\") {\n return rawValue;\n } else {\n return serializer.read(rawValue);\n }\n }\n function update(event) {\n if (event && event.storageArea !== storage)\n return;\n if (event && event.key == null) {\n data.value = rawInit;\n return;\n }\n if (event && event.key !== key)\n return;\n pauseWatch();\n try {\n if ((event == null ? void 0 : event.newValue) !== serializer.write(data.value))\n data.value = read(event);\n } catch (e) {\n onError(e);\n } finally {\n if (event)\n nextTick(resumeWatch);\n else\n resumeWatch();\n }\n }\n function updateFromCustomEvent(event) {\n update(event.detail);\n }\n return data;\n}\n\nfunction useMounted() {\n const isMounted = ref(false);\n const instance = getCurrentInstance();\n if (instance) {\n onMounted(() => {\n isMounted.value = true;\n }, isVue2 ? void 0 : instance);\n }\n return isMounted;\n}\n\nfunction useSupported(callback) {\n const isMounted = useMounted();\n return computed(() => {\n isMounted.value;\n return Boolean(callback());\n });\n}\n\nfunction useMediaQuery(query, options = {}) {\n const { window = defaultWindow } = options;\n const isSupported = useSupported(() => window && \"matchMedia\" in window && typeof window.matchMedia === \"function\");\n let mediaQuery;\n const matches = ref(false);\n const handler = (event) => {\n matches.value = event.matches;\n };\n const cleanup = () => {\n if (!mediaQuery)\n return;\n if (\"removeEventListener\" in mediaQuery)\n mediaQuery.removeEventListener(\"change\", handler);\n else\n mediaQuery.removeListener(handler);\n };\n const stopWatch = watchEffect(() => {\n if (!isSupported.value)\n return;\n cleanup();\n mediaQuery = window.matchMedia(toValue(query));\n if (\"addEventListener\" in mediaQuery)\n mediaQuery.addEventListener(\"change\", handler);\n else\n mediaQuery.addListener(handler);\n matches.value = mediaQuery.matches;\n });\n tryOnScopeDispose(() => {\n stopWatch();\n cleanup();\n mediaQuery = void 0;\n });\n return matches;\n}\n\nfunction usePreferredDark(options) {\n return useMediaQuery(\"(prefers-color-scheme: dark)\", options);\n}\n\nfunction useColorMode(options = {}) {\n const {\n selector = \"html\",\n attribute = \"class\",\n initialValue = \"auto\",\n window = defaultWindow,\n storage,\n storageKey = \"vueuse-color-scheme\",\n listenToStorageChanges = true,\n storageRef,\n emitAuto,\n disableTransition = true\n } = options;\n const modes = {\n auto: \"\",\n light: \"light\",\n dark: \"dark\",\n ...options.modes || {}\n };\n const preferredDark = usePreferredDark({ window });\n const system = computed(() => preferredDark.value ? \"dark\" : \"light\");\n const store = storageRef || (storageKey == null ? toRef(initialValue) : useStorage(storageKey, initialValue, storage, { window, listenToStorageChanges }));\n const state = computed(() => store.value === \"auto\" ? system.value : store.value);\n const updateHTMLAttrs = getSSRHandler(\n \"updateHTMLAttrs\",\n (selector2, attribute2, value) => {\n const el = typeof selector2 === \"string\" ? window == null ? void 0 : window.document.querySelector(selector2) : unrefElement(selector2);\n if (!el)\n return;\n let style;\n if (disableTransition) {\n style = window.document.createElement(\"style\");\n const styleString = \"*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}\";\n style.appendChild(document.createTextNode(styleString));\n window.document.head.appendChild(style);\n }\n if (attribute2 === \"class\") {\n const current = value.split(/\\s/g);\n Object.values(modes).flatMap((i) => (i || \"\").split(/\\s/g)).filter(Boolean).forEach((v) => {\n if (current.includes(v))\n el.classList.add(v);\n else\n el.classList.remove(v);\n });\n } else {\n el.setAttribute(attribute2, value);\n }\n if (disableTransition) {\n window.getComputedStyle(style).opacity;\n document.head.removeChild(style);\n }\n }\n );\n function defaultOnChanged(mode) {\n var _a;\n updateHTMLAttrs(selector, attribute, (_a = modes[mode]) != null ? _a : mode);\n }\n function onChanged(mode) {\n if (options.onChanged)\n options.onChanged(mode, defaultOnChanged);\n else\n defaultOnChanged(mode);\n }\n watch(state, onChanged, { flush: \"post\", immediate: true });\n tryOnMounted(() => onChanged(state.value));\n const auto = computed({\n get() {\n return emitAuto ? store.value : state.value;\n },\n set(v) {\n store.value = v;\n }\n });\n try {\n return Object.assign(auto, { store, system, state });\n } catch (e) {\n return auto;\n }\n}\n\nconst UseColorMode = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseColorMode\",\n props: [\"selector\", \"attribute\", \"modes\", \"onChanged\", \"storageKey\", \"storage\", \"emitAuto\"],\n setup(props, { slots }) {\n const mode = useColorMode(props);\n const data = reactive({\n mode,\n system: mode.system,\n store: mode.store\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDark = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDark\",\n props: [\"selector\", \"attribute\", \"valueDark\", \"valueLight\", \"onChanged\", \"storageKey\", \"storage\"],\n setup(props, { slots }) {\n const isDark = useDark(props);\n const data = reactive({\n isDark,\n toggleDark: useToggle(isDark)\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDeviceMotion = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDeviceMotion\",\n setup(props, { slots }) {\n const data = reactive(useDeviceMotion());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDeviceOrientation = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDeviceOrientation\",\n setup(props, { slots }) {\n const data = reactive(useDeviceOrientation());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDevicePixelRatio = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDevicePixelRatio\",\n setup(props, { slots }) {\n const data = reactive({\n pixelRatio: useDevicePixelRatio()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDevicesList = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDevicesList\",\n props: [\"onUpdated\", \"requestPermissions\", \"constraints\"],\n setup(props, { slots }) {\n const data = reactive(useDevicesList(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDocumentVisibility = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDocumentVisibility\",\n setup(props, { slots }) {\n const data = reactive({\n visibility: useDocumentVisibility()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseDraggable = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseDraggable\",\n props: [\n \"storageKey\",\n \"storageType\",\n \"initialValue\",\n \"exact\",\n \"preventDefault\",\n \"stopPropagation\",\n \"pointerTypes\",\n \"as\",\n \"handle\",\n \"axis\",\n \"onStart\",\n \"onMove\",\n \"onEnd\",\n \"disabled\"\n ],\n setup(props, { slots }) {\n const target = ref();\n const handle = computed(() => {\n var _a;\n return (_a = props.handle) != null ? _a : target.value;\n });\n const disabled = computed(() => !!props.disabled);\n const storageValue = props.storageKey && useStorage$1(\n props.storageKey,\n toValue(props.initialValue) || { x: 0, y: 0 },\n isClient$1 ? props.storageType === \"session\" ? sessionStorage : localStorage : void 0\n );\n const initialValue = storageValue || props.initialValue || { x: 0, y: 0 };\n const onEnd = (position, event) => {\n var _a;\n (_a = props.onEnd) == null ? void 0 : _a.call(props, position, event);\n if (!storageValue)\n return;\n storageValue.value.x = position.x;\n storageValue.value.y = position.y;\n };\n const data = reactive(useDraggable(target, {\n ...props,\n handle,\n initialValue,\n onEnd,\n disabled\n }));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target, style: `touch-action:none;${data.style}` }, slots.default(data));\n };\n }\n});\n\nconst UseElementBounding = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseElementBounding\",\n props: [\"box\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useElementBounding(target));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nfunction useElementHover(el, options = {}) {\n const {\n delayEnter = 0,\n delayLeave = 0,\n window = defaultWindow\n } = options;\n const isHovered = ref(false);\n let timer;\n const toggle = (entering) => {\n const delay = entering ? delayEnter : delayLeave;\n if (timer) {\n clearTimeout(timer);\n timer = void 0;\n }\n if (delay)\n timer = setTimeout(() => isHovered.value = entering, delay);\n else\n isHovered.value = entering;\n };\n if (!window)\n return isHovered;\n useEventListener(el, \"mouseenter\", () => toggle(true), { passive: true });\n useEventListener(el, \"mouseleave\", () => toggle(false), { passive: true });\n return isHovered;\n}\n\nconst vElementHover = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\") {\n const isHovered = useElementHover(el);\n watch(isHovered, (v) => binding.value(v));\n }\n }\n};\n\nconst UseElementSize = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseElementSize\",\n props: [\"width\", \"height\", \"box\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useElementSize$1(target, { width: props.width, height: props.height }, { box: props.box }));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nfunction useResizeObserver(target, callback, options = {}) {\n const { window = defaultWindow, ...observerOptions } = options;\n let observer;\n const isSupported = useSupported(() => window && \"ResizeObserver\" in window);\n const cleanup = () => {\n if (observer) {\n observer.disconnect();\n observer = void 0;\n }\n };\n const targets = computed(() => Array.isArray(target) ? target.map((el) => unrefElement(el)) : [unrefElement(target)]);\n const stopWatch = watch(\n targets,\n (els) => {\n cleanup();\n if (isSupported.value && window) {\n observer = new ResizeObserver(callback);\n for (const _el of els)\n _el && observer.observe(_el, observerOptions);\n }\n },\n { immediate: true, flush: \"post\" }\n );\n const stop = () => {\n cleanup();\n stopWatch();\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n stop\n };\n}\n\nfunction useElementSize(target, initialSize = { width: 0, height: 0 }, options = {}) {\n const { window = defaultWindow, box = \"content-box\" } = options;\n const isSVG = computed(() => {\n var _a, _b;\n return (_b = (_a = unrefElement(target)) == null ? void 0 : _a.namespaceURI) == null ? void 0 : _b.includes(\"svg\");\n });\n const width = ref(initialSize.width);\n const height = ref(initialSize.height);\n const { stop: stop1 } = useResizeObserver(\n target,\n ([entry]) => {\n const boxSize = box === \"border-box\" ? entry.borderBoxSize : box === \"content-box\" ? entry.contentBoxSize : entry.devicePixelContentBoxSize;\n if (window && isSVG.value) {\n const $elem = unrefElement(target);\n if ($elem) {\n const rect = $elem.getBoundingClientRect();\n width.value = rect.width;\n height.value = rect.height;\n }\n } else {\n if (boxSize) {\n const formatBoxSize = Array.isArray(boxSize) ? boxSize : [boxSize];\n width.value = formatBoxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);\n height.value = formatBoxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);\n } else {\n width.value = entry.contentRect.width;\n height.value = entry.contentRect.height;\n }\n }\n },\n options\n );\n tryOnMounted(() => {\n const ele = unrefElement(target);\n if (ele) {\n width.value = \"offsetWidth\" in ele ? ele.offsetWidth : initialSize.width;\n height.value = \"offsetHeight\" in ele ? ele.offsetHeight : initialSize.height;\n }\n });\n const stop2 = watch(\n () => unrefElement(target),\n (ele) => {\n width.value = ele ? initialSize.width : 0;\n height.value = ele ? initialSize.height : 0;\n }\n );\n function stop() {\n stop1();\n stop2();\n }\n return {\n width,\n height,\n stop\n };\n}\n\nconst vElementSize = {\n [directiveHooks.mounted](el, binding) {\n var _a;\n const handler = typeof binding.value === \"function\" ? binding.value : (_a = binding.value) == null ? void 0 : _a[0];\n const options = typeof binding.value === \"function\" ? [] : binding.value.slice(1);\n const { width, height } = useElementSize(el, ...options);\n watch([width, height], ([width2, height2]) => handler({ width: width2, height: height2 }));\n }\n};\n\nconst UseElementVisibility = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseElementVisibility\",\n props: [\"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive({\n isVisible: useElementVisibility$1(target)\n });\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nfunction useIntersectionObserver(target, callback, options = {}) {\n const {\n root,\n rootMargin = \"0px\",\n threshold = 0.1,\n window = defaultWindow,\n immediate = true\n } = options;\n const isSupported = useSupported(() => window && \"IntersectionObserver\" in window);\n const targets = computed(() => {\n const _target = toValue(target);\n return (Array.isArray(_target) ? _target : [_target]).map(unrefElement).filter(notNullish);\n });\n let cleanup = noop;\n const isActive = ref(immediate);\n const stopWatch = isSupported.value ? watch(\n () => [targets.value, unrefElement(root), isActive.value],\n ([targets2, root2]) => {\n cleanup();\n if (!isActive.value)\n return;\n if (!targets2.length)\n return;\n const observer = new IntersectionObserver(\n callback,\n {\n root: unrefElement(root2),\n rootMargin,\n threshold\n }\n );\n targets2.forEach((el) => el && observer.observe(el));\n cleanup = () => {\n observer.disconnect();\n cleanup = noop;\n };\n },\n { immediate, flush: \"post\" }\n ) : noop;\n const stop = () => {\n cleanup();\n stopWatch();\n isActive.value = false;\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n isActive,\n pause() {\n cleanup();\n isActive.value = false;\n },\n resume() {\n isActive.value = true;\n },\n stop\n };\n}\n\nfunction useElementVisibility(element, options = {}) {\n const { window = defaultWindow, scrollTarget, threshold = 0 } = options;\n const elementIsVisible = ref(false);\n useIntersectionObserver(\n element,\n (intersectionObserverEntries) => {\n let isIntersecting = elementIsVisible.value;\n let latestTime = 0;\n for (const entry of intersectionObserverEntries) {\n if (entry.time >= latestTime) {\n latestTime = entry.time;\n isIntersecting = entry.isIntersecting;\n }\n }\n elementIsVisible.value = isIntersecting;\n },\n {\n root: scrollTarget,\n window,\n threshold\n }\n );\n return elementIsVisible;\n}\n\nconst vElementVisibility = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\") {\n const handler = binding.value;\n const isVisible = useElementVisibility(el);\n watch(isVisible, (v) => handler(v), { immediate: true });\n } else {\n const [handler, options] = binding.value;\n const isVisible = useElementVisibility(el, options);\n watch(isVisible, (v) => handler(v), { immediate: true });\n }\n }\n};\n\nconst UseEyeDropper = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseEyeDropper\",\n props: {\n sRGBHex: String\n },\n setup(props, { slots }) {\n const data = reactive(useEyeDropper());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseFullscreen = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseFullscreen\",\n props: [\"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useFullscreen(target));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UseGeolocation = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseGeolocation\",\n props: [\"enableHighAccuracy\", \"maximumAge\", \"timeout\", \"navigator\"],\n setup(props, { slots }) {\n const data = reactive(useGeolocation(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseIdle = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseIdle\",\n props: [\"timeout\", \"events\", \"listenForVisibilityChange\", \"initialState\"],\n setup(props, { slots }) {\n const data = reactive(useIdle(props.timeout, props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nfunction useAsyncState(promise, initialState, options) {\n const {\n immediate = true,\n delay = 0,\n onError = noop,\n onSuccess = noop,\n resetOnExecute = true,\n shallow = true,\n throwError\n } = options != null ? options : {};\n const state = shallow ? shallowRef(initialState) : ref(initialState);\n const isReady = ref(false);\n const isLoading = ref(false);\n const error = shallowRef(void 0);\n async function execute(delay2 = 0, ...args) {\n if (resetOnExecute)\n state.value = initialState;\n error.value = void 0;\n isReady.value = false;\n isLoading.value = true;\n if (delay2 > 0)\n await promiseTimeout(delay2);\n const _promise = typeof promise === \"function\" ? promise(...args) : promise;\n try {\n const data = await _promise;\n state.value = data;\n isReady.value = true;\n onSuccess(data);\n } catch (e) {\n error.value = e;\n onError(e);\n if (throwError)\n throw e;\n } finally {\n isLoading.value = false;\n }\n return state.value;\n }\n if (immediate)\n execute(delay);\n const shell = {\n state,\n isReady,\n isLoading,\n error,\n execute\n };\n function waitUntilIsLoaded() {\n return new Promise((resolve, reject) => {\n until(isLoading).toBe(false).then(() => resolve(shell)).catch(reject);\n });\n }\n return {\n ...shell,\n then(onFulfilled, onRejected) {\n return waitUntilIsLoaded().then(onFulfilled, onRejected);\n }\n };\n}\n\nasync function loadImage(options) {\n return new Promise((resolve, reject) => {\n const img = new Image();\n const { src, srcset, sizes, class: clazz, loading, crossorigin, referrerPolicy } = options;\n img.src = src;\n if (srcset)\n img.srcset = srcset;\n if (sizes)\n img.sizes = sizes;\n if (clazz)\n img.className = clazz;\n if (loading)\n img.loading = loading;\n if (crossorigin)\n img.crossOrigin = crossorigin;\n if (referrerPolicy)\n img.referrerPolicy = referrerPolicy;\n img.onload = () => resolve(img);\n img.onerror = reject;\n });\n}\nfunction useImage(options, asyncStateOptions = {}) {\n const state = useAsyncState(\n () => loadImage(toValue(options)),\n void 0,\n {\n resetOnExecute: true,\n ...asyncStateOptions\n }\n );\n watch(\n () => toValue(options),\n () => state.execute(asyncStateOptions.delay),\n { deep: true }\n );\n return state;\n}\n\nconst UseImage = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseImage\",\n props: [\n \"src\",\n \"srcset\",\n \"sizes\",\n \"as\",\n \"alt\",\n \"class\",\n \"loading\",\n \"crossorigin\",\n \"referrerPolicy\"\n ],\n setup(props, { slots }) {\n const data = reactive(useImage(props));\n return () => {\n if (data.isLoading && slots.loading)\n return slots.loading(data);\n else if (data.error && slots.error)\n return slots.error(data.error);\n if (slots.default)\n return slots.default(data);\n return h(props.as || \"img\", props);\n };\n }\n});\n\nconst ARRIVED_STATE_THRESHOLD_PIXELS = 1;\nfunction useScroll(element, options = {}) {\n const {\n throttle = 0,\n idle = 200,\n onStop = noop,\n onScroll = noop,\n offset = {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0\n },\n eventListenerOptions = {\n capture: false,\n passive: true\n },\n behavior = \"auto\",\n window = defaultWindow,\n onError = (e) => {\n console.error(e);\n }\n } = options;\n const internalX = ref(0);\n const internalY = ref(0);\n const x = computed({\n get() {\n return internalX.value;\n },\n set(x2) {\n scrollTo(x2, void 0);\n }\n });\n const y = computed({\n get() {\n return internalY.value;\n },\n set(y2) {\n scrollTo(void 0, y2);\n }\n });\n function scrollTo(_x, _y) {\n var _a, _b, _c, _d;\n if (!window)\n return;\n const _element = toValue(element);\n if (!_element)\n return;\n (_c = _element instanceof Document ? window.document.body : _element) == null ? void 0 : _c.scrollTo({\n top: (_a = toValue(_y)) != null ? _a : y.value,\n left: (_b = toValue(_x)) != null ? _b : x.value,\n behavior: toValue(behavior)\n });\n const scrollContainer = ((_d = _element == null ? void 0 : _element.document) == null ? void 0 : _d.documentElement) || (_element == null ? void 0 : _element.documentElement) || _element;\n if (x != null)\n internalX.value = scrollContainer.scrollLeft;\n if (y != null)\n internalY.value = scrollContainer.scrollTop;\n }\n const isScrolling = ref(false);\n const arrivedState = reactive({\n left: true,\n right: false,\n top: true,\n bottom: false\n });\n const directions = reactive({\n left: false,\n right: false,\n top: false,\n bottom: false\n });\n const onScrollEnd = (e) => {\n if (!isScrolling.value)\n return;\n isScrolling.value = false;\n directions.left = false;\n directions.right = false;\n directions.top = false;\n directions.bottom = false;\n onStop(e);\n };\n const onScrollEndDebounced = useDebounceFn(onScrollEnd, throttle + idle);\n const setArrivedState = (target) => {\n var _a;\n if (!window)\n return;\n const el = ((_a = target == null ? void 0 : target.document) == null ? void 0 : _a.documentElement) || (target == null ? void 0 : target.documentElement) || unrefElement(target);\n const { display, flexDirection } = getComputedStyle(el);\n const scrollLeft = el.scrollLeft;\n directions.left = scrollLeft < internalX.value;\n directions.right = scrollLeft > internalX.value;\n const left = Math.abs(scrollLeft) <= (offset.left || 0);\n const right = Math.abs(scrollLeft) + el.clientWidth >= el.scrollWidth - (offset.right || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;\n if (display === \"flex\" && flexDirection === \"row-reverse\") {\n arrivedState.left = right;\n arrivedState.right = left;\n } else {\n arrivedState.left = left;\n arrivedState.right = right;\n }\n internalX.value = scrollLeft;\n let scrollTop = el.scrollTop;\n if (target === window.document && !scrollTop)\n scrollTop = window.document.body.scrollTop;\n directions.top = scrollTop < internalY.value;\n directions.bottom = scrollTop > internalY.value;\n const top = Math.abs(scrollTop) <= (offset.top || 0);\n const bottom = Math.abs(scrollTop) + el.clientHeight >= el.scrollHeight - (offset.bottom || 0) - ARRIVED_STATE_THRESHOLD_PIXELS;\n if (display === \"flex\" && flexDirection === \"column-reverse\") {\n arrivedState.top = bottom;\n arrivedState.bottom = top;\n } else {\n arrivedState.top = top;\n arrivedState.bottom = bottom;\n }\n internalY.value = scrollTop;\n };\n const onScrollHandler = (e) => {\n var _a;\n if (!window)\n return;\n const eventTarget = (_a = e.target.documentElement) != null ? _a : e.target;\n setArrivedState(eventTarget);\n isScrolling.value = true;\n onScrollEndDebounced(e);\n onScroll(e);\n };\n useEventListener(\n element,\n \"scroll\",\n throttle ? useThrottleFn(onScrollHandler, throttle, true, false) : onScrollHandler,\n eventListenerOptions\n );\n tryOnMounted(() => {\n try {\n const _element = toValue(element);\n if (!_element)\n return;\n setArrivedState(_element);\n } catch (e) {\n onError(e);\n }\n });\n useEventListener(\n element,\n \"scrollend\",\n onScrollEnd,\n eventListenerOptions\n );\n return {\n x,\n y,\n isScrolling,\n arrivedState,\n directions,\n measure() {\n const _element = toValue(element);\n if (window && _element)\n setArrivedState(_element);\n }\n };\n}\n\nfunction resolveElement(el) {\n if (typeof Window !== \"undefined\" && el instanceof Window)\n return el.document.documentElement;\n if (typeof Document !== \"undefined\" && el instanceof Document)\n return el.documentElement;\n return el;\n}\n\nfunction useInfiniteScroll(element, onLoadMore, options = {}) {\n var _a;\n const {\n direction = \"bottom\",\n interval = 100,\n canLoadMore = () => true\n } = options;\n const state = reactive(useScroll(\n element,\n {\n ...options,\n offset: {\n [direction]: (_a = options.distance) != null ? _a : 0,\n ...options.offset\n }\n }\n ));\n const promise = ref();\n const isLoading = computed(() => !!promise.value);\n const observedElement = computed(() => {\n return resolveElement(toValue(element));\n });\n const isElementVisible = useElementVisibility(observedElement);\n function checkAndLoad() {\n state.measure();\n if (!observedElement.value || !isElementVisible.value || !canLoadMore(observedElement.value))\n return;\n const { scrollHeight, clientHeight, scrollWidth, clientWidth } = observedElement.value;\n const isNarrower = direction === \"bottom\" || direction === \"top\" ? scrollHeight <= clientHeight : scrollWidth <= clientWidth;\n if (state.arrivedState[direction] || isNarrower) {\n if (!promise.value) {\n promise.value = Promise.all([\n onLoadMore(state),\n new Promise((resolve) => setTimeout(resolve, interval))\n ]).finally(() => {\n promise.value = null;\n nextTick(() => checkAndLoad());\n });\n }\n }\n }\n watch(\n () => [state.arrivedState[direction], isElementVisible.value],\n checkAndLoad,\n { immediate: true }\n );\n return {\n isLoading\n };\n}\n\nconst vInfiniteScroll = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\")\n useInfiniteScroll(el, binding.value);\n else\n useInfiniteScroll(el, ...binding.value);\n }\n};\n\nconst vIntersectionObserver = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\")\n useIntersectionObserver(el, binding.value);\n else\n useIntersectionObserver(el, ...binding.value);\n }\n};\n\nconst UseMouse = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseMouse\",\n props: [\"touch\", \"resetOnTouchEnds\", \"initialValue\"],\n setup(props, { slots }) {\n const data = reactive(useMouse(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseMouseInElement = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseMouseElement\",\n props: [\"handleOutside\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useMouseInElement(target, props));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UseMousePressed = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseMousePressed\",\n props: [\"touch\", \"initialValue\", \"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(useMousePressed({ ...props, target }));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UseNetwork = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseNetwork\",\n setup(props, { slots }) {\n const data = reactive(useNetwork());\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseNow = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseNow\",\n props: [\"interval\"],\n setup(props, { slots }) {\n const data = reactive(useNow({ ...props, controls: true }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseObjectUrl = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseObjectUrl\",\n props: [\n \"object\"\n ],\n setup(props, { slots }) {\n const object = toRef(props, \"object\");\n const url = useObjectUrl(object);\n return () => {\n if (slots.default && url.value)\n return slots.default(url);\n };\n }\n});\n\nconst UseOffsetPagination = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseOffsetPagination\",\n props: [\n \"total\",\n \"page\",\n \"pageSize\",\n \"onPageChange\",\n \"onPageSizeChange\",\n \"onPageCountChange\"\n ],\n emits: [\n \"page-change\",\n \"page-size-change\",\n \"page-count-change\"\n ],\n setup(props, { slots, emit }) {\n const data = reactive(useOffsetPagination({\n ...props,\n onPageChange(...args) {\n var _a;\n (_a = props.onPageChange) == null ? void 0 : _a.call(props, ...args);\n emit(\"page-change\", ...args);\n },\n onPageSizeChange(...args) {\n var _a;\n (_a = props.onPageSizeChange) == null ? void 0 : _a.call(props, ...args);\n emit(\"page-size-change\", ...args);\n },\n onPageCountChange(...args) {\n var _a;\n (_a = props.onPageCountChange) == null ? void 0 : _a.call(props, ...args);\n emit(\"page-count-change\", ...args);\n }\n }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseOnline = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseOnline\",\n setup(props, { slots }) {\n const data = reactive({\n isOnline: useOnline()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePageLeave = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePageLeave\",\n setup(props, { slots }) {\n const data = reactive({\n isLeft: usePageLeave()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePointer = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePointer\",\n props: [\n \"pointerTypes\",\n \"initialValue\",\n \"target\"\n ],\n setup(props, { slots }) {\n const el = ref(null);\n const data = reactive(usePointer({\n ...props,\n target: props.target === \"self\" ? el : defaultWindow\n }));\n return () => {\n if (slots.default)\n return slots.default(data, { ref: el });\n };\n }\n});\n\nconst UsePointerLock = /* #__PURE__ */ defineComponent({\n name: \"UsePointerLock\",\n props: [\"as\"],\n setup(props, { slots }) {\n const target = ref();\n const data = reactive(usePointerLock(target));\n return () => {\n if (slots.default)\n return h(props.as || \"div\", { ref: target }, slots.default(data));\n };\n }\n});\n\nconst UsePreferredColorScheme = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredColorScheme\",\n setup(props, { slots }) {\n const data = reactive({\n colorScheme: usePreferredColorScheme()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredContrast = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredContrast\",\n setup(props, { slots }) {\n const data = reactive({\n contrast: usePreferredContrast()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredDark = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredDark\",\n setup(props, { slots }) {\n const data = reactive({\n prefersDark: usePreferredDark$1()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredLanguages = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredLanguages\",\n setup(props, { slots }) {\n const data = reactive({\n languages: usePreferredLanguages()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UsePreferredReducedMotion = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UsePreferredReducedMotion\",\n setup(props, { slots }) {\n const data = reactive({\n motion: usePreferredReducedMotion()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nfunction useMutationObserver(target, callback, options = {}) {\n const { window = defaultWindow, ...mutationOptions } = options;\n let observer;\n const isSupported = useSupported(() => window && \"MutationObserver\" in window);\n const cleanup = () => {\n if (observer) {\n observer.disconnect();\n observer = void 0;\n }\n };\n const targets = computed(() => {\n const value = toValue(target);\n const items = (Array.isArray(value) ? value : [value]).map(unrefElement).filter(notNullish);\n return new Set(items);\n });\n const stopWatch = watch(\n () => targets.value,\n (targets2) => {\n cleanup();\n if (isSupported.value && targets2.size) {\n observer = new MutationObserver(callback);\n targets2.forEach((el) => observer.observe(el, mutationOptions));\n }\n },\n { immediate: true, flush: \"post\" }\n );\n const takeRecords = () => {\n return observer == null ? void 0 : observer.takeRecords();\n };\n const stop = () => {\n cleanup();\n stopWatch();\n };\n tryOnScopeDispose(stop);\n return {\n isSupported,\n stop,\n takeRecords\n };\n}\n\nfunction useCssVar(prop, target, options = {}) {\n const { window = defaultWindow, initialValue = \"\", observe = false } = options;\n const variable = ref(initialValue);\n const elRef = computed(() => {\n var _a;\n return unrefElement(target) || ((_a = window == null ? void 0 : window.document) == null ? void 0 : _a.documentElement);\n });\n function updateCssVar() {\n var _a;\n const key = toValue(prop);\n const el = toValue(elRef);\n if (el && window) {\n const value = (_a = window.getComputedStyle(el).getPropertyValue(key)) == null ? void 0 : _a.trim();\n variable.value = value || initialValue;\n }\n }\n if (observe) {\n useMutationObserver(elRef, updateCssVar, {\n attributeFilter: [\"style\", \"class\"],\n window\n });\n }\n watch(\n [elRef, () => toValue(prop)],\n updateCssVar,\n { immediate: true }\n );\n watch(\n variable,\n (val) => {\n var _a;\n if ((_a = elRef.value) == null ? void 0 : _a.style)\n elRef.value.style.setProperty(toValue(prop), val);\n }\n );\n return variable;\n}\n\nconst topVarName = \"--vueuse-safe-area-top\";\nconst rightVarName = \"--vueuse-safe-area-right\";\nconst bottomVarName = \"--vueuse-safe-area-bottom\";\nconst leftVarName = \"--vueuse-safe-area-left\";\nfunction useScreenSafeArea() {\n const top = ref(\"\");\n const right = ref(\"\");\n const bottom = ref(\"\");\n const left = ref(\"\");\n if (isClient) {\n const topCssVar = useCssVar(topVarName);\n const rightCssVar = useCssVar(rightVarName);\n const bottomCssVar = useCssVar(bottomVarName);\n const leftCssVar = useCssVar(leftVarName);\n topCssVar.value = \"env(safe-area-inset-top, 0px)\";\n rightCssVar.value = \"env(safe-area-inset-right, 0px)\";\n bottomCssVar.value = \"env(safe-area-inset-bottom, 0px)\";\n leftCssVar.value = \"env(safe-area-inset-left, 0px)\";\n update();\n useEventListener(\"resize\", useDebounceFn(update));\n }\n function update() {\n top.value = getValue(topVarName);\n right.value = getValue(rightVarName);\n bottom.value = getValue(bottomVarName);\n left.value = getValue(leftVarName);\n }\n return {\n top,\n right,\n bottom,\n left,\n update\n };\n}\nfunction getValue(position) {\n return getComputedStyle(document.documentElement).getPropertyValue(position);\n}\n\nconst UseScreenSafeArea = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseScreenSafeArea\",\n props: {\n top: Boolean,\n right: Boolean,\n bottom: Boolean,\n left: Boolean\n },\n setup(props, { slots }) {\n const {\n top,\n right,\n bottom,\n left\n } = useScreenSafeArea();\n return () => {\n if (slots.default) {\n return h(\"div\", {\n style: {\n paddingTop: props.top ? top.value : \"\",\n paddingRight: props.right ? right.value : \"\",\n paddingBottom: props.bottom ? bottom.value : \"\",\n paddingLeft: props.left ? left.value : \"\",\n boxSizing: \"border-box\",\n maxHeight: \"100vh\",\n maxWidth: \"100vw\",\n overflow: \"auto\"\n }\n }, slots.default());\n }\n };\n }\n});\n\nconst vScroll = {\n [directiveHooks.mounted](el, binding) {\n if (typeof binding.value === \"function\") {\n const handler = binding.value;\n const state = useScroll(el, {\n onScroll() {\n handler(state);\n },\n onStop() {\n handler(state);\n }\n });\n } else {\n const [handler, options] = binding.value;\n const state = useScroll(el, {\n ...options,\n onScroll(e) {\n var _a;\n (_a = options.onScroll) == null ? void 0 : _a.call(options, e);\n handler(state);\n },\n onStop(e) {\n var _a;\n (_a = options.onStop) == null ? void 0 : _a.call(options, e);\n handler(state);\n }\n });\n }\n }\n};\n\nfunction checkOverflowScroll(ele) {\n const style = window.getComputedStyle(ele);\n if (style.overflowX === \"scroll\" || style.overflowY === \"scroll\" || style.overflowX === \"auto\" && ele.clientWidth < ele.scrollWidth || style.overflowY === \"auto\" && ele.clientHeight < ele.scrollHeight) {\n return true;\n } else {\n const parent = ele.parentNode;\n if (!parent || parent.tagName === \"BODY\")\n return false;\n return checkOverflowScroll(parent);\n }\n}\nfunction preventDefault(rawEvent) {\n const e = rawEvent || window.event;\n const _target = e.target;\n if (checkOverflowScroll(_target))\n return false;\n if (e.touches.length > 1)\n return true;\n if (e.preventDefault)\n e.preventDefault();\n return false;\n}\nconst elInitialOverflow = /* @__PURE__ */ new WeakMap();\nfunction useScrollLock(element, initialState = false) {\n const isLocked = ref(initialState);\n let stopTouchMoveListener = null;\n let initialOverflow = \"\";\n watch(toRef(element), (el) => {\n const target = resolveElement(toValue(el));\n if (target) {\n const ele = target;\n if (!elInitialOverflow.get(ele))\n elInitialOverflow.set(ele, ele.style.overflow);\n if (ele.style.overflow !== \"hidden\")\n initialOverflow = ele.style.overflow;\n if (ele.style.overflow === \"hidden\")\n return isLocked.value = true;\n if (isLocked.value)\n return ele.style.overflow = \"hidden\";\n }\n }, {\n immediate: true\n });\n const lock = () => {\n const el = resolveElement(toValue(element));\n if (!el || isLocked.value)\n return;\n if (isIOS) {\n stopTouchMoveListener = useEventListener(\n el,\n \"touchmove\",\n (e) => {\n preventDefault(e);\n },\n { passive: false }\n );\n }\n el.style.overflow = \"hidden\";\n isLocked.value = true;\n };\n const unlock = () => {\n const el = resolveElement(toValue(element));\n if (!el || !isLocked.value)\n return;\n isIOS && (stopTouchMoveListener == null ? void 0 : stopTouchMoveListener());\n el.style.overflow = initialOverflow;\n elInitialOverflow.delete(el);\n isLocked.value = false;\n };\n tryOnScopeDispose(unlock);\n return computed({\n get() {\n return isLocked.value;\n },\n set(v) {\n if (v)\n lock();\n else unlock();\n }\n });\n}\n\nfunction onScrollLock() {\n let isMounted = false;\n const state = ref(false);\n return (el, binding) => {\n state.value = binding.value;\n if (isMounted)\n return;\n isMounted = true;\n const isLocked = useScrollLock(el, binding.value);\n watch(state, (v) => isLocked.value = v);\n };\n}\nconst vScrollLock = onScrollLock();\n\nconst UseTimeAgo = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseTimeAgo\",\n props: [\"time\", \"updateInterval\", \"max\", \"fullDateFormatter\", \"messages\", \"showSecond\"],\n setup(props, { slots }) {\n const data = reactive(useTimeAgo(() => props.time, { ...props, controls: true }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseTimestamp = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseTimestamp\",\n props: [\"immediate\", \"interval\", \"offset\"],\n setup(props, { slots }) {\n const data = reactive(useTimestamp({ ...props, controls: true }));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseVirtualList = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseVirtualList\",\n props: [\n \"list\",\n \"options\",\n \"height\"\n ],\n setup(props, { slots, expose }) {\n const { list: listRef } = toRefs(props);\n const { list, containerProps, wrapperProps, scrollTo } = useVirtualList(listRef, props.options);\n expose({ scrollTo });\n if (containerProps.style && typeof containerProps.style === \"object\" && !Array.isArray(containerProps.style))\n containerProps.style.height = props.height || \"300px\";\n return () => h(\"div\", { ...containerProps }, [\n h(\"div\", { ...wrapperProps.value }, list.value.map((item) => h(\"div\", { style: { overflow: \"hidden\", height: item.height } }, slots.default ? slots.default(item) : \"Please set content!\")))\n ]);\n }\n});\n\nconst UseWindowFocus = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseWindowFocus\",\n setup(props, { slots }) {\n const data = reactive({\n focused: useWindowFocus()\n });\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nconst UseWindowSize = /* @__PURE__ */ /* #__PURE__ */ defineComponent({\n name: \"UseWindowSize\",\n props: [\"initialWidth\", \"initialHeight\"],\n setup(props, { slots }) {\n const data = reactive(useWindowSize(props));\n return () => {\n if (slots.default)\n return slots.default(data);\n };\n }\n});\n\nexport { OnClickOutside, OnLongPress, UseActiveElement, UseBattery, UseBrowserLocation, UseClipboard, UseColorMode, UseDark, UseDeviceMotion, UseDeviceOrientation, UseDevicePixelRatio, UseDevicesList, UseDocumentVisibility, UseDraggable, UseElementBounding, UseElementSize, UseElementVisibility, UseEyeDropper, UseFullscreen, UseGeolocation, UseIdle, UseImage, UseMouse, UseMouseInElement, UseMousePressed, UseNetwork, UseNow, UseObjectUrl, UseOffsetPagination, UseOnline, UsePageLeave, UsePointer, UsePointerLock, UsePreferredColorScheme, UsePreferredContrast, UsePreferredDark, UsePreferredLanguages, UsePreferredReducedMotion, UseScreenSafeArea, UseTimeAgo, UseTimestamp, UseVirtualList, UseWindowFocus, UseWindowSize, vOnClickOutside as VOnClickOutside, vOnLongPress as VOnLongPress, vElementHover, vElementSize, vElementVisibility, vInfiniteScroll, vIntersectionObserver, vOnClickOutside, vOnKeyStroke, vOnLongPress, vScroll, vScrollLock };\n","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon file-multiple-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FileMultipleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FileMultiple.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./FileMultiple.vue?vue&type=template&id=15fca808\"\nimport script from \"./FileMultiple.vue?vue&type=script&lang=js\"\nexport * from \"./FileMultiple.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-multiple-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15,7H20.5L15,1.5V7M8,0H16L22,6V18A2,2 0 0,1 20,20H8C6.89,20 6,19.1 6,18V2A2,2 0 0,1 8,0M4,4V22H20V24H4A2,2 0 0,1 2,22V4H4Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list-drag-image\"},[_c('span',{staticClass:\"files-list-drag-image__icon\"},[_c('span',{ref:\"previewImg\"}),_vm._v(\" \"),(_vm.isSingleFolder)?_c('FolderIcon'):_c('FileMultipleIcon')],1),_vm._v(\" \"),_c('span',{staticClass:\"files-list-drag-image__name\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropPreview.vue?vue&type=template&id=b63e55d4\"\nimport script from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropPreview.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropPreview.vue?vue&type=style&index=0&id=b63e55d4&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import DragAndDropPreview from '../components/DragAndDropPreview.vue';\nimport Vue from 'vue';\nconst Preview = Vue.extend(DragAndDropPreview);\nlet preview;\nexport const getDragAndDropPreview = async (nodes) => {\n return new Promise((resolve) => {\n if (!preview) {\n preview = new Preview().$mount();\n document.body.appendChild(preview.$el);\n }\n preview.update(nodes);\n preview.$on('loaded', () => {\n resolve(preview.$el);\n preview.$off('loaded');\n });\n });\n};\n","import { extname } from 'path';\nimport { FileType, Permission, Folder, File as NcFile, NodeStatus, Node, getFileActions } from '@nextcloud/files';\nimport { generateUrl } from '@nextcloud/router';\nimport { showError } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport { vOnClickOutside } from '@vueuse/components';\nimport Vue, { computed, defineComponent } from 'vue';\nimport { action as sidebarAction } from '../actions/sidebarAction.ts';\nimport { dataTransferToFileTree, onDropExternalFiles, onDropInternalFiles } from '../services/DropService.ts';\nimport { getDragAndDropPreview } from '../utils/dragUtils.ts';\nimport { hashCode } from '../utils/hashUtils.ts';\nimport logger from '../logger.js';\nVue.directive('onClickOutside', vOnClickOutside);\nconst actions = getFileActions();\nexport default defineComponent({\n props: {\n source: {\n type: [Folder, NcFile, Node],\n required: true,\n },\n nodes: {\n type: Array,\n required: true,\n },\n filesListWidth: {\n type: Number,\n default: 0,\n },\n },\n provide() {\n return {\n defaultFileAction: computed(() => this.defaultFileAction),\n enabledFileActions: computed(() => this.enabledFileActions),\n };\n },\n data() {\n return {\n loading: '',\n dragover: false,\n gridMode: false,\n };\n },\n computed: {\n currentDir() {\n // Remove any trailing slash but leave root slash\n return (this.$route?.query?.dir?.toString() || '/').replace(/^(.+)\\/$/, '$1');\n },\n currentFileId() {\n return this.$route.params?.fileid || this.$route.query?.fileid || null;\n },\n fileid() {\n return this.source?.fileid;\n },\n uniqueId() {\n return hashCode(this.source.source);\n },\n isLoading() {\n return this.source.status === NodeStatus.LOADING || this.loading !== '';\n },\n /**\n * The display name of the current node\n * Either the nodes filename or a custom display name (e.g. for shares)\n */\n displayName() {\n // basename fallback needed for apps using old `@nextcloud/files` prior 3.6.0\n return this.source.displayname || this.source.basename;\n },\n /**\n * The display name without extension\n */\n basename() {\n if (this.extension === '') {\n return this.displayName;\n }\n return this.displayName.slice(0, 0 - this.extension.length);\n },\n /**\n * The extension of the file\n */\n extension() {\n if (this.source.type === FileType.Folder) {\n return '';\n }\n return extname(this.displayName);\n },\n draggingFiles() {\n return this.draggingStore.dragging;\n },\n selectedFiles() {\n return this.selectionStore.selected;\n },\n isSelected() {\n return this.selectedFiles.includes(this.source.source);\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n isRenamingSmallScreen() {\n return this.isRenaming && this.filesListWidth < 512;\n },\n isActive() {\n return String(this.fileid) === String(this.currentFileId);\n },\n canDrag() {\n if (this.isRenaming) {\n return false;\n }\n const canDrag = (node) => {\n return (node?.permissions & Permission.UPDATE) !== 0;\n };\n // If we're dragging a selection, we need to check all files\n if (this.selectedFiles.length > 0) {\n const nodes = this.selectedFiles.map(source => this.filesStore.getNode(source));\n return nodes.every(canDrag);\n }\n return canDrag(this.source);\n },\n canDrop() {\n if (this.source.type !== FileType.Folder) {\n return false;\n }\n // If the current folder is also being dragged, we can't drop it on itself\n if (this.draggingFiles.includes(this.source.source)) {\n return false;\n }\n return (this.source.permissions & Permission.CREATE) !== 0;\n },\n openedMenu: {\n get() {\n return this.actionsMenuStore.opened === this.uniqueId.toString();\n },\n set(opened) {\n this.actionsMenuStore.opened = opened ? this.uniqueId.toString() : null;\n },\n },\n isRenaming() {\n return this.renamingStore.renamingNode === this.source;\n },\n /**\n * Sorted actions that are enabled for this node\n */\n enabledFileActions() {\n if (this.source.status === NodeStatus.FAILED) {\n return [];\n }\n return actions\n .filter(action => {\n if (!action.enabled) {\n return true;\n }\n // In case something goes wrong, since we don't want to break\n // the entire list, we filter out actions that throw an error.\n try {\n return action.enabled([this.source], this.currentView);\n }\n catch (error) {\n logger.error('Error while checking action', { action, error });\n return false;\n }\n })\n .sort((a, b) => (a.order || 0) - (b.order || 0));\n },\n defaultFileAction() {\n return this.enabledFileActions.find((action) => action.default !== undefined);\n },\n },\n watch: {\n /**\n * When the source changes, reset the preview\n * and fetch the new one.\n */\n source(a, b) {\n if (a.source !== b.source) {\n this.resetState();\n }\n },\n openedMenu() {\n if (this.openedMenu === false) {\n // TODO: This timeout can be removed once `close` event only triggers after the transition\n // ref: https://github.com/nextcloud-libraries/nextcloud-vue/pull/6065\n window.setTimeout(() => {\n if (this.openedMenu) {\n // was reopened while the animation run\n return;\n }\n // Reset any right menu position potentially set\n const root = document.getElementById('app-content-vue');\n if (root !== null) {\n root.style.removeProperty('--mouse-pos-x');\n root.style.removeProperty('--mouse-pos-y');\n }\n }, 300);\n }\n },\n },\n beforeDestroy() {\n this.resetState();\n },\n methods: {\n resetState() {\n // Reset loading state\n this.loading = '';\n // Reset the preview state\n this.$refs?.preview?.reset?.();\n // Close menu\n this.openedMenu = false;\n },\n // Open the actions menu on right click\n onRightClick(event) {\n // If already opened, fallback to default browser\n if (this.openedMenu) {\n return;\n }\n // The grid mode is compact enough to not care about\n // the actions menu mouse position\n if (!this.gridMode) {\n // Actions menu is contained within the app content\n const root = this.$el?.closest('main.app-content');\n const contentRect = root.getBoundingClientRect();\n // Using Math.min/max to prevent the menu from going out of the AppContent\n // 200 = max width of the menu\n root.style.setProperty('--mouse-pos-x', Math.max(0, event.clientX - contentRect.left - 200) + 'px');\n root.style.setProperty('--mouse-pos-y', Math.max(0, event.clientY - contentRect.top) + 'px');\n }\n else {\n // Reset any right menu position potentially set\n const root = this.$el?.closest('main.app-content');\n root.style.removeProperty('--mouse-pos-x');\n root.style.removeProperty('--mouse-pos-y');\n }\n // If the clicked row is in the selection, open global menu\n const isMoreThanOneSelected = this.selectedFiles.length > 1;\n this.actionsMenuStore.opened = this.isSelected && isMoreThanOneSelected ? 'global' : this.uniqueId.toString();\n // Prevent any browser defaults\n event.preventDefault();\n event.stopPropagation();\n },\n execDefaultAction(event) {\n // Ignore click if we are renaming\n if (this.isRenaming) {\n return;\n }\n // Ignore right click.\n if (event.button > 1) {\n return;\n }\n // if ctrl+click or middle mouse button, open in new tab\n if (event.ctrlKey || event.metaKey || event.button === 1) {\n event.preventDefault();\n window.open(generateUrl('/f/{fileId}', { fileId: this.fileid }));\n return false;\n }\n if (this.defaultFileAction) {\n event.preventDefault();\n event.stopPropagation();\n // Execute the first default action if any\n this.defaultFileAction.exec(this.source, this.currentView, this.currentDir);\n }\n else {\n // fallback to open in current tab\n window.open(generateUrl('/f/{fileId}', { fileId: this.fileid }), '_self');\n }\n },\n openDetailsIfAvailable(event) {\n event.preventDefault();\n event.stopPropagation();\n if (sidebarAction?.enabled?.([this.source], this.currentView)) {\n sidebarAction.exec(this.source, this.currentView, this.currentDir);\n }\n },\n onDragOver(event) {\n this.dragover = this.canDrop;\n if (!this.canDrop) {\n event.dataTransfer.dropEffect = 'none';\n return;\n }\n // Handle copy/move drag and drop\n if (event.ctrlKey) {\n event.dataTransfer.dropEffect = 'copy';\n }\n else {\n event.dataTransfer.dropEffect = 'move';\n }\n },\n onDragLeave(event) {\n // Counter bubbling, make sure we're ending the drag\n // only when we're leaving the current element\n const currentTarget = event.currentTarget;\n if (currentTarget?.contains(event.relatedTarget)) {\n return;\n }\n this.dragover = false;\n },\n async onDragStart(event) {\n event.stopPropagation();\n if (!this.canDrag || !this.fileid) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n logger.debug('Drag started', { event });\n // Make sure that we're not dragging a file like the preview\n event.dataTransfer?.clearData?.();\n // Reset any renaming\n this.renamingStore.$reset();\n // Dragging set of files, if we're dragging a file\n // that is already selected, we use the entire selection\n if (this.selectedFiles.includes(this.source.source)) {\n this.draggingStore.set(this.selectedFiles);\n }\n else {\n this.draggingStore.set([this.source.source]);\n }\n const nodes = this.draggingStore.dragging\n .map(source => this.filesStore.getNode(source));\n const image = await getDragAndDropPreview(nodes);\n event.dataTransfer?.setDragImage(image, -10, -10);\n },\n onDragEnd() {\n this.draggingStore.reset();\n this.dragover = false;\n logger.debug('Drag ended');\n },\n async onDrop(event) {\n // skip if native drop like text drag and drop from files names\n if (!this.draggingFiles && !event.dataTransfer?.items?.length) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n // Caching the selection\n const selection = this.draggingFiles;\n const items = [...event.dataTransfer?.items || []];\n // We need to process the dataTransfer ASAP before the\n // browser clears it. This is why we cache the items too.\n const fileTree = await dataTransferToFileTree(items);\n // We might not have the target directory fetched yet\n const contents = await this.currentView?.getContents(this.source.path);\n const folder = contents?.folder;\n if (!folder) {\n showError(this.t('files', 'Target folder does not exist any more'));\n return;\n }\n // If another button is pressed, cancel it. This\n // allows cancelling the drag with the right click.\n if (!this.canDrop || event.button) {\n return;\n }\n const isCopy = event.ctrlKey;\n this.dragover = false;\n logger.debug('Dropped', { event, folder, selection, fileTree });\n // Check whether we're uploading files\n if (fileTree.contents.length > 0) {\n await onDropExternalFiles(fileTree, folder, contents.contents);\n return;\n }\n // Else we're moving/copying files\n const nodes = selection.map(source => this.filesStore.getNode(source));\n await onDropInternalFiles(nodes, folder, contents.contents, isCopy);\n // Reset selection after we dropped the files\n // if the dropped files are within the selection\n if (selection.some(source => this.selectedFiles.includes(source))) {\n logger.debug('Dropped selection, resetting select store...');\n this.selectionStore.reset();\n }\n },\n t,\n },\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nexport const hashCode = function (str) {\n let hash = 0;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) - hash + str.charCodeAt(i)) | 0;\n }\n return (hash >>> 0);\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomElementRender.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./CustomElementRender.vue?vue&type=template&id=08a118c6\"\nimport script from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomElementRender.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-actions\",attrs:{\"data-cy-files-list-row-actions\":\"\"}},[_vm._l((_vm.enabledRenderActions),function(action){return _c('CustomElementRender',{key:action.id,staticClass:\"files-list__row-action--inline\",class:'files-list__row-action-' + action.id,attrs:{\"current-view\":_vm.currentView,\"render\":action.renderInline,\"source\":_vm.source}})}),_vm._v(\" \"),_c('NcActions',{ref:\"actionsMenu\",attrs:{\"boundaries-element\":_vm.getBoundariesElement,\"container\":_vm.getBoundariesElement,\"force-name\":true,\"type\":\"tertiary\",\"force-menu\":_vm.enabledInlineActions.length === 0 /* forceMenu only if no inline actions */,\"inline\":_vm.enabledInlineActions.length,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event},\"close\":function($event){_vm.openedSubmenu = null}}},[_vm._l((_vm.enabledMenuActions),function(action){return _c('NcActionButton',{key:action.id,ref:`action-${action.id}`,refInFor:true,class:{\n\t\t\t\t[`files-list__row-action-${action.id}`]: true,\n\t\t\t\t[`files-list__row-action--menu`]: _vm.isMenu(action.id)\n\t\t\t},attrs:{\"close-after-click\":!_vm.isMenu(action.id),\"data-cy-files-list-row-action\":action.id,\"is-menu\":_vm.isMenu(action.id),\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.mountType === 'shared' && action.id === 'sharing-status' ? '' : _vm.actionDisplayName(action))+\"\\n\\t\\t\")])}),_vm._v(\" \"),(_vm.openedSubmenu && _vm.enabledSubmenuActions[_vm.openedSubmenu?.id])?[_c('NcActionButton',{staticClass:\"files-list__row-action-back\",on:{\"click\":function($event){return _vm.onBackToMenuClick(_vm.openedSubmenu)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('ArrowLeftIcon')]},proxy:true}],null,false,3001860362)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Back'))+\"\\n\\t\\t\\t\")]),_vm._v(\" \"),_c('NcActionSeparator'),_vm._v(\" \"),_vm._l((_vm.enabledSubmenuActions[_vm.openedSubmenu?.id]),function(action){return _c('NcActionButton',{key:action.id,staticClass:\"files-list__row-action--submenu\",class:`files-list__row-action-${action.id}`,attrs:{\"close-after-click\":\"\",\"data-cy-files-list-row-action\":action.id,\"title\":action.title?.([_vm.source], _vm.currentView)},on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline([_vm.source], _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.actionDisplayName(action))+\"\\n\\t\\t\\t\")])})]:_vm._e()],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon arrow-left-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ArrowLeftIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ArrowLeft.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ArrowLeft.vue?vue&type=template&id=16833c02\"\nimport script from \"./ArrowLeft.vue?vue&type=script&lang=js\"\nexport * from \"./ArrowLeft.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon arrow-left-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntryActions.vue?vue&type=template&id=7a49ca87&scoped=true\"\nimport script from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileEntryActions.vue?vue&type=style&index=0&id=7a49ca87&prod&lang=scss\"\nimport style1 from \"./FileEntryActions.vue?vue&type=style&index=1&id=7a49ca87&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7a49ca87\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryCheckbox.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('td',{staticClass:\"files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[(_vm.isLoading)?_c('NcLoadingIcon',{attrs:{\"name\":_vm.loadingLabel}}):_c('NcCheckboxRadioSwitch',{attrs:{\"aria-label\":_vm.ariaLabel,\"checked\":_vm.isSelected},on:{\"update:checked\":_vm.onSelectionChange}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { defineStore } from 'pinia';\nimport Vue from 'vue';\n/**\n * Observe various events and save the current\n * special keys states. Useful for checking the\n * current status of a key when executing a method.\n */\nexport const useKeyboardStore = function (...args) {\n const store = defineStore('keyboard', {\n state: () => ({\n altKey: false,\n ctrlKey: false,\n metaKey: false,\n shiftKey: false,\n }),\n actions: {\n onEvent(event) {\n if (!event) {\n event = window.event;\n }\n Vue.set(this, 'altKey', !!event.altKey);\n Vue.set(this, 'ctrlKey', !!event.ctrlKey);\n Vue.set(this, 'metaKey', !!event.metaKey);\n Vue.set(this, 'shiftKey', !!event.shiftKey);\n },\n },\n });\n const keyboardStore = store(...args);\n // Make sure we only register the listeners once\n if (!keyboardStore._initialized) {\n window.addEventListener('keydown', keyboardStore.onEvent);\n window.addEventListener('keyup', keyboardStore.onEvent);\n window.addEventListener('mousemove', keyboardStore.onEvent);\n keyboardStore._initialized = true;\n }\n return keyboardStore;\n};\n","import { render, staticRenderFns } from \"./FileEntryCheckbox.vue?vue&type=template&id=b393d122\"\nimport script from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryCheckbox.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.isRenaming)?_c('form',{directives:[{name:\"on-click-outside\",rawName:\"v-on-click-outside\",value:(_vm.onRename),expression:\"onRename\"}],ref:\"renameForm\",staticClass:\"files-list__row-rename\",attrs:{\"aria-label\":_vm.t('files', 'Rename file')},on:{\"submit\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.onRename.apply(null, arguments)}}},[_c('NcTextField',{ref:\"renameInput\",attrs:{\"label\":_vm.renameLabel,\"autofocus\":true,\"minlength\":1,\"required\":true,\"value\":_vm.newName,\"enterkeyhint\":\"done\"},on:{\"update:value\":function($event){_vm.newName=$event},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;return _vm.stopRenaming.apply(null, arguments)}}})],1):_c(_vm.linkTo.is,_vm._b({ref:\"basename\",tag:\"component\",staticClass:\"files-list__row-name-link\",attrs:{\"aria-hidden\":_vm.isRenaming,\"data-cy-files-list-row-name-link\":\"\"}},'component',_vm.linkTo.params,false),[_c('span',{staticClass:\"files-list__row-name-text\"},[_c('span',{staticClass:\"files-list__row-name-\",domProps:{\"textContent\":_vm._s(_vm.basename)}}),_vm._v(\" \"),_c('span',{staticClass:\"files-list__row-name-ext\",domProps:{\"textContent\":_vm._s(_vm.extension)}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { computed } from 'vue';\nimport { useRoute } from 'vue-router/composables';\n/**\n * Get information about the current route\n */\nexport function useRouteParameters() {\n const route = useRoute();\n /**\n * Get the path of the current active directory\n */\n const directory = computed(() => String(route.query.dir || '/')\n // Remove any trailing slash but leave root slash\n .replace(/^(.+)\\/$/, '$1'));\n /**\n * Get the current fileId used on the route\n */\n const fileId = computed(() => {\n const fileId = Number.parseInt(route.params.fileid ?? '0') || null;\n return Number.isNaN(fileId) ? null : fileId;\n });\n /**\n * State of `openFile` route param\n */\n const openFile = computed(\n // if `openfile` is set it is considered truthy, but allow to explicitly set it to 'false'\n () => 'openfile' in route.query && (typeof route.query.openfile !== 'string' || route.query.openfile.toLocaleLowerCase() !== 'false'));\n return {\n /** Path of currently open directory */\n directory,\n /** Current active fileId */\n fileId,\n /** Should the active node should be opened (`openFile` route param) */\n openFile,\n };\n}\n","/*!\n * vue-router v3.6.5\n * (c) 2022 Evan You\n * @license MIT\n */\nimport { getCurrentInstance, effectScope, shallowReactive, onUnmounted, computed, unref } from 'vue';\n\n// dev only warn if no current instance\n\nfunction throwNoCurrentInstance (method) {\n if (!getCurrentInstance()) {\n throw new Error(\n (\"[vue-router]: Missing current instance. \" + method + \"() must be called inside <script setup> or setup().\")\n )\n }\n}\n\nfunction useRouter () {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('useRouter');\n }\n\n return getCurrentInstance().proxy.$root.$router\n}\n\nfunction useRoute () {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('useRoute');\n }\n\n var root = getCurrentInstance().proxy.$root;\n if (!root._$route) {\n var route = effectScope(true).run(function () { return shallowReactive(Object.assign({}, root.$router.currentRoute)); }\n );\n root._$route = route;\n\n root.$router.afterEach(function (to) {\n Object.assign(route, to);\n });\n }\n\n return root._$route\n}\n\nfunction onBeforeRouteUpdate (guard) {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('onBeforeRouteUpdate');\n }\n\n return useFilteredGuard(guard, isUpdateNavigation)\n}\nfunction isUpdateNavigation (to, from, depth) {\n var toMatched = to.matched;\n var fromMatched = from.matched;\n return (\n toMatched.length >= depth &&\n toMatched\n .slice(0, depth + 1)\n .every(function (record, i) { return record === fromMatched[i]; })\n )\n}\n\nfunction isLeaveNavigation (to, from, depth) {\n var toMatched = to.matched;\n var fromMatched = from.matched;\n return toMatched.length < depth || toMatched[depth] !== fromMatched[depth]\n}\n\nfunction onBeforeRouteLeave (guard) {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('onBeforeRouteLeave');\n }\n\n return useFilteredGuard(guard, isLeaveNavigation)\n}\n\nvar noop = function () {};\nfunction useFilteredGuard (guard, fn) {\n var instance = getCurrentInstance();\n var router = useRouter();\n\n var target = instance.proxy;\n // find the nearest RouterView to know the depth\n while (\n target &&\n target.$vnode &&\n target.$vnode.data &&\n target.$vnode.data.routerViewDepth == null\n ) {\n target = target.$parent;\n }\n\n var depth =\n target && target.$vnode && target.$vnode.data\n ? target.$vnode.data.routerViewDepth\n : null;\n\n if (depth != null) {\n var removeGuard = router.beforeEach(function (to, from, next) {\n return fn(to, from, depth) ? guard(to, from, next) : next()\n });\n\n onUnmounted(removeGuard);\n return removeGuard\n }\n\n return noop\n}\n\n/* */\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction includesParams (outer, inner) {\n var loop = function ( key ) {\n var innerValue = inner[key];\n var outerValue = outer[key];\n if (typeof innerValue === 'string') {\n if (innerValue !== outerValue) { return { v: false } }\n } else {\n if (\n !Array.isArray(outerValue) ||\n outerValue.length !== innerValue.length ||\n innerValue.some(function (value, i) { return value !== outerValue[i]; })\n ) {\n return { v: false }\n }\n }\n };\n\n for (var key in inner) {\n var returned = loop( key );\n\n if ( returned ) return returned.v;\n }\n\n return true\n}\n\n// helpers from vue router 4\n\nfunction isSameRouteLocationParamsValue (a, b) {\n return Array.isArray(a)\n ? isEquivalentArray(a, b)\n : Array.isArray(b)\n ? isEquivalentArray(b, a)\n : a === b\n}\n\nfunction isEquivalentArray (a, b) {\n return Array.isArray(b)\n ? a.length === b.length && a.every(function (value, i) { return value === b[i]; })\n : a.length === 1 && a[0] === b\n}\n\nfunction isSameRouteLocationParams (a, b) {\n if (Object.keys(a).length !== Object.keys(b).length) { return false }\n\n for (var key in a) {\n if (!isSameRouteLocationParamsValue(a[key], b[key])) { return false }\n }\n\n return true\n}\n\nfunction useLink (props) {\n if (process.env.NODE_ENV !== 'production') {\n throwNoCurrentInstance('useLink');\n }\n\n var router = useRouter();\n var currentRoute = useRoute();\n\n var resolvedRoute = computed(function () { return router.resolve(unref(props.to), currentRoute); });\n\n var activeRecordIndex = computed(function () {\n var route = resolvedRoute.value.route;\n var matched = route.matched;\n var length = matched.length;\n var routeMatched = matched[length - 1];\n var currentMatched = currentRoute.matched;\n if (!routeMatched || !currentMatched.length) { return -1 }\n var index = currentMatched.indexOf(routeMatched);\n if (index > -1) { return index }\n // possible parent record\n var parentRecord = currentMatched[currentMatched.length - 2];\n\n return (\n // we are dealing with nested routes\n length > 1 &&\n // if the parent and matched route have the same path, this link is\n // referring to the empty child. Or we currently are on a different\n // child of the same parent\n parentRecord && parentRecord === routeMatched.parent\n )\n });\n\n var isActive = computed(\n function () { return activeRecordIndex.value > -1 &&\n includesParams(currentRoute.params, resolvedRoute.value.route.params); }\n );\n var isExactActive = computed(\n function () { return activeRecordIndex.value > -1 &&\n activeRecordIndex.value === currentRoute.matched.length - 1 &&\n isSameRouteLocationParams(currentRoute.params, resolvedRoute.value.route.params); }\n );\n\n var navigate = function (e) {\n var href = resolvedRoute.value.route;\n if (guardEvent(e)) {\n return props.replace\n ? router.replace(href)\n : router.push(href)\n }\n return Promise.resolve()\n };\n\n return {\n href: computed(function () { return resolvedRoute.value.href; }),\n route: computed(function () { return resolvedRoute.value.route; }),\n isExactActive: isExactActive,\n isActive: isActive,\n navigate: navigate\n }\n}\n\nexport { isSameRouteLocationParams, onBeforeRouteLeave, onBeforeRouteUpdate, useLink, useRoute, useRouter };\n","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { InvalidFilenameError, InvalidFilenameErrorReason, validateFilename } from '@nextcloud/files';\nimport { t } from '@nextcloud/l10n';\n/**\n * Get the validity of a filename (empty if valid).\n * This can be used for `setCustomValidity` on input elements\n * @param name The filename\n * @param escape Escape the matched string in the error (only set when used in HTML)\n */\nexport function getFilenameValidity(name, escape = false) {\n if (name.trim() === '') {\n return t('files', 'Filename must not be empty.');\n }\n try {\n validateFilename(name);\n return '';\n }\n catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n throw error;\n }\n switch (error.reason) {\n case InvalidFilenameErrorReason.Character:\n return t('files', '\"{char}\" is not allowed inside a filename.', { char: error.segment }, undefined, { escape });\n case InvalidFilenameErrorReason.ReservedName:\n return t('files', '\"{segment}\" is a reserved name and not allowed for filenames.', { segment: error.segment }, undefined, { escape: false });\n case InvalidFilenameErrorReason.Extension:\n if (error.segment.match(/\\.[a-z]/i)) {\n return t('files', '\"{extension}\" is not an allowed filetype.', { extension: error.segment }, undefined, { escape: false });\n }\n return t('files', 'Filenames must not end with \"{extension}\".', { extension: error.segment }, undefined, { escape: false });\n default:\n return t('files', 'Invalid filename.');\n }\n }\n}\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FileEntryName.vue?vue&type=template&id=1b7d6a24&scoped=true\"\nimport script from \"./FileEntryName.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryName.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileEntryName.vue?vue&type=style&index=0&id=1b7d6a24&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1b7d6a24\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"files-list__row-icon\"},[(_vm.source.type === 'folder')?[(_vm.dragover)?_vm._m(0):[_vm._m(1),_vm._v(\" \"),(_vm.folderOverlay)?_c(_vm.folderOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay\"}):_vm._e()]]:(_vm.previewUrl && _vm.backgroundFailed !== true)?_c('img',{ref:\"previewImg\",staticClass:\"files-list__row-icon-preview\",class:{'files-list__row-icon-preview--loaded': _vm.backgroundFailed === false},attrs:{\"alt\":\"\",\"loading\":\"lazy\",\"src\":_vm.previewUrl},on:{\"error\":_vm.onBackgroundError,\"load\":function($event){_vm.backgroundFailed = false}}}):_vm._m(2),_vm._v(\" \"),(_vm.isFavorite)?_c('span',{staticClass:\"files-list__row-icon-favorite\"},[_vm._m(3)],1):_vm._e(),_vm._v(\" \"),(_vm.fileOverlay)?_c(_vm.fileOverlay,{tag:\"OverlayIcon\",staticClass:\"files-list__row-icon-overlay files-list__row-icon-overlay--file\"}):_vm._e()],2)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderOpenIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FolderIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FileIcon')\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('FavoriteIcon')\n}]\n\nexport { render, staticRenderFns }","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon file-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FileIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./File.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./File.vue?vue&type=template&id=0f6b0bb0\"\nimport script from \"./File.vue?vue&type=script&lang=js\"\nexport * from \"./File.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon file-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M13,9V3.5L18.5,9M6,2C4.89,2 4,2.89 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2H6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./FolderOpen.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon folder-open-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"FolderOpenIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./FolderOpen.vue?vue&type=template&id=ae0c5fc0\"\nimport script from \"./FolderOpen.vue?vue&type=script&lang=js\"\nexport * from \"./FolderOpen.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon folder-open-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,20H4C2.89,20 2,19.1 2,18V6C2,4.89 2.89,4 4,4H10L12,6H19A2,2 0 0,1 21,8H21L4,8V18L6.14,10H23.21L20.93,18.5C20.7,19.37 19.92,20 19,20Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Key.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon key-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"KeyIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Key.vue?vue&type=template&id=499b3412\"\nimport script from \"./Key.vue?vue&type=script&lang=js\"\nexport * from \"./Key.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon key-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M7 14C5.9 14 5 13.1 5 12S5.9 10 7 10 9 10.9 9 12 8.1 14 7 14M12.6 10C11.8 7.7 9.6 6 7 6C3.7 6 1 8.7 1 12S3.7 18 7 18C9.6 18 11.8 16.3 12.6 14H16V18H20V14H23V10H12.6Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Network.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon network-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"NetworkIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Network.vue?vue&type=template&id=7bf2ec80\"\nimport script from \"./Network.vue?vue&type=script&lang=js\"\nexport * from \"./Network.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon network-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M17,3A2,2 0 0,1 19,5V15A2,2 0 0,1 17,17H13V19H14A1,1 0 0,1 15,20H22V22H15A1,1 0 0,1 14,23H10A1,1 0 0,1 9,22H2V20H9A1,1 0 0,1 10,19H11V17H7C5.89,17 5,16.1 5,15V5A2,2 0 0,1 7,3H17Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Tag.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon tag-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TagIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./Tag.vue?vue&type=template&id=356230e0\"\nimport script from \"./Tag.vue?vue&type=script&lang=js\"\nexport * from \"./Tag.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tag-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./PlayCircle.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon play-circle-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"PlayCircleIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./PlayCircle.vue?vue&type=template&id=3cc1493c\"\nimport script from \"./PlayCircle.vue?vue&type=script&lang=js\"\nexport * from \"./PlayCircle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon play-circle-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M10,16.5V7.5L16,12M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CollectivesIcon.vue?vue&type=script&lang=js\"","<template>\n\t<span :aria-hidden=\"!title\"\n\t\t:aria-label=\"title\"\n\t\tclass=\"material-design-icon collectives-icon\"\n\t\trole=\"img\"\n\t\tv-bind=\"$attrs\"\n\t\t@click=\"$emit('click', $event)\">\n\t\t<svg :fill=\"fillColor\"\n\t\t\tclass=\"material-design-icon__svg\"\n\t\t\t:width=\"size\"\n\t\t\t:height=\"size\"\n\t\t\tviewBox=\"0 0 16 16\">\n\t\t\t<path d=\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\" />\n\t\t\t<path d=\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\" />\n\t\t\t<path d=\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\" />\n\t\t\t<path d=\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\" />\n\t\t\t<path d=\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\" />\n\t\t\t<path d=\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\" />\n\t\t</svg>\n\t</span>\n</template>\n\n<script>\nexport default {\n\tname: 'CollectivesIcon',\n\tprops: {\n\t\ttitle: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tfillColor: {\n\t\t\ttype: String,\n\t\t\tdefault: 'currentColor',\n\t\t},\n\t\tsize: {\n\t\t\ttype: Number,\n\t\t\tdefault: 24,\n\t\t},\n\t},\n}\n</script>\n","import { render, staticRenderFns } from \"./CollectivesIcon.vue?vue&type=template&id=18541dcc\"\nimport script from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\nexport * from \"./CollectivesIcon.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon collectives-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 16 16\"}},[_c('path',{attrs:{\"d\":\"M2.9,8.8c0-1.2,0.4-2.4,1.2-3.3L0.3,6c-0.2,0-0.3,0.3-0.1,0.4l2.7,2.6C2.9,9,2.9,8.9,2.9,8.8z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M8,3.7c0.7,0,1.3,0.1,1.9,0.4L8.2,0.6c-0.1-0.2-0.3-0.2-0.4,0L6.1,4C6.7,3.8,7.3,3.7,8,3.7z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M3.7,11.5L3,15.2c0,0.2,0.2,0.4,0.4,0.3l3.3-1.7C5.4,13.4,4.4,12.6,3.7,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M15.7,6l-3.7-0.5c0.7,0.9,1.2,2,1.2,3.3c0,0.1,0,0.2,0,0.3l2.7-2.6C15.9,6.3,15.9,6.1,15.7,6z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M12.3,11.5c-0.7,1.1-1.8,1.9-3,2.2l3.3,1.7c0.2,0.1,0.4-0.1,0.4-0.3L12.3,11.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M9.6,10.1c-0.4,0.5-1,0.8-1.6,0.8c-1.1,0-2-0.9-2.1-2C5.9,7.7,6.8,6.7,8,6.7c0.6,0,1.1,0.3,1.5,0.7 c0.1,0.1,0.1,0.1,0.2,0.1h1.4c0.2,0,0.4-0.2,0.3-0.5c-0.7-1.3-2.1-2.2-3.8-2.1C5.8,5,4.3,6.6,4.1,8.5C4,10.8,5.8,12.7,8,12.7 c1.6,0,2.9-0.9,3.5-2.3c0.1-0.2-0.1-0.4-0.3-0.4H9.9C9.8,10,9.7,10,9.6,10.1z\"}})])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcIconSvgWrapper',{staticClass:\"favorite-marker-icon\",attrs:{\"name\":_vm.t('files', 'Favorite'),\"svg\":_vm.StarSvg}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FavoriteIcon.vue?vue&type=template&id=42ea6dd4&scoped=true\"\nimport script from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nexport * from \"./FavoriteIcon.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FavoriteIcon.vue?vue&type=style&index=0&id=42ea6dd4&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"42ea6dd4\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryPreview.vue?vue&type=script&lang=ts\"","/**\n * @copyright Copyright (c) 2023 Louis Chmn <louis@chmn.me>\n *\n * @author Louis Chmn <louis@chmn.me>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, registerDavProperty } from '@nextcloud/files';\nexport function initLivePhotos() {\n registerDavProperty('nc:metadata-files-live-photo', { nc: 'http://nextcloud.org/ns' });\n}\n/**\n * @param {Node} node - The node\n */\nexport function isLivePhoto(node) {\n return node.attributes['metadata-files-live-photo'] !== undefined;\n}\n","import { render, staticRenderFns } from \"./FileEntryPreview.vue?vue&type=template&id=0fd56e0d\"\nimport script from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryPreview.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntry.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileEntry.vue?vue&type=template&id=4811ad9b\"\nimport script from \"./FileEntry.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntry.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FileEntryGrid.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row\",class:{'files-list__row--active': _vm.isActive, 'files-list__row--dragover': _vm.dragover, 'files-list__row--loading': _vm.isLoading},attrs:{\"data-cy-files-list-row\":\"\",\"data-cy-files-list-row-fileid\":_vm.fileid,\"data-cy-files-list-row-name\":_vm.source.basename,\"draggable\":_vm.canDrag},on:{\"contextmenu\":_vm.onRightClick,\"dragover\":_vm.onDragOver,\"dragleave\":_vm.onDragLeave,\"dragstart\":_vm.onDragStart,\"dragend\":_vm.onDragEnd,\"drop\":_vm.onDrop}},[(_vm.source.attributes.failed)?_c('span',{staticClass:\"files-list__row--failed\"}):_vm._e(),_vm._v(\" \"),_c('FileEntryCheckbox',{attrs:{\"fileid\":_vm.fileid,\"is-loading\":_vm.isLoading,\"nodes\":_vm.nodes,\"source\":_vm.source}}),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\",attrs:{\"data-cy-files-list-row-name\":\"\"}},[_c('FileEntryPreview',{ref:\"preview\",attrs:{\"dragover\":_vm.dragover,\"grid-mode\":true,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}}),_vm._v(\" \"),_c('FileEntryName',{ref:\"name\",attrs:{\"basename\":_vm.basename,\"extension\":_vm.extension,\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"nodes\":_vm.nodes,\"source\":_vm.source},nativeOn:{\"auxclick\":function($event){return _vm.execDefaultAction.apply(null, arguments)},\"click\":function($event){return _vm.execDefaultAction.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('FileEntryActions',{ref:\"actions\",class:`files-list__row-actions-${_vm.uniqueId}`,attrs:{\"files-list-width\":_vm.filesListWidth,\"grid-mode\":true,\"loading\":_vm.loading,\"opened\":_vm.openedMenu,\"source\":_vm.source},on:{\"update:loading\":function($event){_vm.loading=$event},\"update:opened\":function($event){_vm.openedMenu=$event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./FileEntryGrid.vue?vue&type=template&id=827cf09c\"\nimport script from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\nexport * from \"./FileEntryGrid.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.enabled),expression:\"enabled\"}],class:`files-list__header-${_vm.header.id}`},[_c('span',{ref:\"mount\"})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListHeader.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesListHeader.vue?vue&type=template&id=0434f153\"\nimport script from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListHeader.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',[_c('th',{staticClass:\"files-list__row-checkbox\"},[_c('span',{staticClass:\"hidden-visually\"},[_vm._v(_vm._s(_vm.t('files', 'Total rows summary')))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-name\"},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.summary))])]),_vm._v(\" \"),_c('td',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-size\"},[_c('span',[_vm._v(_vm._s(_vm.totalSize))])]):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('td',{staticClass:\"files-list__column files-list__row-mtime\"}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column)},[_c('span',[_vm._v(_vm._s(column.summary?.(_vm.nodes, _vm.currentView)))])])})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableFooter.vue?vue&type=template&id=23b7c4eb&scoped=true\"\nimport script from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableFooter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableFooter.vue?vue&type=style&index=0&id=23b7c4eb&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"23b7c4eb\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('tr',{staticClass:\"files-list__row-head\"},[_c('th',{staticClass:\"files-list__column files-list__row-checkbox\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey)return null;return _vm.resetSelection.apply(null, arguments)}}},[_c('NcCheckboxRadioSwitch',_vm._b({on:{\"update:checked\":_vm.onToggleAll}},'NcCheckboxRadioSwitch',_vm.selectAllBind,false))],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__column files-list__row-name files-list__column--sortable\",attrs:{\"aria-sort\":_vm.ariaSortForMode('basename')}},[_c('span',{staticClass:\"files-list__row-icon\"}),_vm._v(\" \"),_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Name'),\"mode\":\"basename\"}})],1),_vm._v(\" \"),_c('th',{staticClass:\"files-list__row-actions\"}),_vm._v(\" \"),(_vm.isSizeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-size\",class:{ 'files-list__column--sortable': _vm.isSizeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('size')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Size'),\"mode\":\"size\"}})],1):_vm._e(),_vm._v(\" \"),(_vm.isMtimeAvailable)?_c('th',{staticClass:\"files-list__column files-list__row-mtime\",class:{ 'files-list__column--sortable': _vm.isMtimeAvailable },attrs:{\"aria-sort\":_vm.ariaSortForMode('mtime')}},[_c('FilesListTableHeaderButton',{attrs:{\"name\":_vm.t('files', 'Modified'),\"mode\":\"mtime\"}})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.columns),function(column){return _c('th',{key:column.id,class:_vm.classForColumn(column),attrs:{\"aria-sort\":_vm.ariaSortForMode(column.id)}},[(!!column.sort)?_c('FilesListTableHeaderButton',{attrs:{\"name\":column.title,\"mode\":column.id}}):_c('span',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(column.title)+\"\\n\\t\\t\")])],1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport Vue from 'vue';\nimport { mapState } from 'pinia';\nimport { useViewConfigStore } from '../store/viewConfig';\nimport { useNavigation } from '../composables/useNavigation';\nexport default Vue.extend({\n setup() {\n const { currentView } = useNavigation();\n return {\n currentView,\n };\n },\n computed: {\n ...mapState(useViewConfigStore, ['getConfig', 'setSortingBy', 'toggleSortingDirection']),\n /**\n * Get the sorting mode for the current view\n */\n sortingMode() {\n return this.getConfig(this.currentView.id)?.sorting_mode\n || this.currentView?.defaultSortKey\n || 'basename';\n },\n /**\n * Get the sorting direction for the current view\n */\n isAscSorting() {\n const sortingDirection = this.getConfig(this.currentView.id)?.sorting_direction;\n return sortingDirection !== 'desc';\n },\n },\n methods: {\n toggleSortBy(key) {\n // If we're already sorting by this key, flip the direction\n if (this.sortingMode === key) {\n this.toggleSortingDirection(this.currentView.id);\n return;\n }\n // else sort ASC by this new key\n this.setSortingBy(key, this.currentView.id);\n },\n },\n});\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('NcButton',{class:['files-list__column-sort-button', {\n\t\t'files-list__column-sort-button--active': _vm.sortingMode === _vm.mode,\n\t\t'files-list__column-sort-button--size': _vm.sortingMode === 'size',\n\t}],attrs:{\"alignment\":_vm.mode === 'size' ? 'end' : 'start-reverse',\"type\":\"tertiary\",\"title\":_vm.name},on:{\"click\":function($event){return _vm.toggleSortBy(_vm.mode)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.sortingMode !== _vm.mode || _vm.isAscSorting)?_c('MenuUp',{staticClass:\"files-list__column-sort-button-icon\"}):_c('MenuDown',{staticClass:\"files-list__column-sort-button-icon\"})]},proxy:true}])},[_vm._v(\" \"),_c('span',{staticClass:\"files-list__column-sort-button-text\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderButton.vue?vue&type=template&id=db2d1330&scoped=true\"\nimport script from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderButton.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderButton.vue?vue&type=style&index=0&id=db2d1330&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"db2d1330\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeader.vue?vue&type=template&id=68d3de81&scoped=true\"\nimport script from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeader.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeader.vue?vue&type=style&index=0&id=68d3de81&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"68d3de81\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list\",attrs:{\"data-cy-files-list\":\"\"}},[_c('div',{ref:\"before\",staticClass:\"files-list__before\"},[_vm._t(\"before\")],2),_vm._v(\" \"),(!!_vm.$scopedSlots['header-overlay'])?_c('div',{staticClass:\"files-list__thead-overlay\"},[_vm._t(\"header-overlay\")],2):_vm._e(),_vm._v(\" \"),_c('table',{staticClass:\"files-list__table\",class:{ 'files-list__table--with-thead-overlay': !!_vm.$scopedSlots['header-overlay'] }},[(_vm.caption)?_c('caption',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.caption)+\"\\n\\t\\t\")]):_vm._e(),_vm._v(\" \"),_c('thead',{ref:\"thead\",staticClass:\"files-list__thead\",attrs:{\"data-cy-files-list-thead\":\"\"}},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('tbody',{staticClass:\"files-list__tbody\",class:_vm.gridMode ? 'files-list__tbody--grid' : 'files-list__tbody--list',style:(_vm.tbodyStyle),attrs:{\"data-cy-files-list-tbody\":\"\"}},_vm._l((_vm.renderedItems),function({key, item},i){return _c(_vm.dataComponent,_vm._b({key:key,tag:\"component\",attrs:{\"source\":item,\"index\":i}},'component',_vm.extraProps,false))}),1),_vm._v(\" \"),_c('tfoot',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isReady),expression:\"isReady\"}],staticClass:\"files-list__tfoot\",attrs:{\"data-cy-files-list-tfoot\":\"\"}},[_vm._t(\"footer\")],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VirtualList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./VirtualList.vue?vue&type=template&id=15cca403\"\nimport script from \"./VirtualList.vue?vue&type=script&lang=ts\"\nexport * from \"./VirtualList.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"files-list__column files-list__row-actions-batch\"},[_c('NcActions',{ref:\"actionsMenu\",attrs:{\"disabled\":!!_vm.loading || _vm.areSomeNodesLoading,\"force-name\":true,\"inline\":_vm.inlineActions,\"menu-name\":_vm.inlineActions <= 1 ? _vm.t('files', 'Actions') : null,\"open\":_vm.openedMenu},on:{\"update:open\":function($event){_vm.openedMenu=$event}}},_vm._l((_vm.enabledActions),function(action){return _c('NcActionButton',{key:action.id,class:'files-list__row-actions-batch-' + action.id,on:{\"click\":function($event){return _vm.onActionClick(action)}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [(_vm.loading === action.id)?_c('NcLoadingIcon',{attrs:{\"size\":18}}):_c('NcIconSvgWrapper',{attrs:{\"svg\":action.iconSvgInline(_vm.nodes, _vm.currentView)}})]},proxy:true}],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(action.displayName(_vm.nodes, _vm.currentView))+\"\\n\\t\\t\")])}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListTableHeaderActions.vue?vue&type=template&id=91476734&scoped=true\"\nimport script from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListTableHeaderActions.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListTableHeaderActions.vue?vue&type=style&index=0&id=91476734&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"91476734\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('VirtualList',{ref:\"table\",attrs:{\"data-component\":_vm.userConfig.grid_view ? _vm.FileEntryGrid : _vm.FileEntry,\"data-key\":'source',\"data-sources\":_vm.nodes,\"grid-mode\":_vm.userConfig.grid_view,\"extra-props\":{\n\t\tisMtimeAvailable: _vm.isMtimeAvailable,\n\t\tisSizeAvailable: _vm.isSizeAvailable,\n\t\tnodes: _vm.nodes,\n\t\tfilesListWidth: _vm.filesListWidth,\n\t},\"scroll-to-index\":_vm.scrollToIndex,\"caption\":_vm.caption},scopedSlots:_vm._u([(!_vm.isNoneSelected)?{key:\"header-overlay\",fn:function(){return [_c('span',{staticClass:\"files-list__selected\"},[_vm._v(_vm._s(_vm.t('files', '{count} selected', { count: _vm.selectedNodes.length })))]),_vm._v(\" \"),_c('FilesListTableHeaderActions',{attrs:{\"current-view\":_vm.currentView,\"selected-nodes\":_vm.selectedNodes}})]},proxy:true}:null,{key:\"before\",fn:function(){return _vm._l((_vm.sortedHeaders),function(header){return _c('FilesListHeader',{key:header.id,attrs:{\"current-folder\":_vm.currentFolder,\"current-view\":_vm.currentView,\"header\":header}})})},proxy:true},{key:\"header\",fn:function(){return [_c('FilesListTableHeader',{ref:\"thead\",attrs:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes}})]},proxy:true},{key:\"footer\",fn:function(){return [_c('FilesListTableFooter',{attrs:{\"files-list-width\":_vm.filesListWidth,\"is-mtime-available\":_vm.isMtimeAvailable,\"is-size-available\":_vm.isSizeAvailable,\"nodes\":_vm.nodes,\"summary\":_vm.summary}})]},proxy:true}],null,true)})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesListVirtual.vue?vue&type=template&id=91ee9762&scoped=true\"\nimport script from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesListVirtual.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesListVirtual.vue?vue&type=style&index=0&id=91ee9762&prod&scoped=true&lang=scss\"\nimport style1 from \"./FilesListVirtual.vue?vue&type=style&index=1&id=91ee9762&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"91ee9762\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./TrayArrowDown.vue?vue&type=script&lang=js\"","<template>\n <span v-bind=\"$attrs\"\n :aria-hidden=\"title ? null : 'true'\"\n :aria-label=\"title\"\n class=\"material-design-icon tray-arrow-down-icon\"\n role=\"img\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"TrayArrowDownIcon\",\n emits: ['click'],\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import { render, staticRenderFns } from \"./TrayArrowDown.vue?vue&type=template&id=5dbf2618\"\nimport script from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\nexport * from \"./TrayArrowDown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',_vm._b({staticClass:\"material-design-icon tray-arrow-down-icon\",attrs:{\"aria-hidden\":_vm.title ? null : 'true',\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M2 12H4V17H20V12H22V17C22 18.11 21.11 19 20 19H4C2.9 19 2 18.11 2 17V12M12 15L17.55 9.54L16.13 8.13L13 11.25V2H11V11.25L7.88 8.13L6.46 9.55L12 15Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=script&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.dragover),expression:\"dragover\"}],staticClass:\"files-list__drag-drop-notice\",attrs:{\"data-cy-files-drag-drop-area\":\"\"},on:{\"drop\":_vm.onDrop}},[_c('div',{staticClass:\"files-list__drag-drop-notice-wrapper\"},[(_vm.canUpload && !_vm.isQuotaExceeded)?[_c('TrayArrowDownIcon',{attrs:{\"size\":48}}),_vm._v(\" \"),_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.t('files', 'Drag and drop files here to upload'))+\"\\n\\t\\t\\t\")])]:[_c('h3',{staticClass:\"files-list-drag-drop-notice__title\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_vm.cantUploadLabel)+\"\\n\\t\\t\\t\")])]],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true\";\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./DragAndDropNotice.vue?vue&type=template&id=06f3ea08&scoped=true\"\nimport script from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nexport * from \"./DragAndDropNotice.vue?vue&type=script&lang=ts\"\nimport style0 from \"./DragAndDropNotice.vue?vue&type=style&index=0&id=06f3ea08&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"06f3ea08\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=script&lang=ts\"","/**\n * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { t } from '@nextcloud/l10n';\n/**\n * Whether error is a WebDAVClientError\n * @param error - Any exception\n * @return {boolean} - Whether error is a WebDAVClientError\n */\nfunction isWebDAVClientError(error) {\n return error instanceof Error && 'status' in error && 'response' in error;\n}\n/**\n * Get a localized error message from webdav request\n * @param error - An exception from webdav request\n * @return {string} Localized error message for end user\n */\nexport function humanizeWebDAVError(error) {\n if (error instanceof Error) {\n if (isWebDAVClientError(error)) {\n const status = error.status || error.response?.status || 0;\n if ([400, 404, 405].includes(status)) {\n return t('files', 'Folder not found');\n }\n else if (status === 403) {\n return t('files', 'This operation is forbidden');\n }\n else if (status === 500) {\n return t('files', 'This directory is unavailable, please check the logs or contact the administrator');\n }\n else if (status === 503) {\n return t('files', 'Storage is temporarily not available');\n }\n }\n return t('files', 'Unexpected error: {error}', { error: error.message });\n }\n return t('files', 'Unknown error');\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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=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/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/sass-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./FilesList.vue?vue&type=template&id=575ac9fe&scoped=true\"\nimport script from \"./FilesList.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilesList.vue?vue&type=style&index=0&id=575ac9fe&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"575ac9fe\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??clonedRuleSet-4.use[1]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FilesApp.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilesApp.vue?vue&type=template&id=11e0f2dd\"\nimport script from \"./FilesApp.vue?vue&type=script&lang=ts\"\nexport * from \"./FilesApp.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { PiniaVuePlugin } from 'pinia';\nimport { getRequestToken } from '@nextcloud/auth';\nimport Vue from 'vue';\nimport { pinia } from './store/index.ts';\nimport router from './router/router';\nimport RouterService from './services/RouterService';\nimport SettingsModel from './models/Setting.js';\nimport SettingsService from './services/Settings.js';\nimport FilesApp from './FilesApp.vue';\n// @ts-expect-error __webpack_nonce__ is injected by webpack\n__webpack_nonce__ = btoa(getRequestToken());\n// Init private and public Files namespace\nwindow.OCA.Files = window.OCA.Files ?? {};\nwindow.OCP.Files = window.OCP.Files ?? {};\n// Expose router\nconst Router = new RouterService(router);\nObject.assign(window.OCP.Files, { Router });\n// Init Pinia store\nVue.use(PiniaVuePlugin);\n// Init Files App Settings Service\nconst Settings = new SettingsService();\nObject.assign(window.OCA.Files, { Settings });\nObject.assign(window.OCA.Files.Settings, { Setting: SettingsModel });\nconst FilesAppVue = Vue.extend(FilesApp);\nnew FilesAppVue({\n router,\n pinia,\n}).$mount('#content');\n","export default class RouterService {\n _router;\n constructor(router) {\n this._router = router;\n }\n get name() {\n return this._router.currentRoute.name;\n }\n get query() {\n return this._router.currentRoute.query || {};\n }\n get params() {\n return this._router.currentRoute.params || {};\n }\n /**\n * Trigger a route change on the files app\n *\n * @param path the url path, eg: '/trashbin?dir=/Deleted'\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goTo(path, replace = false) {\n return this._router.push({\n path,\n replace,\n });\n }\n /**\n * Trigger a route change on the files App\n *\n * @param name the route name\n * @param params the route parameters\n * @param query the url query parameters\n * @param replace replace the current history\n * @see https://router.vuejs.org/guide/essentials/navigation.html#navigate-to-a-different-location\n */\n goToRoute(name, params, query, replace) {\n return this._router.push({\n name,\n query,\n params,\n replace,\n });\n }\n}\n","/**\n * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class Settings {\n\n\t_settings\n\n\tconstructor() {\n\t\tthis._settings = []\n\t\tconsole.debug('OCA.Files.Settings initialized')\n\t}\n\n\t/**\n\t * Register a new setting\n\t *\n\t * @since 19.0.0\n\t * @param {OCA.Files.Settings.Setting} view element to add to settings\n\t * @return {boolean} whether registering was successful\n\t */\n\tregister(view) {\n\t\tif (this._settings.filter(e => e.name === view.name).length > 0) {\n\t\t\tconsole.error('A setting with the same name is already registered')\n\t\t\treturn false\n\t\t}\n\t\tthis._settings.push(view)\n\t\treturn true\n\t}\n\n\t/**\n\t * All settings elements\n\t *\n\t * @return {OCA.Files.Settings.Setting[]} All currently registered settings\n\t */\n\tget settings() {\n\t\treturn this._settings\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 Gary Kim <gary@garykim.dev>\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class Setting {\n\n\t_close\n\t_el\n\t_name\n\t_open\n\n\t/**\n\t * Create a new files app setting\n\t *\n\t * @since 19.0.0\n\t * @param {string} name the name of this setting\n\t * @param {object} component the component\n\t * @param {Function} component.el function that returns an unmounted dom element to be added\n\t * @param {Function} [component.open] callback for when setting is added\n\t * @param {Function} [component.close] callback for when setting is closed\n\t */\n\tconstructor(name, { el, open, close }) {\n\t\tthis._name = name\n\t\tthis._el = el\n\t\tthis._open = open\n\t\tthis._close = close\n\n\t\tif (typeof this._open !== 'function') {\n\t\t\tthis._open = () => {}\n\t\t}\n\n\t\tif (typeof this._close !== 'function') {\n\t\t\tthis._close = () => {}\n\t\t}\n\t}\n\n\tget name() {\n\t\treturn this._name\n\t}\n\n\tget el() {\n\t\treturn this._el\n\t}\n\n\tget open() {\n\t\treturn this._open\n\t}\n\n\tget close() {\n\t\treturn this._close\n\t}\n\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../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, `.upload-picker[data-v-c5517ef8] {\n display: inline-flex;\n align-items: center;\n height: var(--default-clickable-area);\n}\n.upload-picker__progress[data-v-c5517ef8] {\n width: 200px;\n max-width: 0;\n transition: max-width var(--animation-quick) ease-in-out;\n margin-top: 8px;\n}\n.upload-picker__progress p[data-v-c5517ef8] {\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\n max-width: 200px;\n margin-right: 20px;\n margin-left: 8px;\n}\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\n animation: breathing-c5517ef8 3s ease-out infinite normal;\n}\n@keyframes breathing-c5517ef8 {\n0% {\n opacity: 0.5;\n}\n25% {\n opacity: 1;\n}\n60% {\n opacity: 0.5;\n}\n100% {\n opacity: 0.5;\n}\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/@nextcloud/upload/dist/assets/index-7UBhRcxV.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,qCAAqC;AACvC;AACA;EACE,YAAY;EACZ,YAAY;EACZ,wDAAwD;EACxD,eAAe;AACjB;AACA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,uBAAuB;AACzB;AACA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;AAClB;AACA;EACE,yDAAyD;AAC3D;AACA;AACA;IACI,YAAY;AAChB;AACA;IACI,UAAU;AACd;AACA;IACI,YAAY;AAChB;AACA;IACI,YAAY;AAChB;AACA\",\"sourcesContent\":[\".upload-picker[data-v-c5517ef8] {\\n display: inline-flex;\\n align-items: center;\\n height: var(--default-clickable-area);\\n}\\n.upload-picker__progress[data-v-c5517ef8] {\\n width: 200px;\\n max-width: 0;\\n transition: max-width var(--animation-quick) ease-in-out;\\n margin-top: 8px;\\n}\\n.upload-picker__progress p[data-v-c5517ef8] {\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n}\\n.upload-picker--uploading .upload-picker__progress[data-v-c5517ef8] {\\n max-width: 200px;\\n margin-right: 20px;\\n margin-left: 8px;\\n}\\n.upload-picker--paused .upload-picker__progress[data-v-c5517ef8] {\\n animation: breathing-c5517ef8 3s ease-out infinite normal;\\n}\\n@keyframes breathing-c5517ef8 {\\n0% {\\n opacity: 0.5;\\n}\\n25% {\\n opacity: 1;\\n}\\n60% {\\n opacity: 0.5;\\n}\\n100% {\\n opacity: 0.5;\\n}\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__breadcrumbs[data-v-20858d70]{flex:1 1 100% !important;width:100%;height:100%;margin-block:0;margin-inline:10px;min-width:0}.files-list__breadcrumbs[data-v-20858d70] a{cursor:pointer !important}.files-list__breadcrumbs--with-progress[data-v-20858d70]{flex-direction:column !important;align-items:flex-start !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/BreadCrumbs.vue\"],\"names\":[],\"mappings\":\"AACA,0CAEC,wBAAA,CACA,UAAA,CACA,WAAA,CACA,cAAA,CACA,kBAAA,CACA,WAAA,CAGC,6CACC,yBAAA,CAIF,yDACC,gCAAA,CACA,iCAAA\",\"sourcesContent\":[\"\\n.files-list__breadcrumbs {\\n\\t// Take as much space as possible\\n\\tflex: 1 1 100% !important;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tmargin-block: 0;\\n\\tmargin-inline: 10px;\\n\\tmin-width: 0;\\n\\n\\t:deep() {\\n\\t\\ta {\\n\\t\\t\\tcursor: pointer !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&--with-progress {\\n\\t\\tflex-direction: column !important;\\n\\t\\talign-items: flex-start !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__drag-drop-notice[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;width:100%;min-height:113px;margin:0;user-select:none;color:var(--color-text-maxcontrast);background-color:var(--color-main-background);border-color:#000}.files-list__drag-drop-notice h3[data-v-06f3ea08]{margin-left:16px;color:inherit}.files-list__drag-drop-notice-wrapper[data-v-06f3ea08]{display:flex;align-items:center;justify-content:center;height:15vh;max-height:70%;padding:0 5vw;border:2px var(--color-border-dark) dashed;border-radius:var(--border-radius-large)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropNotice.vue\"],\"names\":[],\"mappings\":\"AACA,+CACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CAEA,gBAAA,CACA,QAAA,CACA,gBAAA,CACA,mCAAA,CACA,6CAAA,CACA,iBAAA,CAEA,kDACC,gBAAA,CACA,aAAA,CAGD,uDACC,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,WAAA,CACA,cAAA,CACA,aAAA,CACA,0CAAA,CACA,wCAAA\",\"sourcesContent\":[\"\\n.files-list__drag-drop-notice {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\t// Breadcrumbs height + row thead height\\n\\tmin-height: calc(58px + 55px);\\n\\tmargin: 0;\\n\\tuser-select: none;\\n\\tcolor: var(--color-text-maxcontrast);\\n\\tbackground-color: var(--color-main-background);\\n\\tborder-color: black;\\n\\n\\th3 {\\n\\t\\tmargin-left: 16px;\\n\\t\\tcolor: inherit;\\n\\t}\\n\\n\\t&-wrapper {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\theight: 15vh;\\n\\t\\tmax-height: 70%;\\n\\t\\tpadding: 0 5vw;\\n\\t\\tborder: 2px var(--color-border-dark) dashed;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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-drag-image{position:absolute;top:-9999px;left:-9999px;display:flex;overflow:hidden;align-items:center;height:44px;padding:6px 12px;background:var(--color-main-background)}.files-list-drag-image__icon,.files-list-drag-image .files-list__row-icon{display:flex;overflow:hidden;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius)}.files-list-drag-image__icon{overflow:visible;margin-right:12px}.files-list-drag-image__icon img{max-width:100%;max-height:100%}.files-list-drag-image__icon .material-design-icon{color:var(--color-text-maxcontrast)}.files-list-drag-image__icon .material-design-icon.folder-icon{color:var(--color-primary-element)}.files-list-drag-image__icon>span{display:flex}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon{margin-top:6px;margin-left:-26px}.files-list-drag-image__icon>span .files-list__row-icon+.files-list__row-icon+.files-list__row-icon{margin-top:12px}.files-list-drag-image__icon>span:not(:empty)+*{display:none}.files-list-drag-image__name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/DragAndDropPreview.vue\"],\"names\":[],\"mappings\":\"AAIA,uBACC,iBAAA,CACA,WAAA,CACA,YAAA,CACA,YAAA,CACA,eAAA,CACA,kBAAA,CACA,WAAA,CACA,gBAAA,CACA,uCAAA,CAEA,0EAEC,YAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CACA,UAAA,CACA,WAAA,CACA,kCAAA,CAGD,6BACC,gBAAA,CACA,iBAAA,CAEA,iCACC,cAAA,CACA,eAAA,CAGD,mDACC,mCAAA,CACA,+DACC,kCAAA,CAKF,kCACC,YAAA,CAGA,8EACC,cA9CU,CA+CV,iBAAA,CACA,oGACC,eAAA,CAKF,gDACC,YAAA,CAKH,6BACC,eAAA,CACA,kBAAA,CACA,sBAAA\",\"sourcesContent\":[\"\\n$size: 32px;\\n$stack-shift: 6px;\\n\\n.files-list-drag-image {\\n\\tposition: absolute;\\n\\ttop: -9999px;\\n\\tleft: -9999px;\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\talign-items: center;\\n\\theight: 44px;\\n\\tpadding: 6px 12px;\\n\\tbackground: var(--color-main-background);\\n\\n\\t&__icon,\\n\\t.files-list__row-icon {\\n\\t\\tdisplay: flex;\\n\\t\\toverflow: hidden;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 32px;\\n\\t\\theight: 32px;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t&__icon {\\n\\t\\toverflow: visible;\\n\\t\\tmargin-right: 12px;\\n\\n\\t\\timg {\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tmax-height: 100%;\\n\\t\\t}\\n\\n\\t\\t.material-design-icon {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t&.folder-icon {\\n\\t\\t\\t\\tcolor: var(--color-primary-element);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Previews container\\n\\t\\t> span {\\n\\t\\t\\tdisplay: flex;\\n\\n\\t\\t\\t// Stack effect if more than one element\\n\\t\\t\\t.files-list__row-icon + .files-list__row-icon {\\n\\t\\t\\t\\tmargin-top: $stack-shift;\\n\\t\\t\\t\\tmargin-left: $stack-shift - $size;\\n\\t\\t\\t\\t& + .files-list__row-icon {\\n\\t\\t\\t\\t\\tmargin-top: $stack-shift * 2;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t// If we have manually clone the preview,\\n\\t\\t\\t// let's hide any fallback icons\\n\\t\\t\\t&:not(:empty) + * {\\n\\t\\t\\t\\tdisplay: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__name {\\n\\t\\toverflow: hidden;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.favorite-marker-icon[data-v-42ea6dd4]{color:var(--color-favorite);min-width:unset !important;min-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg{width:26px !important;height:26px !important;max-width:unset !important;max-height:unset !important}.favorite-marker-icon[data-v-42ea6dd4] svg path{stroke:var(--color-main-background);stroke-width:8px;stroke-linejoin:round;paint-order:stroke}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FavoriteIcon.vue\"],\"names\":[],\"mappings\":\"AACA,uCACC,2BAAA,CAEA,0BAAA,CACG,2BAAA,CAGF,4CAEC,qBAAA,CACA,sBAAA,CAGA,0BAAA,CACA,2BAAA,CAGA,iDACC,mCAAA,CACA,gBAAA,CACA,qBAAA,CACA,kBAAA\",\"sourcesContent\":[\"\\n.favorite-marker-icon {\\n\\tcolor: var(--color-favorite);\\n\\t// Override NcIconSvgWrapper defaults (clickable area)\\n\\tmin-width: unset !important;\\n min-height: unset !important;\\n\\n\\t:deep() {\\n\\t\\tsvg {\\n\\t\\t\\t// We added a stroke for a11y so we must increase the size to include the stroke\\n\\t\\t\\twidth: 26px !important;\\n\\t\\t\\theight: 26px !important;\\n\\n\\t\\t\\t// Override NcIconSvgWrapper defaults of 20px\\n\\t\\t\\tmax-width: unset !important;\\n\\t\\t\\tmax-height: unset !important;\\n\\n\\t\\t\\t// Sow a border around the icon for better contrast\\n\\t\\t\\tpath {\\n\\t\\t\\t\\tstroke: var(--color-main-background);\\n\\t\\t\\t\\tstroke-width: 8px;\\n\\t\\t\\t\\tstroke-linejoin: round;\\n\\t\\t\\t\\tpaint-order: stroke;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `main.app-content[style*=mouse-pos-x] .v-popper__popper{transform:translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper[data-popper-placement=top]{transform:translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important}main.app-content[style*=mouse-pos-x] .v-popper__popper .v-popper__arrow-container{display:none}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAGA,uDACC,6EAAA,CAGA,kFAEC,iGAAA,CAGD,kFACC,YAAA\",\"sourcesContent\":[\"\\n// Allow right click to define the position of the menu\\n// only if defined\\nmain.app-content[style*=\\\"mouse-pos-x\\\"] .v-popper__popper {\\n\\ttransform: translate3d(var(--mouse-pos-x), var(--mouse-pos-y), 0px) !important;\\n\\n\\t// If the menu is too close to the bottom, we move it up\\n\\t&[data-popper-placement=\\\"top\\\"] {\\n\\t\\t// 34px added to align with the top of the cursor\\n\\t\\ttransform: translate3d(var(--mouse-pos-x), calc(var(--mouse-pos-y) - 50vh + 34px), 0px) !important;\\n\\t}\\n\\t// Hide arrow if floating\\n\\t.v-popper__arrow-container {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__text{color:var(--color-primary-element)}[data-v-7a49ca87] .button-vue--icon-and-text .button-vue__icon{color:var(--color-primary-element)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryActions.vue\"],\"names\":[],\"mappings\":\"AAEC,+DACC,kCAAA,CAED,+DACC,kCAAA\",\"sourcesContent\":[\"\\n:deep(.button-vue--icon-and-text, .files-list__row-action-sharing-status) {\\n\\t.button-vue__text {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n\\t.button-vue__icon {\\n\\t\\tcolor: var(--color-primary-element);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `button.files-list__row-name-link[data-v-1b7d6a24]{background-color:unset;border:none;font-weight:normal}button.files-list__row-name-link[data-v-1b7d6a24]:active{background-color:unset !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FileEntry/FileEntryName.vue\"],\"names\":[],\"mappings\":\"AACA,kDACC,sBAAA,CACA,WAAA,CACA,kBAAA,CAEA,yDAEC,iCAAA\",\"sourcesContent\":[\"\\nbutton.files-list__row-name-link {\\n\\tbackground-color: unset;\\n\\tborder: none;\\n\\tfont-weight: normal;\\n\\n\\t&:active {\\n\\t\\t// No active styles - handled by the row entry\\n\\t\\tbackground-color: unset !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `tr[data-v-23b7c4eb]{margin-bottom:max(25vh,var(--body-container-margin));border-top:1px solid var(--color-border);background-color:rgba(0,0,0,0) !important;border-bottom:none !important}tr td[data-v-23b7c4eb]{user-select:none;color:var(--color-text-maxcontrast) !important}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableFooter.vue\"],\"names\":[],\"mappings\":\"AAEA,oBACC,oDAAA,CACA,wCAAA,CAEA,yCAAA,CACA,6BAAA,CAEA,uBACC,gBAAA,CAEA,8CAAA\",\"sourcesContent\":[\"\\n// Scoped row\\ntr {\\n\\tmargin-bottom: max(25vh, var(--body-container-margin));\\n\\tborder-top: 1px solid var(--color-border);\\n\\t// Prevent hover effect on the whole row\\n\\tbackground-color: transparent !important;\\n\\tborder-bottom: none !important;\\n\\n\\ttd {\\n\\t\\tuser-select: none;\\n\\t\\t// Make sure the cell colors don't apply to column headers\\n\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__column[data-v-68d3de81]{user-select:none;color:var(--color-text-maxcontrast) !important}.files-list__column--sortable[data-v-68d3de81]{cursor:pointer}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeader.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,gBAAA,CAEA,8CAAA,CAEA,+CACC,cAAA\",\"sourcesContent\":[\"\\n.files-list__column {\\n\\tuser-select: none;\\n\\t// Make sure the cell colors don't apply to column headers\\n\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t&--sortable {\\n\\t\\tcursor: pointer;\\n\\t}\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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-actions-batch[data-v-91476734]{flex:1 1 100% !important;max-width:100%}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderActions.vue\"],\"names\":[],\"mappings\":\"AACA,gDACC,wBAAA,CACA,cAAA\",\"sourcesContent\":[\"\\n.files-list__row-actions-batch {\\n\\tflex: 1 1 100% !important;\\n\\tmax-width: 100%;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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__column-sort-button[data-v-db2d1330]{margin:0 calc(var(--cell-margin)*-1);min-width:calc(100% - 3*var(--cell-margin)) !important}.files-list__column-sort-button-text[data-v-db2d1330]{color:var(--color-text-maxcontrast);font-weight:normal}.files-list__column-sort-button-icon[data-v-db2d1330]{color:var(--color-text-maxcontrast);opacity:0;transition:opacity var(--animation-quick);inset-inline-start:-10px}.files-list__column-sort-button--size .files-list__column-sort-button-icon[data-v-db2d1330]{inset-inline-start:10px}.files-list__column-sort-button--active .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:hover .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:focus .files-list__column-sort-button-icon[data-v-db2d1330],.files-list__column-sort-button:active .files-list__column-sort-button-icon[data-v-db2d1330]{opacity:1}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListTableHeaderButton.vue\"],\"names\":[],\"mappings\":\"AACA,iDAEC,oCAAA,CACA,sDAAA,CAEA,sDACC,mCAAA,CACA,kBAAA,CAGD,sDACC,mCAAA,CACA,SAAA,CACA,yCAAA,CACA,wBAAA,CAGD,4FACC,uBAAA,CAGD,mXAIC,SAAA\",\"sourcesContent\":[\"\\n.files-list__column-sort-button {\\n\\t// Compensate for cells margin\\n\\tmargin: 0 calc(var(--cell-margin) * -1);\\n\\tmin-width: calc(100% - 3 * var(--cell-margin))!important;\\n\\n\\t&-text {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\tfont-weight: normal;\\n\\t}\\n\\n\\t&-icon {\\n\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\topacity: 0;\\n\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\tinset-inline-start: -10px;\\n\\t}\\n\\n\\t&--size &-icon {\\n\\t\\tinset-inline-start: 10px;\\n\\t}\\n\\n\\t&--active &-icon,\\n\\t&:hover &-icon,\\n\\t&:focus &-icon,\\n\\t&:active &-icon {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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[data-v-91ee9762]{--row-height: 55px;--cell-margin: 14px;--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);--checkbox-size: 24px;--clickable-area: 44px;--icon-preview-size: 32px;overflow:auto;height:100%;will-change:scroll-position}.files-list[data-v-91ee9762] tbody{will-change:padding;contain:layout paint style;display:flex;flex-direction:column;width:100%;position:relative}.files-list[data-v-91ee9762] tbody tr{contain:strict}.files-list[data-v-91ee9762] tbody tr:hover,.files-list[data-v-91ee9762] tbody tr:focus{background-color:var(--color-background-dark)}.files-list[data-v-91ee9762] .files-list__before{display:flex;flex-direction:column}.files-list[data-v-91ee9762] .files-list__selected{padding-right:12px;white-space:nowrap}.files-list[data-v-91ee9762] .files-list__table{display:block}.files-list[data-v-91ee9762] .files-list__table.files-list__table--with-thead-overlay{margin-top:calc(-1*var(--row-height))}.files-list[data-v-91ee9762] .files-list__thead-overlay{position:sticky;top:0;margin-left:var(--row-height);z-index:20;display:flex;align-items:center;background-color:var(--color-main-background);border-bottom:1px solid var(--color-border);height:var(--row-height)}.files-list[data-v-91ee9762] .files-list__thead,.files-list[data-v-91ee9762] .files-list__tfoot{display:flex;flex-direction:column;width:100%;background-color:var(--color-main-background)}.files-list[data-v-91ee9762] .files-list__thead{position:sticky;z-index:10;top:0}.files-list[data-v-91ee9762] tr{position:relative;display:flex;align-items:center;width:100%;user-select:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;user-select:none;height:var(--row-height)}.files-list[data-v-91ee9762] td,.files-list[data-v-91ee9762] th{display:flex;align-items:center;flex:0 0 auto;justify-content:left;width:var(--row-height);height:var(--row-height);margin:0;padding:0;color:var(--color-text-maxcontrast);border:none}.files-list[data-v-91ee9762] td span,.files-list[data-v-91ee9762] th span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.files-list[data-v-91ee9762] .files-list__row--failed{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1;background:var(--color-error)}.files-list[data-v-91ee9762] .files-list__row-checkbox{justify-content:center}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch{display:flex;justify-content:center;--icon-size: var(--checkbox-size)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch label.checkbox-radio-switch__label{width:var(--clickable-area);height:var(--clickable-area);margin:0;padding:calc((var(--clickable-area) - var(--checkbox-size))/2)}.files-list[data-v-91ee9762] .files-list__row-checkbox .checkbox-radio-switch .checkbox-radio-switch__icon{margin:0 !important}.files-list[data-v-91ee9762] .files-list__row:hover,.files-list[data-v-91ee9762] .files-list__row:focus,.files-list[data-v-91ee9762] .files-list__row:active,.files-list[data-v-91ee9762] .files-list__row--active,.files-list[data-v-91ee9762] .files-list__row--dragover{background-color:var(--color-background-hover);--color-text-maxcontrast: var(--color-main-text)}.files-list[data-v-91ee9762] .files-list__row:hover>*,.files-list[data-v-91ee9762] .files-list__row:focus>*,.files-list[data-v-91ee9762] .files-list__row:active>*,.files-list[data-v-91ee9762] .files-list__row--active>*,.files-list[data-v-91ee9762] .files-list__row--dragover>*{--color-border: var(--color-border-dark)}.files-list[data-v-91ee9762] .files-list__row:hover .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:focus .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row:active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--active .favorite-marker-icon svg path,.files-list[data-v-91ee9762] .files-list__row--dragover .favorite-marker-icon svg path{stroke:var(--color-background-hover)}.files-list[data-v-91ee9762] .files-list__row--dragover *{pointer-events:none}.files-list[data-v-91ee9762] .files-list__row-icon{position:relative;display:flex;overflow:visible;align-items:center;flex:0 0 var(--icon-preview-size);justify-content:center;width:var(--icon-preview-size);height:100%;margin-right:var(--checkbox-padding);color:var(--color-primary-element)}.files-list[data-v-91ee9762] .files-list__row-icon *{cursor:pointer}.files-list[data-v-91ee9762] .files-list__row-icon>span{justify-content:flex-start}.files-list[data-v-91ee9762] .files-list__row-icon>span:not(.files-list__row-icon-favorite) svg{width:var(--icon-preview-size);height:var(--icon-preview-size)}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon{margin:-3px}.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-icon svg,.files-list[data-v-91ee9762] .files-list__row-icon>span.folder-open-icon svg{width:calc(var(--icon-preview-size) + 6px);height:calc(var(--icon-preview-size) + 6px)}.files-list[data-v-91ee9762] .files-list__row-icon-preview{overflow:hidden;width:var(--icon-preview-size);height:var(--icon-preview-size);border-radius:var(--border-radius);object-fit:contain;object-position:center}.files-list[data-v-91ee9762] .files-list__row-icon-preview:not(.files-list__row-icon-preview--loaded){background:var(--color-loading-dark)}.files-list[data-v-91ee9762] .files-list__row-icon-favorite{position:absolute;top:0px;right:-10px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay{position:absolute;max-height:calc(var(--icon-preview-size)*.5);max-width:calc(var(--icon-preview-size)*.5);color:var(--color-primary-element-text);margin-top:2px}.files-list[data-v-91ee9762] .files-list__row-icon-overlay--file{color:var(--color-main-text);background:var(--color-main-background);border-radius:100%}.files-list[data-v-91ee9762] .files-list__row-name{overflow:hidden;flex:1 1 auto}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link{display:flex;align-items:center;text-align:start;width:100%;height:100%;min-width:0;margin:0}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus-visible{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus .files-list__row-name-text{outline:var(--border-width-input-focused) solid var(--color-main-text) !important;border-radius:var(--border-radius-element)}.files-list[data-v-91ee9762] .files-list__row-name button.files-list__row-name-link:focus:not(:focus-visible) .files-list__row-name-text{outline:none !important}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-text{color:var(--color-main-text);padding:var(--default-grid-baseline) calc(2*var(--default-grid-baseline));margin-left:-10px;display:inline-flex}.files-list[data-v-91ee9762] .files-list__row-name .files-list__row-name-ext{color:var(--color-text-maxcontrast);overflow:visible}.files-list[data-v-91ee9762] .files-list__row-rename{width:100%;max-width:600px}.files-list[data-v-91ee9762] .files-list__row-rename input{width:100%;margin-left:-8px;padding:2px 6px;border-width:2px}.files-list[data-v-91ee9762] .files-list__row-rename input:invalid{border-color:var(--color-error);color:red}.files-list[data-v-91ee9762] .files-list__row-actions{width:auto}.files-list[data-v-91ee9762] .files-list__row-actions~td,.files-list[data-v-91ee9762] .files-list__row-actions~th{margin:0 var(--cell-margin)}.files-list[data-v-91ee9762] .files-list__row-actions button .button-vue__text{font-weight:normal}.files-list[data-v-91ee9762] .files-list__row-action--inline{margin-right:7px}.files-list[data-v-91ee9762] .files-list__row-mtime,.files-list[data-v-91ee9762] .files-list__row-size{color:var(--color-text-maxcontrast)}.files-list[data-v-91ee9762] .files-list__row-size{width:calc(var(--row-height)*1.5);justify-content:flex-end}.files-list[data-v-91ee9762] .files-list__row-mtime{width:calc(var(--row-height)*2)}.files-list[data-v-91ee9762] .files-list__row-column-custom{width:calc(var(--row-height)*2)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AACA,6BACC,kBAAA,CACA,mBAAA,CAEA,wEAAA,CACA,qBAAA,CACA,sBAAA,CACA,yBAAA,CAEA,aAAA,CACA,WAAA,CACA,2BAAA,CAIC,oCACC,mBAAA,CACA,0BAAA,CACA,YAAA,CACA,qBAAA,CACA,UAAA,CAEA,iBAAA,CAGA,uCACC,cAAA,CACA,0FAEC,6CAAA,CAMH,kDACC,YAAA,CACA,qBAAA,CAGD,oDACC,kBAAA,CACA,kBAAA,CAGD,iDACC,aAAA,CAEA,uFAEC,qCAAA,CAIF,yDAEC,eAAA,CACA,KAAA,CAEA,6BAAA,CAEA,UAAA,CAEA,YAAA,CACA,kBAAA,CAGA,6CAAA,CACA,2CAAA,CACA,wBAAA,CAGD,kGAEC,YAAA,CACA,qBAAA,CACA,UAAA,CACA,6CAAA,CAKD,iDAEC,eAAA,CACA,UAAA,CACA,KAAA,CAGD,iCACC,iBAAA,CACA,YAAA,CACA,kBAAA,CACA,UAAA,CACA,gBAAA,CACA,2CAAA,CACA,qBAAA,CACA,gBAAA,CACA,wBAAA,CAGD,kEACC,YAAA,CACA,kBAAA,CACA,aAAA,CACA,oBAAA,CACA,uBAAA,CACA,wBAAA,CACA,QAAA,CACA,SAAA,CACA,mCAAA,CACA,WAAA,CAKA,4EACC,eAAA,CACA,kBAAA,CACA,sBAAA,CAIF,uDACC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CACA,6BAAA,CAGD,wDACC,sBAAA,CAEA,+EACC,YAAA,CACA,sBAAA,CAEA,iCAAA,CAEA,kHACC,2BAAA,CACA,4BAAA,CACA,QAAA,CACA,8DAAA,CAGD,4GACC,mBAAA,CAMF,gRAEC,8CAAA,CAGA,gDAAA,CACA,0RACC,wCAAA,CAID,2aACC,oCAAA,CAIF,2DAEC,mBAAA,CAKF,oDACC,iBAAA,CACA,YAAA,CACA,gBAAA,CACA,kBAAA,CAEA,iCAAA,CACA,sBAAA,CACA,8BAAA,CACA,WAAA,CAEA,oCAAA,CACA,kCAAA,CAGA,sDACC,cAAA,CAGD,yDACC,0BAAA,CAEA,iGACC,8BAAA,CACA,+BAAA,CAID,+IAEC,WAAA,CACA,uJACC,0CAAA,CACA,2CAAA,CAKH,4DACC,eAAA,CACA,8BAAA,CACA,+BAAA,CACA,kCAAA,CAEA,kBAAA,CACA,sBAAA,CAGA,uGACC,oCAAA,CAKF,6DACC,iBAAA,CACA,OAAA,CACA,WAAA,CAID,4DACC,iBAAA,CACA,4CAAA,CACA,2CAAA,CACA,uCAAA,CAEA,cAAA,CAGA,kEACC,4BAAA,CACA,uCAAA,CACA,kBAAA,CAMH,oDAEC,eAAA,CAEA,aAAA,CAEA,qFACC,YAAA,CACA,kBAAA,CACA,gBAAA,CAEA,UAAA,CACA,WAAA,CAEA,WAAA,CACA,QAAA,CAGA,mGACC,uBAAA,CAID,sHACC,iFAAA,CACA,0CAAA,CAED,0IACC,uBAAA,CAIF,+EACC,4BAAA,CAEA,yEAAA,CACA,iBAAA,CAEA,mBAAA,CAGD,8EACC,mCAAA,CAEA,gBAAA,CAKF,sDACC,UAAA,CACA,eAAA,CACA,4DACC,UAAA,CAEA,gBAAA,CACA,eAAA,CACA,gBAAA,CAEA,oEAEC,+BAAA,CACA,SAAA,CAKH,uDAEC,UAAA,CAGA,oHAEC,2BAAA,CAIA,gFAEC,kBAAA,CAKH,8DACC,gBAAA,CAGD,yGAEC,mCAAA,CAED,oDACC,iCAAA,CAEA,wBAAA,CAGD,qDACC,+BAAA,CAGD,6DACC,+BAAA\",\"sourcesContent\":[\"\\n.files-list {\\n\\t--row-height: 55px;\\n\\t--cell-margin: 14px;\\n\\n\\t--checkbox-padding: calc((var(--row-height) - var(--checkbox-size)) / 2);\\n\\t--checkbox-size: 24px;\\n\\t--clickable-area: 44px;\\n\\t--icon-preview-size: 32px;\\n\\n\\toverflow: auto;\\n\\theight: 100%;\\n\\twill-change: scroll-position;\\n\\n\\t& :deep() {\\n\\t\\t// Table head, body and footer\\n\\t\\ttbody {\\n\\t\\t\\twill-change: padding;\\n\\t\\t\\tcontain: layout paint style;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\t// Necessary for virtual scrolling absolute\\n\\t\\t\\tposition: relative;\\n\\n\\t\\t\\t/* Hover effect on tbody lines only */\\n\\t\\t\\ttr {\\n\\t\\t\\t\\tcontain: strict;\\n\\t\\t\\t\\t&:hover,\\n\\t\\t\\t\\t&:focus {\\n\\t\\t\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Before table and thead\\n\\t\\t.files-list__before {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t}\\n\\n\\t\\t.files-list__selected {\\n\\t\\t\\tpadding-right: 12px;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t.files-list__table {\\n\\t\\t\\tdisplay: block;\\n\\n\\t\\t\\t&.files-list__table--with-thead-overlay {\\n\\t\\t\\t\\t// Hide the table header below the overlay\\n\\t\\t\\t\\tmargin-top: calc(-1 * var(--row-height));\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__thead-overlay {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\t// Save space for a row checkbox\\n\\t\\t\\tmargin-left: var(--row-height);\\n\\t\\t\\t// More than .files-list__thead\\n\\t\\t\\tz-index: 20;\\n\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\t// Reuse row styles\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\t.files-list__thead,\\n\\t\\t.files-list__tfoot {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-direction: column;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tbackground-color: var(--color-main-background);\\n\\n\\t\\t}\\n\\n\\t\\t// Table header\\n\\t\\t.files-list__thead {\\n\\t\\t\\t// Pinned on top when scrolling\\n\\t\\t\\tposition: sticky;\\n\\t\\t\\tz-index: 10;\\n\\t\\t\\ttop: 0;\\n\\t\\t}\\n\\n\\t\\ttr {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\tborder-bottom: 1px solid var(--color-border);\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tuser-select: none;\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t}\\n\\n\\t\\ttd, th {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tflex: 0 0 auto;\\n\\t\\t\\tjustify-content: left;\\n\\t\\t\\twidth: var(--row-height);\\n\\t\\t\\theight: var(--row-height);\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\tborder: none;\\n\\n\\t\\t\\t// Columns should try to add any text\\n\\t\\t\\t// node wrapped in a span. That should help\\n\\t\\t\\t// with the ellipsis on overflow.\\n\\t\\t\\tspan {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row--failed {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\topacity: .1;\\n\\t\\t\\tz-index: -1;\\n\\t\\t\\tbackground: var(--color-error);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-checkbox {\\n\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t.checkbox-radio-switch {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tjustify-content: center;\\n\\n\\t\\t\\t\\t--icon-size: var(--checkbox-size);\\n\\n\\t\\t\\t\\tlabel.checkbox-radio-switch__label {\\n\\t\\t\\t\\t\\twidth: var(--clickable-area);\\n\\t\\t\\t\\t\\theight: var(--clickable-area);\\n\\t\\t\\t\\t\\tmargin: 0;\\n\\t\\t\\t\\t\\tpadding: calc((var(--clickable-area) - var(--checkbox-size)) / 2);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t.checkbox-radio-switch__icon {\\n\\t\\t\\t\\t\\tmargin: 0 !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row {\\n\\t\\t\\t&:hover, &:focus, &:active, &--active, &--dragover {\\n\\t\\t\\t\\t// WCAG AA compliant\\n\\t\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t\\t\\t// text-maxcontrast have been designed to pass WCAG AA over\\n\\t\\t\\t\\t// a white background, we need to adjust then.\\n\\t\\t\\t\\t--color-text-maxcontrast: var(--color-main-text);\\n\\t\\t\\t\\t> * {\\n\\t\\t\\t\\t\\t--color-border: var(--color-border-dark);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Hover state of the row should also change the favorite markers background\\n\\t\\t\\t\\t.favorite-marker-icon svg path {\\n\\t\\t\\t\\t\\tstroke: var(--color-background-hover);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&--dragover * {\\n\\t\\t\\t\\t// Prevent dropping on row children\\n\\t\\t\\t\\tpointer-events: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry preview or mime icon\\n\\t\\t.files-list__row-icon {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\toverflow: visible;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\t// No shrinking or growing allowed\\n\\t\\t\\tflex: 0 0 var(--icon-preview-size);\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Show same padding as the checkbox right padding for visual balance\\n\\t\\t\\tmargin-right: var(--checkbox-padding);\\n\\t\\t\\tcolor: var(--color-primary-element);\\n\\n\\t\\t\\t// Icon is also clickable\\n\\t\\t\\t* {\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& > span {\\n\\t\\t\\t\\tjustify-content: flex-start;\\n\\n\\t\\t\\t\\t&:not(.files-list__row-icon-favorite) svg {\\n\\t\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Slightly increase the size of the folder icon\\n\\t\\t\\t\\t&.folder-icon,\\n\\t\\t\\t\\t&.folder-open-icon {\\n\\t\\t\\t\\t\\tmargin: -3px;\\n\\t\\t\\t\\t\\tsvg {\\n\\t\\t\\t\\t\\t\\twidth: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t\\theight: calc(var(--icon-preview-size) + 6px);\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-preview {\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\twidth: var(--icon-preview-size);\\n\\t\\t\\t\\theight: var(--icon-preview-size);\\n\\t\\t\\t\\tborder-radius: var(--border-radius);\\n\\t\\t\\t\\t// Center and contain the preview\\n\\t\\t\\t\\tobject-fit: contain;\\n\\t\\t\\t\\tobject-position: center;\\n\\n\\t\\t\\t\\t/* Preview not loaded animation effect */\\n\\t\\t\\t\\t&:not(.files-list__row-icon-preview--loaded) {\\n\\t\\t\\t\\t\\tbackground: var(--color-loading-dark);\\n\\t\\t\\t\\t\\t// animation: preview-gradient-fade 1.2s ease-in-out infinite;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&-favorite {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0px;\\n\\t\\t\\t\\tright: -10px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t// File and folder overlay\\n\\t\\t\\t&-overlay {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tmax-height: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tmax-width: calc(var(--icon-preview-size) * 0.5);\\n\\t\\t\\t\\tcolor: var(--color-primary-element-text);\\n\\t\\t\\t\\t// better alignment with the folder icon\\n\\t\\t\\t\\tmargin-top: 2px;\\n\\n\\t\\t\\t\\t// Improve icon contrast with a background for files\\n\\t\\t\\t\\t&--file {\\n\\t\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t\\tbackground: var(--color-main-background);\\n\\t\\t\\t\\t\\tborder-radius: 100%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Entry link\\n\\t\\t.files-list__row-name {\\n\\t\\t\\t// Prevent link from overflowing\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\t// Take as much space as possible\\n\\t\\t\\tflex: 1 1 auto;\\n\\n\\t\\t\\tbutton.files-list__row-name-link {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\talign-items: center;\\n\\t\\t\\t\\ttext-align: start;\\n\\t\\t\\t\\t// Fill cell height and width\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\theight: 100%;\\n\\t\\t\\t\\t// Necessary for flex grow to work\\n\\t\\t\\t\\tmin-width: 0;\\n\\t\\t\\t\\tmargin: 0;\\n\\n\\t\\t\\t\\t// Already added to the inner text, see rule below\\n\\t\\t\\t\\t&:focus-visible {\\n\\t\\t\\t\\t\\toutline: none !important;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t// Keyboard indicator a11y\\n\\t\\t\\t\\t&:focus .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: var(--border-width-input-focused) solid var(--color-main-text) !important;\\n\\t\\t\\t\\t\\tborder-radius: var(--border-radius-element);\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t&:focus:not(:focus-visible) .files-list__row-name-text {\\n\\t\\t\\t\\t\\toutline: none !important;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-text {\\n\\t\\t\\t\\tcolor: var(--color-main-text);\\n\\t\\t\\t\\t// Make some space for the outline\\n\\t\\t\\t\\tpadding: var(--default-grid-baseline) calc(2 * var(--default-grid-baseline));\\n\\t\\t\\t\\tmargin-left: -10px;\\n\\t\\t\\t\\t// Align two name and ext\\n\\t\\t\\t\\tdisplay: inline-flex;\\n\\t\\t\\t}\\n\\n\\t\\t\\t.files-list__row-name-ext {\\n\\t\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t\\t\\t// always show the extension\\n\\t\\t\\t\\toverflow: visible;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// Rename form\\n\\t\\t.files-list__row-rename {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmax-width: 600px;\\n\\t\\t\\tinput {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t\\t// Align with text, 0 - padding - border\\n\\t\\t\\t\\tmargin-left: -8px;\\n\\t\\t\\t\\tpadding: 2px 6px;\\n\\t\\t\\t\\tborder-width: 2px;\\n\\n\\t\\t\\t\\t&:invalid {\\n\\t\\t\\t\\t\\t// Show red border on invalid input\\n\\t\\t\\t\\t\\tborder-color: var(--color-error);\\n\\t\\t\\t\\t\\tcolor: red;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-actions {\\n\\t\\t\\t// take as much space as necessary\\n\\t\\t\\twidth: auto;\\n\\n\\t\\t\\t// Add margin to all cells after the actions\\n\\t\\t\\t& ~ td,\\n\\t\\t\\t& ~ th {\\n\\t\\t\\t\\tmargin: 0 var(--cell-margin);\\n\\t\\t\\t}\\n\\n\\t\\t\\tbutton {\\n\\t\\t\\t\\t.button-vue__text {\\n\\t\\t\\t\\t\\t// Remove bold from default button styling\\n\\t\\t\\t\\t\\tfont-weight: normal;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.files-list__row-action--inline {\\n\\t\\t\\tmargin-right: 7px;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime,\\n\\t\\t.files-list__row-size {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast);\\n\\t\\t}\\n\\t\\t.files-list__row-size {\\n\\t\\t\\twidth: calc(var(--row-height) * 1.5);\\n\\t\\t\\t// Right align content/text\\n\\t\\t\\tjustify-content: flex-end;\\n\\t\\t}\\n\\n\\t\\t.files-list__row-mtime {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-column-custom {\\n\\t\\t\\twidth: calc(var(--row-height) * 2);\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `tbody.files-list__tbody.files-list__tbody--grid{--half-clickable-area: calc(var(--clickable-area) / 2);--row-width: 160px;--row-height: calc(var(--row-width) - var(--half-clickable-area));--icon-preview-size: calc(var(--row-width) - var(--clickable-area));--checkbox-padding: 0px;display:grid;grid-template-columns:repeat(auto-fill, var(--row-width));grid-gap:15px;row-gap:15px;align-content:center;align-items:center;justify-content:space-around;justify-items:center}tbody.files-list__tbody.files-list__tbody--grid tr{width:var(--row-width);height:calc(var(--row-height) + var(--clickable-area));border:none;border-radius:var(--border-radius)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-checkbox{position:absolute;z-index:9;top:0;left:0;overflow:hidden;width:var(--clickable-area);height:var(--clickable-area);border-radius:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-icon-favorite{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:var(--clickable-area);height:var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name{display:grid;justify-content:stretch;width:100%;height:100%;grid-auto-rows:var(--row-height) var(--clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name span.files-list__row-icon{width:100%;height:100%;padding-top:var(--half-clickable-area)}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-name .files-list__row-name-text{margin:0;padding-right:0}tbody.files-list__tbody.files-list__tbody--grid .files-list__row-actions{position:absolute;right:0;bottom:0;width:var(--clickable-area);height:var(--clickable-area)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/FilesListVirtual.vue\"],\"names\":[],\"mappings\":\"AAEA,gDACC,sDAAA,CACA,kBAAA,CAEA,iEAAA,CACA,mEAAA,CACA,uBAAA,CAEA,YAAA,CACA,yDAAA,CACA,aAAA,CACA,YAAA,CAEA,oBAAA,CACA,kBAAA,CACA,4BAAA,CACA,oBAAA,CAEA,mDACC,sBAAA,CACA,sDAAA,CACA,WAAA,CACA,kCAAA,CAID,0EACC,iBAAA,CACA,SAAA,CACA,KAAA,CACA,MAAA,CACA,eAAA,CACA,2BAAA,CACA,4BAAA,CACA,wCAAA,CAID,+EACC,iBAAA,CACA,KAAA,CACA,OAAA,CACA,YAAA,CACA,kBAAA,CACA,sBAAA,CACA,2BAAA,CACA,4BAAA,CAGD,sEACC,YAAA,CACA,uBAAA,CACA,UAAA,CACA,WAAA,CACA,sDAAA,CAEA,gGACC,UAAA,CACA,WAAA,CAGA,sCAAA,CAGD,iGACC,QAAA,CACA,eAAA,CAIF,yEACC,iBAAA,CACA,OAAA,CACA,QAAA,CACA,2BAAA,CACA,4BAAA\",\"sourcesContent\":[\"\\n// Grid mode\\ntbody.files-list__tbody.files-list__tbody--grid {\\n\\t--half-clickable-area: calc(var(--clickable-area) / 2);\\n\\t--row-width: 160px;\\n\\t// We use half of the clickable area as visual balance margin\\n\\t--row-height: calc(var(--row-width) - var(--half-clickable-area));\\n\\t--icon-preview-size: calc(var(--row-width) - var(--clickable-area));\\n\\t--checkbox-padding: 0px;\\n\\n\\tdisplay: grid;\\n\\tgrid-template-columns: repeat(auto-fill, var(--row-width));\\n\\tgrid-gap: 15px;\\n\\trow-gap: 15px;\\n\\n\\talign-content: center;\\n\\talign-items: center;\\n\\tjustify-content: space-around;\\n\\tjustify-items: center;\\n\\n\\ttr {\\n\\t\\twidth: var(--row-width);\\n\\t\\theight: calc(var(--row-height) + var(--clickable-area));\\n\\t\\tborder: none;\\n\\t\\tborder-radius: var(--border-radius);\\n\\t}\\n\\n\\t// Checkbox in the top left\\n\\t.files-list__row-checkbox {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 9;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\toverflow: hidden;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t\\tborder-radius: var(--half-clickable-area);\\n\\t}\\n\\n\\t// Star icon in the top right\\n\\t.files-list__row-icon-favorite {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n\\n\\t.files-list__row-name {\\n\\t\\tdisplay: grid;\\n\\t\\tjustify-content: stretch;\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\t\\tgrid-auto-rows: var(--row-height) var(--clickable-area);\\n\\n\\t\\tspan.files-list__row-icon {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: 100%;\\n\\t\\t\\t// Visual balance, we use half of the clickable area\\n\\t\\t\\t// as a margin around the preview\\n\\t\\t\\tpadding-top: var(--half-clickable-area);\\n\\t\\t}\\n\\n\\t\\t.files-list__row-name-text {\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding-right: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t.files-list__row-actions {\\n\\t\\tposition: absolute;\\n\\t\\tright: 0;\\n\\t\\tbottom: 0;\\n\\t\\twidth: var(--clickable-area);\\n\\t\\theight: var(--clickable-area);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.app-navigation-entry__settings-quota--not-unlimited[data-v-400127b6] .app-navigation-entry__name{margin-top:-6px}.app-navigation-entry__settings-quota progress[data-v-400127b6]{position:absolute;bottom:12px;margin-left:44px;width:calc(100% - 44px - 22px)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/NavigationQuota.vue\"],\"names\":[],\"mappings\":\"AAIC,kGACC,eAAA,CAGD,gEACC,iBAAA,CACA,WAAA,CACA,gBAAA,CACA,8BAAA\",\"sourcesContent\":[\"\\n// User storage stats display\\n.app-navigation-entry__settings-quota {\\n\\t// Align title with progress and icon\\n\\t&--not-unlimited::v-deep .app-navigation-entry__name {\\n\\t\\tmargin-top: -6px;\\n\\t}\\n\\n\\tprogress {\\n\\t\\tposition: absolute;\\n\\t\\tbottom: 12px;\\n\\t\\tmargin-left: 44px;\\n\\t\\twidth: calc(100% - 44px - 22px);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.toast-loading-icon{margin-inline-start:-4px;min-width:26px}.app-content[data-v-575ac9fe]{display:flex;overflow:hidden;flex-direction:column;max-height:100%;position:relative !important}.files-list__header[data-v-575ac9fe]{display:flex;align-items:center;flex:0 0;max-width:100%;margin-block:var(--app-navigation-padding, 4px);margin-inline:calc(var(--default-clickable-area, 44px) + 2*var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px)}.files-list__header>*[data-v-575ac9fe]{flex:0 0}.files-list__header-share-button[data-v-575ac9fe]{color:var(--color-text-maxcontrast) !important}.files-list__header-share-button--shared[data-v-575ac9fe]{color:var(--color-main-text) !important}.files-list__refresh-icon[data-v-575ac9fe]{flex:0 0 44px;width:44px;height:44px}.files-list__loading-icon[data-v-575ac9fe]{margin:auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/FilesList.vue\"],\"names\":[],\"mappings\":\"AACA,oBAEC,wBAAA,CAEA,cAAA,CAGD,8BAEC,YAAA,CACA,eAAA,CACA,qBAAA,CACA,eAAA,CACA,4BAAA,CAIA,qCACC,YAAA,CACA,kBAAA,CAEA,QAAA,CACA,cAAA,CAEA,+CAAA,CACA,iIAAA,CAEA,uCAGC,QAAA,CAGD,kDACC,8CAAA,CAEA,0DACC,uCAAA,CAKH,2CACC,aAAA,CACA,UAAA,CACA,WAAA,CAGD,2CACC,WAAA\",\"sourcesContent\":[\"\\n:global(.toast-loading-icon) {\\n\\t// Reduce start margin (it was made for text but this is an icon)\\n\\tmargin-inline-start: -4px;\\n\\t// 16px icon + 5px on both sides\\n\\tmin-width: 26px;\\n}\\n\\n.app-content {\\n\\t// Virtual list needs to be full height and is scrollable\\n\\tdisplay: flex;\\n\\toverflow: hidden;\\n\\tflex-direction: column;\\n\\tmax-height: 100%;\\n\\tposition: relative !important;\\n}\\n\\n.files-list {\\n\\t&__header {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\t// Do not grow or shrink (vertically)\\n\\t\\tflex: 0 0;\\n\\t\\tmax-width: 100%;\\n\\t\\t// Align with the navigation toggle icon\\n\\t\\tmargin-block: var(--app-navigation-padding, 4px);\\n\\t\\tmargin-inline: calc(var(--default-clickable-area, 44px) + 2 * var(--app-navigation-padding, 4px)) var(--app-navigation-padding, 4px);\\n\\n\\t\\t>* {\\n\\t\\t\\t// Do not grow or shrink (horizontally)\\n\\t\\t\\t// Only the breadcrumbs shrinks\\n\\t\\t\\tflex: 0 0;\\n\\t\\t}\\n\\n\\t\\t&-share-button {\\n\\t\\t\\tcolor: var(--color-text-maxcontrast) !important;\\n\\n\\t\\t\\t&--shared {\\n\\t\\t\\t\\tcolor: var(--color-main-text) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&__refresh-icon {\\n\\t\\tflex: 0 0 44px;\\n\\t\\twidth: 44px;\\n\\t\\theight: 44px;\\n\\t}\\n\\n\\t&__loading-icon {\\n\\t\\tmargin: auto;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.app-navigation[data-v-d0738916] .app-navigation-entry-icon{background-repeat:no-repeat;background-position:center}.app-navigation[data-v-d0738916] .app-navigation-entry.active .button-vue.icon-collapse:not(:hover){color:var(--color-primary-element-text)}.app-navigation>ul.app-navigation__list[data-v-d0738916]{padding-bottom:var(--default-grid-baseline, 4px)}.app-navigation-entry__settings[data-v-d0738916]{height:auto !important;overflow:hidden !important;padding-top:0 !important;flex:0 0 auto}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Navigation.vue\"],\"names\":[],\"mappings\":\"AAEA,4DACC,2BAAA,CACA,0BAAA,CAGD,oGACC,uCAAA,CAGD,yDAEC,gDAAA,CAGD,iDACC,sBAAA,CACA,0BAAA,CACA,wBAAA,CAEA,aAAA\",\"sourcesContent\":[\"\\n// TODO: remove when https://github.com/nextcloud/nextcloud-vue/pull/3539 is in\\n.app-navigation::v-deep .app-navigation-entry-icon {\\n\\tbackground-repeat: no-repeat;\\n\\tbackground-position: center;\\n}\\n\\n.app-navigation::v-deep .app-navigation-entry.active .button-vue.icon-collapse:not(:hover) {\\n\\tcolor: var(--color-primary-element-text);\\n}\\n\\n.app-navigation > ul.app-navigation__list {\\n\\t// Use flex gap value for more elegant spacing\\n\\tpadding-bottom: var(--default-grid-baseline, 4px);\\n}\\n\\n.app-navigation-entry__settings {\\n\\theight: auto !important;\\n\\toverflow: hidden !important;\\n\\tpadding-top: 0 !important;\\n\\t// Prevent shrinking or growing\\n\\tflex: 0 0 auto;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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, `.setting-link[data-v-00f09e69]:hover{text-decoration:underline}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/Settings.vue\"],\"names\":[],\"mappings\":\"AACA,qCACC,yBAAA\",\"sourcesContent\":[\"\\n.setting-link:hover {\\n\\ttext-decoration: underline;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\n\nconst denyList = new Set([\n\t'ENOTFOUND',\n\t'ENETUNREACH',\n\n\t// SSL errors from https://github.com/nodejs/node/blob/fc8e3e2cdc521978351de257030db0076d79e0ab/src/crypto/crypto_common.cc#L301-L328\n\t'UNABLE_TO_GET_ISSUER_CERT',\n\t'UNABLE_TO_GET_CRL',\n\t'UNABLE_TO_DECRYPT_CERT_SIGNATURE',\n\t'UNABLE_TO_DECRYPT_CRL_SIGNATURE',\n\t'UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY',\n\t'CERT_SIGNATURE_FAILURE',\n\t'CRL_SIGNATURE_FAILURE',\n\t'CERT_NOT_YET_VALID',\n\t'CERT_HAS_EXPIRED',\n\t'CRL_NOT_YET_VALID',\n\t'CRL_HAS_EXPIRED',\n\t'ERROR_IN_CERT_NOT_BEFORE_FIELD',\n\t'ERROR_IN_CERT_NOT_AFTER_FIELD',\n\t'ERROR_IN_CRL_LAST_UPDATE_FIELD',\n\t'ERROR_IN_CRL_NEXT_UPDATE_FIELD',\n\t'OUT_OF_MEM',\n\t'DEPTH_ZERO_SELF_SIGNED_CERT',\n\t'SELF_SIGNED_CERT_IN_CHAIN',\n\t'UNABLE_TO_GET_ISSUER_CERT_LOCALLY',\n\t'UNABLE_TO_VERIFY_LEAF_SIGNATURE',\n\t'CERT_CHAIN_TOO_LONG',\n\t'CERT_REVOKED',\n\t'INVALID_CA',\n\t'PATH_LENGTH_EXCEEDED',\n\t'INVALID_PURPOSE',\n\t'CERT_UNTRUSTED',\n\t'CERT_REJECTED',\n\t'HOSTNAME_MISMATCH'\n]);\n\n// TODO: Use `error?.code` when targeting Node.js 14\nmodule.exports = error => !denyList.has(error && error.code);\n",";(function (sax) { // wrapper for non-node envs\n sax.parser = function (strict, opt) { return new SAXParser(strict, opt) }\n sax.SAXParser = SAXParser\n sax.SAXStream = SAXStream\n sax.createStream = createStream\n\n // When we pass the MAX_BUFFER_LENGTH position, start checking for buffer overruns.\n // When we check, schedule the next check for MAX_BUFFER_LENGTH - (max(buffer lengths)),\n // since that's the earliest that a buffer overrun could occur. This way, checks are\n // as rare as required, but as often as necessary to ensure never crossing this bound.\n // Furthermore, buffers are only tested at most once per write(), so passing a very\n // large string into write() might have undesirable effects, but this is manageable by\n // the caller, so it is assumed to be safe. Thus, a call to write() may, in the extreme\n // edge case, result in creating at most one complete copy of the string passed in.\n // Set to Infinity to have unlimited buffers.\n sax.MAX_BUFFER_LENGTH = 64 * 1024\n\n var buffers = [\n 'comment', 'sgmlDecl', 'textNode', 'tagName', 'doctype',\n 'procInstName', 'procInstBody', 'entity', 'attribName',\n 'attribValue', 'cdata', 'script'\n ]\n\n sax.EVENTS = [\n 'text',\n 'processinginstruction',\n 'sgmldeclaration',\n 'doctype',\n 'comment',\n 'opentagstart',\n 'attribute',\n 'opentag',\n 'closetag',\n 'opencdata',\n 'cdata',\n 'closecdata',\n 'error',\n 'end',\n 'ready',\n 'script',\n 'opennamespace',\n 'closenamespace'\n ]\n\n function SAXParser (strict, opt) {\n if (!(this instanceof SAXParser)) {\n return new SAXParser(strict, opt)\n }\n\n var parser = this\n clearBuffers(parser)\n parser.q = parser.c = ''\n parser.bufferCheckPosition = sax.MAX_BUFFER_LENGTH\n parser.opt = opt || {}\n parser.opt.lowercase = parser.opt.lowercase || parser.opt.lowercasetags\n parser.looseCase = parser.opt.lowercase ? 'toLowerCase' : 'toUpperCase'\n parser.tags = []\n parser.closed = parser.closedRoot = parser.sawRoot = false\n parser.tag = parser.error = null\n parser.strict = !!strict\n parser.noscript = !!(strict || parser.opt.noscript)\n parser.state = S.BEGIN\n parser.strictEntities = parser.opt.strictEntities\n parser.ENTITIES = parser.strictEntities ? Object.create(sax.XML_ENTITIES) : Object.create(sax.ENTITIES)\n parser.attribList = []\n\n // namespaces form a prototype chain.\n // it always points at the current tag,\n // which protos to its parent tag.\n if (parser.opt.xmlns) {\n parser.ns = Object.create(rootNS)\n }\n\n // mostly just for error reporting\n parser.trackPosition = parser.opt.position !== false\n if (parser.trackPosition) {\n parser.position = parser.line = parser.column = 0\n }\n emit(parser, 'onready')\n }\n\n if (!Object.create) {\n Object.create = function (o) {\n function F () {}\n F.prototype = o\n var newf = new F()\n return newf\n }\n }\n\n if (!Object.keys) {\n Object.keys = function (o) {\n var a = []\n for (var i in o) if (o.hasOwnProperty(i)) a.push(i)\n return a\n }\n }\n\n function checkBufferLength (parser) {\n var maxAllowed = Math.max(sax.MAX_BUFFER_LENGTH, 10)\n var maxActual = 0\n for (var i = 0, l = buffers.length; i < l; i++) {\n var len = parser[buffers[i]].length\n if (len > maxAllowed) {\n // Text/cdata nodes can get big, and since they're buffered,\n // we can get here under normal conditions.\n // Avoid issues by emitting the text node now,\n // so at least it won't get any bigger.\n switch (buffers[i]) {\n case 'textNode':\n closeText(parser)\n break\n\n case 'cdata':\n emitNode(parser, 'oncdata', parser.cdata)\n parser.cdata = ''\n break\n\n case 'script':\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n break\n\n default:\n error(parser, 'Max buffer length exceeded: ' + buffers[i])\n }\n }\n maxActual = Math.max(maxActual, len)\n }\n // schedule the next check for the earliest possible buffer overrun.\n var m = sax.MAX_BUFFER_LENGTH - maxActual\n parser.bufferCheckPosition = m + parser.position\n }\n\n function clearBuffers (parser) {\n for (var i = 0, l = buffers.length; i < l; i++) {\n parser[buffers[i]] = ''\n }\n }\n\n function flushBuffers (parser) {\n closeText(parser)\n if (parser.cdata !== '') {\n emitNode(parser, 'oncdata', parser.cdata)\n parser.cdata = ''\n }\n if (parser.script !== '') {\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n }\n }\n\n SAXParser.prototype = {\n end: function () { end(this) },\n write: write,\n resume: function () { this.error = null; return this },\n close: function () { return this.write(null) },\n flush: function () { flushBuffers(this) }\n }\n\n var Stream\n try {\n Stream = require('stream').Stream\n } catch (ex) {\n Stream = function () {}\n }\n if (!Stream) Stream = function () {}\n\n var streamWraps = sax.EVENTS.filter(function (ev) {\n return ev !== 'error' && ev !== 'end'\n })\n\n function createStream (strict, opt) {\n return new SAXStream(strict, opt)\n }\n\n function SAXStream (strict, opt) {\n if (!(this instanceof SAXStream)) {\n return new SAXStream(strict, opt)\n }\n\n Stream.apply(this)\n\n this._parser = new SAXParser(strict, opt)\n this.writable = true\n this.readable = true\n\n var me = this\n\n this._parser.onend = function () {\n me.emit('end')\n }\n\n this._parser.onerror = function (er) {\n me.emit('error', er)\n\n // if didn't throw, then means error was handled.\n // go ahead and clear error, so we can write again.\n me._parser.error = null\n }\n\n this._decoder = null\n\n streamWraps.forEach(function (ev) {\n Object.defineProperty(me, 'on' + ev, {\n get: function () {\n return me._parser['on' + ev]\n },\n set: function (h) {\n if (!h) {\n me.removeAllListeners(ev)\n me._parser['on' + ev] = h\n return h\n }\n me.on(ev, h)\n },\n enumerable: true,\n configurable: false\n })\n })\n }\n\n SAXStream.prototype = Object.create(Stream.prototype, {\n constructor: {\n value: SAXStream\n }\n })\n\n SAXStream.prototype.write = function (data) {\n if (typeof Buffer === 'function' &&\n typeof Buffer.isBuffer === 'function' &&\n Buffer.isBuffer(data)) {\n if (!this._decoder) {\n var SD = require('string_decoder').StringDecoder\n this._decoder = new SD('utf8')\n }\n data = this._decoder.write(data)\n }\n\n this._parser.write(data.toString())\n this.emit('data', data)\n return true\n }\n\n SAXStream.prototype.end = function (chunk) {\n if (chunk && chunk.length) {\n this.write(chunk)\n }\n this._parser.end()\n return true\n }\n\n SAXStream.prototype.on = function (ev, handler) {\n var me = this\n if (!me._parser['on' + ev] && streamWraps.indexOf(ev) !== -1) {\n me._parser['on' + ev] = function () {\n var args = arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments)\n args.splice(0, 0, ev)\n me.emit.apply(me, args)\n }\n }\n\n return Stream.prototype.on.call(me, ev, handler)\n }\n\n // this really needs to be replaced with character classes.\n // XML allows all manner of ridiculous numbers and digits.\n var CDATA = '[CDATA['\n var DOCTYPE = 'DOCTYPE'\n var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'\n var XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/'\n var rootNS = { xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }\n\n // http://www.w3.org/TR/REC-xml/#NT-NameStartChar\n // This implementation works on strings, a single character at a time\n // as such, it cannot ever support astral-plane characters (10000-EFFFF)\n // without a significant breaking change to either this parser, or the\n // JavaScript language. Implementation of an emoji-capable xml parser\n // is left as an exercise for the reader.\n var nameStart = /[:_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]/\n\n var nameBody = /[:_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\\u00B7\\u0300-\\u036F\\u203F-\\u2040.\\d-]/\n\n var entityStart = /[#:_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]/\n var entityBody = /[#:_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\\u00B7\\u0300-\\u036F\\u203F-\\u2040.\\d-]/\n\n function isWhitespace (c) {\n return c === ' ' || c === '\\n' || c === '\\r' || c === '\\t'\n }\n\n function isQuote (c) {\n return c === '\"' || c === '\\''\n }\n\n function isAttribEnd (c) {\n return c === '>' || isWhitespace(c)\n }\n\n function isMatch (regex, c) {\n return regex.test(c)\n }\n\n function notMatch (regex, c) {\n return !isMatch(regex, c)\n }\n\n var S = 0\n sax.STATE = {\n BEGIN: S++, // leading byte order mark or whitespace\n BEGIN_WHITESPACE: S++, // leading whitespace\n TEXT: S++, // general stuff\n TEXT_ENTITY: S++, // &amp and such.\n OPEN_WAKA: S++, // <\n SGML_DECL: S++, // <!BLARG\n SGML_DECL_QUOTED: S++, // <!BLARG foo \"bar\n DOCTYPE: S++, // <!DOCTYPE\n DOCTYPE_QUOTED: S++, // <!DOCTYPE \"//blah\n DOCTYPE_DTD: S++, // <!DOCTYPE \"//blah\" [ ...\n DOCTYPE_DTD_QUOTED: S++, // <!DOCTYPE \"//blah\" [ \"foo\n COMMENT_STARTING: S++, // <!-\n COMMENT: S++, // <!--\n COMMENT_ENDING: S++, // <!-- blah -\n COMMENT_ENDED: S++, // <!-- blah --\n CDATA: S++, // <![CDATA[ something\n CDATA_ENDING: S++, // ]\n CDATA_ENDING_2: S++, // ]]\n PROC_INST: S++, // <?hi\n PROC_INST_BODY: S++, // <?hi there\n PROC_INST_ENDING: S++, // <?hi \"there\" ?\n OPEN_TAG: S++, // <strong\n OPEN_TAG_SLASH: S++, // <strong /\n ATTRIB: S++, // <a\n ATTRIB_NAME: S++, // <a foo\n ATTRIB_NAME_SAW_WHITE: S++, // <a foo _\n ATTRIB_VALUE: S++, // <a foo=\n ATTRIB_VALUE_QUOTED: S++, // <a foo=\"bar\n ATTRIB_VALUE_CLOSED: S++, // <a foo=\"bar\"\n ATTRIB_VALUE_UNQUOTED: S++, // <a foo=bar\n ATTRIB_VALUE_ENTITY_Q: S++, // <foo bar=\"&quot;\"\n ATTRIB_VALUE_ENTITY_U: S++, // <foo bar=&quot\n CLOSE_TAG: S++, // </a\n CLOSE_TAG_SAW_WHITE: S++, // </a >\n SCRIPT: S++, // <script> ...\n SCRIPT_ENDING: S++ // <script> ... <\n }\n\n sax.XML_ENTITIES = {\n 'amp': '&',\n 'gt': '>',\n 'lt': '<',\n 'quot': '\"',\n 'apos': \"'\"\n }\n\n sax.ENTITIES = {\n 'amp': '&',\n 'gt': '>',\n 'lt': '<',\n 'quot': '\"',\n 'apos': \"'\",\n 'AElig': 198,\n 'Aacute': 193,\n 'Acirc': 194,\n 'Agrave': 192,\n 'Aring': 197,\n 'Atilde': 195,\n 'Auml': 196,\n 'Ccedil': 199,\n 'ETH': 208,\n 'Eacute': 201,\n 'Ecirc': 202,\n 'Egrave': 200,\n 'Euml': 203,\n 'Iacute': 205,\n 'Icirc': 206,\n 'Igrave': 204,\n 'Iuml': 207,\n 'Ntilde': 209,\n 'Oacute': 211,\n 'Ocirc': 212,\n 'Ograve': 210,\n 'Oslash': 216,\n 'Otilde': 213,\n 'Ouml': 214,\n 'THORN': 222,\n 'Uacute': 218,\n 'Ucirc': 219,\n 'Ugrave': 217,\n 'Uuml': 220,\n 'Yacute': 221,\n 'aacute': 225,\n 'acirc': 226,\n 'aelig': 230,\n 'agrave': 224,\n 'aring': 229,\n 'atilde': 227,\n 'auml': 228,\n 'ccedil': 231,\n 'eacute': 233,\n 'ecirc': 234,\n 'egrave': 232,\n 'eth': 240,\n 'euml': 235,\n 'iacute': 237,\n 'icirc': 238,\n 'igrave': 236,\n 'iuml': 239,\n 'ntilde': 241,\n 'oacute': 243,\n 'ocirc': 244,\n 'ograve': 242,\n 'oslash': 248,\n 'otilde': 245,\n 'ouml': 246,\n 'szlig': 223,\n 'thorn': 254,\n 'uacute': 250,\n 'ucirc': 251,\n 'ugrave': 249,\n 'uuml': 252,\n 'yacute': 253,\n 'yuml': 255,\n 'copy': 169,\n 'reg': 174,\n 'nbsp': 160,\n 'iexcl': 161,\n 'cent': 162,\n 'pound': 163,\n 'curren': 164,\n 'yen': 165,\n 'brvbar': 166,\n 'sect': 167,\n 'uml': 168,\n 'ordf': 170,\n 'laquo': 171,\n 'not': 172,\n 'shy': 173,\n 'macr': 175,\n 'deg': 176,\n 'plusmn': 177,\n 'sup1': 185,\n 'sup2': 178,\n 'sup3': 179,\n 'acute': 180,\n 'micro': 181,\n 'para': 182,\n 'middot': 183,\n 'cedil': 184,\n 'ordm': 186,\n 'raquo': 187,\n 'frac14': 188,\n 'frac12': 189,\n 'frac34': 190,\n 'iquest': 191,\n 'times': 215,\n 'divide': 247,\n 'OElig': 338,\n 'oelig': 339,\n 'Scaron': 352,\n 'scaron': 353,\n 'Yuml': 376,\n 'fnof': 402,\n 'circ': 710,\n 'tilde': 732,\n 'Alpha': 913,\n 'Beta': 914,\n 'Gamma': 915,\n 'Delta': 916,\n 'Epsilon': 917,\n 'Zeta': 918,\n 'Eta': 919,\n 'Theta': 920,\n 'Iota': 921,\n 'Kappa': 922,\n 'Lambda': 923,\n 'Mu': 924,\n 'Nu': 925,\n 'Xi': 926,\n 'Omicron': 927,\n 'Pi': 928,\n 'Rho': 929,\n 'Sigma': 931,\n 'Tau': 932,\n 'Upsilon': 933,\n 'Phi': 934,\n 'Chi': 935,\n 'Psi': 936,\n 'Omega': 937,\n 'alpha': 945,\n 'beta': 946,\n 'gamma': 947,\n 'delta': 948,\n 'epsilon': 949,\n 'zeta': 950,\n 'eta': 951,\n 'theta': 952,\n 'iota': 953,\n 'kappa': 954,\n 'lambda': 955,\n 'mu': 956,\n 'nu': 957,\n 'xi': 958,\n 'omicron': 959,\n 'pi': 960,\n 'rho': 961,\n 'sigmaf': 962,\n 'sigma': 963,\n 'tau': 964,\n 'upsilon': 965,\n 'phi': 966,\n 'chi': 967,\n 'psi': 968,\n 'omega': 969,\n 'thetasym': 977,\n 'upsih': 978,\n 'piv': 982,\n 'ensp': 8194,\n 'emsp': 8195,\n 'thinsp': 8201,\n 'zwnj': 8204,\n 'zwj': 8205,\n 'lrm': 8206,\n 'rlm': 8207,\n 'ndash': 8211,\n 'mdash': 8212,\n 'lsquo': 8216,\n 'rsquo': 8217,\n 'sbquo': 8218,\n 'ldquo': 8220,\n 'rdquo': 8221,\n 'bdquo': 8222,\n 'dagger': 8224,\n 'Dagger': 8225,\n 'bull': 8226,\n 'hellip': 8230,\n 'permil': 8240,\n 'prime': 8242,\n 'Prime': 8243,\n 'lsaquo': 8249,\n 'rsaquo': 8250,\n 'oline': 8254,\n 'frasl': 8260,\n 'euro': 8364,\n 'image': 8465,\n 'weierp': 8472,\n 'real': 8476,\n 'trade': 8482,\n 'alefsym': 8501,\n 'larr': 8592,\n 'uarr': 8593,\n 'rarr': 8594,\n 'darr': 8595,\n 'harr': 8596,\n 'crarr': 8629,\n 'lArr': 8656,\n 'uArr': 8657,\n 'rArr': 8658,\n 'dArr': 8659,\n 'hArr': 8660,\n 'forall': 8704,\n 'part': 8706,\n 'exist': 8707,\n 'empty': 8709,\n 'nabla': 8711,\n 'isin': 8712,\n 'notin': 8713,\n 'ni': 8715,\n 'prod': 8719,\n 'sum': 8721,\n 'minus': 8722,\n 'lowast': 8727,\n 'radic': 8730,\n 'prop': 8733,\n 'infin': 8734,\n 'ang': 8736,\n 'and': 8743,\n 'or': 8744,\n 'cap': 8745,\n 'cup': 8746,\n 'int': 8747,\n 'there4': 8756,\n 'sim': 8764,\n 'cong': 8773,\n 'asymp': 8776,\n 'ne': 8800,\n 'equiv': 8801,\n 'le': 8804,\n 'ge': 8805,\n 'sub': 8834,\n 'sup': 8835,\n 'nsub': 8836,\n 'sube': 8838,\n 'supe': 8839,\n 'oplus': 8853,\n 'otimes': 8855,\n 'perp': 8869,\n 'sdot': 8901,\n 'lceil': 8968,\n 'rceil': 8969,\n 'lfloor': 8970,\n 'rfloor': 8971,\n 'lang': 9001,\n 'rang': 9002,\n 'loz': 9674,\n 'spades': 9824,\n 'clubs': 9827,\n 'hearts': 9829,\n 'diams': 9830\n }\n\n Object.keys(sax.ENTITIES).forEach(function (key) {\n var e = sax.ENTITIES[key]\n var s = typeof e === 'number' ? String.fromCharCode(e) : e\n sax.ENTITIES[key] = s\n })\n\n for (var s in sax.STATE) {\n sax.STATE[sax.STATE[s]] = s\n }\n\n // shorthand\n S = sax.STATE\n\n function emit (parser, event, data) {\n parser[event] && parser[event](data)\n }\n\n function emitNode (parser, nodeType, data) {\n if (parser.textNode) closeText(parser)\n emit(parser, nodeType, data)\n }\n\n function closeText (parser) {\n parser.textNode = textopts(parser.opt, parser.textNode)\n if (parser.textNode) emit(parser, 'ontext', parser.textNode)\n parser.textNode = ''\n }\n\n function textopts (opt, text) {\n if (opt.trim) text = text.trim()\n if (opt.normalize) text = text.replace(/\\s+/g, ' ')\n return text\n }\n\n function error (parser, er) {\n closeText(parser)\n if (parser.trackPosition) {\n er += '\\nLine: ' + parser.line +\n '\\nColumn: ' + parser.column +\n '\\nChar: ' + parser.c\n }\n er = new Error(er)\n parser.error = er\n emit(parser, 'onerror', er)\n return parser\n }\n\n function end (parser) {\n if (parser.sawRoot && !parser.closedRoot) strictFail(parser, 'Unclosed root tag')\n if ((parser.state !== S.BEGIN) &&\n (parser.state !== S.BEGIN_WHITESPACE) &&\n (parser.state !== S.TEXT)) {\n error(parser, 'Unexpected end')\n }\n closeText(parser)\n parser.c = ''\n parser.closed = true\n emit(parser, 'onend')\n SAXParser.call(parser, parser.strict, parser.opt)\n return parser\n }\n\n function strictFail (parser, message) {\n if (typeof parser !== 'object' || !(parser instanceof SAXParser)) {\n throw new Error('bad call to strictFail')\n }\n if (parser.strict) {\n error(parser, message)\n }\n }\n\n function newTag (parser) {\n if (!parser.strict) parser.tagName = parser.tagName[parser.looseCase]()\n var parent = parser.tags[parser.tags.length - 1] || parser\n var tag = parser.tag = { name: parser.tagName, attributes: {} }\n\n // will be overridden if tag contails an xmlns=\"foo\" or xmlns:foo=\"bar\"\n if (parser.opt.xmlns) {\n tag.ns = parent.ns\n }\n parser.attribList.length = 0\n emitNode(parser, 'onopentagstart', tag)\n }\n\n function qname (name, attribute) {\n var i = name.indexOf(':')\n var qualName = i < 0 ? [ '', name ] : name.split(':')\n var prefix = qualName[0]\n var local = qualName[1]\n\n // <x \"xmlns\"=\"http://foo\">\n if (attribute && name === 'xmlns') {\n prefix = 'xmlns'\n local = ''\n }\n\n return { prefix: prefix, local: local }\n }\n\n function attrib (parser) {\n if (!parser.strict) {\n parser.attribName = parser.attribName[parser.looseCase]()\n }\n\n if (parser.attribList.indexOf(parser.attribName) !== -1 ||\n parser.tag.attributes.hasOwnProperty(parser.attribName)) {\n parser.attribName = parser.attribValue = ''\n return\n }\n\n if (parser.opt.xmlns) {\n var qn = qname(parser.attribName, true)\n var prefix = qn.prefix\n var local = qn.local\n\n if (prefix === 'xmlns') {\n // namespace binding attribute. push the binding into scope\n if (local === 'xml' && parser.attribValue !== XML_NAMESPACE) {\n strictFail(parser,\n 'xml: prefix must be bound to ' + XML_NAMESPACE + '\\n' +\n 'Actual: ' + parser.attribValue)\n } else if (local === 'xmlns' && parser.attribValue !== XMLNS_NAMESPACE) {\n strictFail(parser,\n 'xmlns: prefix must be bound to ' + XMLNS_NAMESPACE + '\\n' +\n 'Actual: ' + parser.attribValue)\n } else {\n var tag = parser.tag\n var parent = parser.tags[parser.tags.length - 1] || parser\n if (tag.ns === parent.ns) {\n tag.ns = Object.create(parent.ns)\n }\n tag.ns[local] = parser.attribValue\n }\n }\n\n // defer onattribute events until all attributes have been seen\n // so any new bindings can take effect. preserve attribute order\n // so deferred events can be emitted in document order\n parser.attribList.push([parser.attribName, parser.attribValue])\n } else {\n // in non-xmlns mode, we can emit the event right away\n parser.tag.attributes[parser.attribName] = parser.attribValue\n emitNode(parser, 'onattribute', {\n name: parser.attribName,\n value: parser.attribValue\n })\n }\n\n parser.attribName = parser.attribValue = ''\n }\n\n function openTag (parser, selfClosing) {\n if (parser.opt.xmlns) {\n // emit namespace binding events\n var tag = parser.tag\n\n // add namespace info to tag\n var qn = qname(parser.tagName)\n tag.prefix = qn.prefix\n tag.local = qn.local\n tag.uri = tag.ns[qn.prefix] || ''\n\n if (tag.prefix && !tag.uri) {\n strictFail(parser, 'Unbound namespace prefix: ' +\n JSON.stringify(parser.tagName))\n tag.uri = qn.prefix\n }\n\n var parent = parser.tags[parser.tags.length - 1] || parser\n if (tag.ns && parent.ns !== tag.ns) {\n Object.keys(tag.ns).forEach(function (p) {\n emitNode(parser, 'onopennamespace', {\n prefix: p,\n uri: tag.ns[p]\n })\n })\n }\n\n // handle deferred onattribute events\n // Note: do not apply default ns to attributes:\n // http://www.w3.org/TR/REC-xml-names/#defaulting\n for (var i = 0, l = parser.attribList.length; i < l; i++) {\n var nv = parser.attribList[i]\n var name = nv[0]\n var value = nv[1]\n var qualName = qname(name, true)\n var prefix = qualName.prefix\n var local = qualName.local\n var uri = prefix === '' ? '' : (tag.ns[prefix] || '')\n var a = {\n name: name,\n value: value,\n prefix: prefix,\n local: local,\n uri: uri\n }\n\n // if there's any attributes with an undefined namespace,\n // then fail on them now.\n if (prefix && prefix !== 'xmlns' && !uri) {\n strictFail(parser, 'Unbound namespace prefix: ' +\n JSON.stringify(prefix))\n a.uri = prefix\n }\n parser.tag.attributes[name] = a\n emitNode(parser, 'onattribute', a)\n }\n parser.attribList.length = 0\n }\n\n parser.tag.isSelfClosing = !!selfClosing\n\n // process the tag\n parser.sawRoot = true\n parser.tags.push(parser.tag)\n emitNode(parser, 'onopentag', parser.tag)\n if (!selfClosing) {\n // special case for <script> in non-strict mode.\n if (!parser.noscript && parser.tagName.toLowerCase() === 'script') {\n parser.state = S.SCRIPT\n } else {\n parser.state = S.TEXT\n }\n parser.tag = null\n parser.tagName = ''\n }\n parser.attribName = parser.attribValue = ''\n parser.attribList.length = 0\n }\n\n function closeTag (parser) {\n if (!parser.tagName) {\n strictFail(parser, 'Weird empty close tag.')\n parser.textNode += '</>'\n parser.state = S.TEXT\n return\n }\n\n if (parser.script) {\n if (parser.tagName !== 'script') {\n parser.script += '</' + parser.tagName + '>'\n parser.tagName = ''\n parser.state = S.SCRIPT\n return\n }\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n }\n\n // first make sure that the closing tag actually exists.\n // <a><b></c></b></a> will close everything, otherwise.\n var t = parser.tags.length\n var tagName = parser.tagName\n if (!parser.strict) {\n tagName = tagName[parser.looseCase]()\n }\n var closeTo = tagName\n while (t--) {\n var close = parser.tags[t]\n if (close.name !== closeTo) {\n // fail the first time in strict mode\n strictFail(parser, 'Unexpected close tag')\n } else {\n break\n }\n }\n\n // didn't find it. we already failed for strict, so just abort.\n if (t < 0) {\n strictFail(parser, 'Unmatched closing tag: ' + parser.tagName)\n parser.textNode += '</' + parser.tagName + '>'\n parser.state = S.TEXT\n return\n }\n parser.tagName = tagName\n var s = parser.tags.length\n while (s-- > t) {\n var tag = parser.tag = parser.tags.pop()\n parser.tagName = parser.tag.name\n emitNode(parser, 'onclosetag', parser.tagName)\n\n var x = {}\n for (var i in tag.ns) {\n x[i] = tag.ns[i]\n }\n\n var parent = parser.tags[parser.tags.length - 1] || parser\n if (parser.opt.xmlns && tag.ns !== parent.ns) {\n // remove namespace bindings introduced by tag\n Object.keys(tag.ns).forEach(function (p) {\n var n = tag.ns[p]\n emitNode(parser, 'onclosenamespace', { prefix: p, uri: n })\n })\n }\n }\n if (t === 0) parser.closedRoot = true\n parser.tagName = parser.attribValue = parser.attribName = ''\n parser.attribList.length = 0\n parser.state = S.TEXT\n }\n\n function parseEntity (parser) {\n var entity = parser.entity\n var entityLC = entity.toLowerCase()\n var num\n var numStr = ''\n\n if (parser.ENTITIES[entity]) {\n return parser.ENTITIES[entity]\n }\n if (parser.ENTITIES[entityLC]) {\n return parser.ENTITIES[entityLC]\n }\n entity = entityLC\n if (entity.charAt(0) === '#') {\n if (entity.charAt(1) === 'x') {\n entity = entity.slice(2)\n num = parseInt(entity, 16)\n numStr = num.toString(16)\n } else {\n entity = entity.slice(1)\n num = parseInt(entity, 10)\n numStr = num.toString(10)\n }\n }\n entity = entity.replace(/^0+/, '')\n if (isNaN(num) || numStr.toLowerCase() !== entity) {\n strictFail(parser, 'Invalid character entity')\n return '&' + parser.entity + ';'\n }\n\n return String.fromCodePoint(num)\n }\n\n function beginWhiteSpace (parser, c) {\n if (c === '<') {\n parser.state = S.OPEN_WAKA\n parser.startTagPosition = parser.position\n } else if (!isWhitespace(c)) {\n // have to process this as a text node.\n // weird, but happens.\n strictFail(parser, 'Non-whitespace before first tag.')\n parser.textNode = c\n parser.state = S.TEXT\n }\n }\n\n function charAt (chunk, i) {\n var result = ''\n if (i < chunk.length) {\n result = chunk.charAt(i)\n }\n return result\n }\n\n function write (chunk) {\n var parser = this\n if (this.error) {\n throw this.error\n }\n if (parser.closed) {\n return error(parser,\n 'Cannot write after close. Assign an onready handler.')\n }\n if (chunk === null) {\n return end(parser)\n }\n if (typeof chunk === 'object') {\n chunk = chunk.toString()\n }\n var i = 0\n var c = ''\n while (true) {\n c = charAt(chunk, i++)\n parser.c = c\n\n if (!c) {\n break\n }\n\n if (parser.trackPosition) {\n parser.position++\n if (c === '\\n') {\n parser.line++\n parser.column = 0\n } else {\n parser.column++\n }\n }\n\n switch (parser.state) {\n case S.BEGIN:\n parser.state = S.BEGIN_WHITESPACE\n if (c === '\\uFEFF') {\n continue\n }\n beginWhiteSpace(parser, c)\n continue\n\n case S.BEGIN_WHITESPACE:\n beginWhiteSpace(parser, c)\n continue\n\n case S.TEXT:\n if (parser.sawRoot && !parser.closedRoot) {\n var starti = i - 1\n while (c && c !== '<' && c !== '&') {\n c = charAt(chunk, i++)\n if (c && parser.trackPosition) {\n parser.position++\n if (c === '\\n') {\n parser.line++\n parser.column = 0\n } else {\n parser.column++\n }\n }\n }\n parser.textNode += chunk.substring(starti, i - 1)\n }\n if (c === '<' && !(parser.sawRoot && parser.closedRoot && !parser.strict)) {\n parser.state = S.OPEN_WAKA\n parser.startTagPosition = parser.position\n } else {\n if (!isWhitespace(c) && (!parser.sawRoot || parser.closedRoot)) {\n strictFail(parser, 'Text data outside of root node.')\n }\n if (c === '&') {\n parser.state = S.TEXT_ENTITY\n } else {\n parser.textNode += c\n }\n }\n continue\n\n case S.SCRIPT:\n // only non-strict\n if (c === '<') {\n parser.state = S.SCRIPT_ENDING\n } else {\n parser.script += c\n }\n continue\n\n case S.SCRIPT_ENDING:\n if (c === '/') {\n parser.state = S.CLOSE_TAG\n } else {\n parser.script += '<' + c\n parser.state = S.SCRIPT\n }\n continue\n\n case S.OPEN_WAKA:\n // either a /, ?, !, or text is coming next.\n if (c === '!') {\n parser.state = S.SGML_DECL\n parser.sgmlDecl = ''\n } else if (isWhitespace(c)) {\n // wait for it...\n } else if (isMatch(nameStart, c)) {\n parser.state = S.OPEN_TAG\n parser.tagName = c\n } else if (c === '/') {\n parser.state = S.CLOSE_TAG\n parser.tagName = ''\n } else if (c === '?') {\n parser.state = S.PROC_INST\n parser.procInstName = parser.procInstBody = ''\n } else {\n strictFail(parser, 'Unencoded <')\n // if there was some whitespace, then add that in.\n if (parser.startTagPosition + 1 < parser.position) {\n var pad = parser.position - parser.startTagPosition\n c = new Array(pad).join(' ') + c\n }\n parser.textNode += '<' + c\n parser.state = S.TEXT\n }\n continue\n\n case S.SGML_DECL:\n if ((parser.sgmlDecl + c).toUpperCase() === CDATA) {\n emitNode(parser, 'onopencdata')\n parser.state = S.CDATA\n parser.sgmlDecl = ''\n parser.cdata = ''\n } else if (parser.sgmlDecl + c === '--') {\n parser.state = S.COMMENT\n parser.comment = ''\n parser.sgmlDecl = ''\n } else if ((parser.sgmlDecl + c).toUpperCase() === DOCTYPE) {\n parser.state = S.DOCTYPE\n if (parser.doctype || parser.sawRoot) {\n strictFail(parser,\n 'Inappropriately located doctype declaration')\n }\n parser.doctype = ''\n parser.sgmlDecl = ''\n } else if (c === '>') {\n emitNode(parser, 'onsgmldeclaration', parser.sgmlDecl)\n parser.sgmlDecl = ''\n parser.state = S.TEXT\n } else if (isQuote(c)) {\n parser.state = S.SGML_DECL_QUOTED\n parser.sgmlDecl += c\n } else {\n parser.sgmlDecl += c\n }\n continue\n\n case S.SGML_DECL_QUOTED:\n if (c === parser.q) {\n parser.state = S.SGML_DECL\n parser.q = ''\n }\n parser.sgmlDecl += c\n continue\n\n case S.DOCTYPE:\n if (c === '>') {\n parser.state = S.TEXT\n emitNode(parser, 'ondoctype', parser.doctype)\n parser.doctype = true // just remember that we saw it.\n } else {\n parser.doctype += c\n if (c === '[') {\n parser.state = S.DOCTYPE_DTD\n } else if (isQuote(c)) {\n parser.state = S.DOCTYPE_QUOTED\n parser.q = c\n }\n }\n continue\n\n case S.DOCTYPE_QUOTED:\n parser.doctype += c\n if (c === parser.q) {\n parser.q = ''\n parser.state = S.DOCTYPE\n }\n continue\n\n case S.DOCTYPE_DTD:\n parser.doctype += c\n if (c === ']') {\n parser.state = S.DOCTYPE\n } else if (isQuote(c)) {\n parser.state = S.DOCTYPE_DTD_QUOTED\n parser.q = c\n }\n continue\n\n case S.DOCTYPE_DTD_QUOTED:\n parser.doctype += c\n if (c === parser.q) {\n parser.state = S.DOCTYPE_DTD\n parser.q = ''\n }\n continue\n\n case S.COMMENT:\n if (c === '-') {\n parser.state = S.COMMENT_ENDING\n } else {\n parser.comment += c\n }\n continue\n\n case S.COMMENT_ENDING:\n if (c === '-') {\n parser.state = S.COMMENT_ENDED\n parser.comment = textopts(parser.opt, parser.comment)\n if (parser.comment) {\n emitNode(parser, 'oncomment', parser.comment)\n }\n parser.comment = ''\n } else {\n parser.comment += '-' + c\n parser.state = S.COMMENT\n }\n continue\n\n case S.COMMENT_ENDED:\n if (c !== '>') {\n strictFail(parser, 'Malformed comment')\n // allow <!-- blah -- bloo --> in non-strict mode,\n // which is a comment of \" blah -- bloo \"\n parser.comment += '--' + c\n parser.state = S.COMMENT\n } else {\n parser.state = S.TEXT\n }\n continue\n\n case S.CDATA:\n if (c === ']') {\n parser.state = S.CDATA_ENDING\n } else {\n parser.cdata += c\n }\n continue\n\n case S.CDATA_ENDING:\n if (c === ']') {\n parser.state = S.CDATA_ENDING_2\n } else {\n parser.cdata += ']' + c\n parser.state = S.CDATA\n }\n continue\n\n case S.CDATA_ENDING_2:\n if (c === '>') {\n if (parser.cdata) {\n emitNode(parser, 'oncdata', parser.cdata)\n }\n emitNode(parser, 'onclosecdata')\n parser.cdata = ''\n parser.state = S.TEXT\n } else if (c === ']') {\n parser.cdata += ']'\n } else {\n parser.cdata += ']]' + c\n parser.state = S.CDATA\n }\n continue\n\n case S.PROC_INST:\n if (c === '?') {\n parser.state = S.PROC_INST_ENDING\n } else if (isWhitespace(c)) {\n parser.state = S.PROC_INST_BODY\n } else {\n parser.procInstName += c\n }\n continue\n\n case S.PROC_INST_BODY:\n if (!parser.procInstBody && isWhitespace(c)) {\n continue\n } else if (c === '?') {\n parser.state = S.PROC_INST_ENDING\n } else {\n parser.procInstBody += c\n }\n continue\n\n case S.PROC_INST_ENDING:\n if (c === '>') {\n emitNode(parser, 'onprocessinginstruction', {\n name: parser.procInstName,\n body: parser.procInstBody\n })\n parser.procInstName = parser.procInstBody = ''\n parser.state = S.TEXT\n } else {\n parser.procInstBody += '?' + c\n parser.state = S.PROC_INST_BODY\n }\n continue\n\n case S.OPEN_TAG:\n if (isMatch(nameBody, c)) {\n parser.tagName += c\n } else {\n newTag(parser)\n if (c === '>') {\n openTag(parser)\n } else if (c === '/') {\n parser.state = S.OPEN_TAG_SLASH\n } else {\n if (!isWhitespace(c)) {\n strictFail(parser, 'Invalid character in tag name')\n }\n parser.state = S.ATTRIB\n }\n }\n continue\n\n case S.OPEN_TAG_SLASH:\n if (c === '>') {\n openTag(parser, true)\n closeTag(parser)\n } else {\n strictFail(parser, 'Forward-slash in opening tag not followed by >')\n parser.state = S.ATTRIB\n }\n continue\n\n case S.ATTRIB:\n // haven't read the attribute name yet.\n if (isWhitespace(c)) {\n continue\n } else if (c === '>') {\n openTag(parser)\n } else if (c === '/') {\n parser.state = S.OPEN_TAG_SLASH\n } else if (isMatch(nameStart, c)) {\n parser.attribName = c\n parser.attribValue = ''\n parser.state = S.ATTRIB_NAME\n } else {\n strictFail(parser, 'Invalid attribute name')\n }\n continue\n\n case S.ATTRIB_NAME:\n if (c === '=') {\n parser.state = S.ATTRIB_VALUE\n } else if (c === '>') {\n strictFail(parser, 'Attribute without value')\n parser.attribValue = parser.attribName\n attrib(parser)\n openTag(parser)\n } else if (isWhitespace(c)) {\n parser.state = S.ATTRIB_NAME_SAW_WHITE\n } else if (isMatch(nameBody, c)) {\n parser.attribName += c\n } else {\n strictFail(parser, 'Invalid attribute name')\n }\n continue\n\n case S.ATTRIB_NAME_SAW_WHITE:\n if (c === '=') {\n parser.state = S.ATTRIB_VALUE\n } else if (isWhitespace(c)) {\n continue\n } else {\n strictFail(parser, 'Attribute without value')\n parser.tag.attributes[parser.attribName] = ''\n parser.attribValue = ''\n emitNode(parser, 'onattribute', {\n name: parser.attribName,\n value: ''\n })\n parser.attribName = ''\n if (c === '>') {\n openTag(parser)\n } else if (isMatch(nameStart, c)) {\n parser.attribName = c\n parser.state = S.ATTRIB_NAME\n } else {\n strictFail(parser, 'Invalid attribute name')\n parser.state = S.ATTRIB\n }\n }\n continue\n\n case S.ATTRIB_VALUE:\n if (isWhitespace(c)) {\n continue\n } else if (isQuote(c)) {\n parser.q = c\n parser.state = S.ATTRIB_VALUE_QUOTED\n } else {\n strictFail(parser, 'Unquoted attribute value')\n parser.state = S.ATTRIB_VALUE_UNQUOTED\n parser.attribValue = c\n }\n continue\n\n case S.ATTRIB_VALUE_QUOTED:\n if (c !== parser.q) {\n if (c === '&') {\n parser.state = S.ATTRIB_VALUE_ENTITY_Q\n } else {\n parser.attribValue += c\n }\n continue\n }\n attrib(parser)\n parser.q = ''\n parser.state = S.ATTRIB_VALUE_CLOSED\n continue\n\n case S.ATTRIB_VALUE_CLOSED:\n if (isWhitespace(c)) {\n parser.state = S.ATTRIB\n } else if (c === '>') {\n openTag(parser)\n } else if (c === '/') {\n parser.state = S.OPEN_TAG_SLASH\n } else if (isMatch(nameStart, c)) {\n strictFail(parser, 'No whitespace between attributes')\n parser.attribName = c\n parser.attribValue = ''\n parser.state = S.ATTRIB_NAME\n } else {\n strictFail(parser, 'Invalid attribute name')\n }\n continue\n\n case S.ATTRIB_VALUE_UNQUOTED:\n if (!isAttribEnd(c)) {\n if (c === '&') {\n parser.state = S.ATTRIB_VALUE_ENTITY_U\n } else {\n parser.attribValue += c\n }\n continue\n }\n attrib(parser)\n if (c === '>') {\n openTag(parser)\n } else {\n parser.state = S.ATTRIB\n }\n continue\n\n case S.CLOSE_TAG:\n if (!parser.tagName) {\n if (isWhitespace(c)) {\n continue\n } else if (notMatch(nameStart, c)) {\n if (parser.script) {\n parser.script += '</' + c\n parser.state = S.SCRIPT\n } else {\n strictFail(parser, 'Invalid tagname in closing tag.')\n }\n } else {\n parser.tagName = c\n }\n } else if (c === '>') {\n closeTag(parser)\n } else if (isMatch(nameBody, c)) {\n parser.tagName += c\n } else if (parser.script) {\n parser.script += '</' + parser.tagName\n parser.tagName = ''\n parser.state = S.SCRIPT\n } else {\n if (!isWhitespace(c)) {\n strictFail(parser, 'Invalid tagname in closing tag')\n }\n parser.state = S.CLOSE_TAG_SAW_WHITE\n }\n continue\n\n case S.CLOSE_TAG_SAW_WHITE:\n if (isWhitespace(c)) {\n continue\n }\n if (c === '>') {\n closeTag(parser)\n } else {\n strictFail(parser, 'Invalid characters in closing tag')\n }\n continue\n\n case S.TEXT_ENTITY:\n case S.ATTRIB_VALUE_ENTITY_Q:\n case S.ATTRIB_VALUE_ENTITY_U:\n var returnState\n var buffer\n switch (parser.state) {\n case S.TEXT_ENTITY:\n returnState = S.TEXT\n buffer = 'textNode'\n break\n\n case S.ATTRIB_VALUE_ENTITY_Q:\n returnState = S.ATTRIB_VALUE_QUOTED\n buffer = 'attribValue'\n break\n\n case S.ATTRIB_VALUE_ENTITY_U:\n returnState = S.ATTRIB_VALUE_UNQUOTED\n buffer = 'attribValue'\n break\n }\n\n if (c === ';') {\n if (parser.opt.unparsedEntities) {\n var parsedEntity = parseEntity(parser)\n parser.entity = ''\n parser.state = returnState\n parser.write(parsedEntity)\n } else {\n parser[buffer] += parseEntity(parser)\n parser.entity = ''\n parser.state = returnState\n }\n } else if (isMatch(parser.entity.length ? entityBody : entityStart, c)) {\n parser.entity += c\n } else {\n strictFail(parser, 'Invalid character in entity name')\n parser[buffer] += '&' + parser.entity + c\n parser.entity = ''\n parser.state = returnState\n }\n\n continue\n\n default: /* istanbul ignore next */ {\n throw new Error(parser, 'Unknown state: ' + parser.state)\n }\n }\n } // while\n\n if (parser.position >= parser.bufferCheckPosition) {\n checkBufferLength(parser)\n }\n return parser\n }\n\n /*! http://mths.be/fromcodepoint v0.1.0 by @mathias */\n /* istanbul ignore next */\n if (!String.fromCodePoint) {\n (function () {\n var stringFromCharCode = String.fromCharCode\n var floor = Math.floor\n var fromCodePoint = function () {\n var MAX_SIZE = 0x4000\n var codeUnits = []\n var highSurrogate\n var lowSurrogate\n var index = -1\n var length = arguments.length\n if (!length) {\n return ''\n }\n var result = ''\n while (++index < length) {\n var codePoint = Number(arguments[index])\n if (\n !isFinite(codePoint) || // `NaN`, `+Infinity`, or `-Infinity`\n codePoint < 0 || // not a valid Unicode code point\n codePoint > 0x10FFFF || // not a valid Unicode code point\n floor(codePoint) !== codePoint // not an integer\n ) {\n throw RangeError('Invalid code point: ' + codePoint)\n }\n if (codePoint <= 0xFFFF) { // BMP code point\n codeUnits.push(codePoint)\n } else { // Astral code point; split in surrogate halves\n // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n codePoint -= 0x10000\n highSurrogate = (codePoint >> 10) + 0xD800\n lowSurrogate = (codePoint % 0x400) + 0xDC00\n codeUnits.push(highSurrogate, lowSurrogate)\n }\n if (index + 1 === length || codeUnits.length > MAX_SIZE) {\n result += stringFromCharCode.apply(null, codeUnits)\n codeUnits.length = 0\n }\n }\n return result\n }\n /* istanbul ignore next */\n if (Object.defineProperty) {\n Object.defineProperty(String, 'fromCodePoint', {\n value: fromCodePoint,\n configurable: true,\n writable: true\n })\n } else {\n String.fromCodePoint = fromCodePoint\n }\n }())\n }\n})(typeof exports === 'undefined' ? this.sax = {} : exports)\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","// @flow\n\n/*::\ntype Options = {\n max?: number,\n min?: number,\n historyTimeConstant?: number,\n autostart?: boolean,\n ignoreSameProgress?: boolean,\n}\n*/\n\nfunction makeLowPassFilter(RC/*: number*/) {\n return function (previousOutput, input, dt) {\n const alpha = dt / (dt + RC);\n return previousOutput + alpha * (input - previousOutput);\n }\n}\n\nfunction def/*:: <T>*/(x/*: ?T*/, d/*: T*/)/*: T*/ {\n return (x === undefined || x === null) ? d : x;\n}\n\nfunction makeEta(options/*::?: Options */) {\n options = options || {};\n var max = def(options.max, 1);\n var min = def(options.min, 0);\n var autostart = def(options.autostart, true);\n var ignoreSameProgress = def(options.ignoreSameProgress, false);\n\n var rate/*: number | null */ = null;\n var lastTimestamp/*: number | null */ = null;\n var lastProgress/*: number | null */ = null;\n\n var filter = makeLowPassFilter(def(options.historyTimeConstant, 2.5));\n\n function start() {\n report(min);\n }\n\n function reset() {\n rate = null;\n lastTimestamp = null;\n lastProgress = null;\n if (autostart) {\n start();\n }\n }\n\n function report(progress /*: number */, timestamp/*::?: number */) {\n if (typeof timestamp !== 'number') {\n timestamp = Date.now();\n }\n\n if (lastTimestamp === timestamp) { return; }\n if (ignoreSameProgress && lastProgress === progress) { return; }\n\n if (lastTimestamp === null || lastProgress === null) {\n lastProgress = progress;\n lastTimestamp = timestamp;\n return;\n }\n\n var deltaProgress = progress - lastProgress;\n var deltaTimestamp = 0.001 * (timestamp - lastTimestamp);\n var currentRate = deltaProgress / deltaTimestamp;\n\n rate = rate === null\n ? currentRate\n : filter(rate, currentRate, deltaTimestamp);\n lastProgress = progress;\n lastTimestamp = timestamp;\n }\n\n function estimate(timestamp/*::?: number*/) {\n if (lastProgress === null) { return Infinity; }\n if (lastProgress >= max) { return 0; }\n if (rate === null) { return Infinity; }\n\n var estimatedTime = (max - lastProgress) / rate;\n if (typeof timestamp === 'number' && typeof lastTimestamp === 'number') {\n estimatedTime -= (timestamp - lastTimestamp) * 0.001;\n }\n return Math.max(0, estimatedTime);\n }\n\n function getRate() {\n return rate === null ? 0 : rate;\n }\n\n return {\n start: start,\n reset: reset,\n report: report,\n estimate: estimate,\n rate: getRate,\n }\n}\n\nmodule.exports = makeEta;\n","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n exports.stripBOM = function(str) {\n if (str[0] === '\\uFEFF') {\n return str.substring(1);\n } else {\n return str;\n }\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var builder, defaults, escapeCDATA, requiresCDATA, wrapCDATA,\n hasProp = {}.hasOwnProperty;\n\n builder = require('xmlbuilder');\n\n defaults = require('./defaults').defaults;\n\n requiresCDATA = function(entry) {\n return typeof entry === \"string\" && (entry.indexOf('&') >= 0 || entry.indexOf('>') >= 0 || entry.indexOf('<') >= 0);\n };\n\n wrapCDATA = function(entry) {\n return \"<![CDATA[\" + (escapeCDATA(entry)) + \"]]>\";\n };\n\n escapeCDATA = function(entry) {\n return entry.replace(']]>', ']]]]><![CDATA[>');\n };\n\n exports.Builder = (function() {\n function Builder(opts) {\n var key, ref, value;\n this.options = {};\n ref = defaults[\"0.2\"];\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this.options[key] = value;\n }\n for (key in opts) {\n if (!hasProp.call(opts, key)) continue;\n value = opts[key];\n this.options[key] = value;\n }\n }\n\n Builder.prototype.buildObject = function(rootObj) {\n var attrkey, charkey, render, rootElement, rootName;\n attrkey = this.options.attrkey;\n charkey = this.options.charkey;\n if ((Object.keys(rootObj).length === 1) && (this.options.rootName === defaults['0.2'].rootName)) {\n rootName = Object.keys(rootObj)[0];\n rootObj = rootObj[rootName];\n } else {\n rootName = this.options.rootName;\n }\n render = (function(_this) {\n return function(element, obj) {\n var attr, child, entry, index, key, value;\n if (typeof obj !== 'object') {\n if (_this.options.cdata && requiresCDATA(obj)) {\n element.raw(wrapCDATA(obj));\n } else {\n element.txt(obj);\n }\n } else if (Array.isArray(obj)) {\n for (index in obj) {\n if (!hasProp.call(obj, index)) continue;\n child = obj[index];\n for (key in child) {\n entry = child[key];\n element = render(element.ele(key), entry).up();\n }\n }\n } else {\n for (key in obj) {\n if (!hasProp.call(obj, key)) continue;\n child = obj[key];\n if (key === attrkey) {\n if (typeof child === \"object\") {\n for (attr in child) {\n value = child[attr];\n element = element.att(attr, value);\n }\n }\n } else if (key === charkey) {\n if (_this.options.cdata && requiresCDATA(child)) {\n element = element.raw(wrapCDATA(child));\n } else {\n element = element.txt(child);\n }\n } else if (Array.isArray(child)) {\n for (index in child) {\n if (!hasProp.call(child, index)) continue;\n entry = child[index];\n if (typeof entry === 'string') {\n if (_this.options.cdata && requiresCDATA(entry)) {\n element = element.ele(key).raw(wrapCDATA(entry)).up();\n } else {\n element = element.ele(key, entry).up();\n }\n } else {\n element = render(element.ele(key), entry).up();\n }\n }\n } else if (typeof child === \"object\") {\n element = render(element.ele(key), child).up();\n } else {\n if (typeof child === 'string' && _this.options.cdata && requiresCDATA(child)) {\n element = element.ele(key).raw(wrapCDATA(child)).up();\n } else {\n if (child == null) {\n child = '';\n }\n element = element.ele(key, child.toString()).up();\n }\n }\n }\n }\n return element;\n };\n })(this);\n rootElement = builder.create(rootName, this.options.xmldec, this.options.doctype, {\n headless: this.options.headless,\n allowSurrogateChars: this.options.allowSurrogateChars\n });\n return render(rootElement, rootObj).end(this.options.renderOpts);\n };\n\n return Builder;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n exports.defaults = {\n \"0.1\": {\n explicitCharkey: false,\n trim: true,\n normalize: true,\n normalizeTags: false,\n attrkey: \"@\",\n charkey: \"#\",\n explicitArray: false,\n ignoreAttrs: false,\n mergeAttrs: false,\n explicitRoot: false,\n validator: null,\n xmlns: false,\n explicitChildren: false,\n childkey: '@@',\n charsAsChildren: false,\n includeWhiteChars: false,\n async: false,\n strict: true,\n attrNameProcessors: null,\n attrValueProcessors: null,\n tagNameProcessors: null,\n valueProcessors: null,\n emptyTag: ''\n },\n \"0.2\": {\n explicitCharkey: false,\n trim: false,\n normalize: false,\n normalizeTags: false,\n attrkey: \"$\",\n charkey: \"_\",\n explicitArray: true,\n ignoreAttrs: false,\n mergeAttrs: false,\n explicitRoot: true,\n validator: null,\n xmlns: false,\n explicitChildren: false,\n preserveChildrenOrder: false,\n childkey: '$$',\n charsAsChildren: false,\n includeWhiteChars: false,\n async: false,\n strict: true,\n attrNameProcessors: null,\n attrValueProcessors: null,\n tagNameProcessors: null,\n valueProcessors: null,\n rootName: 'root',\n xmldec: {\n 'version': '1.0',\n 'encoding': 'UTF-8',\n 'standalone': true\n },\n doctype: null,\n renderOpts: {\n 'pretty': true,\n 'indent': ' ',\n 'newline': '\\n'\n },\n headless: false,\n chunkSize: 10000,\n emptyTag: '',\n cdata: false\n }\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var bom, defaults, defineProperty, events, isEmpty, processItem, processors, sax, setImmediate,\n bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n sax = require('sax');\n\n events = require('events');\n\n bom = require('./bom');\n\n processors = require('./processors');\n\n setImmediate = require('timers').setImmediate;\n\n defaults = require('./defaults').defaults;\n\n isEmpty = function(thing) {\n return typeof thing === \"object\" && (thing != null) && Object.keys(thing).length === 0;\n };\n\n processItem = function(processors, item, key) {\n var i, len, process;\n for (i = 0, len = processors.length; i < len; i++) {\n process = processors[i];\n item = process(item, key);\n }\n return item;\n };\n\n defineProperty = function(obj, key, value) {\n var descriptor;\n descriptor = Object.create(null);\n descriptor.value = value;\n descriptor.writable = true;\n descriptor.enumerable = true;\n descriptor.configurable = true;\n return Object.defineProperty(obj, key, descriptor);\n };\n\n exports.Parser = (function(superClass) {\n extend(Parser, superClass);\n\n function Parser(opts) {\n this.parseStringPromise = bind(this.parseStringPromise, this);\n this.parseString = bind(this.parseString, this);\n this.reset = bind(this.reset, this);\n this.assignOrPush = bind(this.assignOrPush, this);\n this.processAsync = bind(this.processAsync, this);\n var key, ref, value;\n if (!(this instanceof exports.Parser)) {\n return new exports.Parser(opts);\n }\n this.options = {};\n ref = defaults[\"0.2\"];\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this.options[key] = value;\n }\n for (key in opts) {\n if (!hasProp.call(opts, key)) continue;\n value = opts[key];\n this.options[key] = value;\n }\n if (this.options.xmlns) {\n this.options.xmlnskey = this.options.attrkey + \"ns\";\n }\n if (this.options.normalizeTags) {\n if (!this.options.tagNameProcessors) {\n this.options.tagNameProcessors = [];\n }\n this.options.tagNameProcessors.unshift(processors.normalize);\n }\n this.reset();\n }\n\n Parser.prototype.processAsync = function() {\n var chunk, err;\n try {\n if (this.remaining.length <= this.options.chunkSize) {\n chunk = this.remaining;\n this.remaining = '';\n this.saxParser = this.saxParser.write(chunk);\n return this.saxParser.close();\n } else {\n chunk = this.remaining.substr(0, this.options.chunkSize);\n this.remaining = this.remaining.substr(this.options.chunkSize, this.remaining.length);\n this.saxParser = this.saxParser.write(chunk);\n return setImmediate(this.processAsync);\n }\n } catch (error1) {\n err = error1;\n if (!this.saxParser.errThrown) {\n this.saxParser.errThrown = true;\n return this.emit(err);\n }\n }\n };\n\n Parser.prototype.assignOrPush = function(obj, key, newValue) {\n if (!(key in obj)) {\n if (!this.options.explicitArray) {\n return defineProperty(obj, key, newValue);\n } else {\n return defineProperty(obj, key, [newValue]);\n }\n } else {\n if (!(obj[key] instanceof Array)) {\n defineProperty(obj, key, [obj[key]]);\n }\n return obj[key].push(newValue);\n }\n };\n\n Parser.prototype.reset = function() {\n var attrkey, charkey, ontext, stack;\n this.removeAllListeners();\n this.saxParser = sax.parser(this.options.strict, {\n trim: false,\n normalize: false,\n xmlns: this.options.xmlns\n });\n this.saxParser.errThrown = false;\n this.saxParser.onerror = (function(_this) {\n return function(error) {\n _this.saxParser.resume();\n if (!_this.saxParser.errThrown) {\n _this.saxParser.errThrown = true;\n return _this.emit(\"error\", error);\n }\n };\n })(this);\n this.saxParser.onend = (function(_this) {\n return function() {\n if (!_this.saxParser.ended) {\n _this.saxParser.ended = true;\n return _this.emit(\"end\", _this.resultObject);\n }\n };\n })(this);\n this.saxParser.ended = false;\n this.EXPLICIT_CHARKEY = this.options.explicitCharkey;\n this.resultObject = null;\n stack = [];\n attrkey = this.options.attrkey;\n charkey = this.options.charkey;\n this.saxParser.onopentag = (function(_this) {\n return function(node) {\n var key, newValue, obj, processedKey, ref;\n obj = {};\n obj[charkey] = \"\";\n if (!_this.options.ignoreAttrs) {\n ref = node.attributes;\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n if (!(attrkey in obj) && !_this.options.mergeAttrs) {\n obj[attrkey] = {};\n }\n newValue = _this.options.attrValueProcessors ? processItem(_this.options.attrValueProcessors, node.attributes[key], key) : node.attributes[key];\n processedKey = _this.options.attrNameProcessors ? processItem(_this.options.attrNameProcessors, key) : key;\n if (_this.options.mergeAttrs) {\n _this.assignOrPush(obj, processedKey, newValue);\n } else {\n defineProperty(obj[attrkey], processedKey, newValue);\n }\n }\n }\n obj[\"#name\"] = _this.options.tagNameProcessors ? processItem(_this.options.tagNameProcessors, node.name) : node.name;\n if (_this.options.xmlns) {\n obj[_this.options.xmlnskey] = {\n uri: node.uri,\n local: node.local\n };\n }\n return stack.push(obj);\n };\n })(this);\n this.saxParser.onclosetag = (function(_this) {\n return function() {\n var cdata, emptyStr, key, node, nodeName, obj, objClone, old, s, xpath;\n obj = stack.pop();\n nodeName = obj[\"#name\"];\n if (!_this.options.explicitChildren || !_this.options.preserveChildrenOrder) {\n delete obj[\"#name\"];\n }\n if (obj.cdata === true) {\n cdata = obj.cdata;\n delete obj.cdata;\n }\n s = stack[stack.length - 1];\n if (obj[charkey].match(/^\\s*$/) && !cdata) {\n emptyStr = obj[charkey];\n delete obj[charkey];\n } else {\n if (_this.options.trim) {\n obj[charkey] = obj[charkey].trim();\n }\n if (_this.options.normalize) {\n obj[charkey] = obj[charkey].replace(/\\s{2,}/g, \" \").trim();\n }\n obj[charkey] = _this.options.valueProcessors ? processItem(_this.options.valueProcessors, obj[charkey], nodeName) : obj[charkey];\n if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {\n obj = obj[charkey];\n }\n }\n if (isEmpty(obj)) {\n if (typeof _this.options.emptyTag === 'function') {\n obj = _this.options.emptyTag();\n } else {\n obj = _this.options.emptyTag !== '' ? _this.options.emptyTag : emptyStr;\n }\n }\n if (_this.options.validator != null) {\n xpath = \"/\" + ((function() {\n var i, len, results;\n results = [];\n for (i = 0, len = stack.length; i < len; i++) {\n node = stack[i];\n results.push(node[\"#name\"]);\n }\n return results;\n })()).concat(nodeName).join(\"/\");\n (function() {\n var err;\n try {\n return obj = _this.options.validator(xpath, s && s[nodeName], obj);\n } catch (error1) {\n err = error1;\n return _this.emit(\"error\", err);\n }\n })();\n }\n if (_this.options.explicitChildren && !_this.options.mergeAttrs && typeof obj === 'object') {\n if (!_this.options.preserveChildrenOrder) {\n node = {};\n if (_this.options.attrkey in obj) {\n node[_this.options.attrkey] = obj[_this.options.attrkey];\n delete obj[_this.options.attrkey];\n }\n if (!_this.options.charsAsChildren && _this.options.charkey in obj) {\n node[_this.options.charkey] = obj[_this.options.charkey];\n delete obj[_this.options.charkey];\n }\n if (Object.getOwnPropertyNames(obj).length > 0) {\n node[_this.options.childkey] = obj;\n }\n obj = node;\n } else if (s) {\n s[_this.options.childkey] = s[_this.options.childkey] || [];\n objClone = {};\n for (key in obj) {\n if (!hasProp.call(obj, key)) continue;\n defineProperty(objClone, key, obj[key]);\n }\n s[_this.options.childkey].push(objClone);\n delete obj[\"#name\"];\n if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {\n obj = obj[charkey];\n }\n }\n }\n if (stack.length > 0) {\n return _this.assignOrPush(s, nodeName, obj);\n } else {\n if (_this.options.explicitRoot) {\n old = obj;\n obj = {};\n defineProperty(obj, nodeName, old);\n }\n _this.resultObject = obj;\n _this.saxParser.ended = true;\n return _this.emit(\"end\", _this.resultObject);\n }\n };\n })(this);\n ontext = (function(_this) {\n return function(text) {\n var charChild, s;\n s = stack[stack.length - 1];\n if (s) {\n s[charkey] += text;\n if (_this.options.explicitChildren && _this.options.preserveChildrenOrder && _this.options.charsAsChildren && (_this.options.includeWhiteChars || text.replace(/\\\\n/g, '').trim() !== '')) {\n s[_this.options.childkey] = s[_this.options.childkey] || [];\n charChild = {\n '#name': '__text__'\n };\n charChild[charkey] = text;\n if (_this.options.normalize) {\n charChild[charkey] = charChild[charkey].replace(/\\s{2,}/g, \" \").trim();\n }\n s[_this.options.childkey].push(charChild);\n }\n return s;\n }\n };\n })(this);\n this.saxParser.ontext = ontext;\n return this.saxParser.oncdata = (function(_this) {\n return function(text) {\n var s;\n s = ontext(text);\n if (s) {\n return s.cdata = true;\n }\n };\n })(this);\n };\n\n Parser.prototype.parseString = function(str, cb) {\n var err;\n if ((cb != null) && typeof cb === \"function\") {\n this.on(\"end\", function(result) {\n this.reset();\n return cb(null, result);\n });\n this.on(\"error\", function(err) {\n this.reset();\n return cb(err);\n });\n }\n try {\n str = str.toString();\n if (str.trim() === '') {\n this.emit(\"end\", null);\n return true;\n }\n str = bom.stripBOM(str);\n if (this.options.async) {\n this.remaining = str;\n setImmediate(this.processAsync);\n return this.saxParser;\n }\n return this.saxParser.write(str).close();\n } catch (error1) {\n err = error1;\n if (!(this.saxParser.errThrown || this.saxParser.ended)) {\n this.emit('error', err);\n return this.saxParser.errThrown = true;\n } else if (this.saxParser.ended) {\n throw err;\n }\n }\n };\n\n Parser.prototype.parseStringPromise = function(str) {\n return new Promise((function(_this) {\n return function(resolve, reject) {\n return _this.parseString(str, function(err, value) {\n if (err) {\n return reject(err);\n } else {\n return resolve(value);\n }\n });\n };\n })(this));\n };\n\n return Parser;\n\n })(events);\n\n exports.parseString = function(str, a, b) {\n var cb, options, parser;\n if (b != null) {\n if (typeof b === 'function') {\n cb = b;\n }\n if (typeof a === 'object') {\n options = a;\n }\n } else {\n if (typeof a === 'function') {\n cb = a;\n }\n options = {};\n }\n parser = new exports.Parser(options);\n return parser.parseString(str, cb);\n };\n\n exports.parseStringPromise = function(str, a) {\n var options, parser;\n if (typeof a === 'object') {\n options = a;\n }\n parser = new exports.Parser(options);\n return parser.parseStringPromise(str);\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var prefixMatch;\n\n prefixMatch = new RegExp(/(?!xmlns)^.*:/);\n\n exports.normalize = function(str) {\n return str.toLowerCase();\n };\n\n exports.firstCharLowerCase = function(str) {\n return str.charAt(0).toLowerCase() + str.slice(1);\n };\n\n exports.stripPrefix = function(str) {\n return str.replace(prefixMatch, '');\n };\n\n exports.parseNumbers = function(str) {\n if (!isNaN(str)) {\n str = str % 1 === 0 ? parseInt(str, 10) : parseFloat(str);\n }\n return str;\n };\n\n exports.parseBooleans = function(str) {\n if (/^(?:true|false)$/i.test(str)) {\n str = str.toLowerCase() === 'true';\n }\n return str;\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var builder, defaults, parser, processors,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n defaults = require('./defaults');\n\n builder = require('./builder');\n\n parser = require('./parser');\n\n processors = require('./processors');\n\n exports.defaults = defaults.defaults;\n\n exports.processors = processors;\n\n exports.ValidationError = (function(superClass) {\n extend(ValidationError, superClass);\n\n function ValidationError(message) {\n this.message = message;\n }\n\n return ValidationError;\n\n })(Error);\n\n exports.Builder = builder.Builder;\n\n exports.Parser = parser.Parser;\n\n exports.parseString = parser.parseString;\n\n exports.parseStringPromise = parser.parseStringPromise;\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n Disconnected: 1,\n Preceding: 2,\n Following: 4,\n Contains: 8,\n ContainedBy: 16,\n ImplementationSpecific: 32\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n Element: 1,\n Attribute: 2,\n Text: 3,\n CData: 4,\n EntityReference: 5,\n EntityDeclaration: 6,\n ProcessingInstruction: 7,\n Comment: 8,\n Document: 9,\n DocType: 10,\n DocumentFragment: 11,\n NotationDeclaration: 12,\n Declaration: 201,\n Raw: 202,\n AttributeDeclaration: 203,\n ElementDeclaration: 204,\n Dummy: 205\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var assign, getValue, isArray, isEmpty, isFunction, isObject, isPlainObject,\n slice = [].slice,\n hasProp = {}.hasOwnProperty;\n\n assign = function() {\n var i, key, len, source, sources, target;\n target = arguments[0], sources = 2 <= arguments.length ? slice.call(arguments, 1) : [];\n if (isFunction(Object.assign)) {\n Object.assign.apply(null, arguments);\n } else {\n for (i = 0, len = sources.length; i < len; i++) {\n source = sources[i];\n if (source != null) {\n for (key in source) {\n if (!hasProp.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n }\n }\n return target;\n };\n\n isFunction = function(val) {\n return !!val && Object.prototype.toString.call(val) === '[object Function]';\n };\n\n isObject = function(val) {\n var ref;\n return !!val && ((ref = typeof val) === 'function' || ref === 'object');\n };\n\n isArray = function(val) {\n if (isFunction(Array.isArray)) {\n return Array.isArray(val);\n } else {\n return Object.prototype.toString.call(val) === '[object Array]';\n }\n };\n\n isEmpty = function(val) {\n var key;\n if (isArray(val)) {\n return !val.length;\n } else {\n for (key in val) {\n if (!hasProp.call(val, key)) continue;\n return false;\n }\n return true;\n }\n };\n\n isPlainObject = function(val) {\n var ctor, proto;\n return isObject(val) && (proto = Object.getPrototypeOf(val)) && (ctor = proto.constructor) && (typeof ctor === 'function') && (ctor instanceof ctor) && (Function.prototype.toString.call(ctor) === Function.prototype.toString.call(Object));\n };\n\n getValue = function(obj) {\n if (isFunction(obj.valueOf)) {\n return obj.valueOf();\n } else {\n return obj;\n }\n };\n\n module.exports.assign = assign;\n\n module.exports.isFunction = isFunction;\n\n module.exports.isObject = isObject;\n\n module.exports.isArray = isArray;\n\n module.exports.isEmpty = isEmpty;\n\n module.exports.isPlainObject = isPlainObject;\n\n module.exports.getValue = getValue;\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n None: 0,\n OpenTag: 1,\n InsideTag: 2,\n CloseTag: 3\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLAttribute, XMLNode;\n\n NodeType = require('./NodeType');\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLAttribute = (function() {\n function XMLAttribute(parent, name, value) {\n this.parent = parent;\n if (this.parent) {\n this.options = this.parent.options;\n this.stringify = this.parent.stringify;\n }\n if (name == null) {\n throw new Error(\"Missing attribute name. \" + this.debugInfo(name));\n }\n this.name = this.stringify.name(name);\n this.value = this.stringify.attValue(value);\n this.type = NodeType.Attribute;\n this.isId = false;\n this.schemaTypeInfo = null;\n }\n\n Object.defineProperty(XMLAttribute.prototype, 'nodeType', {\n get: function() {\n return this.type;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'ownerElement', {\n get: function() {\n return this.parent;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'textContent', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'namespaceURI', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'prefix', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'localName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'specified', {\n get: function() {\n return true;\n }\n });\n\n XMLAttribute.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLAttribute.prototype.toString = function(options) {\n return this.options.writer.attribute(this, this.options.writer.filterOptions(options));\n };\n\n XMLAttribute.prototype.debugInfo = function(name) {\n name = name || this.name;\n if (name == null) {\n return \"parent: <\" + this.parent.name + \">\";\n } else {\n return \"attribute: {\" + name + \"}, parent: <\" + this.parent.name + \">\";\n }\n };\n\n XMLAttribute.prototype.isEqualNode = function(node) {\n if (node.namespaceURI !== this.namespaceURI) {\n return false;\n }\n if (node.prefix !== this.prefix) {\n return false;\n }\n if (node.localName !== this.localName) {\n return false;\n }\n if (node.value !== this.value) {\n return false;\n }\n return true;\n };\n\n return XMLAttribute;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCData, XMLCharacterData,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLCData = (function(superClass) {\n extend(XMLCData, superClass);\n\n function XMLCData(parent, text) {\n XMLCData.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing CDATA text. \" + this.debugInfo());\n }\n this.name = \"#cdata-section\";\n this.type = NodeType.CData;\n this.value = this.stringify.cdata(text);\n }\n\n XMLCData.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLCData.prototype.toString = function(options) {\n return this.options.writer.cdata(this, this.options.writer.filterOptions(options));\n };\n\n return XMLCData;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLCharacterData, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLCharacterData = (function(superClass) {\n extend(XMLCharacterData, superClass);\n\n function XMLCharacterData(parent) {\n XMLCharacterData.__super__.constructor.call(this, parent);\n this.value = '';\n }\n\n Object.defineProperty(XMLCharacterData.prototype, 'data', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n Object.defineProperty(XMLCharacterData.prototype, 'length', {\n get: function() {\n return this.value.length;\n }\n });\n\n Object.defineProperty(XMLCharacterData.prototype, 'textContent', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n XMLCharacterData.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLCharacterData.prototype.substringData = function(offset, count) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.appendData = function(arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.insertData = function(offset, arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.deleteData = function(offset, count) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.replaceData = function(offset, count, arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.isEqualNode = function(node) {\n if (!XMLCharacterData.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.data !== this.data) {\n return false;\n }\n return true;\n };\n\n return XMLCharacterData;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLComment,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLComment = (function(superClass) {\n extend(XMLComment, superClass);\n\n function XMLComment(parent, text) {\n XMLComment.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing comment text. \" + this.debugInfo());\n }\n this.name = \"#comment\";\n this.type = NodeType.Comment;\n this.value = this.stringify.comment(text);\n }\n\n XMLComment.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLComment.prototype.toString = function(options) {\n return this.options.writer.comment(this, this.options.writer.filterOptions(options));\n };\n\n return XMLComment;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMConfiguration, XMLDOMErrorHandler, XMLDOMStringList;\n\n XMLDOMErrorHandler = require('./XMLDOMErrorHandler');\n\n XMLDOMStringList = require('./XMLDOMStringList');\n\n module.exports = XMLDOMConfiguration = (function() {\n function XMLDOMConfiguration() {\n var clonedSelf;\n this.defaultParams = {\n \"canonical-form\": false,\n \"cdata-sections\": false,\n \"comments\": false,\n \"datatype-normalization\": false,\n \"element-content-whitespace\": true,\n \"entities\": true,\n \"error-handler\": new XMLDOMErrorHandler(),\n \"infoset\": true,\n \"validate-if-schema\": false,\n \"namespaces\": true,\n \"namespace-declarations\": true,\n \"normalize-characters\": false,\n \"schema-location\": '',\n \"schema-type\": '',\n \"split-cdata-sections\": true,\n \"validate\": false,\n \"well-formed\": true\n };\n this.params = clonedSelf = Object.create(this.defaultParams);\n }\n\n Object.defineProperty(XMLDOMConfiguration.prototype, 'parameterNames', {\n get: function() {\n return new XMLDOMStringList(Object.keys(this.defaultParams));\n }\n });\n\n XMLDOMConfiguration.prototype.getParameter = function(name) {\n if (this.params.hasOwnProperty(name)) {\n return this.params[name];\n } else {\n return null;\n }\n };\n\n XMLDOMConfiguration.prototype.canSetParameter = function(name, value) {\n return true;\n };\n\n XMLDOMConfiguration.prototype.setParameter = function(name, value) {\n if (value != null) {\n return this.params[name] = value;\n } else {\n return delete this.params[name];\n }\n };\n\n return XMLDOMConfiguration;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMErrorHandler;\n\n module.exports = XMLDOMErrorHandler = (function() {\n function XMLDOMErrorHandler() {}\n\n XMLDOMErrorHandler.prototype.handleError = function(error) {\n throw new Error(error);\n };\n\n return XMLDOMErrorHandler;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMImplementation;\n\n module.exports = XMLDOMImplementation = (function() {\n function XMLDOMImplementation() {}\n\n XMLDOMImplementation.prototype.hasFeature = function(feature, version) {\n return true;\n };\n\n XMLDOMImplementation.prototype.createDocumentType = function(qualifiedName, publicId, systemId) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.createDocument = function(namespaceURI, qualifiedName, doctype) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.createHTMLDocument = function(title) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.getFeature = function(feature, version) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n return XMLDOMImplementation;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMStringList;\n\n module.exports = XMLDOMStringList = (function() {\n function XMLDOMStringList(arr) {\n this.arr = arr || [];\n }\n\n Object.defineProperty(XMLDOMStringList.prototype, 'length', {\n get: function() {\n return this.arr.length;\n }\n });\n\n XMLDOMStringList.prototype.item = function(index) {\n return this.arr[index] || null;\n };\n\n XMLDOMStringList.prototype.contains = function(str) {\n return this.arr.indexOf(str) !== -1;\n };\n\n return XMLDOMStringList;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDAttList, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDAttList = (function(superClass) {\n extend(XMLDTDAttList, superClass);\n\n function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n XMLDTDAttList.__super__.constructor.call(this, parent);\n if (elementName == null) {\n throw new Error(\"Missing DTD element name. \" + this.debugInfo());\n }\n if (attributeName == null) {\n throw new Error(\"Missing DTD attribute name. \" + this.debugInfo(elementName));\n }\n if (!attributeType) {\n throw new Error(\"Missing DTD attribute type. \" + this.debugInfo(elementName));\n }\n if (!defaultValueType) {\n throw new Error(\"Missing DTD attribute default. \" + this.debugInfo(elementName));\n }\n if (defaultValueType.indexOf('#') !== 0) {\n defaultValueType = '#' + defaultValueType;\n }\n if (!defaultValueType.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/)) {\n throw new Error(\"Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. \" + this.debugInfo(elementName));\n }\n if (defaultValue && !defaultValueType.match(/^(#FIXED|#DEFAULT)$/)) {\n throw new Error(\"Default value only applies to #FIXED or #DEFAULT. \" + this.debugInfo(elementName));\n }\n this.elementName = this.stringify.name(elementName);\n this.type = NodeType.AttributeDeclaration;\n this.attributeName = this.stringify.name(attributeName);\n this.attributeType = this.stringify.dtdAttType(attributeType);\n if (defaultValue) {\n this.defaultValue = this.stringify.dtdAttDefault(defaultValue);\n }\n this.defaultValueType = defaultValueType;\n }\n\n XMLDTDAttList.prototype.toString = function(options) {\n return this.options.writer.dtdAttList(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDAttList;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDElement, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDElement = (function(superClass) {\n extend(XMLDTDElement, superClass);\n\n function XMLDTDElement(parent, name, value) {\n XMLDTDElement.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD element name. \" + this.debugInfo());\n }\n if (!value) {\n value = '(#PCDATA)';\n }\n if (Array.isArray(value)) {\n value = '(' + value.join(',') + ')';\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.ElementDeclaration;\n this.value = this.stringify.dtdElementValue(value);\n }\n\n XMLDTDElement.prototype.toString = function(options) {\n return this.options.writer.dtdElement(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDElement;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDEntity, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDEntity = (function(superClass) {\n extend(XMLDTDEntity, superClass);\n\n function XMLDTDEntity(parent, pe, name, value) {\n XMLDTDEntity.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD entity name. \" + this.debugInfo(name));\n }\n if (value == null) {\n throw new Error(\"Missing DTD entity value. \" + this.debugInfo(name));\n }\n this.pe = !!pe;\n this.name = this.stringify.name(name);\n this.type = NodeType.EntityDeclaration;\n if (!isObject(value)) {\n this.value = this.stringify.dtdEntityValue(value);\n this.internal = true;\n } else {\n if (!value.pubID && !value.sysID) {\n throw new Error(\"Public and/or system identifiers are required for an external entity. \" + this.debugInfo(name));\n }\n if (value.pubID && !value.sysID) {\n throw new Error(\"System identifier is required for a public external entity. \" + this.debugInfo(name));\n }\n this.internal = false;\n if (value.pubID != null) {\n this.pubID = this.stringify.dtdPubID(value.pubID);\n }\n if (value.sysID != null) {\n this.sysID = this.stringify.dtdSysID(value.sysID);\n }\n if (value.nData != null) {\n this.nData = this.stringify.dtdNData(value.nData);\n }\n if (this.pe && this.nData) {\n throw new Error(\"Notation declaration is not allowed in a parameter entity. \" + this.debugInfo(name));\n }\n }\n }\n\n Object.defineProperty(XMLDTDEntity.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'notationName', {\n get: function() {\n return this.nData || null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'inputEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'xmlEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'xmlVersion', {\n get: function() {\n return null;\n }\n });\n\n XMLDTDEntity.prototype.toString = function(options) {\n return this.options.writer.dtdEntity(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDEntity;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDNotation, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDNotation = (function(superClass) {\n extend(XMLDTDNotation, superClass);\n\n function XMLDTDNotation(parent, name, value) {\n XMLDTDNotation.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD notation name. \" + this.debugInfo(name));\n }\n if (!value.pubID && !value.sysID) {\n throw new Error(\"Public or system identifiers are required for an external entity. \" + this.debugInfo(name));\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.NotationDeclaration;\n if (value.pubID != null) {\n this.pubID = this.stringify.dtdPubID(value.pubID);\n }\n if (value.sysID != null) {\n this.sysID = this.stringify.dtdSysID(value.sysID);\n }\n }\n\n Object.defineProperty(XMLDTDNotation.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDTDNotation.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n XMLDTDNotation.prototype.toString = function(options) {\n return this.options.writer.dtdNotation(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDNotation;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDeclaration, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDeclaration = (function(superClass) {\n extend(XMLDeclaration, superClass);\n\n function XMLDeclaration(parent, version, encoding, standalone) {\n var ref;\n XMLDeclaration.__super__.constructor.call(this, parent);\n if (isObject(version)) {\n ref = version, version = ref.version, encoding = ref.encoding, standalone = ref.standalone;\n }\n if (!version) {\n version = '1.0';\n }\n this.type = NodeType.Declaration;\n this.version = this.stringify.xmlVersion(version);\n if (encoding != null) {\n this.encoding = this.stringify.xmlEncoding(encoding);\n }\n if (standalone != null) {\n this.standalone = this.stringify.xmlStandalone(standalone);\n }\n }\n\n XMLDeclaration.prototype.toString = function(options) {\n return this.options.writer.declaration(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDeclaration;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLNamedNodeMap, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n\n module.exports = XMLDocType = (function(superClass) {\n extend(XMLDocType, superClass);\n\n function XMLDocType(parent, pubID, sysID) {\n var child, i, len, ref, ref1, ref2;\n XMLDocType.__super__.constructor.call(this, parent);\n this.type = NodeType.DocType;\n if (parent.children) {\n ref = parent.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.Element) {\n this.name = child.name;\n break;\n }\n }\n }\n this.documentObject = parent;\n if (isObject(pubID)) {\n ref1 = pubID, pubID = ref1.pubID, sysID = ref1.sysID;\n }\n if (sysID == null) {\n ref2 = [pubID, sysID], sysID = ref2[0], pubID = ref2[1];\n }\n if (pubID != null) {\n this.pubID = this.stringify.dtdPubID(pubID);\n }\n if (sysID != null) {\n this.sysID = this.stringify.dtdSysID(sysID);\n }\n }\n\n Object.defineProperty(XMLDocType.prototype, 'entities', {\n get: function() {\n var child, i, len, nodes, ref;\n nodes = {};\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if ((child.type === NodeType.EntityDeclaration) && !child.pe) {\n nodes[child.name] = child;\n }\n }\n return new XMLNamedNodeMap(nodes);\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'notations', {\n get: function() {\n var child, i, len, nodes, ref;\n nodes = {};\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.NotationDeclaration) {\n nodes[child.name] = child;\n }\n }\n return new XMLNamedNodeMap(nodes);\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'internalSubset', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n XMLDocType.prototype.element = function(name, value) {\n var child;\n child = new XMLDTDElement(this, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n var child;\n child = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.entity = function(name, value) {\n var child;\n child = new XMLDTDEntity(this, false, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.pEntity = function(name, value) {\n var child;\n child = new XMLDTDEntity(this, true, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.notation = function(name, value) {\n var child;\n child = new XMLDTDNotation(this, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.toString = function(options) {\n return this.options.writer.docType(this, this.options.writer.filterOptions(options));\n };\n\n XMLDocType.prototype.ele = function(name, value) {\n return this.element(name, value);\n };\n\n XMLDocType.prototype.att = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n return this.attList(elementName, attributeName, attributeType, defaultValueType, defaultValue);\n };\n\n XMLDocType.prototype.ent = function(name, value) {\n return this.entity(name, value);\n };\n\n XMLDocType.prototype.pent = function(name, value) {\n return this.pEntity(name, value);\n };\n\n XMLDocType.prototype.not = function(name, value) {\n return this.notation(name, value);\n };\n\n XMLDocType.prototype.up = function() {\n return this.root() || this.documentObject;\n };\n\n XMLDocType.prototype.isEqualNode = function(node) {\n if (!XMLDocType.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.name !== this.name) {\n return false;\n }\n if (node.publicId !== this.publicId) {\n return false;\n }\n if (node.systemId !== this.systemId) {\n return false;\n }\n return true;\n };\n\n return XMLDocType;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDOMConfiguration, XMLDOMImplementation, XMLDocument, XMLNode, XMLStringWriter, XMLStringifier, isPlainObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isPlainObject = require('./Utility').isPlainObject;\n\n XMLDOMImplementation = require('./XMLDOMImplementation');\n\n XMLDOMConfiguration = require('./XMLDOMConfiguration');\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLStringifier = require('./XMLStringifier');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n module.exports = XMLDocument = (function(superClass) {\n extend(XMLDocument, superClass);\n\n function XMLDocument(options) {\n XMLDocument.__super__.constructor.call(this, null);\n this.name = \"#document\";\n this.type = NodeType.Document;\n this.documentURI = null;\n this.domConfig = new XMLDOMConfiguration();\n options || (options = {});\n if (!options.writer) {\n options.writer = new XMLStringWriter();\n }\n this.options = options;\n this.stringify = new XMLStringifier(options);\n }\n\n Object.defineProperty(XMLDocument.prototype, 'implementation', {\n value: new XMLDOMImplementation()\n });\n\n Object.defineProperty(XMLDocument.prototype, 'doctype', {\n get: function() {\n var child, i, len, ref;\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.DocType) {\n return child;\n }\n }\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'documentElement', {\n get: function() {\n return this.rootObject || null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'inputEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'strictErrorChecking', {\n get: function() {\n return false;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlEncoding', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].encoding;\n } else {\n return null;\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlStandalone', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].standalone === 'yes';\n } else {\n return false;\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlVersion', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].version;\n } else {\n return \"1.0\";\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'URL', {\n get: function() {\n return this.documentURI;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'origin', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'compatMode', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'characterSet', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'contentType', {\n get: function() {\n return null;\n }\n });\n\n XMLDocument.prototype.end = function(writer) {\n var writerOptions;\n writerOptions = {};\n if (!writer) {\n writer = this.options.writer;\n } else if (isPlainObject(writer)) {\n writerOptions = writer;\n writer = this.options.writer;\n }\n return writer.document(this, writer.filterOptions(writerOptions));\n };\n\n XMLDocument.prototype.toString = function(options) {\n return this.options.writer.document(this, this.options.writer.filterOptions(options));\n };\n\n XMLDocument.prototype.createElement = function(tagName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createDocumentFragment = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createTextNode = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createComment = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createCDATASection = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createProcessingInstruction = function(target, data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createAttribute = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createEntityReference = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByTagName = function(tagname) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.importNode = function(importedNode, deep) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createElementNS = function(namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createAttributeNS = function(namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementById = function(elementId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.adoptNode = function(source) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.normalizeDocument = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.renameNode = function(node, namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByClassName = function(classNames) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createEvent = function(eventInterface) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createRange = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createNodeIterator = function(root, whatToShow, filter) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createTreeWalker = function(root, whatToShow, filter) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n return XMLDocument;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLAttribute, XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLDocument, XMLDocumentCB, XMLElement, XMLProcessingInstruction, XMLRaw, XMLStringWriter, XMLStringifier, XMLText, getValue, isFunction, isObject, isPlainObject, ref,\n hasProp = {}.hasOwnProperty;\n\n ref = require('./Utility'), isObject = ref.isObject, isFunction = ref.isFunction, isPlainObject = ref.isPlainObject, getValue = ref.getValue;\n\n NodeType = require('./NodeType');\n\n XMLDocument = require('./XMLDocument');\n\n XMLElement = require('./XMLElement');\n\n XMLCData = require('./XMLCData');\n\n XMLComment = require('./XMLComment');\n\n XMLRaw = require('./XMLRaw');\n\n XMLText = require('./XMLText');\n\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n\n XMLDeclaration = require('./XMLDeclaration');\n\n XMLDocType = require('./XMLDocType');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n XMLAttribute = require('./XMLAttribute');\n\n XMLStringifier = require('./XMLStringifier');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLDocumentCB = (function() {\n function XMLDocumentCB(options, onData, onEnd) {\n var writerOptions;\n this.name = \"?xml\";\n this.type = NodeType.Document;\n options || (options = {});\n writerOptions = {};\n if (!options.writer) {\n options.writer = new XMLStringWriter();\n } else if (isPlainObject(options.writer)) {\n writerOptions = options.writer;\n options.writer = new XMLStringWriter();\n }\n this.options = options;\n this.writer = options.writer;\n this.writerOptions = this.writer.filterOptions(writerOptions);\n this.stringify = new XMLStringifier(options);\n this.onDataCallback = onData || function() {};\n this.onEndCallback = onEnd || function() {};\n this.currentNode = null;\n this.currentLevel = -1;\n this.openTags = {};\n this.documentStarted = false;\n this.documentCompleted = false;\n this.root = null;\n }\n\n XMLDocumentCB.prototype.createChildNode = function(node) {\n var att, attName, attributes, child, i, len, ref1, ref2;\n switch (node.type) {\n case NodeType.CData:\n this.cdata(node.value);\n break;\n case NodeType.Comment:\n this.comment(node.value);\n break;\n case NodeType.Element:\n attributes = {};\n ref1 = node.attribs;\n for (attName in ref1) {\n if (!hasProp.call(ref1, attName)) continue;\n att = ref1[attName];\n attributes[attName] = att.value;\n }\n this.node(node.name, attributes);\n break;\n case NodeType.Dummy:\n this.dummy();\n break;\n case NodeType.Raw:\n this.raw(node.value);\n break;\n case NodeType.Text:\n this.text(node.value);\n break;\n case NodeType.ProcessingInstruction:\n this.instruction(node.target, node.value);\n break;\n default:\n throw new Error(\"This XML node type is not supported in a JS object: \" + node.constructor.name);\n }\n ref2 = node.children;\n for (i = 0, len = ref2.length; i < len; i++) {\n child = ref2[i];\n this.createChildNode(child);\n if (child.type === NodeType.Element) {\n this.up();\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.dummy = function() {\n return this;\n };\n\n XMLDocumentCB.prototype.node = function(name, attributes, text) {\n var ref1;\n if (name == null) {\n throw new Error(\"Missing node name.\");\n }\n if (this.root && this.currentLevel === -1) {\n throw new Error(\"Document can only have one root node. \" + this.debugInfo(name));\n }\n this.openCurrent();\n name = getValue(name);\n if (attributes == null) {\n attributes = {};\n }\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref1 = [attributes, text], text = ref1[0], attributes = ref1[1];\n }\n this.currentNode = new XMLElement(this, name, attributes);\n this.currentNode.children = false;\n this.currentLevel++;\n this.openTags[this.currentLevel] = this.currentNode;\n if (text != null) {\n this.text(text);\n }\n return this;\n };\n\n XMLDocumentCB.prototype.element = function(name, attributes, text) {\n var child, i, len, oldValidationFlag, ref1, root;\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n this.dtdElement.apply(this, arguments);\n } else {\n if (Array.isArray(name) || isObject(name) || isFunction(name)) {\n oldValidationFlag = this.options.noValidation;\n this.options.noValidation = true;\n root = new XMLDocument(this.options).element('TEMP_ROOT');\n root.element(name);\n this.options.noValidation = oldValidationFlag;\n ref1 = root.children;\n for (i = 0, len = ref1.length; i < len; i++) {\n child = ref1[i];\n this.createChildNode(child);\n if (child.type === NodeType.Element) {\n this.up();\n }\n }\n } else {\n this.node(name, attributes, text);\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.attribute = function(name, value) {\n var attName, attValue;\n if (!this.currentNode || this.currentNode.children) {\n throw new Error(\"att() can only be used immediately after an ele() call in callback mode. \" + this.debugInfo(name));\n }\n if (name != null) {\n name = getValue(name);\n }\n if (isObject(name)) {\n for (attName in name) {\n if (!hasProp.call(name, attName)) continue;\n attValue = name[attName];\n this.attribute(attName, attValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n if (this.options.keepNullAttributes && (value == null)) {\n this.currentNode.attribs[name] = new XMLAttribute(this, name, \"\");\n } else if (value != null) {\n this.currentNode.attribs[name] = new XMLAttribute(this, name, value);\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.text = function(value) {\n var node;\n this.openCurrent();\n node = new XMLText(this, value);\n this.onData(this.writer.text(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.cdata = function(value) {\n var node;\n this.openCurrent();\n node = new XMLCData(this, value);\n this.onData(this.writer.cdata(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.comment = function(value) {\n var node;\n this.openCurrent();\n node = new XMLComment(this, value);\n this.onData(this.writer.comment(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.raw = function(value) {\n var node;\n this.openCurrent();\n node = new XMLRaw(this, value);\n this.onData(this.writer.raw(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.instruction = function(target, value) {\n var i, insTarget, insValue, len, node;\n this.openCurrent();\n if (target != null) {\n target = getValue(target);\n }\n if (value != null) {\n value = getValue(value);\n }\n if (Array.isArray(target)) {\n for (i = 0, len = target.length; i < len; i++) {\n insTarget = target[i];\n this.instruction(insTarget);\n }\n } else if (isObject(target)) {\n for (insTarget in target) {\n if (!hasProp.call(target, insTarget)) continue;\n insValue = target[insTarget];\n this.instruction(insTarget, insValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n node = new XMLProcessingInstruction(this, target, value);\n this.onData(this.writer.processingInstruction(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n }\n return this;\n };\n\n XMLDocumentCB.prototype.declaration = function(version, encoding, standalone) {\n var node;\n this.openCurrent();\n if (this.documentStarted) {\n throw new Error(\"declaration() must be the first node.\");\n }\n node = new XMLDeclaration(this, version, encoding, standalone);\n this.onData(this.writer.declaration(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.doctype = function(root, pubID, sysID) {\n this.openCurrent();\n if (root == null) {\n throw new Error(\"Missing root node name.\");\n }\n if (this.root) {\n throw new Error(\"dtd() must come before the root node.\");\n }\n this.currentNode = new XMLDocType(this, pubID, sysID);\n this.currentNode.rootNodeName = root;\n this.currentNode.children = false;\n this.currentLevel++;\n this.openTags[this.currentLevel] = this.currentNode;\n return this;\n };\n\n XMLDocumentCB.prototype.dtdElement = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDElement(this, name, value);\n this.onData(this.writer.dtdElement(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n var node;\n this.openCurrent();\n node = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);\n this.onData(this.writer.dtdAttList(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.entity = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDEntity(this, false, name, value);\n this.onData(this.writer.dtdEntity(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.pEntity = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDEntity(this, true, name, value);\n this.onData(this.writer.dtdEntity(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.notation = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDNotation(this, name, value);\n this.onData(this.writer.dtdNotation(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.up = function() {\n if (this.currentLevel < 0) {\n throw new Error(\"The document node has no parent.\");\n }\n if (this.currentNode) {\n if (this.currentNode.children) {\n this.closeNode(this.currentNode);\n } else {\n this.openNode(this.currentNode);\n }\n this.currentNode = null;\n } else {\n this.closeNode(this.openTags[this.currentLevel]);\n }\n delete this.openTags[this.currentLevel];\n this.currentLevel--;\n return this;\n };\n\n XMLDocumentCB.prototype.end = function() {\n while (this.currentLevel >= 0) {\n this.up();\n }\n return this.onEnd();\n };\n\n XMLDocumentCB.prototype.openCurrent = function() {\n if (this.currentNode) {\n this.currentNode.children = true;\n return this.openNode(this.currentNode);\n }\n };\n\n XMLDocumentCB.prototype.openNode = function(node) {\n var att, chunk, name, ref1;\n if (!node.isOpen) {\n if (!this.root && this.currentLevel === 0 && node.type === NodeType.Element) {\n this.root = node;\n }\n chunk = '';\n if (node.type === NodeType.Element) {\n this.writerOptions.state = WriterState.OpenTag;\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '<' + node.name;\n ref1 = node.attribs;\n for (name in ref1) {\n if (!hasProp.call(ref1, name)) continue;\n att = ref1[name];\n chunk += this.writer.attribute(att, this.writerOptions, this.currentLevel);\n }\n chunk += (node.children ? '>' : '/>') + this.writer.endline(node, this.writerOptions, this.currentLevel);\n this.writerOptions.state = WriterState.InsideTag;\n } else {\n this.writerOptions.state = WriterState.OpenTag;\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '<!DOCTYPE ' + node.rootNodeName;\n if (node.pubID && node.sysID) {\n chunk += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.sysID) {\n chunk += ' SYSTEM \"' + node.sysID + '\"';\n }\n if (node.children) {\n chunk += ' [';\n this.writerOptions.state = WriterState.InsideTag;\n } else {\n this.writerOptions.state = WriterState.CloseTag;\n chunk += '>';\n }\n chunk += this.writer.endline(node, this.writerOptions, this.currentLevel);\n }\n this.onData(chunk, this.currentLevel);\n return node.isOpen = true;\n }\n };\n\n XMLDocumentCB.prototype.closeNode = function(node) {\n var chunk;\n if (!node.isClosed) {\n chunk = '';\n this.writerOptions.state = WriterState.CloseTag;\n if (node.type === NodeType.Element) {\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '</' + node.name + '>' + this.writer.endline(node, this.writerOptions, this.currentLevel);\n } else {\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + ']>' + this.writer.endline(node, this.writerOptions, this.currentLevel);\n }\n this.writerOptions.state = WriterState.None;\n this.onData(chunk, this.currentLevel);\n return node.isClosed = true;\n }\n };\n\n XMLDocumentCB.prototype.onData = function(chunk, level) {\n this.documentStarted = true;\n return this.onDataCallback(chunk, level + 1);\n };\n\n XMLDocumentCB.prototype.onEnd = function() {\n this.documentCompleted = true;\n return this.onEndCallback();\n };\n\n XMLDocumentCB.prototype.debugInfo = function(name) {\n if (name == null) {\n return \"\";\n } else {\n return \"node: <\" + name + \">\";\n }\n };\n\n XMLDocumentCB.prototype.ele = function() {\n return this.element.apply(this, arguments);\n };\n\n XMLDocumentCB.prototype.nod = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.txt = function(value) {\n return this.text(value);\n };\n\n XMLDocumentCB.prototype.dat = function(value) {\n return this.cdata(value);\n };\n\n XMLDocumentCB.prototype.com = function(value) {\n return this.comment(value);\n };\n\n XMLDocumentCB.prototype.ins = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLDocumentCB.prototype.dec = function(version, encoding, standalone) {\n return this.declaration(version, encoding, standalone);\n };\n\n XMLDocumentCB.prototype.dtd = function(root, pubID, sysID) {\n return this.doctype(root, pubID, sysID);\n };\n\n XMLDocumentCB.prototype.e = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.n = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.t = function(value) {\n return this.text(value);\n };\n\n XMLDocumentCB.prototype.d = function(value) {\n return this.cdata(value);\n };\n\n XMLDocumentCB.prototype.c = function(value) {\n return this.comment(value);\n };\n\n XMLDocumentCB.prototype.r = function(value) {\n return this.raw(value);\n };\n\n XMLDocumentCB.prototype.i = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLDocumentCB.prototype.att = function() {\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n return this.attList.apply(this, arguments);\n } else {\n return this.attribute.apply(this, arguments);\n }\n };\n\n XMLDocumentCB.prototype.a = function() {\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n return this.attList.apply(this, arguments);\n } else {\n return this.attribute.apply(this, arguments);\n }\n };\n\n XMLDocumentCB.prototype.ent = function(name, value) {\n return this.entity(name, value);\n };\n\n XMLDocumentCB.prototype.pent = function(name, value) {\n return this.pEntity(name, value);\n };\n\n XMLDocumentCB.prototype.not = function(name, value) {\n return this.notation(name, value);\n };\n\n return XMLDocumentCB;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDummy, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDummy = (function(superClass) {\n extend(XMLDummy, superClass);\n\n function XMLDummy(parent) {\n XMLDummy.__super__.constructor.call(this, parent);\n this.type = NodeType.Dummy;\n }\n\n XMLDummy.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLDummy.prototype.toString = function(options) {\n return '';\n };\n\n return XMLDummy;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLAttribute, XMLElement, XMLNamedNodeMap, XMLNode, getValue, isFunction, isObject, ref,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n ref = require('./Utility'), isObject = ref.isObject, isFunction = ref.isFunction, getValue = ref.getValue;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLAttribute = require('./XMLAttribute');\n\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n\n module.exports = XMLElement = (function(superClass) {\n extend(XMLElement, superClass);\n\n function XMLElement(parent, name, attributes) {\n var child, j, len, ref1;\n XMLElement.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing element name. \" + this.debugInfo());\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.Element;\n this.attribs = {};\n this.schemaTypeInfo = null;\n if (attributes != null) {\n this.attribute(attributes);\n }\n if (parent.type === NodeType.Document) {\n this.isRoot = true;\n this.documentObject = parent;\n parent.rootObject = this;\n if (parent.children) {\n ref1 = parent.children;\n for (j = 0, len = ref1.length; j < len; j++) {\n child = ref1[j];\n if (child.type === NodeType.DocType) {\n child.name = this.name;\n break;\n }\n }\n }\n }\n }\n\n Object.defineProperty(XMLElement.prototype, 'tagName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'namespaceURI', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'prefix', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'localName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'id', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'className', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'classList', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'attributes', {\n get: function() {\n if (!this.attributeMap || !this.attributeMap.nodes) {\n this.attributeMap = new XMLNamedNodeMap(this.attribs);\n }\n return this.attributeMap;\n }\n });\n\n XMLElement.prototype.clone = function() {\n var att, attName, clonedSelf, ref1;\n clonedSelf = Object.create(this);\n if (clonedSelf.isRoot) {\n clonedSelf.documentObject = null;\n }\n clonedSelf.attribs = {};\n ref1 = this.attribs;\n for (attName in ref1) {\n if (!hasProp.call(ref1, attName)) continue;\n att = ref1[attName];\n clonedSelf.attribs[attName] = att.clone();\n }\n clonedSelf.children = [];\n this.children.forEach(function(child) {\n var clonedChild;\n clonedChild = child.clone();\n clonedChild.parent = clonedSelf;\n return clonedSelf.children.push(clonedChild);\n });\n return clonedSelf;\n };\n\n XMLElement.prototype.attribute = function(name, value) {\n var attName, attValue;\n if (name != null) {\n name = getValue(name);\n }\n if (isObject(name)) {\n for (attName in name) {\n if (!hasProp.call(name, attName)) continue;\n attValue = name[attName];\n this.attribute(attName, attValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n if (this.options.keepNullAttributes && (value == null)) {\n this.attribs[name] = new XMLAttribute(this, name, \"\");\n } else if (value != null) {\n this.attribs[name] = new XMLAttribute(this, name, value);\n }\n }\n return this;\n };\n\n XMLElement.prototype.removeAttribute = function(name) {\n var attName, j, len;\n if (name == null) {\n throw new Error(\"Missing attribute name. \" + this.debugInfo());\n }\n name = getValue(name);\n if (Array.isArray(name)) {\n for (j = 0, len = name.length; j < len; j++) {\n attName = name[j];\n delete this.attribs[attName];\n }\n } else {\n delete this.attribs[name];\n }\n return this;\n };\n\n XMLElement.prototype.toString = function(options) {\n return this.options.writer.element(this, this.options.writer.filterOptions(options));\n };\n\n XMLElement.prototype.att = function(name, value) {\n return this.attribute(name, value);\n };\n\n XMLElement.prototype.a = function(name, value) {\n return this.attribute(name, value);\n };\n\n XMLElement.prototype.getAttribute = function(name) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name].value;\n } else {\n return null;\n }\n };\n\n XMLElement.prototype.setAttribute = function(name, value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNode = function(name) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name];\n } else {\n return null;\n }\n };\n\n XMLElement.prototype.setAttributeNode = function(newAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.removeAttributeNode = function(oldAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagName = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setAttributeNS = function(namespaceURI, qualifiedName, value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.removeAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNodeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setAttributeNodeNS = function(newAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.hasAttribute = function(name) {\n return this.attribs.hasOwnProperty(name);\n };\n\n XMLElement.prototype.hasAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setIdAttribute = function(name, isId) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name].isId;\n } else {\n return isId;\n }\n };\n\n XMLElement.prototype.setIdAttributeNS = function(namespaceURI, localName, isId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setIdAttributeNode = function(idAttr, isId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagName = function(tagname) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByClassName = function(classNames) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.isEqualNode = function(node) {\n var i, j, ref1;\n if (!XMLElement.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.namespaceURI !== this.namespaceURI) {\n return false;\n }\n if (node.prefix !== this.prefix) {\n return false;\n }\n if (node.localName !== this.localName) {\n return false;\n }\n if (node.attribs.length !== this.attribs.length) {\n return false;\n }\n for (i = j = 0, ref1 = this.attribs.length - 1; 0 <= ref1 ? j <= ref1 : j >= ref1; i = 0 <= ref1 ? ++j : --j) {\n if (!this.attribs[i].isEqualNode(node.attribs[i])) {\n return false;\n }\n }\n return true;\n };\n\n return XMLElement;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLNamedNodeMap;\n\n module.exports = XMLNamedNodeMap = (function() {\n function XMLNamedNodeMap(nodes) {\n this.nodes = nodes;\n }\n\n Object.defineProperty(XMLNamedNodeMap.prototype, 'length', {\n get: function() {\n return Object.keys(this.nodes).length || 0;\n }\n });\n\n XMLNamedNodeMap.prototype.clone = function() {\n return this.nodes = null;\n };\n\n XMLNamedNodeMap.prototype.getNamedItem = function(name) {\n return this.nodes[name];\n };\n\n XMLNamedNodeMap.prototype.setNamedItem = function(node) {\n var oldNode;\n oldNode = this.nodes[node.nodeName];\n this.nodes[node.nodeName] = node;\n return oldNode || null;\n };\n\n XMLNamedNodeMap.prototype.removeNamedItem = function(name) {\n var oldNode;\n oldNode = this.nodes[name];\n delete this.nodes[name];\n return oldNode || null;\n };\n\n XMLNamedNodeMap.prototype.item = function(index) {\n return this.nodes[Object.keys(this.nodes)[index]] || null;\n };\n\n XMLNamedNodeMap.prototype.getNamedItemNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLNamedNodeMap.prototype.setNamedItemNS = function(node) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLNamedNodeMap.prototype.removeNamedItemNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n return XMLNamedNodeMap;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var DocumentPosition, NodeType, XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLDummy, XMLElement, XMLNamedNodeMap, XMLNode, XMLNodeList, XMLProcessingInstruction, XMLRaw, XMLText, getValue, isEmpty, isFunction, isObject, ref1,\n hasProp = {}.hasOwnProperty;\n\n ref1 = require('./Utility'), isObject = ref1.isObject, isFunction = ref1.isFunction, isEmpty = ref1.isEmpty, getValue = ref1.getValue;\n\n XMLElement = null;\n\n XMLCData = null;\n\n XMLComment = null;\n\n XMLDeclaration = null;\n\n XMLDocType = null;\n\n XMLRaw = null;\n\n XMLText = null;\n\n XMLProcessingInstruction = null;\n\n XMLDummy = null;\n\n NodeType = null;\n\n XMLNodeList = null;\n\n XMLNamedNodeMap = null;\n\n DocumentPosition = null;\n\n module.exports = XMLNode = (function() {\n function XMLNode(parent1) {\n this.parent = parent1;\n if (this.parent) {\n this.options = this.parent.options;\n this.stringify = this.parent.stringify;\n }\n this.value = null;\n this.children = [];\n this.baseURI = null;\n if (!XMLElement) {\n XMLElement = require('./XMLElement');\n XMLCData = require('./XMLCData');\n XMLComment = require('./XMLComment');\n XMLDeclaration = require('./XMLDeclaration');\n XMLDocType = require('./XMLDocType');\n XMLRaw = require('./XMLRaw');\n XMLText = require('./XMLText');\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n XMLDummy = require('./XMLDummy');\n NodeType = require('./NodeType');\n XMLNodeList = require('./XMLNodeList');\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n DocumentPosition = require('./DocumentPosition');\n }\n }\n\n Object.defineProperty(XMLNode.prototype, 'nodeName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nodeType', {\n get: function() {\n return this.type;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nodeValue', {\n get: function() {\n return this.value;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'parentNode', {\n get: function() {\n return this.parent;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'childNodes', {\n get: function() {\n if (!this.childNodeList || !this.childNodeList.nodes) {\n this.childNodeList = new XMLNodeList(this.children);\n }\n return this.childNodeList;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'firstChild', {\n get: function() {\n return this.children[0] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'lastChild', {\n get: function() {\n return this.children[this.children.length - 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'previousSibling', {\n get: function() {\n var i;\n i = this.parent.children.indexOf(this);\n return this.parent.children[i - 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nextSibling', {\n get: function() {\n var i;\n i = this.parent.children.indexOf(this);\n return this.parent.children[i + 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'ownerDocument', {\n get: function() {\n return this.document() || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'textContent', {\n get: function() {\n var child, j, len, ref2, str;\n if (this.nodeType === NodeType.Element || this.nodeType === NodeType.DocumentFragment) {\n str = '';\n ref2 = this.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (child.textContent) {\n str += child.textContent;\n }\n }\n return str;\n } else {\n return null;\n }\n },\n set: function(value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n XMLNode.prototype.setParent = function(parent) {\n var child, j, len, ref2, results;\n this.parent = parent;\n if (parent) {\n this.options = parent.options;\n this.stringify = parent.stringify;\n }\n ref2 = this.children;\n results = [];\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n results.push(child.setParent(this));\n }\n return results;\n };\n\n XMLNode.prototype.element = function(name, attributes, text) {\n var childNode, item, j, k, key, lastChild, len, len1, ref2, ref3, val;\n lastChild = null;\n if (attributes === null && (text == null)) {\n ref2 = [{}, null], attributes = ref2[0], text = ref2[1];\n }\n if (attributes == null) {\n attributes = {};\n }\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref3 = [attributes, text], text = ref3[0], attributes = ref3[1];\n }\n if (name != null) {\n name = getValue(name);\n }\n if (Array.isArray(name)) {\n for (j = 0, len = name.length; j < len; j++) {\n item = name[j];\n lastChild = this.element(item);\n }\n } else if (isFunction(name)) {\n lastChild = this.element(name.apply());\n } else if (isObject(name)) {\n for (key in name) {\n if (!hasProp.call(name, key)) continue;\n val = name[key];\n if (isFunction(val)) {\n val = val.apply();\n }\n if (!this.options.ignoreDecorators && this.stringify.convertAttKey && key.indexOf(this.stringify.convertAttKey) === 0) {\n lastChild = this.attribute(key.substr(this.stringify.convertAttKey.length), val);\n } else if (!this.options.separateArrayItems && Array.isArray(val) && isEmpty(val)) {\n lastChild = this.dummy();\n } else if (isObject(val) && isEmpty(val)) {\n lastChild = this.element(key);\n } else if (!this.options.keepNullNodes && (val == null)) {\n lastChild = this.dummy();\n } else if (!this.options.separateArrayItems && Array.isArray(val)) {\n for (k = 0, len1 = val.length; k < len1; k++) {\n item = val[k];\n childNode = {};\n childNode[key] = item;\n lastChild = this.element(childNode);\n }\n } else if (isObject(val)) {\n if (!this.options.ignoreDecorators && this.stringify.convertTextKey && key.indexOf(this.stringify.convertTextKey) === 0) {\n lastChild = this.element(val);\n } else {\n lastChild = this.element(key);\n lastChild.element(val);\n }\n } else {\n lastChild = this.element(key, val);\n }\n }\n } else if (!this.options.keepNullNodes && text === null) {\n lastChild = this.dummy();\n } else {\n if (!this.options.ignoreDecorators && this.stringify.convertTextKey && name.indexOf(this.stringify.convertTextKey) === 0) {\n lastChild = this.text(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertCDataKey && name.indexOf(this.stringify.convertCDataKey) === 0) {\n lastChild = this.cdata(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertCommentKey && name.indexOf(this.stringify.convertCommentKey) === 0) {\n lastChild = this.comment(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertRawKey && name.indexOf(this.stringify.convertRawKey) === 0) {\n lastChild = this.raw(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertPIKey && name.indexOf(this.stringify.convertPIKey) === 0) {\n lastChild = this.instruction(name.substr(this.stringify.convertPIKey.length), text);\n } else {\n lastChild = this.node(name, attributes, text);\n }\n }\n if (lastChild == null) {\n throw new Error(\"Could not create any elements with: \" + name + \". \" + this.debugInfo());\n }\n return lastChild;\n };\n\n XMLNode.prototype.insertBefore = function(name, attributes, text) {\n var child, i, newChild, refChild, removed;\n if (name != null ? name.type : void 0) {\n newChild = name;\n refChild = attributes;\n newChild.setParent(this);\n if (refChild) {\n i = children.indexOf(refChild);\n removed = children.splice(i);\n children.push(newChild);\n Array.prototype.push.apply(children, removed);\n } else {\n children.push(newChild);\n }\n return newChild;\n } else {\n if (this.isRoot) {\n throw new Error(\"Cannot insert elements at root level. \" + this.debugInfo(name));\n }\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.element(name, attributes, text);\n Array.prototype.push.apply(this.parent.children, removed);\n return child;\n }\n };\n\n XMLNode.prototype.insertAfter = function(name, attributes, text) {\n var child, i, removed;\n if (this.isRoot) {\n throw new Error(\"Cannot insert elements at root level. \" + this.debugInfo(name));\n }\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.element(name, attributes, text);\n Array.prototype.push.apply(this.parent.children, removed);\n return child;\n };\n\n XMLNode.prototype.remove = function() {\n var i, ref2;\n if (this.isRoot) {\n throw new Error(\"Cannot remove the root element. \" + this.debugInfo());\n }\n i = this.parent.children.indexOf(this);\n [].splice.apply(this.parent.children, [i, i - i + 1].concat(ref2 = [])), ref2;\n return this.parent;\n };\n\n XMLNode.prototype.node = function(name, attributes, text) {\n var child, ref2;\n if (name != null) {\n name = getValue(name);\n }\n attributes || (attributes = {});\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref2 = [attributes, text], text = ref2[0], attributes = ref2[1];\n }\n child = new XMLElement(this, name, attributes);\n if (text != null) {\n child.text(text);\n }\n this.children.push(child);\n return child;\n };\n\n XMLNode.prototype.text = function(value) {\n var child;\n if (isObject(value)) {\n this.element(value);\n }\n child = new XMLText(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.cdata = function(value) {\n var child;\n child = new XMLCData(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.comment = function(value) {\n var child;\n child = new XMLComment(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.commentBefore = function(value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.comment(value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.commentAfter = function(value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.comment(value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.raw = function(value) {\n var child;\n child = new XMLRaw(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.dummy = function() {\n var child;\n child = new XMLDummy(this);\n return child;\n };\n\n XMLNode.prototype.instruction = function(target, value) {\n var insTarget, insValue, instruction, j, len;\n if (target != null) {\n target = getValue(target);\n }\n if (value != null) {\n value = getValue(value);\n }\n if (Array.isArray(target)) {\n for (j = 0, len = target.length; j < len; j++) {\n insTarget = target[j];\n this.instruction(insTarget);\n }\n } else if (isObject(target)) {\n for (insTarget in target) {\n if (!hasProp.call(target, insTarget)) continue;\n insValue = target[insTarget];\n this.instruction(insTarget, insValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n instruction = new XMLProcessingInstruction(this, target, value);\n this.children.push(instruction);\n }\n return this;\n };\n\n XMLNode.prototype.instructionBefore = function(target, value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.instruction(target, value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.instructionAfter = function(target, value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.instruction(target, value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.declaration = function(version, encoding, standalone) {\n var doc, xmldec;\n doc = this.document();\n xmldec = new XMLDeclaration(doc, version, encoding, standalone);\n if (doc.children.length === 0) {\n doc.children.unshift(xmldec);\n } else if (doc.children[0].type === NodeType.Declaration) {\n doc.children[0] = xmldec;\n } else {\n doc.children.unshift(xmldec);\n }\n return doc.root() || doc;\n };\n\n XMLNode.prototype.dtd = function(pubID, sysID) {\n var child, doc, doctype, i, j, k, len, len1, ref2, ref3;\n doc = this.document();\n doctype = new XMLDocType(doc, pubID, sysID);\n ref2 = doc.children;\n for (i = j = 0, len = ref2.length; j < len; i = ++j) {\n child = ref2[i];\n if (child.type === NodeType.DocType) {\n doc.children[i] = doctype;\n return doctype;\n }\n }\n ref3 = doc.children;\n for (i = k = 0, len1 = ref3.length; k < len1; i = ++k) {\n child = ref3[i];\n if (child.isRoot) {\n doc.children.splice(i, 0, doctype);\n return doctype;\n }\n }\n doc.children.push(doctype);\n return doctype;\n };\n\n XMLNode.prototype.up = function() {\n if (this.isRoot) {\n throw new Error(\"The root node has no parent. Use doc() if you need to get the document object.\");\n }\n return this.parent;\n };\n\n XMLNode.prototype.root = function() {\n var node;\n node = this;\n while (node) {\n if (node.type === NodeType.Document) {\n return node.rootObject;\n } else if (node.isRoot) {\n return node;\n } else {\n node = node.parent;\n }\n }\n };\n\n XMLNode.prototype.document = function() {\n var node;\n node = this;\n while (node) {\n if (node.type === NodeType.Document) {\n return node;\n } else {\n node = node.parent;\n }\n }\n };\n\n XMLNode.prototype.end = function(options) {\n return this.document().end(options);\n };\n\n XMLNode.prototype.prev = function() {\n var i;\n i = this.parent.children.indexOf(this);\n if (i < 1) {\n throw new Error(\"Already at the first node. \" + this.debugInfo());\n }\n return this.parent.children[i - 1];\n };\n\n XMLNode.prototype.next = function() {\n var i;\n i = this.parent.children.indexOf(this);\n if (i === -1 || i === this.parent.children.length - 1) {\n throw new Error(\"Already at the last node. \" + this.debugInfo());\n }\n return this.parent.children[i + 1];\n };\n\n XMLNode.prototype.importDocument = function(doc) {\n var clonedRoot;\n clonedRoot = doc.root().clone();\n clonedRoot.parent = this;\n clonedRoot.isRoot = false;\n this.children.push(clonedRoot);\n return this;\n };\n\n XMLNode.prototype.debugInfo = function(name) {\n var ref2, ref3;\n name = name || this.name;\n if ((name == null) && !((ref2 = this.parent) != null ? ref2.name : void 0)) {\n return \"\";\n } else if (name == null) {\n return \"parent: <\" + this.parent.name + \">\";\n } else if (!((ref3 = this.parent) != null ? ref3.name : void 0)) {\n return \"node: <\" + name + \">\";\n } else {\n return \"node: <\" + name + \">, parent: <\" + this.parent.name + \">\";\n }\n };\n\n XMLNode.prototype.ele = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLNode.prototype.nod = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLNode.prototype.txt = function(value) {\n return this.text(value);\n };\n\n XMLNode.prototype.dat = function(value) {\n return this.cdata(value);\n };\n\n XMLNode.prototype.com = function(value) {\n return this.comment(value);\n };\n\n XMLNode.prototype.ins = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLNode.prototype.doc = function() {\n return this.document();\n };\n\n XMLNode.prototype.dec = function(version, encoding, standalone) {\n return this.declaration(version, encoding, standalone);\n };\n\n XMLNode.prototype.e = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLNode.prototype.n = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLNode.prototype.t = function(value) {\n return this.text(value);\n };\n\n XMLNode.prototype.d = function(value) {\n return this.cdata(value);\n };\n\n XMLNode.prototype.c = function(value) {\n return this.comment(value);\n };\n\n XMLNode.prototype.r = function(value) {\n return this.raw(value);\n };\n\n XMLNode.prototype.i = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLNode.prototype.u = function() {\n return this.up();\n };\n\n XMLNode.prototype.importXMLBuilder = function(doc) {\n return this.importDocument(doc);\n };\n\n XMLNode.prototype.replaceChild = function(newChild, oldChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.removeChild = function(oldChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.appendChild = function(newChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.hasChildNodes = function() {\n return this.children.length !== 0;\n };\n\n XMLNode.prototype.cloneNode = function(deep) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.normalize = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isSupported = function(feature, version) {\n return true;\n };\n\n XMLNode.prototype.hasAttributes = function() {\n return this.attribs.length !== 0;\n };\n\n XMLNode.prototype.compareDocumentPosition = function(other) {\n var ref, res;\n ref = this;\n if (ref === other) {\n return 0;\n } else if (this.document() !== other.document()) {\n res = DocumentPosition.Disconnected | DocumentPosition.ImplementationSpecific;\n if (Math.random() < 0.5) {\n res |= DocumentPosition.Preceding;\n } else {\n res |= DocumentPosition.Following;\n }\n return res;\n } else if (ref.isAncestor(other)) {\n return DocumentPosition.Contains | DocumentPosition.Preceding;\n } else if (ref.isDescendant(other)) {\n return DocumentPosition.Contains | DocumentPosition.Following;\n } else if (ref.isPreceding(other)) {\n return DocumentPosition.Preceding;\n } else {\n return DocumentPosition.Following;\n }\n };\n\n XMLNode.prototype.isSameNode = function(other) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.lookupPrefix = function(namespaceURI) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isDefaultNamespace = function(namespaceURI) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.lookupNamespaceURI = function(prefix) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isEqualNode = function(node) {\n var i, j, ref2;\n if (node.nodeType !== this.nodeType) {\n return false;\n }\n if (node.children.length !== this.children.length) {\n return false;\n }\n for (i = j = 0, ref2 = this.children.length - 1; 0 <= ref2 ? j <= ref2 : j >= ref2; i = 0 <= ref2 ? ++j : --j) {\n if (!this.children[i].isEqualNode(node.children[i])) {\n return false;\n }\n }\n return true;\n };\n\n XMLNode.prototype.getFeature = function(feature, version) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.setUserData = function(key, data, handler) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.getUserData = function(key) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.contains = function(other) {\n if (!other) {\n return false;\n }\n return other === this || this.isDescendant(other);\n };\n\n XMLNode.prototype.isDescendant = function(node) {\n var child, isDescendantChild, j, len, ref2;\n ref2 = this.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (node === child) {\n return true;\n }\n isDescendantChild = child.isDescendant(node);\n if (isDescendantChild) {\n return true;\n }\n }\n return false;\n };\n\n XMLNode.prototype.isAncestor = function(node) {\n return node.isDescendant(this);\n };\n\n XMLNode.prototype.isPreceding = function(node) {\n var nodePos, thisPos;\n nodePos = this.treePosition(node);\n thisPos = this.treePosition(this);\n if (nodePos === -1 || thisPos === -1) {\n return false;\n } else {\n return nodePos < thisPos;\n }\n };\n\n XMLNode.prototype.isFollowing = function(node) {\n var nodePos, thisPos;\n nodePos = this.treePosition(node);\n thisPos = this.treePosition(this);\n if (nodePos === -1 || thisPos === -1) {\n return false;\n } else {\n return nodePos > thisPos;\n }\n };\n\n XMLNode.prototype.treePosition = function(node) {\n var found, pos;\n pos = 0;\n found = false;\n this.foreachTreeNode(this.document(), function(childNode) {\n pos++;\n if (!found && childNode === node) {\n return found = true;\n }\n });\n if (found) {\n return pos;\n } else {\n return -1;\n }\n };\n\n XMLNode.prototype.foreachTreeNode = function(node, func) {\n var child, j, len, ref2, res;\n node || (node = this.document());\n ref2 = node.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (res = func(child)) {\n return res;\n } else {\n res = this.foreachTreeNode(child, func);\n if (res) {\n return res;\n }\n }\n }\n };\n\n return XMLNode;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLNodeList;\n\n module.exports = XMLNodeList = (function() {\n function XMLNodeList(nodes) {\n this.nodes = nodes;\n }\n\n Object.defineProperty(XMLNodeList.prototype, 'length', {\n get: function() {\n return this.nodes.length || 0;\n }\n });\n\n XMLNodeList.prototype.clone = function() {\n return this.nodes = null;\n };\n\n XMLNodeList.prototype.item = function(index) {\n return this.nodes[index] || null;\n };\n\n return XMLNodeList;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLProcessingInstruction,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLProcessingInstruction = (function(superClass) {\n extend(XMLProcessingInstruction, superClass);\n\n function XMLProcessingInstruction(parent, target, value) {\n XMLProcessingInstruction.__super__.constructor.call(this, parent);\n if (target == null) {\n throw new Error(\"Missing instruction target. \" + this.debugInfo());\n }\n this.type = NodeType.ProcessingInstruction;\n this.target = this.stringify.insTarget(target);\n this.name = this.target;\n if (value) {\n this.value = this.stringify.insValue(value);\n }\n }\n\n XMLProcessingInstruction.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLProcessingInstruction.prototype.toString = function(options) {\n return this.options.writer.processingInstruction(this, this.options.writer.filterOptions(options));\n };\n\n XMLProcessingInstruction.prototype.isEqualNode = function(node) {\n if (!XMLProcessingInstruction.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.target !== this.target) {\n return false;\n }\n return true;\n };\n\n return XMLProcessingInstruction;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLNode, XMLRaw,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLRaw = (function(superClass) {\n extend(XMLRaw, superClass);\n\n function XMLRaw(parent, text) {\n XMLRaw.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing raw text. \" + this.debugInfo());\n }\n this.type = NodeType.Raw;\n this.value = this.stringify.raw(text);\n }\n\n XMLRaw.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLRaw.prototype.toString = function(options) {\n return this.options.writer.raw(this, this.options.writer.filterOptions(options));\n };\n\n return XMLRaw;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLStreamWriter, XMLWriterBase,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLWriterBase = require('./XMLWriterBase');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLStreamWriter = (function(superClass) {\n extend(XMLStreamWriter, superClass);\n\n function XMLStreamWriter(stream, options) {\n this.stream = stream;\n XMLStreamWriter.__super__.constructor.call(this, options);\n }\n\n XMLStreamWriter.prototype.endline = function(node, options, level) {\n if (node.isLastRootNode && options.state === WriterState.CloseTag) {\n return '';\n } else {\n return XMLStreamWriter.__super__.endline.call(this, node, options, level);\n }\n };\n\n XMLStreamWriter.prototype.document = function(doc, options) {\n var child, i, j, k, len, len1, ref, ref1, results;\n ref = doc.children;\n for (i = j = 0, len = ref.length; j < len; i = ++j) {\n child = ref[i];\n child.isLastRootNode = i === doc.children.length - 1;\n }\n options = this.filterOptions(options);\n ref1 = doc.children;\n results = [];\n for (k = 0, len1 = ref1.length; k < len1; k++) {\n child = ref1[k];\n results.push(this.writeChildNode(child, options, 0));\n }\n return results;\n };\n\n XMLStreamWriter.prototype.attribute = function(att, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.attribute.call(this, att, options, level));\n };\n\n XMLStreamWriter.prototype.cdata = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.cdata.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.comment = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.comment.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.declaration = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.declaration.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.docType = function(node, options, level) {\n var child, j, len, ref;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n this.stream.write(this.indent(node, options, level));\n this.stream.write('<!DOCTYPE ' + node.root().name);\n if (node.pubID && node.sysID) {\n this.stream.write(' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"');\n } else if (node.sysID) {\n this.stream.write(' SYSTEM \"' + node.sysID + '\"');\n }\n if (node.children.length > 0) {\n this.stream.write(' [');\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.InsideTag;\n ref = node.children;\n for (j = 0, len = ref.length; j < len; j++) {\n child = ref[j];\n this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n this.stream.write(']');\n }\n options.state = WriterState.CloseTag;\n this.stream.write(options.spaceBeforeSlash + '>');\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.None;\n return this.closeNode(node, options, level);\n };\n\n XMLStreamWriter.prototype.element = function(node, options, level) {\n var att, child, childNodeCount, firstChildNode, j, len, name, prettySuppressed, ref, ref1;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n this.stream.write(this.indent(node, options, level) + '<' + node.name);\n ref = node.attribs;\n for (name in ref) {\n if (!hasProp.call(ref, name)) continue;\n att = ref[name];\n this.attribute(att, options, level);\n }\n childNodeCount = node.children.length;\n firstChildNode = childNodeCount === 0 ? null : node.children[0];\n if (childNodeCount === 0 || node.children.every(function(e) {\n return (e.type === NodeType.Text || e.type === NodeType.Raw) && e.value === '';\n })) {\n if (options.allowEmpty) {\n this.stream.write('>');\n options.state = WriterState.CloseTag;\n this.stream.write('</' + node.name + '>');\n } else {\n options.state = WriterState.CloseTag;\n this.stream.write(options.spaceBeforeSlash + '/>');\n }\n } else if (options.pretty && childNodeCount === 1 && (firstChildNode.type === NodeType.Text || firstChildNode.type === NodeType.Raw) && (firstChildNode.value != null)) {\n this.stream.write('>');\n options.state = WriterState.InsideTag;\n options.suppressPrettyCount++;\n prettySuppressed = true;\n this.writeChildNode(firstChildNode, options, level + 1);\n options.suppressPrettyCount--;\n prettySuppressed = false;\n options.state = WriterState.CloseTag;\n this.stream.write('</' + node.name + '>');\n } else {\n this.stream.write('>' + this.endline(node, options, level));\n options.state = WriterState.InsideTag;\n ref1 = node.children;\n for (j = 0, len = ref1.length; j < len; j++) {\n child = ref1[j];\n this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n this.stream.write(this.indent(node, options, level) + '</' + node.name + '>');\n }\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.None;\n return this.closeNode(node, options, level);\n };\n\n XMLStreamWriter.prototype.processingInstruction = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.processingInstruction.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.raw = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.raw.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.text = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.text.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdAttList = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdAttList.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdElement = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdElement.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdEntity = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdEntity.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdNotation = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdNotation.call(this, node, options, level));\n };\n\n return XMLStreamWriter;\n\n })(XMLWriterBase);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLStringWriter, XMLWriterBase,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLWriterBase = require('./XMLWriterBase');\n\n module.exports = XMLStringWriter = (function(superClass) {\n extend(XMLStringWriter, superClass);\n\n function XMLStringWriter(options) {\n XMLStringWriter.__super__.constructor.call(this, options);\n }\n\n XMLStringWriter.prototype.document = function(doc, options) {\n var child, i, len, r, ref;\n options = this.filterOptions(options);\n r = '';\n ref = doc.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n r += this.writeChildNode(child, options, 0);\n }\n if (options.pretty && r.slice(-options.newline.length) === options.newline) {\n r = r.slice(0, -options.newline.length);\n }\n return r;\n };\n\n return XMLStringWriter;\n\n })(XMLWriterBase);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLStringifier,\n bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },\n hasProp = {}.hasOwnProperty;\n\n module.exports = XMLStringifier = (function() {\n function XMLStringifier(options) {\n this.assertLegalName = bind(this.assertLegalName, this);\n this.assertLegalChar = bind(this.assertLegalChar, this);\n var key, ref, value;\n options || (options = {});\n this.options = options;\n if (!this.options.version) {\n this.options.version = '1.0';\n }\n ref = options.stringify || {};\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this[key] = value;\n }\n }\n\n XMLStringifier.prototype.name = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalName('' + val || '');\n };\n\n XMLStringifier.prototype.text = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar(this.textEscape('' + val || ''));\n };\n\n XMLStringifier.prototype.cdata = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n val = val.replace(']]>', ']]]]><![CDATA[>');\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.comment = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (val.match(/--/)) {\n throw new Error(\"Comment text cannot contain double-hypen: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.raw = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return '' + val || '';\n };\n\n XMLStringifier.prototype.attValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar(this.attEscape(val = '' + val || ''));\n };\n\n XMLStringifier.prototype.insTarget = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.insValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (val.match(/\\?>/)) {\n throw new Error(\"Invalid processing instruction value: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.xmlVersion = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (!val.match(/1\\.[0-9]+/)) {\n throw new Error(\"Invalid version number: \" + val);\n }\n return val;\n };\n\n XMLStringifier.prototype.xmlEncoding = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (!val.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/)) {\n throw new Error(\"Invalid encoding: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.xmlStandalone = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n if (val) {\n return \"yes\";\n } else {\n return \"no\";\n }\n };\n\n XMLStringifier.prototype.dtdPubID = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdSysID = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdElementValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdAttType = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdAttDefault = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdEntityValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdNData = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.convertAttKey = '@';\n\n XMLStringifier.prototype.convertPIKey = '?';\n\n XMLStringifier.prototype.convertTextKey = '#text';\n\n XMLStringifier.prototype.convertCDataKey = '#cdata';\n\n XMLStringifier.prototype.convertCommentKey = '#comment';\n\n XMLStringifier.prototype.convertRawKey = '#raw';\n\n XMLStringifier.prototype.assertLegalChar = function(str) {\n var regex, res;\n if (this.options.noValidation) {\n return str;\n }\n regex = '';\n if (this.options.version === '1.0') {\n regex = /[\\0-\\x08\\x0B\\f\\x0E-\\x1F\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n if (res = str.match(regex)) {\n throw new Error(\"Invalid character in string: \" + str + \" at index \" + res.index);\n }\n } else if (this.options.version === '1.1') {\n regex = /[\\0\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n if (res = str.match(regex)) {\n throw new Error(\"Invalid character in string: \" + str + \" at index \" + res.index);\n }\n }\n return str;\n };\n\n XMLStringifier.prototype.assertLegalName = function(str) {\n var regex;\n if (this.options.noValidation) {\n return str;\n }\n this.assertLegalChar(str);\n regex = /^([:A-Z_a-z\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF])([\\x2D\\.0-:A-Z_a-z\\xB7\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u203F\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF])*$/;\n if (!str.match(regex)) {\n throw new Error(\"Invalid character in name\");\n }\n return str;\n };\n\n XMLStringifier.prototype.textEscape = function(str) {\n var ampregex;\n if (this.options.noValidation) {\n return str;\n }\n ampregex = this.options.noDoubleEncoding ? /(?!&\\S+;)&/g : /&/g;\n return str.replace(ampregex, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\\r/g, '&#xD;');\n };\n\n XMLStringifier.prototype.attEscape = function(str) {\n var ampregex;\n if (this.options.noValidation) {\n return str;\n }\n ampregex = this.options.noDoubleEncoding ? /(?!&\\S+;)&/g : /&/g;\n return str.replace(ampregex, '&amp;').replace(/</g, '&lt;').replace(/\"/g, '&quot;').replace(/\\t/g, '&#x9;').replace(/\\n/g, '&#xA;').replace(/\\r/g, '&#xD;');\n };\n\n return XMLStringifier;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLText,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLText = (function(superClass) {\n extend(XMLText, superClass);\n\n function XMLText(parent, text) {\n XMLText.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing element text. \" + this.debugInfo());\n }\n this.name = \"#text\";\n this.type = NodeType.Text;\n this.value = this.stringify.text(text);\n }\n\n Object.defineProperty(XMLText.prototype, 'isElementContentWhitespace', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLText.prototype, 'wholeText', {\n get: function() {\n var next, prev, str;\n str = '';\n prev = this.previousSibling;\n while (prev) {\n str = prev.data + str;\n prev = prev.previousSibling;\n }\n str += this.data;\n next = this.nextSibling;\n while (next) {\n str = str + next.data;\n next = next.nextSibling;\n }\n return str;\n }\n });\n\n XMLText.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLText.prototype.toString = function(options) {\n return this.options.writer.text(this, this.options.writer.filterOptions(options));\n };\n\n XMLText.prototype.splitText = function(offset) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLText.prototype.replaceWholeText = function(content) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n return XMLText;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLDummy, XMLElement, XMLProcessingInstruction, XMLRaw, XMLText, XMLWriterBase, assign,\n hasProp = {}.hasOwnProperty;\n\n assign = require('./Utility').assign;\n\n NodeType = require('./NodeType');\n\n XMLDeclaration = require('./XMLDeclaration');\n\n XMLDocType = require('./XMLDocType');\n\n XMLCData = require('./XMLCData');\n\n XMLComment = require('./XMLComment');\n\n XMLElement = require('./XMLElement');\n\n XMLRaw = require('./XMLRaw');\n\n XMLText = require('./XMLText');\n\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n\n XMLDummy = require('./XMLDummy');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLWriterBase = (function() {\n function XMLWriterBase(options) {\n var key, ref, value;\n options || (options = {});\n this.options = options;\n ref = options.writer || {};\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this[\"_\" + key] = this[key];\n this[key] = value;\n }\n }\n\n XMLWriterBase.prototype.filterOptions = function(options) {\n var filteredOptions, ref, ref1, ref2, ref3, ref4, ref5, ref6;\n options || (options = {});\n options = assign({}, this.options, options);\n filteredOptions = {\n writer: this\n };\n filteredOptions.pretty = options.pretty || false;\n filteredOptions.allowEmpty = options.allowEmpty || false;\n filteredOptions.indent = (ref = options.indent) != null ? ref : ' ';\n filteredOptions.newline = (ref1 = options.newline) != null ? ref1 : '\\n';\n filteredOptions.offset = (ref2 = options.offset) != null ? ref2 : 0;\n filteredOptions.dontPrettyTextNodes = (ref3 = (ref4 = options.dontPrettyTextNodes) != null ? ref4 : options.dontprettytextnodes) != null ? ref3 : 0;\n filteredOptions.spaceBeforeSlash = (ref5 = (ref6 = options.spaceBeforeSlash) != null ? ref6 : options.spacebeforeslash) != null ? ref5 : '';\n if (filteredOptions.spaceBeforeSlash === true) {\n filteredOptions.spaceBeforeSlash = ' ';\n }\n filteredOptions.suppressPrettyCount = 0;\n filteredOptions.user = {};\n filteredOptions.state = WriterState.None;\n return filteredOptions;\n };\n\n XMLWriterBase.prototype.indent = function(node, options, level) {\n var indentLevel;\n if (!options.pretty || options.suppressPrettyCount) {\n return '';\n } else if (options.pretty) {\n indentLevel = (level || 0) + options.offset + 1;\n if (indentLevel > 0) {\n return new Array(indentLevel).join(options.indent);\n }\n }\n return '';\n };\n\n XMLWriterBase.prototype.endline = function(node, options, level) {\n if (!options.pretty || options.suppressPrettyCount) {\n return '';\n } else {\n return options.newline;\n }\n };\n\n XMLWriterBase.prototype.attribute = function(att, options, level) {\n var r;\n this.openAttribute(att, options, level);\n r = ' ' + att.name + '=\"' + att.value + '\"';\n this.closeAttribute(att, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.cdata = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<![CDATA[';\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += ']]>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.comment = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!-- ';\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += ' -->' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.declaration = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<?xml';\n options.state = WriterState.InsideTag;\n r += ' version=\"' + node.version + '\"';\n if (node.encoding != null) {\n r += ' encoding=\"' + node.encoding + '\"';\n }\n if (node.standalone != null) {\n r += ' standalone=\"' + node.standalone + '\"';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '?>';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.docType = function(node, options, level) {\n var child, i, len, r, ref;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n r += '<!DOCTYPE ' + node.root().name;\n if (node.pubID && node.sysID) {\n r += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.sysID) {\n r += ' SYSTEM \"' + node.sysID + '\"';\n }\n if (node.children.length > 0) {\n r += ' [';\n r += this.endline(node, options, level);\n options.state = WriterState.InsideTag;\n ref = node.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n r += this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n r += ']';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.element = function(node, options, level) {\n var att, child, childNodeCount, firstChildNode, i, j, len, len1, name, prettySuppressed, r, ref, ref1, ref2;\n level || (level = 0);\n prettySuppressed = false;\n r = '';\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r += this.indent(node, options, level) + '<' + node.name;\n ref = node.attribs;\n for (name in ref) {\n if (!hasProp.call(ref, name)) continue;\n att = ref[name];\n r += this.attribute(att, options, level);\n }\n childNodeCount = node.children.length;\n firstChildNode = childNodeCount === 0 ? null : node.children[0];\n if (childNodeCount === 0 || node.children.every(function(e) {\n return (e.type === NodeType.Text || e.type === NodeType.Raw) && e.value === '';\n })) {\n if (options.allowEmpty) {\n r += '>';\n options.state = WriterState.CloseTag;\n r += '</' + node.name + '>' + this.endline(node, options, level);\n } else {\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '/>' + this.endline(node, options, level);\n }\n } else if (options.pretty && childNodeCount === 1 && (firstChildNode.type === NodeType.Text || firstChildNode.type === NodeType.Raw) && (firstChildNode.value != null)) {\n r += '>';\n options.state = WriterState.InsideTag;\n options.suppressPrettyCount++;\n prettySuppressed = true;\n r += this.writeChildNode(firstChildNode, options, level + 1);\n options.suppressPrettyCount--;\n prettySuppressed = false;\n options.state = WriterState.CloseTag;\n r += '</' + node.name + '>' + this.endline(node, options, level);\n } else {\n if (options.dontPrettyTextNodes) {\n ref1 = node.children;\n for (i = 0, len = ref1.length; i < len; i++) {\n child = ref1[i];\n if ((child.type === NodeType.Text || child.type === NodeType.Raw) && (child.value != null)) {\n options.suppressPrettyCount++;\n prettySuppressed = true;\n break;\n }\n }\n }\n r += '>' + this.endline(node, options, level);\n options.state = WriterState.InsideTag;\n ref2 = node.children;\n for (j = 0, len1 = ref2.length; j < len1; j++) {\n child = ref2[j];\n r += this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n r += this.indent(node, options, level) + '</' + node.name + '>';\n if (prettySuppressed) {\n options.suppressPrettyCount--;\n }\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n }\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.writeChildNode = function(node, options, level) {\n switch (node.type) {\n case NodeType.CData:\n return this.cdata(node, options, level);\n case NodeType.Comment:\n return this.comment(node, options, level);\n case NodeType.Element:\n return this.element(node, options, level);\n case NodeType.Raw:\n return this.raw(node, options, level);\n case NodeType.Text:\n return this.text(node, options, level);\n case NodeType.ProcessingInstruction:\n return this.processingInstruction(node, options, level);\n case NodeType.Dummy:\n return '';\n case NodeType.Declaration:\n return this.declaration(node, options, level);\n case NodeType.DocType:\n return this.docType(node, options, level);\n case NodeType.AttributeDeclaration:\n return this.dtdAttList(node, options, level);\n case NodeType.ElementDeclaration:\n return this.dtdElement(node, options, level);\n case NodeType.EntityDeclaration:\n return this.dtdEntity(node, options, level);\n case NodeType.NotationDeclaration:\n return this.dtdNotation(node, options, level);\n default:\n throw new Error(\"Unknown XML node type: \" + node.constructor.name);\n }\n };\n\n XMLWriterBase.prototype.processingInstruction = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<?';\n options.state = WriterState.InsideTag;\n r += node.target;\n if (node.value) {\n r += ' ' + node.value;\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '?>';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.raw = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.text = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdAttList = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!ATTLIST';\n options.state = WriterState.InsideTag;\n r += ' ' + node.elementName + ' ' + node.attributeName + ' ' + node.attributeType;\n if (node.defaultValueType !== '#DEFAULT') {\n r += ' ' + node.defaultValueType;\n }\n if (node.defaultValue) {\n r += ' \"' + node.defaultValue + '\"';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdElement = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!ELEMENT';\n options.state = WriterState.InsideTag;\n r += ' ' + node.name + ' ' + node.value;\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdEntity = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!ENTITY';\n options.state = WriterState.InsideTag;\n if (node.pe) {\n r += ' %';\n }\n r += ' ' + node.name;\n if (node.value) {\n r += ' \"' + node.value + '\"';\n } else {\n if (node.pubID && node.sysID) {\n r += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.sysID) {\n r += ' SYSTEM \"' + node.sysID + '\"';\n }\n if (node.nData) {\n r += ' NDATA ' + node.nData;\n }\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdNotation = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '<!NOTATION';\n options.state = WriterState.InsideTag;\n r += ' ' + node.name;\n if (node.pubID && node.sysID) {\n r += ' PUBLIC \"' + node.pubID + '\" \"' + node.sysID + '\"';\n } else if (node.pubID) {\n r += ' PUBLIC \"' + node.pubID + '\"';\n } else if (node.sysID) {\n r += ' SYSTEM \"' + node.sysID + '\"';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.openNode = function(node, options, level) {};\n\n XMLWriterBase.prototype.closeNode = function(node, options, level) {};\n\n XMLWriterBase.prototype.openAttribute = function(att, options, level) {};\n\n XMLWriterBase.prototype.closeAttribute = function(att, options, level) {};\n\n return XMLWriterBase;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLDOMImplementation, XMLDocument, XMLDocumentCB, XMLStreamWriter, XMLStringWriter, assign, isFunction, ref;\n\n ref = require('./Utility'), assign = ref.assign, isFunction = ref.isFunction;\n\n XMLDOMImplementation = require('./XMLDOMImplementation');\n\n XMLDocument = require('./XMLDocument');\n\n XMLDocumentCB = require('./XMLDocumentCB');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n XMLStreamWriter = require('./XMLStreamWriter');\n\n NodeType = require('./NodeType');\n\n WriterState = require('./WriterState');\n\n module.exports.create = function(name, xmldec, doctype, options) {\n var doc, root;\n if (name == null) {\n throw new Error(\"Root element needs a name.\");\n }\n options = assign({}, xmldec, doctype, options);\n doc = new XMLDocument(options);\n root = doc.element(name);\n if (!options.headless) {\n doc.declaration(options);\n if ((options.pubID != null) || (options.sysID != null)) {\n doc.dtd(options);\n }\n }\n return root;\n };\n\n module.exports.begin = function(options, onData, onEnd) {\n var ref1;\n if (isFunction(options)) {\n ref1 = [options, onData], onData = ref1[0], onEnd = ref1[1];\n options = {};\n }\n if (onData) {\n return new XMLDocumentCB(options, onData, onEnd);\n } else {\n return new XMLDocument(options);\n }\n };\n\n module.exports.stringWriter = function(options) {\n return new XMLStringWriter(options);\n };\n\n module.exports.streamWriter = function(stream, options) {\n return new XMLStreamWriter(stream, options);\n };\n\n module.exports.implementation = new XMLDOMImplementation();\n\n module.exports.nodeType = NodeType;\n\n module.exports.writerState = WriterState;\n\n}).call(this);\n","\n import API from \"!../../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\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 \"!!../../../../css-loader/dist/cjs.js!./index-7UBhRcxV.css\";\n export default content && content.locals ? content.locals : undefined;\n","export class CancelError extends Error {\n\tconstructor(reason) {\n\t\tsuper(reason || 'Promise was canceled');\n\t\tthis.name = 'CancelError';\n\t}\n\n\tget isCanceled() {\n\t\treturn true;\n\t}\n}\n\nconst promiseState = Object.freeze({\n\tpending: Symbol('pending'),\n\tcanceled: Symbol('canceled'),\n\tresolved: Symbol('resolved'),\n\trejected: Symbol('rejected'),\n});\n\nexport default class PCancelable {\n\tstatic fn(userFunction) {\n\t\treturn (...arguments_) => new PCancelable((resolve, reject, onCancel) => {\n\t\t\targuments_.push(onCancel);\n\t\t\tuserFunction(...arguments_).then(resolve, reject);\n\t\t});\n\t}\n\n\t#cancelHandlers = [];\n\t#rejectOnCancel = true;\n\t#state = promiseState.pending;\n\t#promise;\n\t#reject;\n\n\tconstructor(executor) {\n\t\tthis.#promise = new Promise((resolve, reject) => {\n\t\t\tthis.#reject = reject;\n\n\t\t\tconst onResolve = value => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\tresolve(value);\n\t\t\t\t\tthis.#setState(promiseState.resolved);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onReject = error => {\n\t\t\t\tif (this.#state !== promiseState.canceled || !onCancel.shouldReject) {\n\t\t\t\t\treject(error);\n\t\t\t\t\tthis.#setState(promiseState.rejected);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst onCancel = handler => {\n\t\t\t\tif (this.#state !== promiseState.pending) {\n\t\t\t\t\tthrow new Error(`The \\`onCancel\\` handler was attached after the promise ${this.#state.description}.`);\n\t\t\t\t}\n\n\t\t\t\tthis.#cancelHandlers.push(handler);\n\t\t\t};\n\n\t\t\tObject.defineProperties(onCancel, {\n\t\t\t\tshouldReject: {\n\t\t\t\t\tget: () => this.#rejectOnCancel,\n\t\t\t\t\tset: boolean => {\n\t\t\t\t\t\tthis.#rejectOnCancel = boolean;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t});\n\n\t\t\texecutor(onResolve, onReject, onCancel);\n\t\t});\n\t}\n\n\t// eslint-disable-next-line unicorn/no-thenable\n\tthen(onFulfilled, onRejected) {\n\t\treturn this.#promise.then(onFulfilled, onRejected);\n\t}\n\n\tcatch(onRejected) {\n\t\treturn this.#promise.catch(onRejected);\n\t}\n\n\tfinally(onFinally) {\n\t\treturn this.#promise.finally(onFinally);\n\t}\n\n\tcancel(reason) {\n\t\tif (this.#state !== promiseState.pending) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.#setState(promiseState.canceled);\n\n\t\tif (this.#cancelHandlers.length > 0) {\n\t\t\ttry {\n\t\t\t\tfor (const handler of this.#cancelHandlers) {\n\t\t\t\t\thandler();\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tthis.#reject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (this.#rejectOnCancel) {\n\t\t\tthis.#reject(new CancelError(reason));\n\t\t}\n\t}\n\n\tget isCanceled() {\n\t\treturn this.#state === promiseState.canceled;\n\t}\n\n\t#setState(state) {\n\t\tif (this.#state === promiseState.pending) {\n\t\t\tthis.#state = state;\n\t\t}\n\t}\n}\n\nObject.setPrototypeOf(PCancelable.prototype, Promise.prototype);\n","import isRetryAllowed from 'is-retry-allowed';\nexport const namespace = 'axios-retry';\nexport function isNetworkError(error) {\n const CODE_EXCLUDE_LIST = ['ERR_CANCELED', 'ECONNABORTED'];\n if (error.response) {\n return false;\n }\n if (!error.code) {\n return false;\n }\n // Prevents retrying timed out & cancelled requests\n if (CODE_EXCLUDE_LIST.includes(error.code)) {\n return false;\n }\n // Prevents retrying unsafe errors\n return isRetryAllowed(error);\n}\nconst SAFE_HTTP_METHODS = ['get', 'head', 'options'];\nconst IDEMPOTENT_HTTP_METHODS = SAFE_HTTP_METHODS.concat(['put', 'delete']);\nexport function isRetryableError(error) {\n return (error.code !== 'ECONNABORTED' &&\n (!error.response ||\n error.response.status === 429 ||\n (error.response.status >= 500 && error.response.status <= 599)));\n}\nexport function isSafeRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && SAFE_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isIdempotentRequestError(error) {\n if (!error.config?.method) {\n // Cannot determine if the request can be retried\n return false;\n }\n return isRetryableError(error) && IDEMPOTENT_HTTP_METHODS.indexOf(error.config.method) !== -1;\n}\nexport function isNetworkOrIdempotentRequestError(error) {\n return isNetworkError(error) || isIdempotentRequestError(error);\n}\nexport function retryAfter(error = undefined) {\n const retryAfterHeader = error?.response?.headers['retry-after'];\n if (!retryAfterHeader) {\n return 0;\n }\n // if the retry after header is a number, convert it to milliseconds\n let retryAfterMs = (Number(retryAfterHeader) || 0) * 1000;\n // If the retry after header is a date, get the number of milliseconds until that date\n if (retryAfterMs === 0) {\n retryAfterMs = (new Date(retryAfterHeader).valueOf() || 0) - Date.now();\n }\n return Math.max(0, retryAfterMs);\n}\nfunction noDelay(_retryNumber = 0, error = undefined) {\n return Math.max(0, retryAfter(error));\n}\nexport function exponentialDelay(retryNumber = 0, error = undefined, delayFactor = 100) {\n const calculatedDelay = 2 ** retryNumber * delayFactor;\n const delay = Math.max(calculatedDelay, retryAfter(error));\n const randomSum = delay * 0.2 * Math.random(); // 0-20% of the delay\n return delay + randomSum;\n}\n/**\n * Linear delay\n * @param {number | undefined} delayFactor - delay factor in milliseconds (default: 100)\n * @returns {function} (retryNumber: number, error: AxiosError | undefined) => number\n */\nexport function linearDelay(delayFactor = 100) {\n return (retryNumber = 0, error = undefined) => {\n const delay = retryNumber * delayFactor;\n return Math.max(delay, retryAfter(error));\n };\n}\nexport const DEFAULT_OPTIONS = {\n retries: 3,\n retryCondition: isNetworkOrIdempotentRequestError,\n retryDelay: noDelay,\n shouldResetTimeout: false,\n onRetry: () => { },\n onMaxRetryTimesExceeded: () => { },\n validateResponse: null\n};\nfunction getRequestOptions(config, defaultOptions) {\n return { ...DEFAULT_OPTIONS, ...defaultOptions, ...config[namespace] };\n}\nfunction setCurrentState(config, defaultOptions, resetLastRequestTime = false) {\n const currentState = getRequestOptions(config, defaultOptions || {});\n currentState.retryCount = currentState.retryCount || 0;\n if (!currentState.lastRequestTime || resetLastRequestTime) {\n currentState.lastRequestTime = Date.now();\n }\n config[namespace] = currentState;\n return currentState;\n}\nfunction fixConfig(axiosInstance, config) {\n // @ts-ignore\n if (axiosInstance.defaults.agent === config.agent) {\n // @ts-ignore\n delete config.agent;\n }\n if (axiosInstance.defaults.httpAgent === config.httpAgent) {\n delete config.httpAgent;\n }\n if (axiosInstance.defaults.httpsAgent === config.httpsAgent) {\n delete config.httpsAgent;\n }\n}\nasync function shouldRetry(currentState, error) {\n const { retries, retryCondition } = currentState;\n const shouldRetryOrPromise = (currentState.retryCount || 0) < retries && retryCondition(error);\n // This could be a promise\n if (typeof shouldRetryOrPromise === 'object') {\n try {\n const shouldRetryPromiseResult = await shouldRetryOrPromise;\n // keep return true unless shouldRetryPromiseResult return false for compatibility\n return shouldRetryPromiseResult !== false;\n }\n catch (_err) {\n return false;\n }\n }\n return shouldRetryOrPromise;\n}\nasync function handleRetry(axiosInstance, currentState, error, config) {\n currentState.retryCount += 1;\n const { retryDelay, shouldResetTimeout, onRetry } = currentState;\n const delay = retryDelay(currentState.retryCount, error);\n // Axios fails merging this configuration to the default configuration because it has an issue\n // with circular structures: https://github.com/mzabriskie/axios/issues/370\n fixConfig(axiosInstance, config);\n if (!shouldResetTimeout && config.timeout && currentState.lastRequestTime) {\n const lastRequestDuration = Date.now() - currentState.lastRequestTime;\n const timeout = config.timeout - lastRequestDuration - delay;\n if (timeout <= 0) {\n return Promise.reject(error);\n }\n config.timeout = timeout;\n }\n config.transformRequest = [(data) => data];\n await onRetry(currentState.retryCount, error, config);\n if (config.signal?.aborted) {\n return Promise.resolve(axiosInstance(config));\n }\n return new Promise((resolve) => {\n const abortListener = () => {\n clearTimeout(timeout);\n resolve(axiosInstance(config));\n };\n const timeout = setTimeout(() => {\n resolve(axiosInstance(config));\n if (config.signal?.removeEventListener) {\n config.signal.removeEventListener('abort', abortListener);\n }\n }, delay);\n if (config.signal?.addEventListener) {\n config.signal.addEventListener('abort', abortListener, { once: true });\n }\n });\n}\nasync function handleMaxRetryTimesExceeded(currentState, error) {\n if (currentState.retryCount >= currentState.retries)\n await currentState.onMaxRetryTimesExceeded(error, currentState.retryCount);\n}\nconst axiosRetry = (axiosInstance, defaultOptions) => {\n const requestInterceptorId = axiosInstance.interceptors.request.use((config) => {\n setCurrentState(config, defaultOptions, true);\n if (config[namespace]?.validateResponse) {\n // by setting this, all HTTP responses will be go through the error interceptor first\n config.validateStatus = () => false;\n }\n return config;\n });\n const responseInterceptorId = axiosInstance.interceptors.response.use(null, async (error) => {\n const { config } = error;\n // If we have no information to retry the request\n if (!config) {\n return Promise.reject(error);\n }\n const currentState = setCurrentState(config, defaultOptions);\n if (error.response && currentState.validateResponse?.(error.response)) {\n // no issue with response\n return error.response;\n }\n if (await shouldRetry(currentState, error)) {\n return handleRetry(axiosInstance, currentState, error, config);\n }\n await handleMaxRetryTimesExceeded(currentState, error);\n return Promise.reject(error);\n });\n return { requestInterceptorId, responseInterceptorId };\n};\n// Compatibility with CommonJS\naxiosRetry.isNetworkError = isNetworkError;\naxiosRetry.isSafeRequestError = isSafeRequestError;\naxiosRetry.isIdempotentRequestError = isIdempotentRequestError;\naxiosRetry.isNetworkOrIdempotentRequestError = isNetworkOrIdempotentRequestError;\naxiosRetry.exponentialDelay = exponentialDelay;\naxiosRetry.linearDelay = linearDelay;\naxiosRetry.isRetryableError = isRetryableError;\nexport default axiosRetry;\n","import '../assets/index-7UBhRcxV.css';\nimport { isPublicShare } from \"@nextcloud/sharing/public\";\nimport Vue, { defineAsyncComponent } from \"vue\";\nimport { getCurrentUser } from \"@nextcloud/auth\";\nimport { Folder, Permission, davRootPath, FileType, davGetClient, davRemoteURL, validateFilename, InvalidFilenameError, getUniqueName, NewMenuEntryCategory, getNewFileMenuEntries } from \"@nextcloud/files\";\nimport { basename, encodePath } from \"@nextcloud/paths\";\nimport { normalize } from \"path\";\nimport axios, { isCancel } from \"@nextcloud/axios\";\nimport PCancelable from \"p-cancelable\";\nimport PQueue from \"p-queue\";\nimport { generateRemoteUrl } from \"@nextcloud/router\";\nimport axiosRetry, { exponentialDelay } from \"axios-retry\";\nimport { getLoggerBuilder } from \"@nextcloud/logger\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nimport { getCapabilities } from \"@nextcloud/capabilities\";\nimport makeEta from \"simple-eta\";\nimport NcActionButton from \"@nextcloud/vue/dist/Components/NcActionButton.js\";\nimport NcActionCaption from \"@nextcloud/vue/dist/Components/NcActionCaption.js\";\nimport NcActionSeparator from \"@nextcloud/vue/dist/Components/NcActionSeparator.js\";\nimport NcActions from \"@nextcloud/vue/dist/Components/NcActions.js\";\nimport NcButton from \"@nextcloud/vue/dist/Components/NcButton.js\";\nimport NcIconSvgWrapper from \"@nextcloud/vue/dist/Components/NcIconSvgWrapper.js\";\nimport NcProgressBar from \"@nextcloud/vue/dist/Components/NcProgressBar.js\";\nimport { spawnDialog, showInfo, showWarning } from \"@nextcloud/dialogs\";\nconst logger = getLoggerBuilder().setApp(\"@nextcloud/upload\").detectUser().build();\naxiosRetry(axios, { retries: 0 });\nconst uploadData = async function(url, uploadData2, signal, onUploadProgress = () => {\n}, destinationFile = void 0, headers = {}, retries = 5) {\n let data;\n if (uploadData2 instanceof Blob) {\n data = uploadData2;\n } else {\n data = await uploadData2();\n }\n if (destinationFile) {\n headers.Destination = destinationFile;\n }\n if (!headers[\"Content-Type\"]) {\n headers[\"Content-Type\"] = \"application/octet-stream\";\n }\n return await axios.request({\n method: \"PUT\",\n url,\n data,\n signal,\n onUploadProgress,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n};\nconst getChunk = function(file, start, length) {\n if (start === 0 && file.size <= length) {\n return Promise.resolve(new Blob([file], { type: file.type || \"application/octet-stream\" }));\n }\n return Promise.resolve(new Blob([file.slice(start, start + length)], { type: \"application/octet-stream\" }));\n};\nconst initChunkWorkspace = async function(destinationFile = void 0, retries = 5) {\n const chunksWorkspace = generateRemoteUrl(`dav/uploads/${getCurrentUser()?.uid}`);\n const hash = [...Array(16)].map(() => Math.floor(Math.random() * 16).toString(16)).join(\"\");\n const tempWorkspace = `web-file-upload-${hash}`;\n const url = `${chunksWorkspace}/${tempWorkspace}`;\n const headers = destinationFile ? { Destination: destinationFile } : void 0;\n await axios.request({\n method: \"MKCOL\",\n url,\n headers,\n \"axios-retry\": {\n retries,\n retryDelay: (retryCount, error) => exponentialDelay(retryCount, error, 1e3)\n }\n });\n logger.debug(\"Created temporary upload workspace\", { url });\n return url;\n};\nconst getMaxChunksSize = function(fileSize = void 0) {\n const maxChunkSize = window.OC?.appConfig?.files?.max_chunk_size;\n if (maxChunkSize <= 0) {\n return 0;\n }\n if (!Number(maxChunkSize)) {\n return 10 * 1024 * 1024;\n }\n const minimumChunkSize = Math.max(Number(maxChunkSize), 5 * 1024 * 1024);\n if (fileSize === void 0) {\n return minimumChunkSize;\n }\n return Math.max(minimumChunkSize, Math.ceil(fileSize / 1e4));\n};\nvar Status$1 = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"ASSEMBLING\"] = 2] = \"ASSEMBLING\";\n Status2[Status2[\"FINISHED\"] = 3] = \"FINISHED\";\n Status2[Status2[\"CANCELLED\"] = 4] = \"CANCELLED\";\n Status2[Status2[\"FAILED\"] = 5] = \"FAILED\";\n return Status2;\n})(Status$1 || {});\nclass Upload {\n _source;\n _file;\n _isChunked;\n _chunks;\n _size;\n _uploaded = 0;\n _startTime = 0;\n _status = 0;\n _controller;\n _response = null;\n constructor(source, chunked = false, size, file) {\n const chunks = Math.min(getMaxChunksSize() > 0 ? Math.ceil(size / getMaxChunksSize()) : 1, 1e4);\n this._source = source;\n this._isChunked = chunked && getMaxChunksSize() > 0 && chunks > 1;\n this._chunks = this._isChunked ? chunks : 1;\n this._size = size;\n this._file = file;\n this._controller = new AbortController();\n }\n get source() {\n return this._source;\n }\n get file() {\n return this._file;\n }\n get isChunked() {\n return this._isChunked;\n }\n get chunks() {\n return this._chunks;\n }\n get size() {\n return this._size;\n }\n get startTime() {\n return this._startTime;\n }\n set response(response) {\n this._response = response;\n }\n get response() {\n return this._response;\n }\n get uploaded() {\n return this._uploaded;\n }\n /**\n * Update the uploaded bytes of this upload\n */\n set uploaded(length) {\n if (length >= this._size) {\n this._status = this._isChunked ? 2 : 3;\n this._uploaded = this._size;\n return;\n }\n this._status = 1;\n this._uploaded = length;\n if (this._startTime === 0) {\n this._startTime = (/* @__PURE__ */ new Date()).getTime();\n }\n }\n get status() {\n return this._status;\n }\n /**\n * Update this upload status\n */\n set status(status) {\n this._status = status;\n }\n /**\n * Returns the axios cancel token source\n */\n get signal() {\n return this._controller.signal;\n }\n /**\n * Cancel any ongoing requests linked to this upload\n */\n cancel() {\n this._controller.abort();\n this._status = 4;\n }\n}\nconst isFileSystemDirectoryEntry = (o) => \"FileSystemDirectoryEntry\" in window && o instanceof FileSystemDirectoryEntry;\nconst isFileSystemFileEntry = (o) => \"FileSystemFileEntry\" in window && o instanceof FileSystemFileEntry;\nconst isFileSystemEntry = (o) => \"FileSystemEntry\" in window && o instanceof FileSystemEntry;\nclass Directory extends File {\n _originalName;\n _path;\n _children;\n constructor(path) {\n super([], basename(path), { type: \"httpd/unix-directory\", lastModified: 0 });\n this._children = /* @__PURE__ */ new Map();\n this._originalName = basename(path);\n this._path = path;\n }\n get size() {\n return this.children.reduce((sum, file) => sum + file.size, 0);\n }\n get lastModified() {\n return this.children.reduce((latest, file) => Math.max(latest, file.lastModified), 0);\n }\n // We need this to keep track of renamed files\n get originalName() {\n return this._originalName;\n }\n get children() {\n return Array.from(this._children.values());\n }\n get webkitRelativePath() {\n return this._path;\n }\n getChild(name) {\n return this._children.get(name) ?? null;\n }\n /**\n * Add multiple children at once\n * @param files The files to add\n */\n async addChildren(files) {\n for (const file of files) {\n await this.addChild(file);\n }\n }\n /**\n * Add a child to the directory.\n * If it is a nested child the parents will be created if not already exist.\n * @param file The child to add\n */\n async addChild(file) {\n const rootPath = this._path && `${this._path}/`;\n if (isFileSystemFileEntry(file)) {\n file = await new Promise((resolve, reject) => file.file(resolve, reject));\n } else if (isFileSystemDirectoryEntry(file)) {\n const reader = file.createReader();\n const entries = await new Promise((resolve, reject) => reader.readEntries(resolve, reject));\n const child = new Directory(`${rootPath}${file.name}`);\n await child.addChildren(entries);\n this._children.set(file.name, child);\n return;\n }\n file = file;\n const filePath = file.webkitRelativePath ?? file.name;\n if (!filePath.includes(\"/\")) {\n this._children.set(file.name, file);\n } else {\n if (!filePath.startsWith(this._path)) {\n throw new Error(`File ${filePath} is not a child of ${this._path}`);\n }\n const relPath = filePath.slice(rootPath.length);\n const name = basename(relPath);\n if (name === relPath) {\n this._children.set(name, file);\n } else {\n const base = relPath.slice(0, relPath.indexOf(\"/\"));\n if (this._children.has(base)) {\n await this._children.get(base).addChild(file);\n } else {\n const child = new Directory(`${rootPath}${base}`);\n await child.addChild(file);\n this._children.set(base, child);\n }\n }\n }\n }\n}\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Afrikaans (https://www.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"abusaud, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAli <alimahwer@yahoo.com>, 2024\\nabusaud, 2024\\n\" }, \"msgstr\": [\"Last-Translator: abusaud, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" هو اسم ممنوع لملف أو مجلد.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" هو نوع ممنوع أن يكون لملف.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" هو غير مسموح به في اسم ملف أو مجلد.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ملف متعارض\", \"{count} ملف متعارض\", \"{count} ملفان متعارضان\", \"{count} ملف متعارض\", \"{count} ملفات متعارضة\", \"{count} ملفات متعارضة\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ملف متعارض في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفان متعارضان في {dirname}\", \"{count} ملف متعارض في {dirname}\", \"{count} ملفات متعارضة في {dirname}\", \"{count} ملفات متعارضة في {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} ثانية متبقية\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} متبقية\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"بضع ثوانٍ متبقية\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"إلغاء\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"إلغِ العملية بالكامل\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"إلغاء عمليات رفع الملفات\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"إستمر\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"إنشاء جديد\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تقدير الوقت المتبقي\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"الإصدار الحالي\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['غير مسموح ان ينتهي اسم الملف بـ \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"إذا اخترت الاحتفاظ بالنسختين فسيتم إلحاق رقم عداد آخر اسم الملف الوارد.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"اسم ملف غير صحيح\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"تاريخ آخر تعديل غير معروف\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"اسم ملف جديد\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"نسخة جديدة\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مُجمَّد\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"معاينة الصورة\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"تغيير التسمية\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"حدِّد كل صناديق الخيارات\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"حدِّد كل الملفات الموجودة\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"حدِّد كل الملفات الجديدة\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"تخطِّي\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\", \"تخطَّ {count} ملف\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"حجم غير معلوم\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"رفع الملفات\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"رفع ملفات\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"رفع مجلدات\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"الرفع من جهاز \"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"تمّ إلغاء عملية رفع الملفات\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"تمّ تجاوز الرفع\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['رفع \"{folder}\" تمّ تجاوزه'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"تقدُّم الرفع \"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"عند تحديد مجلد وارد، أي ملفات متعارضة بداخله ستتم الكتابة فوقها.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"عند تحديد مجلد وارد، ستتم كتابة المحتوى في المجلد الموجود و سيتم تنفيذ حل التعارض بشكل تعاوُدي.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"أيُّ الملفات ترغب في الإبقاء عليها؟\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"يمكنك إمّا تغيير اسم الملف، أو تجاوزه، أو إلغاء العملية برُمَّتها.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"يجب أن تختار نسخة واحدة على الأقل من كل ملف للاستمرار.\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2023\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nenolp <enolp@softastur.org>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2023\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ficheru en coflictu\", \"{count} ficheros en coflictu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} ficheru en coflictu en {dirname}\", \"{count} ficheros en coflictu en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Tiempu que queda: {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"queden unos segundos\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Encaboxar les xubes\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Siguir\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando'l tiempu que falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión esistente\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Si seleiciones dambes versiones, el ficheru copiáu va tener un númberu amestáu al so nome.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"La data de la última modificación ye desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versión nueva\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en posa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar la imaxe\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar toles caxelles\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleicionar tolos ficheros esistentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleicionar tolos ficheros nuevos\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar esti ficheru\", \"Saltar {count} ficheros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamañu desconocíu\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Encaboxóse la xuba\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Xubir ficheros\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Xuba en cursu\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué ficheros quies caltener?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Tienes de seleicionar polo menos una versión de cada ficheru pa siguir.\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rashad Aliyev <microphprashad@gmail.com>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRashad Aliyev <microphprashad@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rashad Aliyev <microphprashad@gmail.com>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniyə qalıb\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} qalıb\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir neçə saniyə qalıb\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Əlavə et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yükləməni imtina et\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Təxmini qalan vaxt\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauzadadır\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Faylları yüklə\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Belarusian (https://www.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bulgarian (Bulgaria) (https://www.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bengali (Bangladesh) (https://www.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Breton (https://www.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Bosnian (https://www.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\", \"Language-Team\": \"Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMarc Riera <marcriera@softcatala.org>, 2022\\nToni Hermoso Pulido <toniher@softcatala.cat>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Toni Hermoso Pulido <toniher@softcatala.cat>, 2022\\nLanguage-Team: Catalan (https://www.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Queden {seconds} segons\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"Queden {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Queden uns segons\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Afegeix\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel·la les pujades\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"S'està estimant el temps restant\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"En pausa\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Puja els fitxers\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMichal Šmahel <ceskyDJ@seznam.cz>, 2024\\nMartin Hankovec, 2024\\nAppukonrad <appukonrad@gmail.com>, 2024\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít jako název souboru či složky.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}“ není povoleného typu souboru.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}“ není povoleno použít v rámci názvu souboru či složky.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} kolize souborů\", \"{count} kolize souborů\", \"{count} kolizí souborů\", \"{count} kolize souborů\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} kolize souboru v {dirname}\", \"{count} kolize souboru v {dirname}\", \"{count} kolizí souborů v {dirname}\", \"{count} kolize souboru v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"zbývá {seconds}\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"zbývá {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zbývá několik sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušit\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušit celou operaci\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušit nahrávání\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovat\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvořit nový\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhaduje se zbývající čas\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existující verze\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Názvy souborů nemohou končit na „{segment}“.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Pokud vyberete obě verze, příchozí soubor bude mít ke jménu přidánu číslici.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný název souboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Neznámé datum poslední úpravy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový název souboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verze\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastaveno\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhled obrázku\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Přejmenovat\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označit všechny zaškrtávací kolonky\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrat veškeré stávající soubory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrat veškeré nové soubory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Přeskočit\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Přeskočit tento soubor\", \"Přeskočit {count} soubory\", \"Přeskočit {count} souborů\", \"Přeskočit {count} soubory\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznámá velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrát\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrát soubory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrát složky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrát ze zařízení\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávání bylo zrušeno\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrání bylo přeskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Nahrání „{folder}“ bylo přeskočeno\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postup v nahrávání\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po výběru příchozí složky budou rovněž přepsány všechny v ní obsažené konfliktní soubory\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Když je vybrána příchozí složka, obsah je zapsán do existující složky a je provedeno rekurzivní řešení kolizí.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Které soubory si přejete ponechat?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Soubor je možné buď přejmenovat, přeskočit nebo celou operaci zrušit.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby bylo možné pokračovat, je třeba vybrat alespoň jednu verzi od každého souboru.\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Welsh (United Kingdom) (https://www.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRasmus Rosendahl-Kaa, 2024\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tilladt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fil konflikt\", \"{count} filer i konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fil konflikt i {dirname}\", \"{count} filer i konflikt i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{sekunder} sekunder tilbage\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tilbage\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"et par sekunder tilbage\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuller\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuller hele handlingen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuller uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsæt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opret ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimering af resterende tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Eksisterende version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavne må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du vælger begge versioner, vil den indkommende fil have et nummer tilføjet til sit navn.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldigt filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Sidste modifikationsdato ukendt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nyt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvisning af billede\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøb\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Vælg alle felter\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vælg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vælg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Spring over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Spring denne fil over\", \"Spring {count} filer over\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukendt størrelse\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload fra enhed\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload er blevet annulleret\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload er blevet sprunget over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload af \"{folder}\" er blevet sprunget over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload fremskridt\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en indgående mappe er valgt, vil alle modstridende filer i den også blive overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en indkommende mappe er valgt, vil dens indhold blive skrevet ind i den eksisterende mappe og en rekursiv konfliktløsning udføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer ønsker du at beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten omdøbe filen, springe denne fil over eller annullere hele handlingen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du skal vælge mindst én version af hver fil for at fortsætte.\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andy Scherzinger <info@andy-scherzinger.de>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMartin Wilichowski, 2024\\nAndy Scherzinger <info@andy-scherzinger.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andy Scherzinger <info@andy-scherzinger.de>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Geschätzte verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn du beide Versionen auswählst, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Diese Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchtest du behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kannst die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du musst mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMario Siegmann <mario_siegmann@web.de>, 2024\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" ist ein verbotener Datei- oder Ordnername.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" ist ein verbotener Dateityp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ist in einem Datei- oder Ordnernamen nicht zulässig.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Datei-Konflikt\", \"{count} Datei-Konflikte\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} Datei-Konflikt in {dirname}\", \"{count} Datei-Konflikte in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} Sekunden verbleiben\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} verbleibend\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"ein paar Sekunden verbleiben\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Abbrechen\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Den gesamten Vorgang abbrechen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hochladen abbrechen\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsetzen\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Neu erstellen\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Berechne verbleibende Zeit\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Vorhandene Version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dateinamen dürfen nicht mit \"{segment}\" enden.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Wenn Sie beide Versionen auswählen, wird der eingehenden Datei eine Nummer zum Namen hinzugefügt.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ungültiger Dateiname\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum der letzten Änderung unbekannt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Neuer Dateiname\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Neue Version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Pausiert\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vorschaubild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Umbenennen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Alle Kontrollkästchen aktivieren\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Alle vorhandenen Dateien auswählen\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Alle neuen Dateien auswählen\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Überspringen\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} Datei überspringen\", \"{count} Dateien überspringen\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unbekannte Größe\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Hochladen\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dateien hochladen\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ordner hochladen\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Vom Gerät hochladen\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Das Hochladen wurde abgebrochen\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Das Hochladen wurde übersprungen\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Das Hochladen von \"{folder}\" wurde übersprungen'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fortschritt beim Hochladen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Wenn ein eingehender Ordner ausgewählt wird, werden alle darin enthaltenen Konfliktdateien ebenfalls überschrieben.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bei Auswahl eines eingehenden Ordners wird der Inhalt in den vorhandenen Ordner geschrieben und eine rekursive Konfliktlösung durchgeführt.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Welche Dateien möchten Sie behalten?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Sie können die Datei entweder umbenennen, diese Datei überspringen oder den gesamten Vorgang abbrechen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sie müssen mindestens eine Version jeder Datei auswählen, um fortzufahren.\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Nik Pap, 2022\", \"Language-Team\": \"Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nNik Pap, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Nik Pap, 2022\\nLanguage-Team: Greek (https://www.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"απομένουν {seconds} δευτερόλεπτα\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"απομένουν {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"απομένουν λίγα δευτερόλεπτα\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Προσθήκη\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ακύρωση μεταφορτώσεων\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"εκτίμηση του χρόνου που απομένει\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"σε παύση\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Μεταφόρτωση αρχείων\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" is a forbidden file or folder name.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" is a forbidden file type.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" is not allowed inside a file or folder name.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} files conflict\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} file conflicts in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} seconds left\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} left\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"a few seconds left\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancel\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancel the entire operation\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancel uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continue\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Create new\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimating time left\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existing version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filenames must not end with \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"If you select both versions, the incoming file will have a number added to its name.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Invalid filename\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Last modified date unknown\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"New filename\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"New version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"paused\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Preview image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rename\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Select all checkboxes\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Select all existing files\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Select all new files\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Skip\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Skip {count} files\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Unknown size\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Upload\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload files\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Upload folders\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Upload from device\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Upload has been cancelled\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Upload has been skipped\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Upload of \"{folder}\" has been skipped'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Upload progress\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"When an incoming folder is selected, any conflicting files within it will also be overwritten.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Which files do you want to keep?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"You can either rename the file, skip this file or cancel the whole operation.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"You need to select at least one version of each file to continue.\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Esperanto (https://www.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, el archivo entrante le será agregado un número a su nombre.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Última fecha de modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Saltar\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Saltar este archivo\", \"Saltar {count} archivos\", \"Saltar {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier de los archivos en conflictos también serán sobre-escritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido es escrito en la carpeta existente y se realizará una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ALEJANDRO CASTRO, 2022\", \"Language-Team\": \"Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nALEJANDRO CASTRO, 2022\\n\" }, \"msgstr\": [\"Last-Translator: ALEJANDRO CASTRO, 2022\\nLanguage-Team: Spanish (Latin America) (https://www.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"agregar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} conflictos de archivo\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflicto de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\", \"{count} conflictos de archivo en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan unos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa de imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Cargar archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Cargar carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Cargar desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Carga cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la carga\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también serán sobreescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Qué archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Chile) (https://www.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Colombia) (https://www.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Costa Rica) (https://www.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Dominican Republic) (https://www.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Ecuador) (https://www.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Guatemala) (https://www.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Honduras) (https://www.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\" contiene caracteres inválidos, ¿Cómo desea continuar?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflicto de archivo\", \"{count} conflictos de archivo\", \"{count} archivos en conflicto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} archivo en conflicto en {dirname}\", \"{count} archivos en conflicto en {dirname}\", \"{count} archivo en conflicto en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{tiempo} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quedan pocos segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar toda la operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar subidas\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear nuevo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tiempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si selecciona ambas versionas, se agregará un número al nombre del archivo entrante.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"Nombre de archivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Fecha de última modificación desconocida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nueva versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Previsualizar imagen\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renombrar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleccionar todas las casillas de verificación\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos los archivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos los archivos nuevos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omitir este archivo\", \"Omitir {count} archivos\", \"Omitir {count} archivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño desconocido\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Subir archivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Subir carpetas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Subir desde dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"La subida ha sido cancelada\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso de la subida\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, cualquier archivo en conflicto dentro de la misma también será sobrescrito.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cuando una carpeta entrante es seleccionada, el contenido se escribe en la carpeta existente y se realiza una resolución de conflictos recursiva.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"¿Cuáles archivos desea conservar?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar al menos una versión de cada archivo para continuar.\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Nicaragua) (https://www.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Panama) (https://www.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Peru) (https://www.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Puerto Rico) (https://www.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Paraguay) (https://www.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (El Salvador) (https://www.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=2; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Spanish (Uruguay) (https://www.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Taavo Roos, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMait R, 2022\\nTaavo Roos, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Taavo Roos, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} jäänud sekundid\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} aega jäänud\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"jäänud mõni sekund\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Lisa\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Tühista üleslaadimine\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hinnanguline järelejäänud aeg\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lae failid üles\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\", \"Language-Team\": \"Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nUnai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Unai Tolosa Pontesta <utolosa002@gmail.com>, 2022\\nLanguage-Team: Basque (https://www.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundo geratzen dira\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} geratzen da\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"segundo batzuk geratzen dira\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Gehitu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Ezeztatu igoerak\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"kalkulatutako geratzen den denbora\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"geldituta\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Igo fitxategiak\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Fatemeh Komeily, 2023\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nFatemeh Komeily, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Fatemeh Komeily, 2023\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"ثانیه های باقی مانده\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"باقی مانده\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"چند ثانیه مانده\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"اضافه کردن\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"کنسل کردن فایل های اپلود شده\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"تخمین زمان باقی مانده\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"مکث کردن\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"بارگذاری فایل ها\"] } } } } }, { \"locale\": \"fi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"teemue, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\nteemue, 2024\\n\" }, \"msgstr\": [\"Last-Translator: teemue, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" on kielletty tiedoston tai hakemiston nimi.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" on kielletty tiedostotyyppi.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ei ole sallittu tiedoston tai hakemiston nimessä.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} tiedoston ristiriita\", \"{count} tiedoston ristiriita\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tiedoston ristiriita kansiossa {dirname}\", \"{count} tiedoston ristiriita kansiossa {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekuntia jäljellä\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} jäljellä\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"muutama sekunti jäljellä\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Peruuta\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Peruuta koko toimenpide\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Peruuta lähetykset\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Jatka\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Luo uusi\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"arvioidaan jäljellä olevaa aikaa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Olemassa oleva versio\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Tiedoston nimi ei saa päättyä \"{segment}\"'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jos valitset molemmat versiot, saapuvan tiedoston nimeen lisätään numero.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Kielletty/väärä tiedoston nimi\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Viimeisin muokkauspäivä on tuntematon\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Uusi tiedostonimi\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Uusi versio\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"keskeytetty\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Esikatsele kuva\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Nimeä uudelleen\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Valitse kaikki valintaruudut\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Valitse kaikki olemassa olevat tiedostot\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Valitse kaikki uudet tiedostot\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ohita\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ohita tämä tiedosto\", \"Ohita {count} tiedostoa\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tuntematon koko\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Lähetä\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Lähetä tiedostoja\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Lähetä kansioita\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Lähetä laitteelta\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Lähetys on peruttu\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Lähetys on ohitettu\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Hakemiston \"{folder}\" lähetys on ohitettu'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Lähetyksen edistyminen\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Valittuasi saapuvien kansion, kaikki ristiriitaiset tiedostot kansiossa ylikirjoitetaan.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Valittuasi saapuvien kansion, sisältö kirjoitetaan olemassaolevaan kansioon ja suoritetaan rekursiivinen ristiriitojen poisto.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mitkä tiedostot haluat säilyttää?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Voit joko nimetä tiedoston uudelleen, ohittaa tämän tiedoston tai peruuttaa koko toiminnon.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Sinun täytyy valita vähintään yksi versio jokaisesta tiedostosta jatkaaksesi.\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Faroese (https://www.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Arnaud Cazenave, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nBenoit Pruneau, 2024\\njed boulahya, 2024\\nJérôme HERBINET, 2024\\nArnaud Cazenave, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Arnaud Cazenave, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" est un nom de fichier ou de dossier interdit.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" est un type de fichier interdit.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" n'est pas autorisé dans le nom d'un fichier ou d'un dossier.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} fichier en conflit\", \"{count} fichiers en conflit\", \"{count} fichiers en conflit\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fichier en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\", \"{count} fichiers en conflit dans {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondes restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restant\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"quelques secondes restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annuler\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annuler l'opération entière\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annuler les téléversements\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuer\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Créer un nouveau\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimation du temps restant\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Version existante\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Le nom des fichiers ne doit pas finir par \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Si vous sélectionnez les deux versions, le nouveau fichier aura un nombre ajouté à son nom.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nom de fichier invalide\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Date de la dernière modification est inconnue\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nouveau nom de fichier\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nouvelle version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"en pause\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Aperçu de l'image\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renommer\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Sélectionner toutes les cases à cocher\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Sélectionner tous les fichiers existants\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Sélectionner tous les nouveaux fichiers\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Ignorer\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorer ce fichier\", \"Ignorer {count} fichiers\", \"Ignorer {count} fichiers\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Taille inconnue\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Téléverser\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Téléverser des fichiers\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Téléverser des dossiers\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Téléverser depuis l'appareil\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Le téléversement a été annulé\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Le téléversement a été ignoré\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Le téléversement de \"{folder}\" a été ignoré'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progression du téléversement\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, tous les fichiers en conflit qu'il contient seront également écrasés.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Lorsqu'un dossier entrant est sélectionné, le contenu est ajouté dans le dossier existant et une résolution récursive des conflits est effectuée.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quels fichiers souhaitez-vous conserver ?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Vous pouvez soit renommer le fichier, soit ignorer le fichier soit annuler toute l'opération.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Vous devez sélectionner au moins une version de chaque fichier pour continuer.\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Is ainm toirmiscthe comhaid nó fillteáin é \"{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Is cineál comhaid toirmiscthe é \"{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`Ní cheadaítear \"{segment}\" taobh istigh d'ainm comhaid nó fillteáin.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} coimhlint comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\", \"{count} coimhlintí comhaid\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} coimhlint comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\", \"{count} coimhlintí comhaid i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} soicind fágtha\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} fágtha\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"cúpla soicind fágtha\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cealaigh\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cealaigh an oibríocht iomlán\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cealaigh uaslódálacha\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Leanúint ar aghaidh\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Cruthaigh nua\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ag déanamh meastachán ar an am atá fágtha\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Leagan láithreach \"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Níor cheart go gcríochnaíonn comhaid chomhad le \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Má roghnaíonn tú an dá leagan, cuirfear uimhir leis an ainm a thagann isteach.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ainm comhaid neamhbhailí\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dáta modhnaithe is déanaí anaithnid\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ainm comhaid nua\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Leagan nua\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"sos\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Íomhá réamhamharc\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Athainmnigh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Roghnaigh gach ticbhosca\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Roghnaigh gach comhad atá ann cheana féin\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Roghnaigh gach comhad nua\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Scipeáil\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Léim an comhad seo\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\", \"Léim ar {count} comhad\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Méid anaithnid\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Uaslódáil\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Uaslódáil comhaid\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Uaslódáil fillteáin\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Íosluchtaigh ó ghléas\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Cuireadh an t-uaslódáil ar ceal\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Léiríodh an uaslódáil\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Léiríodh an uaslódáil \"{folder}\".'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uaslódáil dul chun cinn\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, déanfar aon chomhad contrártha laistigh de a fhorscríobh freisin.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Nuair a roghnaítear fillteán isteach, scríobhtar an t-ábhar isteach san fhillteán atá ann cheana agus déantar réiteach coinbhleachta athchúrsach.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Cé na comhaid ar mhaith leat a choinneáil?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Is féidir leat an comhad a athainmniú, scipeáil an comhad seo nó an oibríocht iomlán a chealú.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ní mór duit leagan amháin ar a laghad de gach comhad a roghnú chun leanúint ar aghaidh.\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Gaelic, Scottish (https://www.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» é un nome vedado para un ficheiro ou cartafol.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» é un tipo de ficheiro vedado.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» non está permitido dentro dun nome de ficheiro ou cartafol.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} conflito de ficheiros\", \"{count} conflitos de ficheiros\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflito de ficheiros en {dirname}\", \"{count} conflitos de ficheiros en {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltan {seconds} segundos\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"falta {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltan uns segundos\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancela toda a operación\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envíos\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crear un novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calculando canto tempo falta\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versión existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Os nomes de ficheiros non deben rematar con «{segment}».\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selecciona ambas as versións, o ficheiro entrante terá un número engadido ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"O nome de ficheiro non é válido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificación descoñecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nova\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de ficheiro\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versión\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"detido\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Vista previa da imaxe\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marcar todas as caixas de selección\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleccionar todos os ficheiros existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleccionar todos os ficheiros novos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Omitir\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Omita este ficheiro\", \"Omitir {count} ficheiros\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamaño descoñecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar cartafoles\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Enviar dende o dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O envío foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O envío foi omitido\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"O envío de «{folder}» foi omitido\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progreso do envío\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, tamén se sobrescribirán os ficheiros en conflito dentro del.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Cando se selecciona un cartafol entrante, o contido escríbese no cartafol existente e lévase a cabo unha resolución recursiva de conflitos.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Que ficheiros quere conservar?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Pode cambiar o nome do ficheiro, omitir este ficheiro ou cancelar toda a operación.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Debe seleccionar polo menos unha versión de cada ficheiro para continuar.\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hebrew (https://www.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Hindi (India) (https://www.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Croatian (https://www.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Upper Sorbian (https://www.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['Tiltott fájl- vagy mappanév: „{segment}\".'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['Tiltott fájltípus: „{segment}\".'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Nem megengedett egy fájl- vagy mappanévben: „{segment}\".'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}fájlt érintő konfliktus\", \"{count} fájlt érintő konfliktus\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} fájlt érintő konfliktus a mappában: {dirname}\", \"{count}fájlt érintő konfliktus a mappában: {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{} másodperc van hátra\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} van hátra\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"pár másodperc van hátra\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Mégse\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Teljes művelet megszakítása\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Feltöltések megszakítása\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tovább\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Új létrehozása\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"hátralévő idő becslése\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Jelenlegi változat\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Fájlnevek nem végződhetnek erre: „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ha mindkét verziót kiválasztja, a bejövő fájl neve egy számmal egészül ki.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Érvénytelen fájlnév\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Utolsó módosítás dátuma ismeretlen\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Új fájlnév\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Új verzió\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"szüneteltetve\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Kép előnézete\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Átnevezés\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Minden jelölőnégyzet kijelölése\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Minden jelenlegi fájl kijelölése\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Minden új fájl kijelölése\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Kihagyás\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ezen fájl kihagyása\", \"{count}fájl kihagyása\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ismeretlen méret\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Feltöltés\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Fájlok feltöltése\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Mappák feltöltése\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Feltöltés eszközről\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Feltöltés meg lett szakítva\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Feltöltés át lett ugorva\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"„{folder}” feltöltése át lett ugorva\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Feltöltési folyamat\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a mappában lévő ütköző fájlok is felülírásra kerülnek.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ha egy bejövő mappa van kiválasztva, a tartalom a meglévő mappába íródik és rekurzív konfliktusfeloldás történik.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Mely fájlokat kívánja megtartani?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Átnevezheti a fájlt, kihagyhatja ezt a fájlt, vagy törölheti az egész műveletet.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"A folytatáshoz minden fájlból legalább egy verziót ki kell választani.\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Armenian (https://www.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Interlingua (https://www.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Linerly <linerly@proton.me>, 2023\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nEmpty Slot Filler, 2023\\nLinerly <linerly@proton.me>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Linerly <linerly@proton.me>, 2023\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} berkas berkonflik\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} berkas berkonflik dalam {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} detik tersisa\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} tersisa\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"tinggal sebentar lagi\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Batalkan unggahan\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Lanjutkan\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"memperkirakan waktu yang tersisa\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versi yang ada\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Jika Anda memilih kedua versi, nama berkas yang disalin akan ditambahi angka.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Tanggal perubahan terakhir tidak diketahui\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Versi baru\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"dijeda\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Gambar pratinjau\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Pilih semua kotak centang\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Pilih semua berkas yang ada\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Pilih semua berkas baru\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Lewati {count} berkas\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukuran tidak diketahui\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Unggahan dibatalkan\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Unggah berkas\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Berkas mana yang Anda ingin tetap simpan?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Anda harus memilih setidaknya satu versi dari masing-masing berkas untuk melanjutkan.\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Igbo (https://www.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} árekstur skráa\", \"{count} árekstrar skráa\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} árekstur skráa í {dirname}\", \"{count} árekstrar skráa í {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúndur eftir\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} eftir\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"nokkrar sekúndur eftir\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Hætta við innsendingar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Halda áfram\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"áætla tíma sem eftir er\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Fyrirliggjandi útgáfa\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Ef þú velur báðar útgáfur, þá mun verða bætt tölustaf aftan við heiti afrituðu skrárinnar.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Síðasta breytingadagsetning er óþekkt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ný útgáfa\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"í bið\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forskoðun myndar\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velja gátreiti\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velja allar fyrirliggjandi skrár\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velja allar nýjar skrár\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Sleppa þessari skrá\", \"Sleppa {count} skrám\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Óþekkt stærð\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Hætt við innsendingu\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Senda inn skrár\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvaða skrám vilt þú vilt halda eftir?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Þú verður að velja að minnsta kosti eina útgáfu af hverri skrá til að halda áfram.\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"albanobattistella <albanobattistella@gmail.com>, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nFrancesco Sercia, 2024\\nalbanobattistella <albanobattistella@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: albanobattistella <albanobattistella@gmail.com>, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" è un nome di file o cartella proibito.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\"è un tipo di file proibito.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [`\"{segment}\" non è consentito all'interno di un nome di file o cartella.`] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file in conflitto\", \"{count} file in conflitto\", \"{count} file in conflitto\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\", \"{count} file in conflitto in {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secondi rimanenti \"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} rimanente\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alcuni secondi rimanenti\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Annulla\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Annulla l'intera operazione\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Annulla i caricamenti\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continua\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Crea nuovo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"calcolo il tempo rimanente\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versione esistente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['I nomi dei file non devono terminare con \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se selezioni entrambe le versioni, nel nome del file copiato verrà aggiunto un numero \"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome file non valido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ultima modifica sconosciuta\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nuovo nome file\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nuova versione\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausa\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Anteprima immagine\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Rinomina\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Seleziona tutte le caselle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Seleziona tutti i file esistenti\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Seleziona tutti i nuovi file\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Salta\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Salta questo file\", \"Salta {count} file\", \"Salta {count} file\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Dimensione sconosciuta\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Caricamento\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Carica i file\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Carica cartelle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carica dal dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Caricamento annullato\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Il caricamento è stato saltato\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Il caricamento di \"{folder}\" è stato saltato'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Progresso del caricamento\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, anche tutti i file in conflitto al suo interno verranno sovrascritti.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando si seleziona una cartella in arrivo, il contenuto viene scritto nella cartella esistente e viene eseguita una risoluzione ricorsiva dei conflitti.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quali file vuoi mantenere?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"È possibile rinominare il file, ignorarlo o annullare l'intera operazione.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Devi selezionare almeno una versione di ogni file per continuare\"] } } } } }, { \"locale\": \"ja\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"kshimohata, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\nkshimohata, 2024\\n\" }, \"msgstr\": [\"Last-Translator: kshimohata, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" は禁止されているファイルまたはフォルダ名です。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" は禁止されているファイルタイプです。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['ファイルまたはフォルダ名に \"{segment}\" を含めることはできません。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} ファイル数の競合\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} で {count} 個のファイルが競合しています\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"残り {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"残り {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"残り数秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"キャンセル\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"すべての操作をキャンセルする\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"アップロードをキャンセル\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"続ける\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新規作成\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"概算残り時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既存バージョン\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['ファイル名の末尾に \"{segment}\" を付けることはできません。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"両方のバージョンを選択した場合、受信ファイルの名前に数字が追加されます。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無効なファイル名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最終更新日不明\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新しいファイル名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新しいバージョン\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"一時停止中\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"プレビュー画像\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"名前を変更\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"すべて選択\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"すべての既存ファイルを選択\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"すべての新規ファイルを選択\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"スキップ\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count} 個のファイルをスキップする\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"サイズ不明\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"アップロード\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"ファイルをアップロード\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"フォルダのアップロード\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"デバイスからのアップロード\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"アップロードはキャンセルされました\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"アップロードがスキップされました\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" のアップロードがスキップされました'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"アップロード進行状況\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"受信フォルダが選択されると、その中の競合するファイルもすべて上書きされます。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"受信フォルダが選択されると、その内容は既存のフォルダに書き込まれ、再帰的な競合解決が行われます。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"どのファイルを保持しますか?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"ファイル名を変更するか、このファイルをスキップするか、操作全体をキャンセルすることができます。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"続行するには、各ファイルの少なくとも1つのバージョンを選択する必要があります。\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (https://www.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Georgian (Georgia) (https://www.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"ZiriSut, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nZiriSut, 2023\\n\" }, \"msgstr\": [\"Last-Translator: ZiriSut, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} tesdatin i d-yeqqimen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} i d-yeqqimen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"qqiment-d kra n tesdatin kan\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Rnu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Sefsex asali\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"asizel n wakud i d-yeqqimen\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"yeḥbes\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Sali-d ifuyla\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kazakh (https://www.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Khmer (https://www.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Kannada (https://www.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"이상오, 2024\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n이상오, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 이상오, 2024\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{filename}\" contains invalid characters, how do you want to continue?': { \"msgid\": '\"{filename}\" contains invalid characters, how do you want to continue?', \"msgstr\": ['\"{filename}\"에 유효하지 않은 문자가 있습니다, 계속하시겠습니까?'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}개의 파일이 충돌함\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname}에서 {count}개의 파일이 충돌함\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds}초 남음\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} 남음\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"곧 완료\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"취소\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"전체 작업을 취소\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"업로드 취소\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"확인\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"새로 만들기\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"남은 시간 계산\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"현재 버전\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"두 파일을 모두 선택하면, 들어오는 파일의 이름에 번호가 추가됩니다.\"] }, \"Invalid file name\": { \"msgid\": \"Invalid file name\", \"msgstr\": [\"잘못된 파일 이름\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"최근 수정일 알 수 없음\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"새로 만들기\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"새 버전\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"일시정지됨\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"미리보기 이미지\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"이름 바꾸기\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"모든 체크박스 선택\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"기존 파일을 모두 선택\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"새로운 파일을 모두 선택\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"건너뛰기\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"{count}개의 파일 넘기기\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"크기를 알 수 없음\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"파일 업로드\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"폴더 업로드\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"장치에서 업로드\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"업로드가 취소되었습니다.\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"업로드 진행도\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"들어오는 폴더를 선택했다면, 충돌하는 내부 파일들은 덮어쓰기 됩니다.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"들어오는 폴더를 선택했다면 내용물이 그 기존 폴더 안에 작성되고, 전체적으로 충돌 해결을 수행합니다.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"어떤 파일을 보존하시겠습니까?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"계속하기 위해서는 한 파일에 최소 하나의 버전을 선택해야 합니다.\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latin (https://www.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Luxembourgish (https://www.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lao (https://www.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Lithuanian (Lithuania) (https://www.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Latvian (https://www.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Сашко Тодоров <sasetodorov@gmail.com>, 2022\", \"Language-Team\": \"Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nСашко Тодоров <sasetodorov@gmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Сашко Тодоров <sasetodorov@gmail.com>, 2022\\nLanguage-Team: Macedonian (https://www.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостануваат {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"преостанува {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"уште неколку секунди\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Додади\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Прекини прикачување\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"приближно преостанато време\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Прикачување датотеки\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"BATKHUYAG Ganbold, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBATKHUYAG Ganbold, 2023\\n\" }, \"msgstr\": [\"Last-Translator: BATKHUYAG Ganbold, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} секунд үлдсэн\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} үлдсэн\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"хэдхэн секунд үлдсэн\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Нэмэх\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Илгээлтийг цуцлах\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Үлдсэн хугацааг тооцоолж байна\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"түр зогсоосон\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Файл илгээх\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Marathi (https://www.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Malay (Malaysia) (https://www.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Burmese (https://www.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Roger Knutsen, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nRoger Knutsen, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Roger Knutsen, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" er et forbudt fil- eller mappenavn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" er en forbudt filtype.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" er ikke tillatt i et fil- eller mappenavn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} file conflict\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} file conflict in {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder igjen\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} igjen\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"noen få sekunder igjen\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hele operasjonen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt opplastninger\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsett\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Opprett ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Estimerer tid igjen\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Gjeldende versjon\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnavn må ikke slutte med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Hvis du velger begge versjonene, vil den innkommende filen ha et nummer lagt til navnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ugyldig filnavn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Siste gang redigert ukjent\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnavn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny versjon\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pauset\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Forhåndsvis bilde\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Omdøp\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Velg alle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Velg alle eksisterende filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Velg alle nye filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hopp over\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Skip this file\", \"Hopp over {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Ukjent størrelse\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Last opp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Last opp mapper\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Last opp fra enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Opplastingen er kansellert\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Opplastingen er hoppet over\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Opplasting av \"{folder}\" er hoppet over'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Fremdrift, opplasting\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Når en innkommende mappe velges, blir eventuelle motstridende filer i den også overskrevet.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Når en innkommende mappe velges, skrives innholdet inn i den eksisterende mappen, og en rekursiv konfliktløsning utføres.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hvilke filer vil du beholde?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan enten gi nytt navn til filen, hoppe over denne filen eller avbryte hele operasjonen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du må velge minst en versjon av hver fil for å fortsette.\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Nepali (https://www.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Rico <rico-schwab@hotmail.com>, 2023\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nRico <rico-schwab@hotmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Rico <rico-schwab@hotmail.com>, 2023\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Nog {seconds} seconden\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{seconds} over\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Nog een paar seconden\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Voeg toe\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Uploads annuleren\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Schatting van de resterende tijd\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Gepauzeerd\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Upload bestanden\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Occitan (post 1500) (https://www.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” to zabroniona nazwa pliku lub folderu.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” jest zabronionym typem pliku.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"Znak „{segment}” nie jest dozwolony w nazwie pliku lub folderu.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"konflikt 1 pliku\", \"{count} konfliktów plików\", \"{count} konfliktów plików\", \"{count} konfliktów plików\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} konfliktowy plik w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\", \"{count} konfliktowych plików w {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Pozostało {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Pozostało {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Pozostało kilka sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Anuluj\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Anuluj całą operację\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anuluj wysyłanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Kontynuuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Utwórz nowe\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Szacowanie pozostałego czasu\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Istniejąca wersja\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Nazwy plików nie mogą kończyć się na „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Jeśli wybierzesz obie wersje, do nazwy pliku przychodzącego zostanie dodany numer.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nieprawidłowa nazwa pliku\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Nieznana data ostatniej modyfikacji\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nowa nazwa pliku\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nowa wersja\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"Wstrzymane\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Podgląd obrazu\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Zmiana nazwy\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Zaznacz wszystkie pola wyboru\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Zaznacz wszystkie istniejące pliki\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Zaznacz wszystkie nowe pliki\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pomiń\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Pomiń 1 plik\", \"Pomiń {count} plików\", \"Pomiń {count} plików\", \"Pomiń {count} plików\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Nieznany rozmiar\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Prześlij\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Wyślij pliki\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Prześlij foldery\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Prześlij z urządzenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Przesyłanie zostało anulowane\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Przesyłanie zostało pominięte\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Przesyłanie „{folder}” zostało pominięte\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Postęp wysyłania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego wszelkie znajdujące się w nim pliki powodujące konflikt również zostaną nadpisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po wybraniu folderu przychodzącego zawartość jest zapisywana w istniejącym folderze i przeprowadzane jest rekursywne rozwiązywanie konfliktów.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Które pliki chcesz zachować?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Możesz zmienić nazwę pliku, pominąć ten plik lub anulować całą operację.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Aby kontynuować, musisz wybrać co najmniej jedną wersję każdego pliku.\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Pashto (https://www.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Paulo Schopf, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nLeonardo Colman Lopes <leonardo.dev@colman.com.br>, 2024\\nRodrigo Sottomaior Macedo <sottomaiormacedotec@sottomaiormacedo.tech>, 2024\\nPaulo Schopf, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Paulo Schopf, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" é um nome de arquivo ou pasta proibido.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" é um tipo de arquivo proibido.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" não é permitido dentro de um nome de arquivo ou pasta.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} arquivos em conflito\", \"{count} arquivos em conflito\", \"{count} arquivos em conflito\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\", \"{count} conflitos de arquivo em {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} segundos restantes\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} restante\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"alguns segundos restantes\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Cancelar\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Cancelar a operação inteira\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar uploads\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Continuar\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Criar novo\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimando tempo restante\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Versão existente\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Os nomes dos arquivos não devem terminar com \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Se você selecionar ambas as versões, o arquivo recebido terá um número adicionado ao seu nome.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nome de arquivo inválido\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Data da última modificação desconhecida\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo nome de arquivo\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova versão\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Visualizar imagem\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Renomear\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Marque todas as caixas de seleção\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Selecione todos os arquivos existentes\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Selecione todos os novos arquivos\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Pular\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\", \"Ignorar {count} arquivos\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Tamanho desconhecido\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Enviar\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar arquivos\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Enviar pastas\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Carregar do dispositivo\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"O upload foi cancelado\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"O upload foi pulado\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['O upload de \"{folder}\" foi ignorado'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Envio em progresso\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Quando uma pasta é selecionada, quaisquer arquivos dentro dela também serão sobrescritos.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Quando uma pasta de entrada é selecionada, o conteúdo é gravado na pasta existente e uma resolução de conflito recursiva é executada.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Quais arquivos você deseja manter?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Você pode renomear o arquivo, pular este arquivo ou cancelar toda a operação.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Você precisa selecionar pelo menos uma versão de cada arquivo para continuar.\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Manuela Silva <mmsrs@sky.com>, 2022\", \"Language-Team\": \"Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nManuela Silva <mmsrs@sky.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Manuela Silva <mmsrs@sky.com>, 2022\\nLanguage-Team: Portuguese (Portugal) (https://www.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"faltam {seconds} segundo(s)\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"faltam {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"faltam uns segundos\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adicionar\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Cancelar envios\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"tempo em falta estimado\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausado\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Enviar ficheiros\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\", \"Language-Team\": \"Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nMădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Mădălin Vasiliu <contact@madalinvasiliu.com>, 2022\\nLanguage-Team: Romanian (https://www.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} secunde rămase\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"{time} rămas\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"câteva secunde rămase\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"Adaugă\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Anulați încărcările\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"estimarea timpului rămas\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pus pe pauză\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Încarcă fișiere\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Александр, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nВлад, 2024\\nAlex <fedotov22091982@gmail.com>, 2024\\nRoman Stepanov, 2024\\nMaksim Sukharev, 2024\\nАлександр, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Александр, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"«{segment}» — это запрещенное имя файла или папки.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"«{segment}» — это запрещенный тип файла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"«{segment}» не допускается в имени файла или папки.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"конфликт {count} файла\", \"конфликт {count} файлов\", \"конфликт {count} файлов\", \"конфликт {count} файлов\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"конфликт {count} файла в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\", \"конфликт {count} файлов в «{dirname}»\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"осталось {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"осталось {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"осталось несколько секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Отменить\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отменить операцию целиком\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Отменить загрузки\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продолжить\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Создать новое\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оценка оставшегося времени\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Текущая версия\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена файлов не должны заканчиваться на «{segment}»\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Если вы выберете обе версии, к имени входящего файла будет добавлен номер.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неверное имя файла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата последнего изменения неизвестна\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Новое имя файла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Новая версия\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"приостановлено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Предварительный просмотр\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Переименовать\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Выбрать все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Выбрать все существующие файлы\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Выбрать все новые файлы\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустить\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустить файл\", \"Пропустить {count} файла\", \"Пропустить {count} файлов\", \"Пропустить {count} файлов\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Неизвестный размер\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Загрузить\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Загрузить файлы\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Загрузить папки\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Загрузить с устройства\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Загрузка была отменена\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Загрузка была пропущена\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Загрузка «{folder}» была пропущена\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Прогресс загрузки\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Когда выбрана входящая папка, все конфликтующие файлы в ней также будут перезаписаны.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Когда выбрана входящая папка, содержимое записывается в существующую папку и выполняется рекурсивное разрешение конфликтов.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Какие файлы вы хотите сохранить?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Вы можете переименовать файл, пропустить этот файл или отменить всю операцию.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продолжения вам нужно выбрать по крайней мере одну версию каждого файла.\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sardinian (https://www.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Sinhala (https://www.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJozef Gaal <preklady@mayday.sk>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}“ je zakázaný názov súboru alebo priečinka.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je zákazaný typ súboru.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}“ je zakázané v názve súboru alebo adresára.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} súbor má konflikt\", \"{count} súbory majú konflikt\", \"{count} súborov má konflikt\", \"{count} súborov má konflikt\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} súborový konflikt v {dirname}\", \"{count} súborové konflikty v {dirname}\", \"{count} súborových konfliktov v {dirname}\", \"{count} súborových konfliktov v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekúnd zostáva\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} zostáva\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"zostáva niekoľko sekúnd\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Zrušiť\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Zrušiť celú operáciu\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Zrušiť nahrávanie\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Pokračovať\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Vytvoriť nové\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"odhadovanie zostávajúceho času\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Existujúca verzia\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Názvy súborov nesmú končiť znakom \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ak vyberiete obe verzie, k názvu prichádzajúceho súboru sa pridá číslo.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Neplatný názov súboru\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Dátum poslednej úpravy neznámy\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nový\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nový názov súboru\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nová verzia\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pozastavené\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Náhľad obrázka\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Premenovať\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Označiť všetky výberové políčka\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Vybrať všetky existujúce súbory\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Vybrať všetky nové súbory\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskočiť\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskočiť tento súbor\", \"Preskočiť {count} súbory\", \"Preskočiť {count} súborov\", \"Preskočiť {count} súborov\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznáma veľkosť\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Nahrať\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Nahrať súbory\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Nahrať priečinky\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Nahrať zo zariadenia\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nahrávanie bolo zrušené\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nahrávanie bolo preskočené\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nahrávanie \"{folder}\" bolo preskočené'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Priebeh nahrávania\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Keď je vybraný prichádzajúci priečinok, prepíšu sa aj všetky konfliktné súbory v ňom.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Po výbere prichádzajúceho priečinka sa obsah zapíše do existujúceho priečinka a vykoná sa rekurzívne riešenie konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Ktoré súbory chcete ponechať?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Súbor môžete premenovať, preskočiť alebo zrušiť celú operáciu.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Ak chcete pokračovať, musíte vybrať aspoň jednu verziu každého súboru.\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nJan Kraljič <jan.kraljic@patware.eu>, 2024\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" je prepovedano ime datoteka ali mape.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" je prepovedan tip datoteke.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" ni dovoljeno v imenu datoteke ali mape.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"1{count} datoteka je v konfliktu\", \"1{count} datoteki sta v konfiktu\", \"1{count} datotek je v konfliktu\", \"{count} datotek je v konfliktu\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} datoteka je v konfiktu v {dirname}\", \"{count} datoteki sta v konfiktu v {dirname}\", \"{count} datotek je v konfiktu v {dirname}\", \"{count} konfliktov datotek v {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"še {seconds} sekund\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"še {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"še nekaj sekund\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Prekliči\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Prekliči celotni postopek\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Prekliči pošiljanje\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Nadaljuj\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Ustvari nov\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"ocenjujem čas do konca\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Obstoječa različica\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Imena datotek se ne smejo končati s \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Če izberete obe različici, bo imenu dohodne datoteke na koncu dodana številka.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Nepravilno ime datoteke\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Datum zadnje spremembe neznan\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Novo ime datoteke\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Nova različica\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"v premoru\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Predogled slike\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Preimenuj\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Izberi vsa potrditvena polja\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Označi vse obstoječe datoteke\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Označi vse nove datoteke\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Preskoči\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Preskoči datoteko\", \"Preskoči {count} datoteki\", \"Preskoči {count} datotek\", \"Preskoči {count} datotek\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Neznana velikost\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Naloži\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Naloži datoteke\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Naloži mape\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Naloži iz naprave\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Nalaganje je bilo preklicano\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Nalaganje je bilo preskočeno\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Nalaganje \"{folder}\" je bilo preskočeno'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Napredek nalaganja\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, bodo vse datototeke v konfliktu znotraj nje prepisane.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Ko je izbrana dohodna mapa, je vsebina vpisana v obstoječo mapo in je izvedeno rekurzivno reševanje konfliktov.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Katere datoteke želite obdržati?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Datoteko lahko preimenujete, preskočite ali prekličete celo operacijo.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Izbrati morate vsaj eno različico vsake datoteke da nadaljujete.\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Albanian (https://www.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [\"„{segment}” је забрањено име фајла или фолдера.\"] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": [\"„{segment}” је забрањен тип фајла.\"] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": [\"„{segment}” није дозвољено унутар имена фајла или фолдера.\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} фајл конфликт\", \"{count} фајл конфликта\", \"{count} фајл конфликта\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} фајл конфликт у {dirname}\", \"{count} фајл конфликта у {dirname}\", \"{count} фајл конфликта у {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"преостало је {seconds} секунди\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} преостало\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"преостало је неколико секунди\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Откажи\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Отказује комплетну операцију\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Обустави отпремања\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Настави\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Креирај ново\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"процена преосталог времена\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Постојећа верзија\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [\"Имена фајлова не смеју да се завршавају на „{segment}”.\"] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Ако изаберете обе верзије, на име долазног фајла ће се додати број.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Неисправно име фајла\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Није познат датум последње измене\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Ново име фајла\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова верзија\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"паузирано\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Слика прегледа\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Промени име\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Штиклирај сва поља за штиклирање\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Изабери све постојеће фајлове\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Изабери све нове фајлове\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Прескочи\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Прескочи овај фајл\", \"Прескочи {count} фајла\", \"Прескочи {count} фајлова\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Непозната величина\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Отпреми\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Отпреми фајлове\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Отпреми фолдере\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Отпреми са уређаја\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Отпремање је отказано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Отпремање је прескочено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": [\"Отпремање „{folder}”је прескочено\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Напредак отпремања\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Када се изабере долазни фолдер, сва имена фајлова са конфликтом унутар њега ће се такође преписати.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Када се изабере долазни фолдер, садржај се уписује у постојећи фолдер и извршава се рекурзивно разрешавање конфликата.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Које фајлове желите да задржите?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Можете или да промените име фајлу, прескочите овај фајл или откажете комплетну операцију.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Морате да изаберете барем једну верзију сваког фајла да наставите.\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Serbian (Latin) (https://www.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" är ett förbjudet fil- eller mappnamn.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" är en förbjuden filtyp.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" är inte tillåtet i ett fil- eller mappnamn.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} filkonflikt\", \"{count} filkonflikter\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} filkonflikt i {dirname}\", \"{count} filkonflikter i {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} sekunder kvarstår\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kvarstår\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"några sekunder kvar\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Avbryt\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Avbryt hela operationen\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Avbryt uppladdningar\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Fortsätt\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Skapa ny\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"uppskattar kvarstående tid\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Nuvarande version\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Filnamn får inte sluta med \"{segment}\".'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Om du väljer båda versionerna kommer den inkommande filen att läggas till ett nummer i namnet.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Ogiltigt filnamn\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Senaste ändringsdatum okänt\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Nytt filnamn\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Ny version\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"pausad\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Förhandsgranska bild\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Byt namn\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Markera alla kryssrutor\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Välj alla befintliga filer\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Välj alla nya filer\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Hoppa över\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Hoppa över denna fil\", \"Hoppa över {count} filer\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Okänd storlek\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Ladda upp\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Ladda upp filer\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Ladda upp mappar\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Ladda upp från enhet\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Uppladdningen har avbrutits\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Uppladdningen har hoppats över\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Uppladdningen av \"{folder}\" har hoppats över'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Uppladdningsförlopp\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs även alla konfliktande filer i den över.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"När en inkommande mapp väljs skrivs innehållet in i den befintliga mappen och en rekursiv konfliktlösning utförs.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Vilka filer vill du behålla?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Du kan antingen byta namn på filen, hoppa över den här filen eller avbryta hela operationen.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Du måste välja minst en version av varje fil för att fortsätta.\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Swahili (https://www.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Tamil (https://www.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"th\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Phongpanot Phairat <ppnplus@protonmail.com>, 2022\", \"Language-Team\": \"Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPhongpanot Phairat <ppnplus@protonmail.com>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Phongpanot Phairat <ppnplus@protonmail.com>, 2022\\nLanguage-Team: Thai (Thailand) (https://www.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"เหลืออีก {seconds} วินาที\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"time has the format 00:00:00\" }, \"msgstr\": [\"เหลืออีก {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"เหลืออีกไม่กี่วินาที\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"เพิ่ม\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"ยกเลิกการอัปโหลด\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"กำลังคำนวณเวลาที่เหลือ\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"หยุดชั่วคราว\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"อัปโหลดไฟล์\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Turkmen (https://www.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" dosya ya da klasör adına izin verilmiyor.'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" dosya türüne izin verilmiyor.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['Bir dosya ya da klasör adında \"{segment}\" ifadesine izin verilmiyor.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} dosya çakışması var\", \"{count} dosya çakışması var\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} klasöründe {count} dosya çakışması var\", \"{dirname} klasöründe {count} dosya çakışması var\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"{seconds} saniye kaldı\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"{time} kaldı\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"bir kaç saniye kaldı\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"İptal\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Tüm işlemi iptal et\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Yüklemeleri iptal et\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"İlerle\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Yeni ekle\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"öngörülen kalan süre\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Var olan sürüm\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['Dosya adları \"{segment}\" ile bitmemeli.'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"İki sürümü de seçerseniz, gelen dosyanın adına bir sayı eklenir.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Dosya adı geçersiz\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Son değiştirilme tarihi bilinmiyor\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Yeni dosya adı\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Yeni sürüm\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"duraklatıldı\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Görsel ön izlemesi\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Yeniden adlandır\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Tüm kutuları işaretle\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Tüm var olan dosyaları seç\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Tüm yeni dosyaları seç\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Atla\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bu dosyayı atla\", \"{count} dosyayı atla\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Boyut bilinmiyor\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Yükle\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Dosyaları yükle\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Klasörleri yükle\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Aygıttan yükle\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Yükleme iptal edildi\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Yükleme atlandı\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" klasörünün yüklenmesi atlandı'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Yükleme ilerlemesi\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Bir gelen klasör seçildiğinde, içindeki çakışan dosyaların da üzerine yazılır.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Bir gelen klasörü seçildiğinde içerik var olan klasöre yazılır ve yinelemeli bir çakışma çözümü uygulanır.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Hangi dosyaları tutmak istiyorsunuz?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Dosya adını değiştirebilir, bu dosyayı atlayabilir ya da tüm işlemi iptal edebilirsiniz.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"İlerlemek için her dosyanın en az bir sürümünü seçmelisiniz.\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uyghur (https://www.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": [`\"{segment}\" не є дозволеним ім'ям файлу або каталогу.`] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" не є дозволеним типом файлу.'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" не дозволене сполучення символів в назві файлу або каталогу.'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} конфліктний файл\", \"{count} конфліктних файли\", \"{count} конфліктних файлів\", \"{count} конфліктних файлів\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} конфліктний файл у каталозі {dirname}\", \"{count} конфліктних файли у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\", \"{count} конфліктних файлів у каталозі {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Залишилося {seconds} секунд\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Залишилося {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"залишилося кілька секунд\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"Скасувати\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"Скасувати операцію повністю\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Скасувати завантаження\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Продовжити\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"Створити новий\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"оцінка часу, що залишився\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Присутня версія\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": [`Ім'я файлів не можуть закінчуватися на \"{segment}\".`] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"Якщо буде вибрано обидві версії, до імени вхідного файлу було додано цифру.\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"Недійсне ім'я файлу\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Дата останньої зміни невідома\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Нове\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"Нове ім'я файлу\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Нова версія\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"призупинено\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Попередній перегляд\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"Перейменувати\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Вибрати все\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Вибрати усі присутні файли\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Вибрати усі нові файли\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"Пропустити\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Пропустити файл\", \"Пропустити {count} файли\", \"Пропустити {count} файлів\", \"Пропустити {count} файлів\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Невідомий розмір\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"Завантажити\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Завантажити файли\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"Завантажити каталоги\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"Завантажити з пристрою\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"Завантаження скасовано\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"Завантаження пропущено\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['Завантаження \"{folder}\" пропущено'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Поступ завантаження\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"Усі конфліктні файли у вибраному каталозі призначення буде перезаписано поверх.\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"Якщо буде вибрано вхідний каталог, вміст буде записано до наявного каталогу та вирішено конфлікти у відповідних файлах каталогу та підкаталогів.\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Які файли залишити?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"Ви можете або перейменувати цей файл, пропустити або скасувати дію з файлом.\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Для продовження потрібно вибрати принаймні одну версію для кожного файлу.\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Urdu (Pakistan) (https://www.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2022\", \"Language-Team\": \"Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2022\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2022\\nLanguage-Team: Uzbek (https://www.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{estimate} seconds left\": { \"msgid\": \"{estimate} seconds left\", \"msgstr\": [\"\"] }, \"{hours} hours and {minutes} minutes left\": { \"msgid\": \"{hours} hours and {minutes} minutes left\", \"msgstr\": [\"\"] }, \"{minutes} minutes left\": { \"msgid\": \"{minutes} minutes left\", \"msgstr\": [\"\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"\"] }, \"Add\": { \"msgid\": \"Add\", \"msgstr\": [\"\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tung DangQuang, 2023\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTung DangQuang, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Tung DangQuang, 2023\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} Tập tin xung đột\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{count} tập tin lỗi trong {dirname}\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"Còn {second} giây\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"Còn lại {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"Còn lại một vài giây\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"Huỷ tải lên\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"Tiếp Tục\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"Thời gian còn lại dự kiến\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"Phiên Bản Hiện Tại\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"Nếu bạn chọn cả hai phiên bản, tệp được sao chép sẽ có thêm một số vào tên của nó.\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"Ngày sửa dổi lần cuối không xác định\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Tạo Mới\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"Phiên Bản Mới\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"đã tạm dừng\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"Xem Trước Ảnh\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"Chọn tất cả hộp checkbox\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"Chọn tất cả các tập tin có sẵn\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"Chọn tất cả các tập tin mới\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"Bỏ Qua {count} tập tin\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"Không rõ dung lượng\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"Dừng Tải Lên\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"Tập tin tải lên\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"Đang Tải Lên\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"Bạn muốn giữ tập tin nào?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"Bạn cần chọn ít nhất một phiên bản tập tin mới có thể tiếp tục\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gloryandel, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nGloryandel, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gloryandel, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是被禁止的文件名或文件夹名。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是被禁止的文件类型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允许包含在文件名或文件夹名中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count}文件冲突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"在{dirname}目录下有{count}个文件冲突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩余 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩余 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"还剩几秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整个操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上传\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"继续\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"新建\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估计剩余时间\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"服务端版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['文件名不得以 \"{segment}\" 结尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"如果同时选择两个版本,则上传文件的名称中将添加一个数字。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"无效文件名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"文件最后修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新文件名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"上传版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暂停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"图片预览\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"选择所有的选择框\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"保留所有服务端版本\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"保留所有上传版本\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳过\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"跳过{count}个文件\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"文件大小未知\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上传\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上传文件\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上传文件夹\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"从设备上传\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上传已取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上传已跳过\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['已跳过上传\"{folder}\"'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上传进度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"当选择上传文件夹时,其中任何冲突的文件也都会被覆盖。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"选择上传文件夹后,内容将写入现有文件夹,并递归执行冲突解决。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"你要保留哪些文件?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以重命名文件、跳过此文件或取消整个操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"每个文件至少选择保留一个版本\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{segment}\" is a forbidden file or folder name.': { \"msgid\": '\"{segment}\" is a forbidden file or folder name.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案或資料夾名稱。'] }, '\"{segment}\" is a forbidden file type.': { \"msgid\": '\"{segment}\" is a forbidden file type.', \"msgstr\": ['\"{segment}\" 是禁止使用的檔案類型。'] }, '\"{segment}\" is not allowed inside a file or folder name.': { \"msgid\": '\"{segment}\" is not allowed inside a file or folder name.', \"msgstr\": ['\"{segment}\" 不允許出現在檔案或資料夾名稱中。'] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"Create new\": { \"msgid\": \"Create new\", \"msgstr\": [\"創建新\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, 'Filenames must not end with \"{segment}\".': { \"msgid\": 'Filenames must not end with \"{segment}\".', \"msgstr\": ['檔案名不得以 \"{segment}\" 結尾。'] }, \"If you select both versions, the incoming file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the incoming file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,傳入檔案的名稱將會新增編號。\"] }, \"Invalid filename\": { \"msgid\": \"Invalid filename\", \"msgstr\": [\"無效的檔案名\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期不詳\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New filename\": { \"msgid\": \"New filename\", \"msgstr\": [\"新檔案名\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本 \"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Rename\": { \"msgid\": \"Rename\", \"msgstr\": [\"重新命名\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip\": { \"msgid\": \"Skip\", \"msgstr\": [\"跳過\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 個檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"大小不詳\"] }, \"Upload\": { \"msgid\": \"Upload\", \"msgstr\": [\"上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload folders\": { \"msgid\": \"Upload folders\", \"msgstr\": [\"上傳資料夾\"] }, \"Upload from device\": { \"msgid\": \"Upload from device\", \"msgstr\": [\"從裝置上傳\"] }, \"Upload has been cancelled\": { \"msgid\": \"Upload has been cancelled\", \"msgstr\": [\"上傳已被取消\"] }, \"Upload has been skipped\": { \"msgid\": \"Upload has been skipped\", \"msgstr\": [\"上傳已被跳過\"] }, 'Upload of \"{folder}\" has been skipped': { \"msgid\": 'Upload of \"{folder}\" has been skipped', \"msgstr\": ['\"{folder}\" 的上傳已被跳過'] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\": { \"msgid\": \"When an incoming folder is selected, the content is written into the existing folder and a recursive conflict resolution is performed.\", \"msgstr\": [\"選擇傳入資料夾後,內容將寫入現有資料夾並執行遞歸衝突解決。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You can either rename the file, skip this file or cancel the whole operation.\": { \"msgid\": \"You can either rename the file, skip this file or cancel the whole operation.\", \"msgstr\": [\"您可以選擇重新命名檔案、跳過此檔案或取消整個操作。\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2024\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2024\\n黃柏諺 <s8321414@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2024\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"{count} file conflict\": { \"msgid\": \"{count} file conflict\", \"msgid_plural\": \"{count} files conflict\", \"msgstr\": [\"{count} 個檔案衝突\"] }, \"{count} file conflict in {dirname}\": { \"msgid\": \"{count} file conflict in {dirname}\", \"msgid_plural\": \"{count} file conflicts in {dirname}\", \"msgstr\": [\"{dirname} 中有 {count} 個檔案衝突\"] }, \"{seconds} seconds left\": { \"msgid\": \"{seconds} seconds left\", \"msgstr\": [\"剩餘 {seconds} 秒\"] }, \"{time} left\": { \"msgid\": \"{time} left\", \"comments\": { \"extracted\": \"TRANSLATORS time has the format 00:00:00\" }, \"msgstr\": [\"剩餘 {time}\"] }, \"a few seconds left\": { \"msgid\": \"a few seconds left\", \"msgstr\": [\"還剩幾秒\"] }, \"Cancel\": { \"msgid\": \"Cancel\", \"msgstr\": [\"取消\"] }, \"Cancel the entire operation\": { \"msgid\": \"Cancel the entire operation\", \"msgstr\": [\"取消整個操作\"] }, \"Cancel uploads\": { \"msgid\": \"Cancel uploads\", \"msgstr\": [\"取消上傳\"] }, \"Continue\": { \"msgid\": \"Continue\", \"msgstr\": [\"繼續\"] }, \"estimating time left\": { \"msgid\": \"estimating time left\", \"msgstr\": [\"估計剩餘時間\"] }, \"Existing version\": { \"msgid\": \"Existing version\", \"msgstr\": [\"既有版本\"] }, \"If you select both versions, the copied file will have a number added to its name.\": { \"msgid\": \"If you select both versions, the copied file will have a number added to its name.\", \"msgstr\": [\"若您選取兩個版本,複製的檔案的名稱將會新增編號。\"] }, \"Last modified date unknown\": { \"msgid\": \"Last modified date unknown\", \"msgstr\": [\"最後修改日期未知\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新增\"] }, \"New version\": { \"msgid\": \"New version\", \"msgstr\": [\"新版本\"] }, \"paused\": { \"msgid\": \"paused\", \"msgstr\": [\"已暫停\"] }, \"Preview image\": { \"msgid\": \"Preview image\", \"msgstr\": [\"預覽圖片\"] }, \"Select all checkboxes\": { \"msgid\": \"Select all checkboxes\", \"msgstr\": [\"選取所有核取方塊\"] }, \"Select all existing files\": { \"msgid\": \"Select all existing files\", \"msgstr\": [\"選取所有既有檔案\"] }, \"Select all new files\": { \"msgid\": \"Select all new files\", \"msgstr\": [\"選取所有新檔案\"] }, \"Skip this file\": { \"msgid\": \"Skip this file\", \"msgid_plural\": \"Skip {count} files\", \"msgstr\": [\"略過 {count} 檔案\"] }, \"Unknown size\": { \"msgid\": \"Unknown size\", \"msgstr\": [\"未知大小\"] }, \"Upload cancelled\": { \"msgid\": \"Upload cancelled\", \"msgstr\": [\"已取消上傳\"] }, \"Upload files\": { \"msgid\": \"Upload files\", \"msgstr\": [\"上傳檔案\"] }, \"Upload progress\": { \"msgid\": \"Upload progress\", \"msgstr\": [\"上傳進度\"] }, \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\": { \"msgid\": \"When an incoming folder is selected, any conflicting files within it will also be overwritten.\", \"msgstr\": [\"選取傳入資料夾後,其中任何的衝突檔案都會被覆寫。\"] }, \"Which files do you want to keep?\": { \"msgid\": \"Which files do you want to keep?\", \"msgstr\": [\"您想保留哪些檔案?\"] }, \"You need to select at least one version of each file to continue.\": { \"msgid\": \"You need to select at least one version of each file to continue.\", \"msgstr\": [\"您必須為每個檔案都至少選取一個版本以繼續。\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar Status = /* @__PURE__ */ ((Status2) => {\n Status2[Status2[\"IDLE\"] = 0] = \"IDLE\";\n Status2[Status2[\"UPLOADING\"] = 1] = \"UPLOADING\";\n Status2[Status2[\"PAUSED\"] = 2] = \"PAUSED\";\n return Status2;\n})(Status || {});\nclass Uploader {\n // Initialized via setter in the constructor\n _destinationFolder;\n _isPublic;\n _customHeaders;\n // Global upload queue\n _uploadQueue = [];\n _jobQueue = new PQueue({\n // Maximum number of concurrent uploads\n // @ts-expect-error TS2339 Object has no defined properties\n concurrency: getCapabilities().files?.chunked_upload?.max_parallel_count ?? 5\n });\n _queueSize = 0;\n _queueProgress = 0;\n _queueStatus = 0;\n _notifiers = [];\n /**\n * Initialize uploader\n *\n * @param {boolean} isPublic are we in public mode ?\n * @param {Folder} destinationFolder the context folder to operate, relative to the root folder\n */\n constructor(isPublic = false, destinationFolder) {\n this._isPublic = isPublic;\n this._customHeaders = {};\n if (!destinationFolder) {\n const source = `${davRemoteURL}${davRootPath}`;\n let owner;\n if (isPublic) {\n owner = \"anonymous\";\n } else {\n const user = getCurrentUser()?.uid;\n if (!user) {\n throw new Error(\"User is not logged in\");\n }\n owner = user;\n }\n destinationFolder = new Folder({\n id: 0,\n owner,\n permissions: Permission.ALL,\n root: davRootPath,\n source\n });\n }\n this.destination = destinationFolder;\n logger.debug(\"Upload workspace initialized\", {\n destination: this.destination,\n root: this.root,\n isPublic,\n maxChunksSize: getMaxChunksSize()\n });\n }\n /**\n * Get the upload destination path relative to the root folder\n */\n get destination() {\n return this._destinationFolder;\n }\n /**\n * Set the upload destination path relative to the root folder\n */\n set destination(folder) {\n if (!folder || folder.type !== FileType.Folder || !folder.source) {\n throw new Error(\"Invalid destination folder\");\n }\n logger.debug(\"Destination set\", { folder });\n this._destinationFolder = folder;\n }\n /**\n * Get the root folder\n */\n get root() {\n return this._destinationFolder.source;\n }\n /**\n * Get registered custom headers for uploads\n */\n get customHeaders() {\n return structuredClone(this._customHeaders);\n }\n /**\n * Set a custom header\n * @param name The header to set\n * @param value The string value\n */\n setCustomHeader(name, value = \"\") {\n this._customHeaders[name] = value;\n }\n /**\n * Unset a custom header\n * @param name The header to unset\n */\n deleteCustomerHeader(name) {\n delete this._customHeaders[name];\n }\n /**\n * Get the upload queue\n */\n get queue() {\n return this._uploadQueue;\n }\n reset() {\n if (this._uploadQueue.length === 0 && this._jobQueue.size === 0) {\n return;\n }\n this._uploadQueue.splice(0, this._uploadQueue.length);\n this._jobQueue.clear();\n this._queueSize = 0;\n this._queueProgress = 0;\n this._queueStatus = 0;\n logger.debug(\"Uploader state reset\");\n }\n /**\n * Pause any ongoing upload(s)\n */\n pause() {\n this._jobQueue.pause();\n this._queueStatus = 2;\n }\n /**\n * Resume any pending upload(s)\n */\n start() {\n this._jobQueue.start();\n this._queueStatus = 1;\n this.updateStats();\n }\n /**\n * Get the upload queue stats\n */\n get info() {\n return {\n size: this._queueSize,\n progress: this._queueProgress,\n status: this._queueStatus\n };\n }\n updateStats() {\n const size = this._uploadQueue.map((upload2) => upload2.size).reduce((partialSum, a) => partialSum + a, 0);\n const uploaded = this._uploadQueue.map((upload2) => upload2.uploaded).reduce((partialSum, a) => partialSum + a, 0);\n this._queueSize = size;\n this._queueProgress = uploaded;\n if (this._queueStatus === 2) {\n return;\n }\n this._queueStatus = this._jobQueue.size > 0 ? 1 : 0;\n }\n addNotifier(notifier) {\n this._notifiers.push(notifier);\n }\n /**\n * Notify listeners of the upload completion\n * @param upload The upload that finished\n */\n _notifyAll(upload2) {\n for (const notifier of this._notifiers) {\n try {\n notifier(upload2);\n } catch (error) {\n logger.warn(\"Error in upload notifier\", { error, source: upload2.source });\n }\n }\n }\n /**\n * Uploads multiple files or folders while preserving the relative path (if available)\n * @param {string} destination The destination path relative to the root folder. e.g. /foo/bar (a file \"a.txt\" will be uploaded then to \"/foo/bar/a.txt\")\n * @param {Array<File|FileSystemEntry>} files The files and/or folders to upload\n * @param {Function} callback Callback that receives the nodes in the current folder and the current path to allow resolving conflicts, all nodes that are returned will be uploaded (if a folder does not exist it will be created)\n * @return Cancelable promise that resolves to an array of uploads\n *\n * @example\n * ```ts\n * // For example this is from handling the onchange event of an input[type=file]\n * async handleFiles(files: File[]) {\n * this.uploads = await this.uploader.batchUpload('uploads', files, this.handleConflicts)\n * }\n *\n * async handleConflicts(nodes: File[], currentPath: string) {\n * const conflicts = getConflicts(nodes, this.fetchContent(currentPath))\n * if (conflicts.length === 0) {\n * // No conflicts so upload all\n * return nodes\n * } else {\n * // Open the conflict picker to resolve conflicts\n * try {\n * const { selected, renamed } = await openConflictPicker(currentPath, conflicts, this.fetchContent(currentPath), { recursive: true })\n * return [...selected, ...renamed]\n * } catch (e) {\n * return false\n * }\n * }\n * }\n * ```\n */\n batchUpload(destination, files, callback) {\n if (!callback) {\n callback = async (files2) => files2;\n }\n return new PCancelable(async (resolve, reject, onCancel) => {\n const rootFolder = new Directory(\"\");\n await rootFolder.addChildren(files);\n const target = `${this.root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const upload2 = new Upload(target, false, 0, rootFolder);\n upload2.status = Status$1.UPLOADING;\n this._uploadQueue.push(upload2);\n logger.debug(\"Starting new batch upload\", { target });\n try {\n const client = davGetClient(this.root, this._customHeaders);\n const promise = this.uploadDirectory(destination, rootFolder, callback, client);\n onCancel(() => promise.cancel());\n const uploads = await promise;\n upload2.status = Status$1.FINISHED;\n resolve(uploads);\n } catch (error) {\n logger.error(\"Error in batch upload\", { error });\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n } finally {\n this._notifyAll(upload2);\n this.updateStats();\n }\n });\n }\n /**\n * Helper to create a directory wrapped inside an Upload class\n * @param destination Destination where to create the directory\n * @param directory The directory to create\n * @param client The cached WebDAV client\n */\n createDirectory(destination, directory, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n const rootPath = `${this.root.replace(/\\/$/, \"\")}/${folderPath.replace(/^\\//, \"\")}`;\n if (!directory.name) {\n throw new Error(\"Can not create empty directory\");\n }\n const currentUpload = new Upload(rootPath, false, 0, directory);\n this._uploadQueue.push(currentUpload);\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n currentUpload.signal.addEventListener(\"abort\", () => reject(t(\"Upload has been cancelled\")));\n await this._jobQueue.add(async () => {\n currentUpload.status = Status$1.UPLOADING;\n try {\n await client.createDirectory(folderPath, { signal: abort.signal });\n resolve(currentUpload);\n } catch (error) {\n if (error && typeof error === \"object\" && \"status\" in error && error.status === 405) {\n currentUpload.status = Status$1.FINISHED;\n logger.debug(\"Directory already exists, writing into it\", { directory: directory.name });\n } else {\n currentUpload.status = Status$1.FAILED;\n reject(error);\n }\n } finally {\n this._notifyAll(currentUpload);\n this.updateStats();\n }\n });\n });\n }\n // Helper for uploading directories (recursively)\n uploadDirectory(destination, directory, callback, client) {\n const folderPath = normalize(`${destination}/${directory.name}`).replace(/\\/$/, \"\");\n return new PCancelable(async (resolve, reject, onCancel) => {\n const abort = new AbortController();\n onCancel(() => abort.abort());\n const selectedForUpload = await callback(directory.children, folderPath);\n if (selectedForUpload === false) {\n logger.debug(\"Upload canceled by user\", { directory });\n reject(t(\"Upload has been cancelled\"));\n return;\n } else if (selectedForUpload.length === 0 && directory.children.length > 0) {\n logger.debug(\"Skipping directory, as all files were skipped by user\", { directory });\n resolve([]);\n return;\n }\n const directories = [];\n const uploads = [];\n abort.signal.addEventListener(\"abort\", () => {\n directories.forEach((upload2) => upload2.cancel());\n uploads.forEach((upload2) => upload2.cancel());\n });\n logger.debug(\"Start directory upload\", { directory });\n try {\n if (directory.name) {\n uploads.push(this.createDirectory(destination, directory, client));\n await uploads.at(-1);\n }\n for (const node of selectedForUpload) {\n if (node instanceof Directory) {\n directories.push(this.uploadDirectory(folderPath, node, callback, client));\n } else {\n uploads.push(this.upload(`${folderPath}/${node.name}`, node));\n }\n }\n const resolvedUploads = await Promise.all(uploads);\n const resolvedDirectoryUploads = await Promise.all(directories);\n resolve([resolvedUploads, ...resolvedDirectoryUploads].flat());\n } catch (e) {\n abort.abort(e);\n reject(e);\n }\n });\n }\n /**\n * Upload a file to the given path\n * @param {string} destination the destination path relative to the root folder. e.g. /foo/bar.txt\n * @param {File|FileSystemFileEntry} fileHandle the file to upload\n * @param {string} root the root folder to upload to\n * @param retries number of retries\n */\n upload(destination, fileHandle, root, retries = 5) {\n root = root || this.root;\n const destinationPath = `${root.replace(/\\/$/, \"\")}/${destination.replace(/^\\//, \"\")}`;\n const { origin } = new URL(destinationPath);\n const encodedDestinationFile = origin + encodePath(destinationPath.slice(origin.length));\n logger.debug(`Uploading ${fileHandle.name} to ${encodedDestinationFile}`);\n const promise = new PCancelable(async (resolve, reject, onCancel) => {\n if (isFileSystemFileEntry(fileHandle)) {\n fileHandle = await new Promise((resolve2) => fileHandle.file(resolve2, reject));\n }\n const file = fileHandle;\n const maxChunkSize = getMaxChunksSize(\"size\" in file ? file.size : void 0);\n const disabledChunkUpload = this._isPublic || maxChunkSize === 0 || \"size\" in file && file.size < maxChunkSize;\n const upload2 = new Upload(destinationPath, !disabledChunkUpload, file.size, file);\n this._uploadQueue.push(upload2);\n this.updateStats();\n onCancel(upload2.cancel);\n if (!disabledChunkUpload) {\n logger.debug(\"Initializing chunked upload\", { file, upload: upload2 });\n const tempUrl = await initChunkWorkspace(encodedDestinationFile, retries);\n const chunksQueue = [];\n for (let chunk = 0; chunk < upload2.chunks; chunk++) {\n const bufferStart = chunk * maxChunkSize;\n const bufferEnd = Math.min(bufferStart + maxChunkSize, upload2.size);\n const blob = () => getChunk(file, bufferStart, maxChunkSize);\n const request = () => {\n return uploadData(\n `${tempUrl}/${chunk + 1}`,\n blob,\n upload2.signal,\n () => this.updateStats(),\n encodedDestinationFile,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n \"Content-Type\": \"application/octet-stream\"\n },\n retries\n ).then(() => {\n upload2.uploaded = upload2.uploaded + maxChunkSize;\n }).catch((error) => {\n if (error?.response?.status === 507) {\n logger.error(\"Upload failed, not enough space on the server or quota exceeded. Cancelling the remaining chunks\", { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n throw error;\n }\n if (!isCancel(error)) {\n logger.error(`Chunk ${chunk + 1} ${bufferStart} - ${bufferEnd} uploading failed`, { error, upload: upload2 });\n upload2.cancel();\n upload2.status = Status$1.FAILED;\n }\n throw error;\n });\n };\n chunksQueue.push(this._jobQueue.add(request));\n }\n try {\n await Promise.all(chunksQueue);\n this.updateStats();\n upload2.response = await axios.request({\n method: \"MOVE\",\n url: `${tempUrl}/.file`,\n headers: {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"OC-Total-Length\": file.size,\n Destination: encodedDestinationFile\n }\n });\n this.updateStats();\n upload2.status = Status$1.FINISHED;\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (!isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(\"Failed assembling the chunks together\");\n } else {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n }\n axios.request({\n method: \"DELETE\",\n url: `${tempUrl}`\n });\n }\n this._notifyAll(upload2);\n } else {\n logger.debug(\"Initializing regular upload\", { file, upload: upload2 });\n const blob = await getChunk(file, 0, upload2.size);\n const request = async () => {\n try {\n upload2.response = await uploadData(\n encodedDestinationFile,\n blob,\n upload2.signal,\n (event) => {\n upload2.uploaded = upload2.uploaded + event.bytes;\n this.updateStats();\n },\n void 0,\n {\n ...this._customHeaders,\n \"X-OC-Mtime\": Math.floor(file.lastModified / 1e3),\n \"Content-Type\": file.type\n }\n );\n upload2.uploaded = upload2.size;\n this.updateStats();\n logger.debug(`Successfully uploaded ${file.name}`, { file, upload: upload2 });\n resolve(upload2);\n } catch (error) {\n if (isCancel(error)) {\n upload2.status = Status$1.FAILED;\n reject(t(\"Upload has been cancelled\"));\n return;\n }\n if (error?.response) {\n upload2.response = error.response;\n }\n upload2.status = Status$1.FAILED;\n logger.error(`Failed uploading ${file.name}`, { error, file, upload: upload2 });\n reject(\"Failed uploading the file\");\n }\n this._notifyAll(upload2);\n };\n this._jobQueue.add(request);\n this.updateStats();\n }\n this._jobQueue.onIdle().then(() => this.reset());\n return upload2;\n });\n return promise;\n }\n}\nfunction normalizeComponent(scriptExports, render6, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render6) {\n options.render = render6;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nconst _sfc_main$4 = {\n name: \"CancelIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$4 = function render() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon cancel-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$4 = [];\nvar __component__$4 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$4,\n _sfc_render$4,\n _sfc_staticRenderFns$4,\n false,\n null,\n null\n);\nconst IconCancel = __component__$4.exports;\nconst _sfc_main$3 = {\n name: \"FolderUploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$3 = function render2() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon folder-upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$3 = [];\nvar __component__$3 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$3,\n _sfc_render$3,\n _sfc_staticRenderFns$3,\n false,\n null,\n null\n);\nconst IconFolderUpload = __component__$3.exports;\nconst _sfc_main$2 = {\n name: \"PlusIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$2 = function render3() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon plus-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$2 = [];\nvar __component__$2 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$2,\n _sfc_render$2,\n _sfc_staticRenderFns$2,\n false,\n null,\n null\n);\nconst IconPlus = __component__$2.exports;\nconst _sfc_main$1 = {\n name: \"UploadIcon\",\n emits: [\"click\"],\n props: {\n title: {\n type: String\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n};\nvar _sfc_render$1 = function render4() {\n var _vm = this, _c = _vm._self._c;\n return _c(\"span\", _vm._b({ staticClass: \"material-design-icon upload-icon\", attrs: { \"aria-hidden\": _vm.title ? null : \"true\", \"aria-label\": _vm.title, \"role\": \"img\" }, on: { \"click\": function($event) {\n return _vm.$emit(\"click\", $event);\n } } }, \"span\", _vm.$attrs, false), [_c(\"svg\", { staticClass: \"material-design-icon__svg\", attrs: { \"fill\": _vm.fillColor, \"width\": _vm.size, \"height\": _vm.size, \"viewBox\": \"0 0 24 24\" } }, [_c(\"path\", { attrs: { \"d\": \"M9,16V10H5L12,3L19,10H15V16H9M5,20V18H19V20H5Z\" } }, [_vm.title ? _c(\"title\", [_vm._v(_vm._s(_vm.title))]) : _vm._e()])])]);\n};\nvar _sfc_staticRenderFns$1 = [];\nvar __component__$1 = /* @__PURE__ */ normalizeComponent(\n _sfc_main$1,\n _sfc_render$1,\n _sfc_staticRenderFns$1,\n false,\n null,\n null\n);\nconst IconUpload = __component__$1.exports;\nfunction showInvalidFilenameDialog(error) {\n const InvalidFilenameDialog = defineAsyncComponent(() => import(\"./InvalidFilenameDialog-B2HT8YV2.mjs\"));\n const { promise, reject, resolve } = Promise.withResolvers();\n spawnDialog(\n InvalidFilenameDialog,\n {\n error,\n validateFilename\n },\n (...rest) => {\n const [{ skip, rename }] = rest;\n if (skip) {\n resolve(false);\n } else if (rename) {\n resolve(rename);\n } else {\n reject();\n }\n }\n );\n return promise;\n}\nfunction hasConflict(files, content) {\n return getConflicts(files, content).length > 0;\n}\nfunction getConflicts(files, content) {\n const contentNames = content.map((node) => node.basename);\n const conflicts = files.filter((node) => {\n const name = \"basename\" in node ? node.basename : node.name;\n return contentNames.indexOf(name) !== -1;\n });\n return conflicts;\n}\nfunction uploadConflictHandler(contentsCallback) {\n return async (nodes, path) => {\n try {\n const content = await contentsCallback(path).catch(() => []);\n const conflicts = getConflicts(nodes, content);\n if (conflicts.length > 0) {\n const { selected, renamed } = await openConflictPicker(path, conflicts, content, { recursive: true });\n nodes = [...selected, ...renamed];\n }\n const filesToUpload = [];\n for (const file of nodes) {\n try {\n validateFilename(file.name);\n filesToUpload.push(file);\n } catch (error) {\n if (!(error instanceof InvalidFilenameError)) {\n logger.error(`Unexpected error while validating ${file.name}`, { error });\n throw error;\n }\n let newName = await showInvalidFilenameDialog(error);\n if (newName !== false) {\n newName = getUniqueName(newName, nodes.map((node) => node.name));\n Object.defineProperty(file, \"name\", { value: newName });\n filesToUpload.push(file);\n }\n }\n }\n if (filesToUpload.length === 0 && nodes.length > 0) {\n const folder = basename(path);\n showInfo(\n folder ? t('Upload of \"{folder}\" has been skipped', { folder }) : t(\"Upload has been skipped\")\n );\n }\n return filesToUpload;\n } catch (error) {\n logger.debug(\"Upload has been cancelled\", { error });\n showWarning(t(\"Upload has been cancelled\"));\n return false;\n }\n };\n}\nconst _sfc_main = Vue.extend({\n name: \"UploadPicker\",\n components: {\n IconCancel,\n IconFolderUpload,\n IconPlus,\n IconUpload,\n NcActionButton,\n NcActionCaption,\n NcActionSeparator,\n NcActions,\n NcButton,\n NcIconSvgWrapper,\n NcProgressBar\n },\n props: {\n accept: {\n type: Array,\n default: null\n },\n disabled: {\n type: Boolean,\n default: false\n },\n multiple: {\n type: Boolean,\n default: false\n },\n /**\n * Allow to disable the \"new\"-menu for this UploadPicker instance\n * @default false\n */\n noMenu: {\n type: Boolean,\n default: false\n },\n destination: {\n type: Folder,\n default: void 0\n },\n allowFolders: {\n type: Boolean,\n default: false\n },\n /**\n * List of file present in the destination folder\n * It is also possible to provide a function that takes a relative path to the current directory and returns the content of it\n * Note: If a function is passed it should return the current base directory when no path or an empty is passed\n */\n content: {\n type: [Array, Function],\n default: () => []\n },\n /**\n * Overwrite forbidden characters (by default the capabilities of the server are used)\n * @deprecated Deprecated and will be removed in the next major version\n */\n forbiddenCharacters: {\n type: Array,\n default: () => []\n }\n },\n setup() {\n return {\n t,\n // non reactive data / properties\n progressTimeId: `nc-uploader-progress-${Math.random().toString(36).slice(7)}`\n };\n },\n data() {\n return {\n eta: null,\n timeLeft: \"\",\n newFileMenuEntries: [],\n uploadManager: getUploader()\n };\n },\n computed: {\n menuEntriesUpload() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.UploadFromDevice);\n },\n menuEntriesNew() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.CreateNew);\n },\n menuEntriesOther() {\n return this.newFileMenuEntries.filter((entry) => entry.category === NewMenuEntryCategory.Other);\n },\n /**\n * Check whether the current browser supports uploading directories\n * Hint: This does not check if the current connection supports this, as some browsers require a secure context!\n */\n canUploadFolders() {\n return this.allowFolders && \"webkitdirectory\" in document.createElement(\"input\");\n },\n totalQueueSize() {\n return this.uploadManager.info?.size || 0;\n },\n uploadedQueueSize() {\n return this.uploadManager.info?.progress || 0;\n },\n progress() {\n return Math.round(this.uploadedQueueSize / this.totalQueueSize * 100) || 0;\n },\n queue() {\n return this.uploadManager.queue;\n },\n hasFailure() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.FAILED).length !== 0;\n },\n isUploading() {\n return this.queue?.length > 0;\n },\n isAssembling() {\n return this.queue?.filter((upload2) => upload2.status === Status$1.ASSEMBLING).length !== 0;\n },\n isPaused() {\n return this.uploadManager.info?.status === Status.PAUSED;\n },\n buttonLabel() {\n return this.noMenu ? t(\"Upload\") : t(\"New\");\n },\n // Hide the button text if we're uploading\n buttonName() {\n if (this.isUploading) {\n return void 0;\n }\n return this.buttonLabel;\n }\n },\n watch: {\n allowFolders: {\n immediate: true,\n handler() {\n if (typeof this.content !== \"function\" && this.allowFolders) {\n logger.error(\"[UploadPicker] Setting `allowFolders` is only allowed if `content` is a function\");\n }\n }\n },\n destination(destination) {\n this.setDestination(destination);\n },\n totalQueueSize(size) {\n this.eta = makeEta({ min: 0, max: size });\n this.updateStatus();\n },\n uploadedQueueSize(size) {\n this.eta?.report?.(size);\n this.updateStatus();\n },\n isPaused(isPaused) {\n if (isPaused) {\n this.$emit(\"paused\", this.queue);\n } else {\n this.$emit(\"resumed\", this.queue);\n }\n }\n },\n beforeMount() {\n if (this.destination) {\n this.setDestination(this.destination);\n }\n this.uploadManager.addNotifier(this.onUploadCompletion);\n logger.debug(\"UploadPicker initialised\");\n },\n methods: {\n /**\n * Handle clicking a new-menu entry\n * @param entry The entry that was clicked\n */\n async onClick(entry) {\n entry.handler(\n this.destination,\n await this.getContent().catch(() => [])\n );\n },\n /**\n * Trigger file picker\n * @param uploadFolders Upload folders\n */\n onTriggerPick(uploadFolders = false) {\n const input = this.$refs.input;\n if (this.canUploadFolders) {\n input.webkitdirectory = uploadFolders;\n }\n this.$nextTick(() => input.click());\n },\n /**\n * Helper for backwards compatibility that queries the content of the current directory\n * @param path The current path\n */\n async getContent(path) {\n return Array.isArray(this.content) ? this.content : await this.content(path);\n },\n /**\n * Start uploading\n */\n onPick() {\n const input = this.$refs.input;\n const files = input.files ? Array.from(input.files) : [];\n this.uploadManager.batchUpload(\"\", files, uploadConflictHandler(this.getContent)).catch((error) => logger.debug(\"Error while uploading\", { error })).finally(() => this.resetForm());\n },\n resetForm() {\n const form = this.$refs.form;\n form?.reset();\n },\n /**\n * Cancel ongoing queue\n */\n onCancel() {\n this.uploadManager.queue.forEach((upload2) => {\n upload2.cancel();\n });\n this.resetForm();\n },\n updateStatus() {\n if (this.isPaused) {\n this.timeLeft = t(\"paused\");\n return;\n }\n const estimate = Math.round(this.eta.estimate());\n if (estimate === Infinity) {\n this.timeLeft = t(\"estimating time left\");\n return;\n }\n if (estimate < 10) {\n this.timeLeft = t(\"a few seconds left\");\n return;\n }\n if (estimate > 60) {\n const date = /* @__PURE__ */ new Date(0);\n date.setSeconds(estimate);\n const time = date.toISOString().slice(11, 11 + 8);\n this.timeLeft = t(\"{time} left\", { time });\n return;\n }\n this.timeLeft = t(\"{seconds} seconds left\", { seconds: estimate });\n },\n setDestination(destination) {\n if (!this.destination) {\n logger.debug(\"Invalid destination\");\n return;\n }\n this.uploadManager.destination = destination;\n this.newFileMenuEntries = getNewFileMenuEntries(destination);\n },\n onUploadCompletion(upload2) {\n if (upload2.status === Status$1.FAILED) {\n this.$emit(\"failed\", upload2);\n } else {\n this.$emit(\"uploaded\", upload2);\n }\n }\n }\n});\nvar _sfc_render = function render5() {\n var _vm = this, _c = _vm._self._c;\n _vm._self._setupProxy;\n return _vm.destination ? _c(\"form\", { ref: \"form\", staticClass: \"upload-picker\", class: { \"upload-picker--uploading\": _vm.isUploading, \"upload-picker--paused\": _vm.isPaused }, attrs: { \"data-cy-upload-picker\": \"\" } }, [(_vm.noMenu || _vm.newFileMenuEntries.length === 0) && !_vm.canUploadFolders ? _c(\"NcButton\", { attrs: { \"disabled\": _vm.disabled, \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"type\": \"secondary\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_vm._v(\" \" + _vm._s(_vm.buttonName) + \" \")]) : _c(\"NcActions\", { attrs: { \"aria-label\": _vm.buttonLabel, \"menu-name\": _vm.buttonName, \"type\": \"secondary\" }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconPlus\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1991456921) }, [_c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Upload from device\") } }), _c(\"NcActionButton\", { attrs: { \"data-cy-upload-picker-add\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-file\", \"close-after-click\": true }, on: { \"click\": function($event) {\n return _vm.onTriggerPick();\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconUpload\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 337456192) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload files\")) + \" \")]), _vm.canUploadFolders ? _c(\"NcActionButton\", { attrs: { \"close-after-click\": \"\", \"data-cy-upload-picker-add-folders\": \"\", \"data-cy-upload-picker-menu-entry\": \"upload-folder\" }, on: { \"click\": function($event) {\n return _vm.onTriggerPick(true);\n } }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconFolderUpload\", { staticStyle: { \"color\": \"var(--color-primary-element)\" }, attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 1037549157) }, [_vm._v(\" \" + _vm._s(_vm.t(\"Upload folders\")) + \" \")]) : _vm._e(), !_vm.noMenu ? _vm._l(_vm.menuEntriesUpload, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n }) : _vm._e(), !_vm.noMenu && _vm.menuEntriesNew.length > 0 ? [_c(\"NcActionSeparator\"), _c(\"NcActionCaption\", { attrs: { \"name\": _vm.t(\"Create new\") } }), _vm._l(_vm.menuEntriesNew, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e(), !_vm.noMenu && _vm.menuEntriesOther.length > 0 ? [_c(\"NcActionSeparator\"), _vm._l(_vm.menuEntriesOther, function(entry) {\n return _c(\"NcActionButton\", { key: entry.id, staticClass: \"upload-picker__menu-entry\", attrs: { \"icon\": entry.iconClass, \"close-after-click\": true, \"data-cy-upload-picker-menu-entry\": entry.id }, on: { \"click\": function($event) {\n return _vm.onClick(entry);\n } }, scopedSlots: _vm._u([entry.iconSvgInline ? { key: \"icon\", fn: function() {\n return [_c(\"NcIconSvgWrapper\", { attrs: { \"svg\": entry.iconSvgInline } })];\n }, proxy: true } : null], null, true) }, [_vm._v(\" \" + _vm._s(entry.displayName) + \" \")]);\n })] : _vm._e()], 2), _c(\"div\", { directives: [{ name: \"show\", rawName: \"v-show\", value: _vm.isUploading, expression: \"isUploading\" }], staticClass: \"upload-picker__progress\" }, [_c(\"NcProgressBar\", { attrs: { \"aria-label\": _vm.t(\"Upload progress\"), \"aria-describedby\": _vm.progressTimeId, \"error\": _vm.hasFailure, \"value\": _vm.progress, \"size\": \"medium\" } }), _c(\"p\", { attrs: { \"id\": _vm.progressTimeId } }, [_vm._v(\" \" + _vm._s(_vm.timeLeft) + \" \")])], 1), _vm.isUploading ? _c(\"NcButton\", { staticClass: \"upload-picker__cancel\", attrs: { \"type\": \"tertiary\", \"aria-label\": _vm.t(\"Cancel uploads\"), \"data-cy-upload-picker-cancel\": \"\" }, on: { \"click\": _vm.onCancel }, scopedSlots: _vm._u([{ key: \"icon\", fn: function() {\n return [_c(\"IconCancel\", { attrs: { \"size\": 20 } })];\n }, proxy: true }], null, false, 3076329829) }) : _vm._e(), _c(\"input\", { ref: \"input\", staticClass: \"hidden-visually\", attrs: { \"accept\": _vm.accept?.join?.(\", \"), \"multiple\": _vm.multiple, \"data-cy-upload-picker-input\": \"\", \"type\": \"file\" }, on: { \"change\": _vm.onPick } })], 1) : _vm._e();\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n \"c5517ef8\"\n);\nconst UploadPicker = __component__.exports;\nfunction getUploader(isPublic = isPublicShare(), forceRecreate = false) {\n if (forceRecreate || window._nc_uploader === void 0) {\n window._nc_uploader = new Uploader(isPublic);\n }\n return window._nc_uploader;\n}\nfunction upload(destinationPath, file) {\n const uploader = getUploader();\n uploader.upload(destinationPath, file);\n return uploader;\n}\nasync function openConflictPicker(dirname, conflicts, content, options) {\n const ConflictPicker = defineAsyncComponent(() => import(\"./ConflictPicker-qDivo0Si.mjs\"));\n return new Promise((resolve, reject) => {\n const picker = new Vue({\n name: \"ConflictPickerRoot\",\n render: (h) => h(ConflictPicker, {\n props: {\n dirname,\n conflicts,\n content,\n recursiveUpload: options?.recursive === true\n },\n on: {\n submit(results) {\n resolve(results);\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n },\n cancel(error) {\n reject(error ?? new Error(\"Canceled\"));\n picker.$destroy();\n picker.$el?.parentNode?.removeChild(picker.$el);\n }\n }\n })\n });\n picker.$mount();\n document.body.appendChild(picker.$el);\n });\n}\nexport {\n Status$1 as S,\n UploadPicker as U,\n isFileSystemEntry as a,\n n as b,\n getConflicts as c,\n uploadConflictHandler as d,\n Upload as e,\n Uploader as f,\n getUploader as g,\n hasConflict as h,\n isFileSystemFileEntry as i,\n Status as j,\n logger as l,\n normalizeComponent as n,\n openConflictPicker as o,\n t,\n upload as u\n};\n","import Toastify from \"toastify-js\";\nimport { getGettextBuilder } from \"@nextcloud/l10n/gettext\";\nconst gtBuilder = getGettextBuilder().detectLocale();\n[{ \"locale\": \"af\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"af\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Afrikaans (https://app.transifex.com/nextcloud/teams/64236/af/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: af\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ar\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ali <alimahwer@yahoo.com>, 2024\", \"Language-Team\": \"Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ar\", \"Plural-Forms\": \"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAli <alimahwer@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ali <alimahwer@yahoo.com>, 2024\\nLanguage-Team: Arabic (https://app.transifex.com/nextcloud/teams/64236/ar/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ar\\nPlural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" لا يصلح كاسم مجلد.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" غير مسموح به كاسم مجلد'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" غير مسموح به داخل اسم مجلد.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"كل الملفات\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"إختَر\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"إختَر {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملف\", \"إختَر %n ملفات\", \"إختَر %n ملف\", \"إختَر %n ملف\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"نسخ\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"نسخٌ إلى {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"تعذّر إنشاء المجلد الجديد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"يتعذّر تحميل إعدادات الملفات\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"يتعذّر تحميل مناظير views الملفات\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"أنشِيءْ مجلّداً\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"مُنتقِي المنظور الحالي\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"المُفضَّلة\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي تُميِّزُها كمٌفضَّلة ستظهر هنا.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"الملفات و المجلدات التي قمت مؤخراً بتعديلها سوف تظهر هنا.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فلترة قائمة الملفات\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"اسم المجلد لا يمكن أن يكون فارغاً.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"البداية\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"مُعدَّل\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"أُنقُل\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"أُنقُل إلى {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"الاسم\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جديد\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"مٌجلّد جديد\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"اسم المجلد الجديد\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"لا توجد ملفات هنا\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"لا توجد ملفات تتطابق مع الفلتر الذي وضعته\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"لا توجد ملفات مُطابِقة\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"الحالي\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"حدِّد كل المداخل\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"إختَر المدخل\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"إختر سطر الـ {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"الحجم\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"تراجع\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"قُم برفع محتوىً أو قُم بمزامنة أجهزتك!\"] } } } } }, { \"locale\": \"ast\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"enolp <enolp@softastur.org>, 2024\", \"Language-Team\": \"Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ast\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nenolp <enolp@softastur.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: enolp <enolp@softastur.org>, 2024\\nLanguage-Team: Asturian (https://app.transifex.com/nextcloud/teams/64236/ast/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ast\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» ye un nome de carpeta inválidu\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Nun se permite'l caráuter «/» dientro'l nome de les carpetes.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tolos ficheros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoyer\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoyer «{ficheru}»\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoyer %n ficheru\", \"Escoyer %n ficheros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nun se pudo crear la carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nun se pudo cargar la configuración de los ficheros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nun se pudieron cargar les vistes de los ficheros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un direutoriu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de la vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Equí apaecen los ficheros y les carpetes que metas en Favoritos.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Equí apaecen los fichero y les carpetes que modificares apocayá.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Peñerar la llista de ficheros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nome de la carpeta nun pue tar baleru.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Aniciu\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificóse\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nueva\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nome de carpeta nuevu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Equí nun hai nengún ficheru\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nun s'atopó nengún ficheru que concasare cola peñera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nun hai nengún ficheru que concase\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"De recién\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleicionar toles entraes\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleicionar la entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleicionar la filera de: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamañu\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Xubi dalgún elementu o sincroniza colos tos preseos!\"] } } } } }, { \"locale\": \"az\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"az\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Azerbaijani (https://app.transifex.com/nextcloud/teams/64236/az/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: az\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"be\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"be\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Belarusian (https://app.transifex.com/nextcloud/teams/64236/be/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: be\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bg_BG\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bg_BG\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bulgarian (Bulgaria) (https://app.transifex.com/nextcloud/teams/64236/bg_BG/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bg_BG\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"bn_BD\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bn_BD\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bengali (Bangladesh) (https://app.transifex.com/nextcloud/teams/64236/bn_BD/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bn_BD\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"br\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"br\", \"Plural-Forms\": \"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Breton (https://app.transifex.com/nextcloud/teams/64236/br/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: br\\nPlural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Disober\"] } } } } }, { \"locale\": \"bs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"bs\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Bosnian (https://app.transifex.com/nextcloud/teams/64236/bs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: bs\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ca\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sergi Font, 2024\", \"Language-Team\": \"Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ca\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nv v <e670006006@gmail.com>, 2024\\nMarc Riera <marcriera@softcatala.org>, 2024\\nSergi Font, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sergi Font, 2024\\nLanguage-Team: Catalan (https://app.transifex.com/nextcloud/teams/64236/ca/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ca\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" és un nom de carpeta no vàlid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no és permès en el nom de carpeta'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no és permès en el nom de carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tots els fitxers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Tria\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Tria {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Tria %n fitxer\", \"Tria %n fitxers\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No s'ha pogut crear la carpeta nova\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No es poden carregar fitxers de configuració\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No es poden carregar fitxers de vistes\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de visualització actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferits\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes que marqueu com a favorits es mostraran aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Els fitxers i les carpetes recentment modificats es mostraran aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar llistat de fitxers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nom de la carpeta no pot estar buit.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inici\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Data de modificació\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Desplaça\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Desplaça a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Crea\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Carpeta nova\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom de la carpeta nova\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hi ha cap fitxer\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No s'ha trobat cap fitxer que coincideixi amb el filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hi ha cap fitxer que coincideixi\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecciona totes les entrades\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecciona l'entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecciona la fila per a {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mida\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfés\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Pugeu contingut o sincronitzeu-lo amb els vostres dispositius!\"] } } } } }, { \"locale\": \"cs\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2020\", \"Language-Team\": \"Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nPavel Borecki <pavel.borecki@gmail.com>, 2020\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2020\\nLanguage-Team: Czech (https://www.transifex.com/nextcloud/teams/64236/cs/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:187\" }, \"msgstr\": [\"Zpět\"] } } } } }, { \"locale\": \"cs_CZ\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Pavel Borecki <pavel.borecki@gmail.com>, 2024\", \"Language-Team\": \"Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cs_CZ\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nPavel Borecki <pavel.borecki@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2024\\nLanguage-Team: Czech (Czech Republic) (https://app.transifex.com/nextcloud/teams/64236/cs_CZ/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cs_CZ\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}“ není platný název složky.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}“ není povolený název složky.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"znak „/“ (dopředné lomítko) není možné použít uvnitř názvu složky.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Veškeré soubory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Zvolit\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Zvolit {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Zvolte %n soubor\", \"Zvolte %n soubory\", \"Zvolte %n souborů\", \"Zvolte %n soubory\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Zkopírovat\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Zkopírovat do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Novou složku se nepodařilo vytvořit\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodařilo se načíst nastavení pro soubory\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodařilo se načíst pohledy souborů\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvořit složku\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výběr stávajícího zobrazení\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Oblíbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které označíte jako oblíbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Zde se zobrazí soubory a složky, které jste nedávno pozměnili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovat seznam souborů\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Složku je třeba nějak nazvat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domů\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Změněno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Přesounout\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Přesunout do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Název\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nové\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nová složka\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Název pro novou složku\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nejsou zde žádné soubory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenalezeny žádné soubory odpovídající vašemu filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žádné odpovídající soubory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávné\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrat všechny položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrat položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vybrat řádek pro {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Zpět\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte sem nějaký obsah nebo proveďte synchronizaci se svými zařízeními!\"] } } } } }, { \"locale\": \"cy_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"cy_GB\", \"Plural-Forms\": \"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Welsh (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/cy_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: cy_GB\\nPlural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"da\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Martin Bonde <Martin@maboni.dk>, 2024\", \"Language-Team\": \"Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"da\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMartin Bonde <Martin@maboni.dk>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Martin Bonde <Martin@maboni.dk>, 2024\\nLanguage-Team: Danish (https://app.transifex.com/nextcloud/teams/64236/da/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: da\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldigt mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tilladt mappenavn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tilladt i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vælg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vælg {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vælg %n fil\", \"Vælg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke oprette den nye mappe\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Filindstillingerne kunne ikke indlæses\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke indlæse filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opret mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuel visningsvælger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper, du markerer som foretrukne, vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper, du for nylig har ændret, vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer fil liste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavnet må ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ændret\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flyt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flyt til {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ny mappe navn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Der blev ikke fundet nogen filer, der matcher dit filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen matchende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Seneste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vælg alle poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vælg post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vælg rækken for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Fortryd\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload noget indhold eller synkroniser med dine enheder!\"] } } } } }, { \"locale\": \"de\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ettore Atalan <atalanttore@googlemail.com>, 2024\", \"Language-Team\": \"German (https://app.transifex.com/nextcloud/teams/64236/de/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2023\\nMarkus Eckstein, 2023\\nAndy Scherzinger <info@andy-scherzinger.de>, 2023\\nJoachim Sokolowski, 2023\\nEttore Atalan <atalanttore@googlemail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ettore Atalan <atalanttore@googlemail.com>, 2024\\nLanguage-Team: German (https://app.transifex.com/nextcloud/teams/64236/de/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden.\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du als Favorit markierst, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die du kürzlich geändert hast, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Startseite\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Keine Dateien vorhanden\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die deinem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Jüngste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lade Inhalte hoch oder synchronisieren diese mit deinen Geräten!\"] } } } } }, { \"locale\": \"de_DE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Mario Siegmann <mario_siegmann@web.de>, 2024\", \"Language-Team\": \"German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"de_DE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2023\\nMario Siegmann <mario_siegmann@web.de>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Mario Siegmann <mario_siegmann@web.de>, 2024\\nLanguage-Team: German (Germany) (https://app.transifex.com/nextcloud/teams/64236/de_DE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: de_DE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" ist ein ungültiger Ordnername.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ist kein zulässiger Ordnername'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ist innerhalb eines Ordnernamens nicht zulässig.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Auswählen\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} auswählen\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n Datei auswählen\", \"%n Dateien auswählen\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieren\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Nach {target} kopieren\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Der neue Ordner konnte nicht erstellt werden\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dateieinstellungen konnten nicht geladen werden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dateiansichten konnten nicht geladen werden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Verzeichnis erstellen\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuelle Ansichtsauswahl\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie als Favorit markieren, werden hier angezeigt.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien und Ordner, die Sie kürzlich geändert haben, werden hier angezeigt.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dateiliste filtern\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Der Ordnername darf nicht leer sein.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geändert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verschieben\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Nach {target} verschieben\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Neu\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neuer Ordner\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neuer Ordnername\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Hier sind keine Dateien\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Es wurden keine Dateien gefunden, die Ihrem Filter entsprechen.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keine passenden Dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Neueste\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Alle Einträge auswählen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Eintrag auswählen\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Die Zeile für {nodename} auswählen.\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Größe\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rückgängig machen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Laden Sie Inhalte hoch oder synchronisieren Sie diese mit Ihren Geräten!\"] } } } } }, { \"locale\": \"el\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"el\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Greek (https://app.transifex.com/nextcloud/teams/64236/el/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: el\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Αναίρεση\"] } } } } }, { \"locale\": \"en_GB\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Andi Chandler <andi@gowling.com>, 2024\", \"Language-Team\": \"English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"en_GB\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2023\\nAndi Chandler <andi@gowling.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Andi Chandler <andi@gowling.com>, 2024\\nLanguage-Team: English (United Kingdom) (https://app.transifex.com/nextcloud/teams/64236/en_GB/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: en_GB\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is an invalid folder name.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is not an allowed folder name'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is not allowed inside a folder name.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All files\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choose\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choose {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choose %n file\", \"Choose %n files\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copy\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copy to {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Could not create the new folder\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Could not load files settings\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Could not load files views\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Create directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Current view selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favourites\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Files and folders you mark as favourite will show up here.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Files and folders you recently modified will show up here.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter file list\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Folder name cannot be empty.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modified\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Move\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Move to {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Name\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"New\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New folder name\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No files in here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No files matching your filter were found.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No matching files\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Select all entries\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Select entry\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Select the row for {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Size\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undo\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload some content or sync with your devices!\"] } } } } }, { \"locale\": \"eo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Esperanto (https://app.transifex.com/nextcloud/teams/64236/eo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Malfari\"] } } } } }, { \"locale\": \"es\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Julio C. Ortega, 2024\", \"Language-Team\": \"Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFranciscoFJ <dev-ooo@satel-sa.com>, 2023\\nMark Ziegler <mark.ziegler@rakekniven.de>, 2024\\nJulio C. Ortega, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Julio C. Ortega, 2024\\nLanguage-Team: Spanish (https://app.transifex.com/nextcloud/teams/64236/es/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta no válido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido dentro del nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elige %n archivo\", \"Elige %n archivos\", \"Seleccione %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudieron cargar los ajustes de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\" Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuevo nombre de carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidiesen con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_419\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_419\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Latin America) (https://app.transifex.com/nextcloud/teams/64236/es_419/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_419\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_AR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Matías Campo Hoet <matiascampo@gmail.com>, 2024\", \"Language-Team\": \"Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_AR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMatías Campo Hoet <matiascampo@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Matías Campo Hoet <matiascampo@gmail.com>, 2024\\nLanguage-Team: Spanish (Argentina) (https://app.transifex.com/nextcloud/teams/64236/es_AR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_AR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de una carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Elegir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Elija {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Elija %n archivo\", \"Elija %n archivos\", \"Elija %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Cargue algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_CL\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CL\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Chile) (https://app.transifex.com/nextcloud/teams/64236/es_CL/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CL\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Colombia) (https://app.transifex.com/nextcloud/teams/64236/es_CO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_CR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_CR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Costa Rica) (https://app.transifex.com/nextcloud/teams/64236/es_CR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_CR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_DO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_DO\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Dominican Republic) (https://app.transifex.com/nextcloud/teams/64236/es_DO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_DO\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_EC\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_EC\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Ecuador) (https://app.transifex.com/nextcloud/teams/64236/es_EC/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_EC\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_GT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_GT\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Guatemala) (https://app.transifex.com/nextcloud/teams/64236/es_GT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_GT\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_HN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_HN\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Honduras) (https://app.transifex.com/nextcloud/teams/64236/es_HN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_HN\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_MX\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Jehu Marcos Herrera Puentes, 2024\", \"Language-Team\": \"Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_MX\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJehu Marcos Herrera Puentes, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Jehu Marcos Herrera Puentes, 2024\\nLanguage-Team: Spanish (Mexico) (https://app.transifex.com/nextcloud/teams/64236/es_MX/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_MX\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" es un nombre de carpeta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" no es un nombre de carpeta permitido.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" no está permitido en el nombre de la carpeta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos los archivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seleccionar\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Seleccionar {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleccionar %n archivo\", \"Seleccionar %n archivos\", \"Seleccionar %n archivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar a {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"No se pudo crear la nueva carpeta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"No se pudo cargar la configuración de archivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"No se pudieron cargar las vistas de los archivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear carpeta\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Los archivos y carpetas que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Los archivos y carpetas que modificó recientemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de archivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"El nombre de la carpeta no puede estar vacío.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nombre\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuevo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nueva carpeta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nombre de nueva carpeta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No hay archivos aquí\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"No se encontraron archivos que coincidan con su filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No hay archivos coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Reciente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas las entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccione la fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Deshacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"¡Suba algún contenido o sincronice con sus dispositivos!\"] } } } } }, { \"locale\": \"es_NI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_NI\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Nicaragua) (https://app.transifex.com/nextcloud/teams/64236/es_NI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_NI\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PA\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Panama) (https://app.transifex.com/nextcloud/teams/64236/es_PA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PA\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PE\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Peru) (https://app.transifex.com/nextcloud/teams/64236/es_PE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PE\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PR\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Puerto Rico) (https://app.transifex.com/nextcloud/teams/64236/es_PR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PR\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_PY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_PY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Paraguay) (https://app.transifex.com/nextcloud/teams/64236/es_PY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_PY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_SV\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_SV\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (El Salvador) (https://app.transifex.com/nextcloud/teams/64236/es_SV/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_SV\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"es_UY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"es_UY\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Spanish (Uruguay) (https://app.transifex.com/nextcloud/teams/64236/es_UY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: es_UY\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"et_EE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"et_EE\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Estonian (Estonia) (https://app.transifex.com/nextcloud/teams/64236/et_EE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: et_EE\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"eu\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"eu\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Basque (https://app.transifex.com/nextcloud/teams/64236/eu/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: eu\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Desegin\"] } } } } }, { \"locale\": \"fa\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"reza reza <forghan89@yahoo.com>, 2024\", \"Language-Team\": \"Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fa\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nAmir Shekoohi, 2024\\nreza reza <forghan89@yahoo.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: reza reza <forghan89@yahoo.com>, 2024\\nLanguage-Team: Persian (https://app.transifex.com/nextcloud/teams/64236/fa/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fa\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} نام پوشه معتبر نیست\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} نام پوشه مجاز نیست\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" نمی‌تواند در نام پوشه استفاده شود.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"همه فایل‌ها\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"انتخاب\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"انتخاب {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"انتخاب %n فایل\", \"انتخاب %n فایل\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"رونوشت\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"رونوشت از {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"پوشه جدید ایجاد نشد\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"تنظیمات فایل باز نشد\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"نمای فایل‌ها بارگیری نشد\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ایجاد فهرست\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"انتخابگر نماگر فعلی\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"علایق\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که به‌عنوان مورد علاقه علامت‌گذاری می‌کنید در اینجا نشان داده می‌شوند.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"فایل‌ها و پوشه‌هایی که اخیراً تغییر داده‌اید در اینجا نمایش داده می‌شوند.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"فیلتر لیست فایل\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"نام پوشه نمی تواند خالی باشد.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"خانه\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"اصلاح شده\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"انتقال\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"انتقال به {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"نام\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"جدید\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"پوشه جدید\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"نام پوشه جدید\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"فایلی اینجا نیست\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"هیچ فایلی مطابق با فیلتر شما یافت نشد.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"فایل منطبقی وجود ندارد\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"اخیر\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"انتخاب همه ورودی ها\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"انتخاب ورودی\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"انتخاب ردیف برای {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"اندازه\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"بازگردانی\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"مقداری محتوا آپلود کنید یا با دستگاه های خود همگام سازی کنید!\"] } } } } }, { \"locale\": \"fi_FI\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"thingumy, 2024\", \"Language-Team\": \"Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fi_FI\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJiri Grönroos <jiri.gronroos@iki.fi>, 2024\\nthingumy, 2024\\n\" }, \"msgstr\": [\"Last-Translator: thingumy, 2024\\nLanguage-Team: Finnish (Finland) (https://app.transifex.com/nextcloud/teams/64236/fi_FI/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fi_FI\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" on virheellinen kansion nimi.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" ei ole sallittu kansion nimi'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ei ole sallittu kansion nimessä.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Kaikki tiedostot\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Valitse\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Valitse {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Valitse %n tiedosto\", \"Valitse %n tiedostoa\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopioi\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopioi sijaintiin {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Uutta kansiota ei voitu luoda\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tiedoston asetuksia ei saa ladattua\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tiedoston näkymiä ei saa ladattua\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Luo kansio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nykyisen näkymän valinta\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Suosikit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, jotka merkitset suosikkeihisi, näkyvät täällä.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tiedostot ja kansiot, joita muokkasit äskettäin, näkyvät täällä.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Suodata tiedostolistaa\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Kansion nimi ei voi olla tyhjä.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Koti\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Muokattu\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Siirrä\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Siirrä sijaintiin {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nimi\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Uusi\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Uusi kansio\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Uuden kansion nimi\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Täällä ei ole tiedostoja\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Suodatinta vastaavia tiedostoja ei löytynyt.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ei vastaavia tiedostoja\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Viimeisimmät\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Valitse kaikki tietueet\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Valitse tietue\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Valitse rivi {nodename}:lle\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Koko\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Kumoa\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Lähetä jotain sisältöä tai synkronoi laitteidesi kanssa!\"] } } } } }, { \"locale\": \"fo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fo\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Faroese (https://app.transifex.com/nextcloud/teams/64236/fo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fo\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"fr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"DEV314R, 2024\", \"Language-Team\": \"French (https://app.transifex.com/nextcloud/teams/64236/fr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"fr\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nRémi LEBLOND, 2023\\nMordecai, 2023\\nfleopaulD, 2023\\nFrançois Ch., 2024\\nJérôme HERBINET, 2024\\nBenoit Pruneau, 2024\\nDEV314R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: DEV314R, 2024\\nLanguage-Team: French (https://app.transifex.com/nextcloud/teams/64236/fr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: fr\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier valide.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" n\\'est pas un nom de dossier autorisé.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Le caractère « / » n'est pas autorisé dans un nom de dossier.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tous les fichiers\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Choisir\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Choisir {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Choisir %n fichier\", \"Choisir %n fichiers\", \"Choisir %n fichiers \"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copier vers {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossible de créer le nouveau dossier\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Les paramètres des fichiers n'ont pas pu être chargés\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Les aperçus des fichiers n'ont pas pu être chargés\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Créer un répertoire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Sélecteur de vue courante\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoris\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Les fichiers et répertoires marqués en favoris apparaîtront ici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Les fichiers et répertoires modifiés récemment apparaîtront ici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer la liste des fichiers\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Le nom du dossier ne peut pas être vide.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Accueil\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifié\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Déplacer\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Déplacer vers {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nom\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nouveau\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nouveau répertoire\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nom du nouveau répertoire\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aucun fichier ici\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Aucun fichier trouvé correspondant à votre filtre.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Aucun fichier trouvé\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Récents\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tous sélectionner\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Sélectionner une entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Sélectionner l'enregistrement pour {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taille\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Rétablir\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Charger du contenu ou synchroniser avec vos équipements !\"] } } } } }, { \"locale\": \"ga\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Aindriú Mac Giolla Eoin, 2024\", \"Language-Team\": \"Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ga\", \"Plural-Forms\": \"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nAindriú Mac Giolla Eoin, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Aindriú Mac Giolla Eoin, 2024\\nLanguage-Team: Irish (https://app.transifex.com/nextcloud/teams/64236/ga/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ga\\nPlural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['Is ainm fillteáin neamhbhailí é \"{name}\".'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['Ní ainm fillteáin ceadaithe é \"{name}\".'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Ní cheadaítear \"/\" taobh istigh d\\'ainm fillteáin.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Gach comhad\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Roghnaigh\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Roghnaigh {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Roghnaigh %n comhad\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\", \"Roghnaigh %n comhaid\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Cóip\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Cóipeáil chuig {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Níorbh fhéidir an fillteán nua a chruthú\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Níorbh fhéidir socruithe comhaid a lódáil\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Níorbh fhéidir radhairc comhad a lódáil\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Cruthaigh eolaire\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Roghnóir amhairc reatha\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ceanáin\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a mharcálann tú mar is fearr leat anseo.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Taispeánfar comhaid agus fillteáin a d'athraigh tú le déanaí anseo.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Scag liosta comhad\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ní féidir ainm fillteáin a bheith folamh.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Baile\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Athraithe\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Bog\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Bog go{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ainm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nua\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Fillteán nua\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ainm fillteáin nua\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Níl aon chomhaid istigh anseo\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Níor aimsíodh aon chomhad a tháinig le do scagaire.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Gan comhaid meaitseála\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"le déanaí\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Roghnaigh gach iontráil\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Roghnaigh iontráil\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Roghnaigh an ró do {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méid\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cealaigh\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Uaslódáil roinnt ábhair nó sioncronaigh le do ghléasanna!\"] } } } } }, { \"locale\": \"gd\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gd\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Gaelic, Scottish (https://app.transifex.com/nextcloud/teams/64236/gd/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gd\\nPlural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"gl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\", \"Language-Team\": \"Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"gl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMiguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Miguel Anxo Bouzada <mbouzada@gmail.com>, 2024\\nLanguage-Team: Galician (https://app.transifex.com/nextcloud/teams/64236/gl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: gl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» non é un nome de cartafol válido.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» non é un nome de cartafol permitido\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"A «/» non está permitida no nome dun cartafol.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os ficheiros\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escoller\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escoller {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escoller %n ficheiro\", \"Escoller %n ficheiros\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar en {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Non foi posíbel crear o novo cartafol\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Non foi posíbel cargar os axustes dos ficheiros\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Non foi posíbel cargar as vistas dos ficheiros\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crear un directorio\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selector de vista actual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que marque como favoritos aparecerán aquí.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Os ficheiros e cartafoles que modificou recentemente aparecerán aquí.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar a lista de ficheiros\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome do cartafol non pode estar baleiro.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Inicio\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover cara a {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novo cartafol\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome do cartafol\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Aquí non hai ficheiros\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Non se atopou ningún ficheiro que coincida co filtro.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Non hai ficheiros coincidentes\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Seleccionar todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleccionar a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleccionar a fila para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamaño\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfacer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Enviar algún contido ou sincronizalo cos seus dispositivos!\"] } } } } }, { \"locale\": \"he\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"he\", \"Plural-Forms\": \"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Hebrew (https://app.transifex.com/nextcloud/teams/64236/he/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: he\\nPlural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"ביטול\"] } } } } }, { \"locale\": \"hi_IN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hi_IN\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Hindi (India) (https://app.transifex.com/nextcloud/teams/64236/hi_IN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hi_IN\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hr\", \"Plural-Forms\": \"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Croatian (https://app.transifex.com/nextcloud/teams/64236/hr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hr\\nPlural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hsb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hsb\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Upper Sorbian (https://app.transifex.com/nextcloud/teams/64236/hsb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hsb\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"hu_HU\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\", \"Language-Team\": \"Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hu_HU\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFőnyedi Áron <sajtman@gmail.com>, 2023\\nGyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Gyuris Gellért <jobel@ujevangelizacio.hu>, 2024\\nLanguage-Team: Hungarian (Hungary) (https://app.transifex.com/nextcloud/teams/64236/hu_HU/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hu_HU\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” érvénytelen mappanév.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” nem engedélyezett mappanév\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” jel nem szerepelhet mappa nevében.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Minden fájl\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kiválasztás\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} kiválasztása\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n fájl kiválasztása\", \"%n fájl kiválasztása\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Másolás\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Másolás ide: {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Az új mappa létrehozása nem lehetséges\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Fájlbeállítások betöltése nem lehetséges\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Fájlnézetek betöltése nem lehetséges\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Mappa létrehozása\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Jelenlegi nézet választó\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Kedvencek\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"A kedvencként megjelölt fájlok és mappák itt jelennek meg.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"A nemrég módosított fájlok és mappák itt jelennek meg.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fájl lista szűrése\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"A mappa neve nem lehet üres.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Kezdőlap\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Módosítva\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mozgatás\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mozgatás ide: {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Név\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Új\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Új mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Új mappa név\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Itt nincsenek fájlok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nincs a szűrési feltételeknek megfelelő fájl.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nincs ilyen fájl\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gyakori\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Minden bejegyzés kijelölése\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Bejegyzés kijelölése\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Válassz sort a következőnek: {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Méret\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Visszavonás\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tölts fel tartalmat vagy szinkronizálj az eszközeiddel!\"] } } } } }, { \"locale\": \"hy\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"hy\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Armenian (https://app.transifex.com/nextcloud/teams/64236/hy/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: hy\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ia\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ia\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Interlingua (https://app.transifex.com/nextcloud/teams/64236/ia/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ia\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"id\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Lun May, 2024\", \"Language-Team\": \"Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"id\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nLinerly <linerly@proton.me>, 2023\\nLun May, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Lun May, 2024\\nLanguage-Team: Indonesian (https://app.transifex.com/nextcloud/teams/64236/id/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: id\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" bukan nama folder yang valid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" merupakan nama folder yang tidak diperbolehkan'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" tidak diperbolehkan di dalam nama folder.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Semua berkas\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Pilih\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Pilih {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Pilih %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Salin\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Salin ke {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Tidak dapat membuat folder baru\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Tidak dapat memuat pengaturan file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Tidak dapat memuat tampilan file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Buat direktori\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Pemilih tampilan saat ini\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorit\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda tandai sebagai favorit akan muncul di sini.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Berkas dan folder yang Anda ubah baru-baru ini akan muncul di sini.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Saring daftar berkas\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Name berkas tidak boleh kosong.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Beranda\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Diubah\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Pindahkan\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Pindahkan ke {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nama\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Baru\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Folder baru\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nama folder baru\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tidak ada berkas di sini\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Tidak ada berkas yang cocok dengan penyaringan Anda.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Tidak ada berkas yang cocok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Terkini\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Pilih semua entri\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Pilih entri\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Pilih baris untuk {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Ukuran\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Tidak jadi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Unggah beberapa konten atau sinkronkan dengan perangkat Anda!\"] } } } } }, { \"locale\": \"ig\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ig\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Igbo (https://app.transifex.com/nextcloud/teams/64236/ig/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ig\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"is\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sveinn í Felli <sv1@fellsnet.is>, 2023\", \"Language-Team\": \"Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"is\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSveinn í Felli <sv1@fellsnet.is>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>, 2023\\nLanguage-Team: Icelandic (https://app.transifex.com/nextcloud/teams/64236/is/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: is\\nPlural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er ógilt möppuheiti.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ekki leyfilegt möppuheiti'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er er ekki leyfilegt innan í skráarheiti.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Allar skrár\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Veldu\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Veldu {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Afrita\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Afrita í {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Get ekki búið til nýju möppuna\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Búa til möppu\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Núverandi val sýnar\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Eftirlæti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú merkir sem eftirlæti birtast hér.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Skrár og möppur sem þú breyttir nýlega birtast hér.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Sía skráalista\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Möppuheiti má ekki vera tómt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Heim\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Breytt\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Færa\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Færa í {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Heiti\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nýtt\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ný mappa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Heiti nýrrar möppu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Engar skrár hér\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Engar skrár fundust sem passa við síuna.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Engar samsvarandi skrár\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nýlegt\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velja allar færslur\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velja færslu\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Veldu röðina fyrir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Stærð\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Afturkalla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Sendu inn eitthvað efni eða samstilltu við tækin þín!\"] } } } } }, { \"locale\": \"it\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Sebastiano Furlan, 2024\", \"Language-Team\": \"Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"it\", \"Plural-Forms\": \"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nClaudio Scandella, 2023\\nRaffaele Silano <raffaelone@gmail.com>, 2024\\nSebastiano Furlan, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Sebastiano Furlan, 2024\\nLanguage-Team: Italian (https://app.transifex.com/nextcloud/teams/64236/it/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: it\\nPlural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" non è un nome di cartella valido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" non è un nome di cartella ammesso'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" non è ammesso all\\'interno del nome di una cartella.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tutti i file\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Scegli\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Scegli {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Seleziona %n file\", \"Seleziona %n file\", \"Seleziona %n file\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copia\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copia in {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Impossibile creare la nuova cartella\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Impossibile caricare le impostazioni dei file\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Impossibile caricare le visualizzazioni dei file\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Crea directory\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selettore della vista corrente\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Preferiti\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"I file e le cartelle contrassegnate come preferite saranno mostrate qui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"I file e le cartelle che hai modificato di recente saranno mostrate qui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtra elenco file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Il nome della cartella non può essere vuoto.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificato\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Sposta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Sposta in {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nuovo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nuova cartella\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nuovo nome cartella\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nessun file qui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nessun file che corrisponde al tuo filtro è stato trovato.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nessun file corrispondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Scegli tutte le voci\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Seleziona la voce\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Seleziona la riga per {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Taglia/dimensioni\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Annulla\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carica qualche contenuto o sincronizza con i tuoi dispositivi!\"] } } } } }, { \"locale\": \"ja_JP\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"devi, 2024\", \"Language-Team\": \"Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ja_JP\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nUchiyama Takuya <uchiyama@j-wmc.com>, 2023\\ntakehito kondo, 2023\\nkojima.imamura, 2024\\nTakafumi AKAMATSU, 2024\\ndevi, 2024\\n\" }, \"msgstr\": [\"Last-Translator: devi, 2024\\nLanguage-Team: Japanese (Japan) (https://app.transifex.com/nextcloud/teams/64236/ja_JP/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ja_JP\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" はフォルダー名に使用できません。'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\"は許可されたフォルダー名ではありません'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"フォルダー名に「/(スラッシュ)」は使用できません。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"すべてのファイル\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選択\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} を選択\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n 個のファイルを選択\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"コピー\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} にコピー\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"新しいフォルダーを作成できませんでした\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"ファイル設定を読み込めませんでした\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"ファイルビューを読み込めませんでした\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"ディレクトリを作成\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"現在のビューセレクタ\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"お気に入り\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"お気に入りとしてマークしたファイルとフォルダがここに表示されます。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"最近変更したファイルとフォルダがここに表示されます。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"ファイルリストをフィルタ\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"フォルダ名は空にできません。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"ホーム\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"変更済み\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} に移動\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名前\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新規作成\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新しいフォルダー\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新しいフォルダーの名前\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"ファイルがありません\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"フィルタに一致するファイルは見つかりませんでした。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"一致するファイルはありません\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"すべてのエントリを選択\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"エントリを選択\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} の行を選択\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"サイズ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"元に戻す\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"コンテンツをアップロードするか、デバイスと同期してください!\"] } } } } }, { \"locale\": \"ka\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (https://app.transifex.com/nextcloud/teams/64236/ka/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ka_GE\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ka_GE\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Georgian (Georgia) (https://app.transifex.com/nextcloud/teams/64236/ka_GE/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ka_GE\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kab\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kab\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Kabyle (https://app.transifex.com/nextcloud/teams/64236/kab/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kab\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Sefsex\"] } } } } }, { \"locale\": \"kk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kk\", \"Plural-Forms\": \"nplurals=2; plural=(n!=1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kazakh (https://app.transifex.com/nextcloud/teams/64236/kk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kk\\nPlural-Forms: nplurals=2; plural=(n!=1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"km\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"km\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Khmer (https://app.transifex.com/nextcloud/teams/64236/km/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: km\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"kn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"kn\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Kannada (https://app.transifex.com/nextcloud/teams/64236/kn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: kn\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ko\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ko\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Korean (https://app.transifex.com/nextcloud/teams/64236/ko/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ko\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"되돌리기\"] } } } } }, { \"locale\": \"la\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"la\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latin (https://app.transifex.com/nextcloud/teams/64236/la/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: la\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lb\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"VoXaN24ch, 2024\", \"Language-Team\": \"Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lb\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nVoXaN24ch, 2024\\n\" }, \"msgstr\": [\"Last-Translator: VoXaN24ch, 2024\\nLanguage-Team: Luxembourgish (https://app.transifex.com/nextcloud/teams/64236/lb/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lb\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} ass en ongëlteg Dossier\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ass net en erlaabten Dossiernumm\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ass net an engem Dossier Numm erlaabt'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"All Dateien\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wielt\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wielt {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wielt %n Fichieren\", \"Wielt %n Fichier\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopie\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopie op {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Konnt den neien Dossier net erstellen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Konnt d'Dateienastellungen net lueden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Konnt d'Dateien net lueden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Erstellt Verzeechnes\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell Vue selector\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Dateien an Ordner, déi Dir als Favorit markéiert, ginn hei gewisen\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Dateien an Ordner déi Dir viru kuerzem geännert hutt ginn hei op\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter Datei Lëscht\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Dossier Numm kann net eidel sinn\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Wëllkomm\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Geännert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Plënne\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Plënneren {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Numm\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nei\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Neien dossier\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Neien dossier numm\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Kee fichier hei\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Kee fichier deen äre filter passt gouf fonnt\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Keng passende dateien\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Rezent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wielt all entréen\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wielt entrée\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wielt d'zeil fir {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Gréisst\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Undoen\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Luet en inhalt erop oder synchroniséiert mat ären apparater\"] } } } } }, { \"locale\": \"lo\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lo\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Lao (https://app.transifex.com/nextcloud/teams/64236/lo/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lo\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"lt_LT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lt_LT\", \"Plural-Forms\": \"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Lithuanian (Lithuania) (https://app.transifex.com/nextcloud/teams/64236/lt_LT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lt_LT\\nPlural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Atšaukti\"] } } } } }, { \"locale\": \"lv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"lv\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Latvian (https://app.transifex.com/nextcloud/teams/64236/lv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: lv\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"mk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mk\", \"Plural-Forms\": \"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Macedonian (https://app.transifex.com/nextcloud/teams/64236/mk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mk\\nPlural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Врати\"] } } } } }, { \"locale\": \"mn\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mn\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Mongolian (https://app.transifex.com/nextcloud/teams/64236/mn/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mn\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Буцаах\"] } } } } }, { \"locale\": \"mr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"mr\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Marathi (https://app.transifex.com/nextcloud/teams/64236/mr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: mr\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"पूर्ववत करा\"] } } } } }, { \"locale\": \"ms_MY\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ms_MY\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Malay (Malaysia) (https://app.transifex.com/nextcloud/teams/64236/ms_MY/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ms_MY\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"my\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"my\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Burmese (https://app.transifex.com/nextcloud/teams/64236/my/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: my\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"နဂိုအတိုင်းပြန်ထားရန်\"] } } } } }, { \"locale\": \"nb_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"armandg <geirawsm@pm.me>, 2024\", \"Language-Team\": \"Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nb_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nD PE, 2023\\nSyvert Fossdal, 2024\\narmandg <geirawsm@pm.me>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: armandg <geirawsm@pm.me>, 2024\\nLanguage-Team: Norwegian Bokmål (Norway) (https://app.transifex.com/nextcloud/teams/64236/nb_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nb_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" er et ugyldig mappenavn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" er ikke et tillatt mappenavn.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" er ikke tillatt inne i et mappenavn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Velg\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Velg {fil}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Velg %n fil\", \"Velg %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopier\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopier til {destinasjon}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunne ikke opprette den nye mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunne ikke laste filinnstillinger\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunne ikke laste filvisninger\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Opprett mappe\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Nåværende visningsvelger\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer og mapper du markerer som favoritter vil vises her.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer og mapper du nylig har endret, vil vises her.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrer filliste\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappenavn kan ikke være tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hjem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modifisert\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytt\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytt til {destinasjon}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Navn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mappe\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappenavn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Ingen filer her\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ingen filer funnet med ditt filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ingen treffende filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nylig\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Velg alle oppføringer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Velg oppføring\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Velg raden for {nodenavn}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Størrelse\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Angre\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Last opp innhold eller synkroniser med enhetene dine!\"] } } } } }, { \"locale\": \"ne\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ne\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Nepali (https://app.transifex.com/nextcloud/teams/64236/ne/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ne\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"nl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Casper <casper@vrije-mens.org>, 2024\", \"Language-Team\": \"Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nl\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJoost <joho500@hotmail.com>, 2023\\nJeroen Gui, 2023\\nCasper <casper@vrije-mens.org>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Casper <casper@vrije-mens.org>, 2024\\nLanguage-Team: Dutch (https://app.transifex.com/nextcloud/teams/64236/nl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nl\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" is een ongeldige mapnaam.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" is geen toegestane mapnaam'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" is niet toegestaan binnen een bestandsnaam'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alle bestanden\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Kies\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Kies {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Kies %n bestand\", \"Kies %n bestanden\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopieer\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopieer naar {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kon de nieuwe map niet maken\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kon de bestandsinstellingen niet laden\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kon de bestandsweergaves niet laden\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Maak map\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Huidige weergave keuze\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorieten\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Bestanden en mappen die je favoriet maakt, worden hier getoond.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Bestanden en mappen die je recent hebt gewijzigd, worden hier getoond.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter bestandslijst\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mapnaam mag niet leeg zijn.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Gewijzigd\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Verplaatsen\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Verplaats naar {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naam\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nieuw\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nieuwe map\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nieuwe mapnaam\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Geen bestanden hier\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Geen bestanden gevonden die voldoen aan je filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Geen gevonden bestanden\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recent\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecteer alle invoer\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecteer invoer\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecteer de rij voor {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Grootte\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ongedaan maken\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Upload inhoud of synchroniseer met je apparaten!\"] } } } } }, { \"locale\": \"nn_NO\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"nn_NO\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Norwegian Nynorsk (Norway) (https://app.transifex.com/nextcloud/teams/64236/nn_NO/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: nn_NO\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"oc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"oc\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Occitan (post 1500) (https://app.transifex.com/nextcloud/teams/64236/oc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: oc\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anullar\"] } } } } }, { \"locale\": \"pl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Piotr Strębski <strebski@gmail.com>, 2024\", \"Language-Team\": \"Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pl\", \"Plural-Forms\": \"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nJUJER wtf, 2023\\nM H <haincu@o2.pl>, 2023\\nValdnet, 2024\\nPiotr Strębski <strebski@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2024\\nLanguage-Team: Polish (https://app.transifex.com/nextcloud/teams/64236/pl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pl\\nPlural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" jest nieprawidłową nazwą folderu'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie jest dozwoloną nazwą folderu'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['Znak \"/\" nie jest dozwolony w nazwie folderu'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Wszystkie pliki\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Wybierz\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Wybierz {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Wybierz %n plik\", \"Wybierz %n pliki\", \"Wybierz %n plików\", \"Wybierz %n plików\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiuj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Skopiuj do {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nie można utworzyć nowego folderu\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nie można wczytać ustawień plików\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nie można wczytać widoków plików\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Utwórz katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Bieżący selektor widoku\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Ulubione\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Pliki i foldery które oznaczysz jako ulubione będą wyświetlały się tutaj\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Pliki i foldery które ostatnio modyfikowałeś będą wyświetlały się tutaj\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtruj listę plików\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Nazwa folderu nie może być pusta\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Strona główna\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Zmodyfikowano\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Przenieś\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Przejdź do {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nazwa\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nowy\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nowy folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nowa nazwa folderu\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Brak plików\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nie znaleziono plików spełniających warunki filtru\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Brak pasujących plików\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Ostatni\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Wybierz wszystkie wpisy\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Wybierz wpis\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Wybierz wiersz dla {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Rozmiar\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Cofnij\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Wyślij zawartość lub zsynchronizuj ze swoimi urządzeniami!\"] } } } } }, { \"locale\": \"ps\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ps\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Pashto (https://app.transifex.com/nextcloud/teams/64236/ps/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ps\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"pt_BR\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\", \"Language-Team\": \"Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_BR\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nFlávio Veras <flaviove@gmail.com>, 2023\\nCauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Cauan Henrique Zorzenon <cauanzorzenon@gmail.com>, 2024\\nLanguage-Team: Portuguese (Brazil) (https://app.transifex.com/nextcloud/teams/64236/pt_BR/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_BR\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" é um nome de pasta inválido.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" não é um nome de pasta permitido'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" não é permitido dentro de um nome de pasta.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Todos os arquivos\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Escolher\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Escolher arquivo}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Escolher %n arquivo\", \"Escolher %n arquivos\", \"Escolher %n arquivos\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiar\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiar para {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Não foi possível criar a nova pasta\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Não foi possível carregar configurações de arquivos\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Não foi possível carregar exibições de arquivos\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Criar diretório\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Seletor de visualização atual\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoritos\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Os arquivos e pastas marcados como favoritos aparecerão aqui.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Arquivos e pastas que você modificou recentemente aparecerão aqui.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrar lista de arquivos\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"O nome da pasta não pode ficar vazio.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificado\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mover\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mover para {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nome\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova pasta\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo nome de pasta\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nenhum arquivo aqui\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenhum arquivo correspondente ao seu filtro foi encontrado.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nenhum arquivo correspondente\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selecione todas as entradas\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selecione a entrada\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selecione a linha para {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Tamanho\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Desfazer\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Carregue algum conteúdo ou sincronize com seus dispositivos!\"] } } } } }, { \"locale\": \"pt_PT\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"pt_PT\", \"Plural-Forms\": \"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Portuguese (Portugal) (https://app.transifex.com/nextcloud/teams/64236/pt_PT/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: pt_PT\\nPlural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"Anular\"] } } } } }, { \"locale\": \"ro\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Daniel MD <dmihaidumitru@gmail.com>, 2023\", \"Language-Team\": \"Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ro\", \"Plural-Forms\": \"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nDaniel MD <dmihaidumitru@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Daniel MD <dmihaidumitru@gmail.com>, 2023\\nLanguage-Team: Romanian (https://app.transifex.com/nextcloud/teams/64236/ro/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ro\\nPlural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" este un nume de director invalid.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nu este un nume de director permis'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nu este permis în numele unui director.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Toate fișierele\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Alege\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Alege {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Copiază\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Copiază în {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nu s-a putut crea noul director\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Creează director\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Selectorul curent al vizualizării\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favorite\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le marcați ca favorite vor apărea aici.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Fișiere și directoare pe care le-ați modificat recent vor apărea aici.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrează lista de fișiere\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Numele de director nu poate fi necompletat.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Acasă\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Modificat\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Mută\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Mută către {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Nume\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nou\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Director nou\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Numele noului director\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nu există fișiere\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nu există fișiere potrivite pentru filtrul selectat\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nu există fișiere potrivite\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Recente\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Selectează toate înregistrările\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Selectează înregistrarea\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Selectează rândul pentru {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Mărime\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Anulează\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Încărcați conținut sau sincronizați cu dispozitivele dumneavoastră!\"] } } } } }, { \"locale\": \"ru\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kitsune R, 2024\", \"Language-Team\": \"Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ru\", \"Plural-Forms\": \"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMax Smith <sevinfolds@gmail.com>, 2023\\nashed <craysy@gmail.com>, 2023\\nAlex <kekcuha@gmail.com>, 2024\\nR4SAS, 2024\\nВлад, 2024\\nKitsune R, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kitsune R, 2024\\nLanguage-Team: Russian (https://app.transifex.com/nextcloud/teams/64236/ru/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ru\\nPlural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"«{name}» — недопустимое имя папки.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"«{name}» не является разрешенным именем папки\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"Символ «/» не допускается внутри имени папки.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Все файлы\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Выбрать\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Выбрать {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Выбрать %n файл\", \"Выбрать %n файла\", \"Выбрать %n файлов\", \"Выбрать %n файлов\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копировать\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копировать в «{target}»\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не удалось создать новую папку\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не удалось загрузить настройки файлов\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не удалось загрузить файлы просмотров\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Создать папку\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Переключатель текущего вида\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Избранное\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Здесь появятся файлы и папки, которые вы пометили как избранные.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Здесь будут отображаться файлы и папки, которые вы недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фильтровать список файлов\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Имя папки не может быть пустым.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Home\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Изменен\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Переместить\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перейти к {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Имя\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новый\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новая папка\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Имя новой папки\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Здесь нет файлов\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Файлы, соответствующие вашему фильтру, не найдены.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нет подходящих файлов\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Недавний\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Выбрать все записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Выберите запись\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Выберите строку для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Размер\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Отменить\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Загрузите контент или синхронизируйте его со своими устройствами!\"] } } } } }, { \"locale\": \"sc\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sc\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Sardinian (https://app.transifex.com/nextcloud/teams/64236/sc/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sc\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"si\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"si\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Sinhala (https://app.transifex.com/nextcloud/teams/64236/si/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: si\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"පෙරසේ\"] } } } } }, { \"locale\": \"sk_SK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Tomas Rusnak <linkermail@gmail.com>, 2024\", \"Language-Team\": \"Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sk_SK\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nStanislav Prekop <prekop3@gmail.com>, 2024\\nTomas Rusnak <linkermail@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Tomas Rusnak <linkermail@gmail.com>, 2024\\nLanguage-Team: Slovak (Slovakia) (https://app.transifex.com/nextcloud/teams/64236/sk_SK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sk_SK\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" je neplatný názov pričinka.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" nie je povolený názov priečinka.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" nie je povolené v názve priečinka.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Všetky súbory\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Vybrať\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Vybrať {súbor}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Vybraný %n súbor\", \"Vybrané %n súbory\", \"Vybraných %n súborov\", \"Vybraných %n súborov\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopírovať\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopírovať do {umiestnenia}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nepodarilo sa vytvoriť nový priečinok\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Nepodarilo sa načítať nastavenia súborov\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nepodarilo sa načítať pohľady súborov\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Vytvoriť adresár\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Výber aktuálneho zobrazenia\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Obľúbené\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré označíte ako obľúbené.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Tu sa zobrazia súbory a priečinky, ktoré ste nedávno upravili.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrovať zoznam súborov\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Názov priečinka nemôže byť prázdny.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Upravené\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Prejsť\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Prejsť na {umiestnenie}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Názov\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Pridať\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Pridať priečinok\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Pridať názov priečinka\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Nie sú tu žiadne súbory\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nenašli sa žiadne súbory zodpovedajúce vášmu filtru.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Žiadne zodpovedajúce súbory\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedávne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Vybrať všetky položky\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Vybrať položku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Vyberte riadok pre {názov uzla}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veľkosť\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Späť\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Nahrajte nejaký obsah alebo synchronizujte so svojimi zariadeniami!\"] } } } } }, { \"locale\": \"sl\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Simon Bogina, 2024\", \"Language-Team\": \"Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sl\", \"Plural-Forms\": \"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nSimon Bogina, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Simon Bogina, 2024\\nLanguage-Team: Slovenian (https://app.transifex.com/nextcloud/teams/64236/sl/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sl\\nPlural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"{name} je neveljavno ime mape.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"{name} ni dovoljeno ime mape\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" ni dovoljen v imenu mape.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Vse datoteke\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izberi\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izberi {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izberi %n datoteko\", \"Izberi %n datoteki\", \"Izberi %n datotek\", \"Izberi %n datotek\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj v {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Nisem mogel ustvariti nove mape\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"NIsem mogel naložiti nastavitev datotek\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Nisem mogel naložiti pogledov datotek\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Ustvari mapo\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Izbirnik trenutnega pogleda\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Priljubljene\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Datoteke in mape ki jih označite kot priljubljene se bodo prikazale tukaj.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Daoteke in mape ki ste jih pred kratkim spremenili se bodo prikazale tukaj.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtriraj seznam datotek\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ime mape ne more biti prazno\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Domov\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Spremenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premakni\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premakni v {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ime\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Nov\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Nova mapa\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Novo ime mape\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Tukaj ni datotek\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Ni bilo najdenih ujemajočih datotek glede na vaš filter.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Ni ujemajočih datotek\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nedavne\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izberi vse vnose\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izberi vnos\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izberi vrstico za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Velikost\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Razveljavi\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Naloži nekaj vsebine ali sinhroniziraj s svojimi napravami!\"] } } } } }, { \"locale\": \"sq\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sq\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Albanian (https://app.transifex.com/nextcloud/teams/64236/sq/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sq\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"sr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Иван Пешић, 2024\", \"Language-Team\": \"Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nИван Пешић, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Иван Пешић, 2024\\nLanguage-Team: Serbian (https://app.transifex.com/nextcloud/teams/64236/sr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” није исправно име фолдера.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” није дозвољено име за фолдер.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” није дозвољено унутар имена фолдера.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Сви фајлови\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Изаберите\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Изаберите {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Изаберите %n фајл\", \"Изаберите %n фајла\", \"Изаберите %n фајлова\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копирај\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копирај у {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Није могао да се креира нови фолдер\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не могу да се учитају подешавања фајлова\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не могу да се учитају прикази фајлова\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Креирај директоријум\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Бирач тренутног приказа\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Омиљено\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери које сте означили као омиљене.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Овде ће се појавити фајлови и фолдери који се се недавно изменили.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фитрирање листе фајлова\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Име фолдера не може бити празно.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Почетак\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Измењено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Премести\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Премести у {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Име\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ново\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Нови фолдер\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Име новог фолдера\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Овде нема фајлова\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Није пронађен ниједан фајл који задовољава ваш филтер.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Нема таквих фајлова\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Скорашње\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Изаберите све ставке\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Изаберите ставку\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Изаберите ред за {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Величина\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Поништи\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Отпремите нешто или синхронизујте са својим уређајима!\"] } } } } }, { \"locale\": \"sr@latin\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Bogdan Vuković, 2024\", \"Language-Team\": \"Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sr@latin\", \"Plural-Forms\": \"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nBogdan Vuković, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Bogdan Vuković, 2024\\nLanguage-Team: Serbian (Latin) (https://app.transifex.com/nextcloud/teams/64236/sr@latin/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sr@latin\\nPlural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"„{name}” je neispravan naziv foldera.\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"„{name}” je nedozvoljen naziv foldera.\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"„/” se ne može koristiti unutar naziva foldera.\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Svi fajlovi\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Izaberite\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Izaberite {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Izaberite %n fajl\", \"Izaberite %n fajla\", \"Izaberite %n fajlova\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiraj\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiraj u {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Neuspešno kreiranje novog foldera\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Neuspešno učitavanje podešavanja fajlova\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Neuspešno učitavanje prikaza fajlova\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Kreiraj direktorijum\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Birač trenutnog prikaza\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Omiljeno\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Lista omiljenih fajlova i foldera.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Lista fajlova i foldera sa skorašnjim izmenama.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Fitriranje liste fajlova\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Naziv foldera ne može biti prazan.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Početak\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Izmenjeno\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Premesti\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Premesti u {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Naziv\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Novo\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Novi folder\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Naziv novog foldera\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Bez fajlova\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Nema fajlova koji zadovoljavaju uslove filtera.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Nema takvih fajlova\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Skorašnje\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Izaberite sve stavke\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Izaberite stavku\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Izaberite red za {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Veličina\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Vrati\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Otpremite sadržaj ili sinhronizujte sa svojim uređajima!\"] } } } } }, { \"locale\": \"sv\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Magnus Höglund, 2024\", \"Language-Team\": \"Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sv\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nMagnus Höglund, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Magnus Höglund, 2024\\nLanguage-Team: Swedish (https://app.transifex.com/nextcloud/teams/64236/sv/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sv\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" är ett ogiltigt mappnamn.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" är inte ett tillåtet mappnamn'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" är inte tillåtet i ett mappnamn.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Alla filer\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Välj\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Välj {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Välj %n fil\", \"Välj %n filer\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopiera\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Kopiera till {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Kunde inte skapa den nya mappen\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Kunde inte ladda filinställningar\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Kunde inte ladda läsa in filvyer\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Skapa katalog\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Aktuell vyväljare\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Favoriter\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Filer och mappar som du markerar som favorit kommer att visas här.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Filer och mappar som du nyligen ändrat kommer att visas här.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filtrera fillistan\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Mappnamnet får inte vara tomt.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Hem\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Ändrad\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Flytta\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Flytta till {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Namn\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Ny\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Ny mapp\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Nytt mappnamn\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Inga filer här\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Inga filer som matchar ditt filter hittades.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Inga matchande filer\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Nyligen\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Välj alla poster\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Välj post\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Välj raden för {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Storlek\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Ångra\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Ladda upp lite innehåll eller synkronisera med dina enheter!\"] } } } } }, { \"locale\": \"sw\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"sw\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Swahili (https://app.transifex.com/nextcloud/teams/64236/sw/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: sw\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"ta\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ta\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Tamil (https://app.transifex.com/nextcloud/teams/64236/ta/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ta\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"செயல்தவிர்\"] } } } } }, { \"locale\": \"th_TH\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Joas Schilling, 2023\", \"Language-Team\": \"Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"th_TH\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJoas Schilling, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Joas Schilling, 2023\\nLanguage-Team: Thai (Thailand) (https://app.transifex.com/nextcloud/teams/64236/th_TH/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: th_TH\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"เลิกทำ\"] } } } } }, { \"locale\": \"tk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tk\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Turkmen (https://app.transifex.com/nextcloud/teams/64236/tk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tk\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"tr\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Kaya Zeren <kayazeren@gmail.com>, 2024\", \"Language-Team\": \"Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"tr\", \"Plural-Forms\": \"nplurals=2; plural=(n > 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nKaya Zeren <kayazeren@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Kaya Zeren <kayazeren@gmail.com>, 2024\\nLanguage-Team: Turkish (https://app.transifex.com/nextcloud/teams/64236/tr/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: tr\\nPlural-Forms: nplurals=2; plural=(n > 1);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" geçersiz bir klasör adı.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" izin verilen bir klasör adı değil'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" karakteri klasör adında kullanılamaz.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tüm dosyalar\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Seçin\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"{file} seçin\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"%n dosya seçin\", \"%n dosya seçin\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Kopyala\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"{target} üzerine kopyala\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Yeni klasör oluşturulamadı\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Dosyalar uygulamasının ayarları yüklenemedi\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Dosyalar uygulamasının görünümleri yüklenemedi\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Klasör oluştur\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Geçerli görünüm seçici\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Sık kullanılanlar\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Sık kullanılan olarak seçtiğiniz dosyalar burada görüntülenir.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Son zamanlarda değiştirdiğiniz dosya ve klasörler burada görüntülenir.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Dosya listesini süz\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Klasör adı boş olamaz.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Giriş\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Değiştirilme\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Taşı\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"{target} üzerine taşı\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ad\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Yeni\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Yeni klasör\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Yeni klasör adı\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Burada herhangi bir dosya yok\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Süzgece uyan bir dosya bulunamadı.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Eşleşen bir dosya yok\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Son kullanılanlar\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Tüm kayıtları seç\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Kaydı seç\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"{nodename} satırını seçin\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Boyut\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Geri al\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Bazı içerikler yükleyin ya da aygıtlarınızla eşitleyin!\"] } } } } }, { \"locale\": \"ug\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ug\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uyghur (https://app.transifex.com/nextcloud/teams/64236/ug/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ug\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uk\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"O St <oleksiy.stasevych@gmail.com>, 2024\", \"Language-Team\": \"Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uk\", \"Plural-Forms\": \"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nO St <oleksiy.stasevych@gmail.com>, 2024\\n\" }, \"msgstr\": [\"Last-Translator: O St <oleksiy.stasevych@gmail.com>, 2024\\nLanguage-Team: Ukrainian (https://app.transifex.com/nextcloud/teams/64236/uk/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uk\\nPlural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" є недійсною назвою для каталогу.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"{name}\" не є дозволеною назвою для каталогу.'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\" не дозволено у назві каталогу.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Всі файли\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Вибрати\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Вибрати {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Вибрати %n файл\", \"Вибрати %n файли\", \"Вибрати %n файлів\", \"Вибрати %n файлів\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Копіювати\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Копіювати до {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Не вдалося створити новий каталог\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Не вдалося завантажити налаштування файлів\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Не вдалося завантажити подання файлів\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Створити каталог\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Вибір подання\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Із зірочкою\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які ви позначите зірочкою.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Тут показуватимуться файли та каталоги, які було нещодавно змінено.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Фільтрувати список файлів\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Ім'я каталогу не може бути порожнім.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Домівка\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Змінено\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Перемістити\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Перемістити до {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Ім'я\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Новий\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"Новий каталог\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"Ім'я нового каталогу\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"Тут відсутні файли\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Відсутні збіги за фільтром.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"Відсутні збіги файлів.\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Останні\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Вибрати всі записи\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Вибрати запис\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Вибрати рядок для {nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Розмір\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Повернути\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Завантажте вміст або синхронізуйте з вашим пристроєм!\"] } } } } }, { \"locale\": \"ur_PK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"ur_PK\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Urdu (Pakistan) (https://app.transifex.com/nextcloud/teams/64236/ur_PK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: ur_PK\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"uz\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"uz\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Uzbek (https://app.transifex.com/nextcloud/teams/64236/uz/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: uz\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }, { \"locale\": \"vi\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Trần Đình Tuyển, 2024\", \"Language-Team\": \"Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"vi\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nTran Duc, 2024\\nTrần Đình Tuyển, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Trần Đình Tuyển, 2024\\nLanguage-Team: Vietnamese (https://app.transifex.com/nextcloud/teams/64236/vi/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: vi\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": ['\"{name}\" là tên thư mục không hợp lệ.'] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": ['\"1{name}\"không phải là tên thư mục được cho phép'] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['\"/\"không được phép đặt trong tên thư mục.'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"Tất cả tệp\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"Chọn\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"Chọn {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"Chọn %n tệp\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"Sao chép\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"Sao chép đến {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"Không thể tạo thư mục mới\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"Không thể tải tập tin cài đặt\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"Không thể tải xuống tệp xem\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"Tạo thư mục\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"Hiện tại chế độ xem của bộ chọn\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"Yêu cầu thích\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn đánh dấu yêu thích sẽ hiển thị ở đây.\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"Các tập tin và thư mục bạn sửa đổi gần đây sẽ hiển thị ở đây.\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"Filter list file\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"Thư mục tên không được để trống.\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"Trang chủ\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"Đã sửa đổi\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"Di chuyển\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"Di chuyển đến{target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"Tên\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"Mới\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"New thư mục\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"New thư mục tên\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"No file at here\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"Không tìm thấy tệp nào phù hợp với bộ lọc của bạn.\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"No file phù hợp\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"Gần đây\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"Choose all items\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"Chọn mục nhập\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"Choose hang cho{nodename}\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"Kích cỡ\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"Hoàn tác\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"Tải lên một số nội dung hoặc đồng bộ hóa với thiết bị của bạn!\"] } } } } }, { \"locale\": \"zh_CN\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Ruijian Deng, 2024\", \"Language-Team\": \"Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_CN\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nken, 2023\\nEric, 2023\\nPhonebook3599, 2024\\nRuijian Deng, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Ruijian Deng, 2024\\nLanguage-Team: Chinese (China) (https://app.transifex.com/nextcloud/teams/64236/zh_CN/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_CN\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"“{name}”是无效的文件夹名称。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"“{name}”不是允许的文件夹名称\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": [\"文件夹名称中不允许包含“/”。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有文件\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"选择\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"选择 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"选择 %n 个文件\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"复制\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"复制到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"无法创建新文件夹\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"无法加载文件设置\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"无法加载文件视图\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"创建目录\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"当前视图选择器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最爱\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您标记为最爱的文件与文件夹会显示在这里\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的文件与文件夹会显示在这里\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"过滤文件列表\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"文件夹名称不能为空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"主目录\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移动\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移动至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名称\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新建\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新文件夹\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新文件夹名称\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此处无文件\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您过滤条件的文件\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"无符合的文件\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"选择所有条目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"选择条目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"选择 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\" 撤消\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上传一些项目或与您的设备同步!\"] } } } } }, { \"locale\": \"zh_HK\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Café Tango, 2024\", \"Language-Team\": \"Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_HK\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\nCafé Tango, 2024\\n\" }, \"msgstr\": [\"Last-Translator: Café Tango, 2024\\nLanguage-Team: Chinese (Hong Kong) (https://app.transifex.com/nextcloud/teams/64236/zh_HK/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_HK\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid folder name.': { \"msgid\": '\"{name}\" is an invalid folder name.', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"{name}\" is not an allowed folder name': { \"msgid\": '\"{name}\" is not an allowed folder name', \"msgstr\": [\"「{name}」是無效的資料夾名稱。\"] }, '\"/\" is not allowed inside a folder name.': { \"msgid\": '\"/\" is not allowed inside a folder name.', \"msgstr\": ['資料夾名稱中不允許使用 \"/\"。'] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Choose %n file\": { \"msgid\": \"Choose %n file\", \"msgid_plural\": \"Choose %n files\", \"msgstr\": [\"選擇 %n 個檔案\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Could not load files settings\": { \"msgid\": \"Could not load files settings\", \"msgstr\": [\"無法載入檔案設定\"] }, \"Could not load files views\": { \"msgid\": \"Could not load files views\", \"msgstr\": [\"無法載入文件視圖\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Folder name cannot be empty.\": { \"msgid\": \"Folder name cannot be empty.\", \"msgstr\": [\"資料夾名稱不能為空。\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"首頁\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"還原\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zh_TW\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"黃柏諺 <s8321414@gmail.com>, 2023\", \"Language-Team\": \"Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zh_TW\", \"Plural-Forms\": \"nplurals=1; plural=0;\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nJohn Molakvoæ <skjnldsv@protonmail.com>, 2023\\n黃柏諺 <s8321414@gmail.com>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: 黃柏諺 <s8321414@gmail.com>, 2023\\nLanguage-Team: Chinese (Taiwan) (https://app.transifex.com/nextcloud/teams/64236/zh_TW/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zh_TW\\nPlural-Forms: nplurals=1; plural=0;\\n\"] }, '\"{name}\" is an invalid file name.': { \"msgid\": '\"{name}\" is an invalid file name.', \"msgstr\": [\"「{name}」是無效的檔案名稱。\"] }, '\"{name}\" is not an allowed filetype': { \"msgid\": '\"{name}\" is not an allowed filetype', \"msgstr\": [\"「{name}」並非允許的檔案類型\"] }, '\"/\" is not allowed inside a file name.': { \"msgid\": '\"/\" is not allowed inside a file name.', \"msgstr\": [\"檔案名稱中不允許使用「/」。\"] }, \"All files\": { \"msgid\": \"All files\", \"msgstr\": [\"所有檔案\"] }, \"Choose\": { \"msgid\": \"Choose\", \"msgstr\": [\"選擇\"] }, \"Choose {file}\": { \"msgid\": \"Choose {file}\", \"msgstr\": [\"選擇 {file}\"] }, \"Copy\": { \"msgid\": \"Copy\", \"msgstr\": [\"複製\"] }, \"Copy to {target}\": { \"msgid\": \"Copy to {target}\", \"msgstr\": [\"複製到 {target}\"] }, \"Could not create the new folder\": { \"msgid\": \"Could not create the new folder\", \"msgstr\": [\"無法建立新資料夾\"] }, \"Create directory\": { \"msgid\": \"Create directory\", \"msgstr\": [\"建立目錄\"] }, \"Current view selector\": { \"msgid\": \"Current view selector\", \"msgstr\": [\"目前檢視選取器\"] }, \"Favorites\": { \"msgid\": \"Favorites\", \"msgstr\": [\"最愛\"] }, \"File name cannot be empty.\": { \"msgid\": \"File name cannot be empty.\", \"msgstr\": [\"檔案名稱不能為空。\"] }, \"Filepicker sections\": { \"msgid\": \"Filepicker sections\", \"msgstr\": [\"檔案挑選器選取\"] }, \"Files and folders you mark as favorite will show up here.\": { \"msgid\": \"Files and folders you mark as favorite will show up here.\", \"msgstr\": [\"您標記為最愛的檔案與資料夾將會顯示在此處。\"] }, \"Files and folders you recently modified will show up here.\": { \"msgid\": \"Files and folders you recently modified will show up here.\", \"msgstr\": [\"您最近修改的檔案與資料夾將會顯示在此處。\"] }, \"Filter file list\": { \"msgid\": \"Filter file list\", \"msgstr\": [\"過濾檔案清單\"] }, \"Home\": { \"msgid\": \"Home\", \"msgstr\": [\"家\"] }, \"Mime type {mime}\": { \"msgid\": \"Mime type {mime}\", \"msgstr\": [\"Mime type {mime}\"] }, \"Modified\": { \"msgid\": \"Modified\", \"msgstr\": [\"已修改\"] }, \"Move\": { \"msgid\": \"Move\", \"msgstr\": [\"移動\"] }, \"Move to {target}\": { \"msgid\": \"Move to {target}\", \"msgstr\": [\"移動至 {target}\"] }, \"Name\": { \"msgid\": \"Name\", \"msgstr\": [\"名稱\"] }, \"New\": { \"msgid\": \"New\", \"msgstr\": [\"新\"] }, \"New folder\": { \"msgid\": \"New folder\", \"msgstr\": [\"新資料夾\"] }, \"New folder name\": { \"msgid\": \"New folder name\", \"msgstr\": [\"新資料夾名稱\"] }, \"No files in here\": { \"msgid\": \"No files in here\", \"msgstr\": [\"此處無檔案\"] }, \"No files matching your filter were found.\": { \"msgid\": \"No files matching your filter were found.\", \"msgstr\": [\"找不到符合您過濾條件的檔案。\"] }, \"No matching files\": { \"msgid\": \"No matching files\", \"msgstr\": [\"無符合的檔案\"] }, \"Recent\": { \"msgid\": \"Recent\", \"msgstr\": [\"最近\"] }, \"Select all entries\": { \"msgid\": \"Select all entries\", \"msgstr\": [\"選取所有條目\"] }, \"Select entry\": { \"msgid\": \"Select entry\", \"msgstr\": [\"選取條目\"] }, \"Select the row for {nodename}\": { \"msgid\": \"Select the row for {nodename}\", \"msgstr\": [\"選取 {nodename} 的列\"] }, \"Size\": { \"msgid\": \"Size\", \"msgstr\": [\"大小\"] }, \"Undo\": { \"msgid\": \"Undo\", \"msgstr\": [\"復原\"] }, \"unknown\": { \"msgid\": \"unknown\", \"msgstr\": [\"未知\"] }, \"Upload some content or sync with your devices!\": { \"msgid\": \"Upload some content or sync with your devices!\", \"msgstr\": [\"上傳一些內容或與您的裝置同步\"] } } } } }, { \"locale\": \"zu_ZA\", \"json\": { \"charset\": \"utf-8\", \"headers\": { \"Last-Translator\": \"Transifex Bot <>, 2023\", \"Language-Team\": \"Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\", \"Content-Type\": \"text/plain; charset=UTF-8\", \"Language\": \"zu_ZA\", \"Plural-Forms\": \"nplurals=2; plural=(n != 1);\" }, \"translations\": { \"\": { \"\": { \"msgid\": \"\", \"comments\": { \"translator\": \"\\nTranslators:\\nTransifex Bot <>, 2023\\n\" }, \"msgstr\": [\"Last-Translator: Transifex Bot <>, 2023\\nLanguage-Team: Zulu (South Africa) (https://app.transifex.com/nextcloud/teams/64236/zu_ZA/)\\nContent-Type: text/plain; charset=UTF-8\\nLanguage: zu_ZA\\nPlural-Forms: nplurals=2; plural=(n != 1);\\n\"] }, \"Undo\": { \"msgid\": \"Undo\", \"comments\": { \"reference\": \"lib/toast.ts:223\" }, \"msgstr\": [\"\"] } } } } }].map((data) => gtBuilder.addTranslation(data.locale, data.json));\nconst gt = gtBuilder.build();\nconst n = gt.ngettext.bind(gt);\nconst t = gt.gettext.bind(gt);\nvar ToastType = /* @__PURE__ */ ((ToastType2) => {\n ToastType2[\"ERROR\"] = \"toast-error\";\n ToastType2[\"WARNING\"] = \"toast-warning\";\n ToastType2[\"INFO\"] = \"toast-info\";\n ToastType2[\"SUCCESS\"] = \"toast-success\";\n ToastType2[\"PERMANENT\"] = \"toast-error\";\n ToastType2[\"UNDO\"] = \"toast-undo\";\n return ToastType2;\n})(ToastType || {});\nconst TOAST_ARIA_LIVE_OFF = \"off\";\nconst TOAST_ARIA_LIVE_POLITE = \"polite\";\nconst TOAST_ARIA_LIVE_ASSERTIVE = \"assertive\";\nvar ToastAriaLive = /* @__PURE__ */ ((ToastAriaLive2) => {\n ToastAriaLive2[ToastAriaLive2[\"OFF\"] = TOAST_ARIA_LIVE_OFF] = \"OFF\";\n ToastAriaLive2[ToastAriaLive2[\"POLITE\"] = TOAST_ARIA_LIVE_POLITE] = \"POLITE\";\n ToastAriaLive2[ToastAriaLive2[\"ASSERTIVE\"] = TOAST_ARIA_LIVE_ASSERTIVE] = \"ASSERTIVE\";\n return ToastAriaLive2;\n})(ToastAriaLive || {});\nconst TOAST_UNDO_TIMEOUT = 1e4;\nconst TOAST_DEFAULT_TIMEOUT = 7e3;\nconst TOAST_PERMANENT_TIMEOUT = -1;\nfunction showMessage(data, options) {\n var _a;\n options = Object.assign({\n timeout: TOAST_DEFAULT_TIMEOUT,\n isHTML: false,\n type: void 0,\n // An undefined selector defaults to the body element\n selector: void 0,\n onRemove: () => {\n },\n onClick: void 0,\n close: true\n }, options);\n if (typeof data === \"string\" && !options.isHTML) {\n const element = document.createElement(\"div\");\n element.innerHTML = data;\n data = element.innerText;\n }\n let classes = (_a = options.type) != null ? _a : \"\";\n if (typeof options.onClick === \"function\") {\n classes += \" toast-with-click \";\n }\n const isNode = data instanceof Node;\n let ariaLive = ToastAriaLive.POLITE;\n if (options.ariaLive) {\n ariaLive = options.ariaLive;\n } else if (options.type === \"toast-error\" || options.type === \"toast-undo\") {\n ariaLive = ToastAriaLive.ASSERTIVE;\n }\n const toast = Toastify({\n [!isNode ? \"text\" : \"node\"]: data,\n duration: options.timeout,\n callback: options.onRemove,\n onClick: options.onClick,\n close: options.close,\n gravity: \"top\",\n selector: options.selector,\n position: \"right\",\n backgroundColor: \"\",\n className: \"dialogs \" + classes,\n escapeMarkup: !options.isHTML,\n ariaLive\n });\n toast.showToast();\n return toast;\n}\nfunction showError(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-error\"\n /* ERROR */\n });\n}\nfunction showWarning(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-warning\"\n /* WARNING */\n });\n}\nfunction showInfo(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-info\"\n /* INFO */\n });\n}\nfunction showSuccess(text, options) {\n return showMessage(text, {\n ...options,\n type: \"toast-success\"\n /* SUCCESS */\n });\n}\nfunction showUndo(text, onUndo, options) {\n if (!(onUndo instanceof Function)) {\n throw new Error(\"Please provide a valid onUndo method\");\n }\n let toast;\n options = Object.assign(options || {}, {\n // force 10 seconds of timeout\n timeout: TOAST_UNDO_TIMEOUT,\n // remove close button\n close: false\n });\n const undoContent = document.createElement(\"span\");\n const undoButton = document.createElement(\"button\");\n undoContent.classList.add(\"toast-undo-container\");\n undoButton.classList.add(\"toast-undo-button\");\n undoButton.innerText = t(\"Undo\");\n undoContent.innerText = text;\n undoContent.appendChild(undoButton);\n undoButton.addEventListener(\"click\", function(event) {\n event.stopPropagation();\n onUndo(event);\n if ((toast == null ? void 0 : toast.hideToast) instanceof Function) {\n toast.hideToast();\n }\n });\n toast = showMessage(undoContent, {\n ...options,\n type: \"toast-undo\"\n /* UNDO */\n });\n return toast;\n}\nfunction normalizeComponent(scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {\n var options = typeof scriptExports === \"function\" ? scriptExports.options : scriptExports;\n if (render) {\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n options._compiled = true;\n }\n if (scopeId) {\n options._scopeId = \"data-v-\" + scopeId;\n }\n return {\n exports: scriptExports,\n options\n };\n}\nexport {\n ToastAriaLive as T,\n normalizeComponent as a,\n ToastType as b,\n TOAST_UNDO_TIMEOUT as c,\n TOAST_DEFAULT_TIMEOUT as d,\n TOAST_PERMANENT_TIMEOUT as e,\n TOAST_ARIA_LIVE_OFF as f,\n TOAST_ARIA_LIVE_POLITE as g,\n TOAST_ARIA_LIVE_ASSERTIVE as h,\n showSuccess as i,\n showWarning as j,\n showInfo as k,\n showError as l,\n showUndo as m,\n n,\n showMessage as s,\n t\n};\n","import { basename } from \"path\";\nimport Vue, { toRaw, defineComponent, onMounted, onUnmounted } from \"vue\";\nimport { t, n, a as normalizeComponent } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport { h, f, g, d, e, c, T, b, l, k, s, i, m, j } from \"./chunks/_plugin-vue2_normalizer-BNL0n0sv.mjs\";\nimport NcDialog from \"@nextcloud/vue/dist/Components/NcDialog.js\";\nimport NcNoteCard from \"@nextcloud/vue/dist/Components/NcNoteCard.js\";\nconst spawnDialog = (dialog, props, onClose = () => {\n}) => {\n const el = document.createElement(\"div\");\n const container = document.querySelector(props == null ? void 0 : props.container) || document.body;\n container.appendChild(el);\n const vue = new Vue({\n el,\n name: \"VueDialogHelper\",\n render: (h2) => h2(dialog, {\n props,\n on: {\n close: (...rest) => {\n onClose(...rest.map((v) => toRaw(v)));\n vue.$destroy();\n }\n }\n })\n });\n return vue;\n};\nconst IconMove = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-move\" viewBox=\"0 0 24 24\"><path d=\"M14,18V15H10V11H14V8L19,13M20,6H12L10,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V8C22,6.89 21.1,6 20,6Z\" /></svg>';\nconst IconCopy = '<svg xmlns=\"http://www.w3.org/2000/svg\" id=\"mdi-folder-multiple\" viewBox=\"0 0 24 24\"><path d=\"M22,4H14L12,2H6A2,2 0 0,0 4,4V16A2,2 0 0,0 6,18H22A2,2 0 0,0 24,16V6A2,2 0 0,0 22,4M2,6H0V11H0V20A2,2 0 0,0 2,22H20V20H2V6Z\" /></svg>';\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nvar FilePickerType = /* @__PURE__ */ ((FilePickerType2) => {\n FilePickerType2[FilePickerType2[\"Choose\"] = 1] = \"Choose\";\n FilePickerType2[FilePickerType2[\"Move\"] = 2] = \"Move\";\n FilePickerType2[FilePickerType2[\"Copy\"] = 3] = \"Copy\";\n FilePickerType2[FilePickerType2[\"CopyMove\"] = 4] = \"CopyMove\";\n FilePickerType2[FilePickerType2[\"Custom\"] = 5] = \"Custom\";\n return FilePickerType2;\n})(FilePickerType || {});\nclass FilePickerClosed extends Error {\n}\nclass FilePicker {\n constructor(title, multiSelect, mimeTypeFilter, directoriesAllowed, buttons, path, filter, container, disabledNavigation = false) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\");\n __publicField(this, \"mimeTypeFilter\");\n __publicField(this, \"directoriesAllowed\");\n __publicField(this, \"buttons\");\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\");\n this.title = title;\n this.multiSelect = multiSelect;\n this.mimeTypeFilter = mimeTypeFilter;\n this.directoriesAllowed = directoriesAllowed;\n this.path = path;\n this.filter = filter;\n this.buttons = buttons;\n this.container = container;\n this.disabledNavigation = disabledNavigation;\n }\n /**\n * Pick files using the FilePicker\n *\n * @return Promise with array of picked files or rejected promise on close without picking\n */\n async pick() {\n const { FilePickerVue } = await import(\"./chunks/index-D5FJasts.mjs\");\n return new Promise((resolve, reject) => {\n spawnDialog(FilePickerVue, {\n allowPickDirectory: this.directoriesAllowed,\n buttons: this.buttons,\n container: this.container,\n name: this.title,\n path: this.path,\n mimetypeFilter: this.mimeTypeFilter,\n multiselect: this.multiSelect,\n filterFn: this.filter,\n disabledNavigation: this.disabledNavigation\n }, (...rest) => {\n var _a;\n const [nodes] = rest;\n if (!Array.isArray(nodes) || nodes.length === 0) {\n reject(new FilePickerClosed(\"FilePicker: No nodes selected\"));\n } else {\n if (this.multiSelect) {\n resolve(nodes.map((node) => node.path));\n } else {\n resolve(((_a = nodes[0]) == null ? void 0 : _a.path) || \"/\");\n }\n }\n });\n });\n }\n}\nclass FilePickerBuilder {\n /**\n * Construct a new FilePicker\n *\n * @param title Title of the FilePicker\n */\n constructor(title) {\n __publicField(this, \"title\");\n __publicField(this, \"multiSelect\", false);\n __publicField(this, \"mimeTypeFilter\", []);\n __publicField(this, \"directoriesAllowed\", false);\n __publicField(this, \"path\");\n __publicField(this, \"filter\");\n __publicField(this, \"buttons\", []);\n __publicField(this, \"container\");\n __publicField(this, \"disabledNavigation\", false);\n this.title = title;\n }\n /**\n * Set the container where the FilePicker will be mounted\n * By default 'body' is used\n *\n * @param container The dialog container\n */\n setContainer(container) {\n this.container = container;\n return this;\n }\n /**\n * Enable or disable picking multiple files\n *\n * @param ms True to enable picking multiple files, false otherwise\n */\n setMultiSelect(ms) {\n this.multiSelect = ms;\n return this;\n }\n /**\n * Add allowed MIME type\n *\n * @param filter MIME type to allow\n */\n addMimeTypeFilter(filter) {\n this.mimeTypeFilter.push(filter);\n return this;\n }\n /**\n * Set allowed MIME types\n *\n * @param filter Array of allowed MIME types\n */\n setMimeTypeFilter(filter) {\n this.mimeTypeFilter = filter;\n return this;\n }\n /**\n * Add a button to the FilePicker\n * Note: This overrides any previous `setButtonFactory` call\n *\n * @param button The button\n */\n addButton(button) {\n if (typeof this.buttons === \"function\") {\n console.warn(\"FilePicker buttons were set to factory, now overwritten with button object.\");\n this.buttons = [];\n }\n this.buttons.push(button);\n return this;\n }\n /**\n * Set the button factory which is used to generate buttons from current view, path and selected nodes\n * Note: This overrides any previous `addButton` call\n *\n * @param factory The button factory\n */\n setButtonFactory(factory) {\n this.buttons = factory;\n return this;\n }\n /**\n * Set FilePicker type based on legacy file picker types\n * @param type The legacy filepicker type to emulate\n * @deprecated Use `addButton` or `setButtonFactory` instead as with setType you do not know which button was pressed\n */\n setType(type) {\n this.buttons = (nodes, path) => {\n var _a, _b, _c;\n const buttons = [];\n const node = ((_b = (_a = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _a.attributes) == null ? void 0 : _b.displayName) || ((_c = nodes == null ? void 0 : nodes[0]) == null ? void 0 : _c.basename);\n const target = node || basename(path);\n if (type === 1) {\n let label = t(\"Choose\");\n if (nodes.length === 1) {\n label = t(\"Choose {file}\", { file: node });\n } else if (this.multiSelect) {\n label = n(\"Choose %n file\", \"Choose %n files\", nodes.length);\n }\n buttons.push({\n callback: () => {\n },\n type: \"primary\",\n label\n });\n }\n if (type === 4 || type === 3) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Copy to {target}\", { target }) : t(\"Copy\"),\n type: \"primary\",\n icon: IconCopy\n });\n }\n if (type === 2 || type === 4) {\n buttons.push({\n callback: () => {\n },\n label: target ? t(\"Move to {target}\", { target }) : t(\"Move\"),\n type: type === 2 ? \"primary\" : \"secondary\",\n icon: IconMove\n });\n }\n return buttons;\n };\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n allowDirectories(allow = true) {\n this.directoriesAllowed = allow;\n return this;\n }\n /**\n * Set starting path of the FilePicker\n *\n * @param path Path to start from picking\n */\n startAt(path) {\n this.path = path;\n return this;\n }\n /**\n * Add filter function to filter file list of FilePicker\n *\n * @param filter Filter function to apply\n */\n setFilter(filter) {\n this.filter = filter;\n return this;\n }\n /**\n * Allow to pick directories besides files\n *\n * @param allow True to allow picking directories\n */\n disableNavigation() {\n this.disabledNavigation = true;\n return this;\n }\n /**\n * Construct the configured FilePicker\n */\n build() {\n return new FilePicker(\n this.title,\n this.multiSelect,\n this.mimeTypeFilter,\n this.directoriesAllowed,\n this.buttons,\n this.path,\n this.filter,\n this.container,\n this.disabledNavigation\n );\n }\n}\nfunction getFilePickerBuilder(title) {\n return new FilePickerBuilder(title);\n}\nvar DialogSeverity = /* @__PURE__ */ ((DialogSeverity2) => {\n DialogSeverity2[\"Info\"] = \"info\";\n DialogSeverity2[\"Warning\"] = \"warning\";\n DialogSeverity2[\"Error\"] = \"error\";\n return DialogSeverity2;\n})(DialogSeverity || {});\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"GenericDialog\",\n props: {\n name: null,\n text: null,\n html: null,\n buttons: null,\n severity: null\n },\n setup(__props) {\n const props = __props;\n const handleUnload = () => \"\".concat(props.name, \": \").concat(props.text);\n onMounted(() => window.addEventListener(\"unload\", handleUnload));\n onUnmounted(() => window.removeEventListener(\"unload\", handleUnload));\n return { __sfc: true, props, handleUnload, NcDialog, NcNoteCard };\n }\n});\nvar _sfc_render = function render() {\n var _vm = this, _c = _vm._self._c, _setup = _vm._self._setupProxy;\n return _c(_setup.NcDialog, { attrs: { \"dialog-classes\": \"nc-generic-dialog\", \"buttons\": _vm.buttons, \"name\": _vm.name, \"message\": _vm.text }, on: { \"update:open\": function($event) {\n return _vm.$emit(\"close\");\n } } }, [_vm.severity ? _c(_setup.NcNoteCard, { attrs: { \"type\": _vm.severity } }, [_c(\"p\", { domProps: { \"textContent\": _vm._s(_vm.text) } })]) : _vm._e(), _vm.html ? _c(\"div\", { domProps: { \"innerHTML\": _vm._s(_vm.html) } }) : _vm._e()], 1);\n};\nvar _sfc_staticRenderFns = [];\nvar __component__ = /* @__PURE__ */ normalizeComponent(\n _sfc_main,\n _sfc_render,\n _sfc_staticRenderFns,\n false,\n null,\n null\n);\nconst GenericDialog = __component__.exports;\nvar __typeError = (msg) => {\n throw TypeError(msg);\n};\nvar __accessCheck = (obj, member, msg) => member.has(obj) || __typeError(\"Cannot \" + msg);\nvar __privateGet = (obj, member, getter) => (__accessCheck(obj, member, \"read from private field\"), member.get(obj));\nvar __privateAdd = (obj, member, value) => member.has(obj) ? __typeError(\"Cannot add the same private member more than once\") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);\nvar __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, \"write to private field\"), member.set(obj, value), value);\nvar _name, _text, _buttons, _severity, _dialog, _html, _severity2, _text2, _name2, _buttons2;\nclass Dialog {\n constructor(name, text, buttons = [], severity) {\n __privateAdd(this, _name);\n __privateAdd(this, _text);\n __privateAdd(this, _buttons);\n __privateAdd(this, _severity);\n __privateAdd(this, _dialog);\n __privateAdd(this, _html);\n __privateSet(this, _name, name);\n __privateSet(this, _text, text);\n __privateSet(this, _buttons, buttons);\n __privateSet(this, _severity, severity);\n __privateSet(this, _dialog, void 0);\n __privateSet(this, _html, void 0);\n }\n /**\n * @deprecated DO NOT USE! It will be removed in the near future!\n * @param html HTML content\n */\n setHTML(html) {\n __privateSet(this, _html, html);\n return this;\n }\n /**\n * Spawn and show the dialog - if already open the previous instance will be destroyed\n * @return Promise that resolves when the dialog is answered successfully and rejects on close\n */\n show() {\n if (__privateGet(this, _dialog)) {\n __privateGet(this, _dialog).$destroy();\n }\n return new Promise((resolve) => {\n __privateSet(this, _dialog, spawnDialog(\n GenericDialog,\n {\n buttons: __privateGet(this, _buttons),\n name: __privateGet(this, _name),\n text: __privateGet(this, _text),\n severity: __privateGet(this, _severity),\n html: __privateGet(this, _html)\n },\n resolve\n ));\n });\n }\n /**\n * Hide and destroy the current dialog instance\n */\n hide() {\n var _a;\n (_a = __privateGet(this, _dialog)) == null ? void 0 : _a.$destroy();\n }\n}\n_name = /* @__PURE__ */ new WeakMap();\n_text = /* @__PURE__ */ new WeakMap();\n_buttons = /* @__PURE__ */ new WeakMap();\n_severity = /* @__PURE__ */ new WeakMap();\n_dialog = /* @__PURE__ */ new WeakMap();\n_html = /* @__PURE__ */ new WeakMap();\nclass DialogBuilder {\n constructor(name) {\n __privateAdd(this, _severity2);\n __privateAdd(this, _text2);\n __privateAdd(this, _name2);\n __privateAdd(this, _buttons2);\n __privateSet(this, _severity2, void 0);\n __privateSet(this, _text2, \"\");\n __privateSet(this, _name2, name != null ? name : \"\");\n __privateSet(this, _buttons2, []);\n }\n /**\n * Set dialog name\n * @param name The name or headline of the dialog\n */\n setName(name) {\n __privateSet(this, _name2, name);\n return this;\n }\n /**\n * Set the dialog text\n * @param text Main text of the dialog\n */\n setText(text) {\n __privateSet(this, _text2, text);\n return this;\n }\n /**\n * Set the severity of the dialog\n * @param severity Severity of the dialog\n */\n setSeverity(severity) {\n __privateSet(this, _severity2, severity);\n return this;\n }\n /**\n * Set buttons from array\n * @param buttons Either an array of dialog buttons\n */\n setButtons(buttons) {\n if (__privateGet(this, _buttons2).length > 0) {\n console.warn(\"[@nextcloud/dialogs] Dialog buttons are already set - this overrides previous buttons.\");\n }\n __privateSet(this, _buttons2, buttons);\n return this;\n }\n /**\n * Add a single button\n * @param button Button to add\n */\n addButton(button) {\n __privateGet(this, _buttons2).push(button);\n return this;\n }\n build() {\n return new Dialog(__privateGet(this, _name2), __privateGet(this, _text2), __privateGet(this, _buttons2), __privateGet(this, _severity2));\n }\n}\n_severity2 = /* @__PURE__ */ new WeakMap();\n_text2 = /* @__PURE__ */ new WeakMap();\n_name2 = /* @__PURE__ */ new WeakMap();\n_buttons2 = /* @__PURE__ */ new WeakMap();\nfunction getDialogBuilder(name) {\n return new DialogBuilder(name);\n}\nexport {\n Dialog,\n DialogBuilder,\n DialogSeverity,\n FilePicker,\n FilePickerBuilder,\n FilePickerClosed,\n FilePickerType,\n h as TOAST_ARIA_LIVE_ASSERTIVE,\n f as TOAST_ARIA_LIVE_OFF,\n g as TOAST_ARIA_LIVE_POLITE,\n d as TOAST_DEFAULT_TIMEOUT,\n e as TOAST_PERMANENT_TIMEOUT,\n c as TOAST_UNDO_TIMEOUT,\n T as ToastAriaLive,\n b as ToastType,\n getDialogBuilder,\n getFilePickerBuilder,\n l as showError,\n k as showInfo,\n s as showMessage,\n i as showSuccess,\n m as showUndo,\n j as showWarning,\n spawnDialog\n};\n","export class TimeoutError extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = 'TimeoutError';\n\t}\n}\n\n/**\nAn error to be thrown when the request is aborted by AbortController.\nDOMException is thrown instead of this Error when DOMException is available.\n*/\nexport class AbortError extends Error {\n\tconstructor(message) {\n\t\tsuper();\n\t\tthis.name = 'AbortError';\n\t\tthis.message = message;\n\t}\n}\n\n/**\nTODO: Remove AbortError and just throw DOMException when targeting Node 18.\n*/\nconst getDOMException = errorMessage => globalThis.DOMException === undefined\n\t? new AbortError(errorMessage)\n\t: new DOMException(errorMessage);\n\n/**\nTODO: Remove below function and just 'reject(signal.reason)' when targeting Node 18.\n*/\nconst getAbortedReason = signal => {\n\tconst reason = signal.reason === undefined\n\t\t? getDOMException('This operation was aborted.')\n\t\t: signal.reason;\n\n\treturn reason instanceof Error ? reason : getDOMException(reason);\n};\n\nexport default function pTimeout(promise, options) {\n\tconst {\n\t\tmilliseconds,\n\t\tfallback,\n\t\tmessage,\n\t\tcustomTimers = {setTimeout, clearTimeout},\n\t} = options;\n\n\tlet timer;\n\n\tconst wrappedPromise = new Promise((resolve, reject) => {\n\t\tif (typeof milliseconds !== 'number' || Math.sign(milliseconds) !== 1) {\n\t\t\tthrow new TypeError(`Expected \\`milliseconds\\` to be a positive number, got \\`${milliseconds}\\``);\n\t\t}\n\n\t\tif (options.signal) {\n\t\t\tconst {signal} = options;\n\t\t\tif (signal.aborted) {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t}\n\n\t\t\tsignal.addEventListener('abort', () => {\n\t\t\t\treject(getAbortedReason(signal));\n\t\t\t});\n\t\t}\n\n\t\tif (milliseconds === Number.POSITIVE_INFINITY) {\n\t\t\tpromise.then(resolve, reject);\n\t\t\treturn;\n\t\t}\n\n\t\t// We create the error outside of `setTimeout` to preserve the stack trace.\n\t\tconst timeoutError = new TimeoutError();\n\n\t\ttimer = customTimers.setTimeout.call(undefined, () => {\n\t\t\tif (fallback) {\n\t\t\t\ttry {\n\t\t\t\t\tresolve(fallback());\n\t\t\t\t} catch (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof promise.cancel === 'function') {\n\t\t\t\tpromise.cancel();\n\t\t\t}\n\n\t\t\tif (message === false) {\n\t\t\t\tresolve();\n\t\t\t} else if (message instanceof Error) {\n\t\t\t\treject(message);\n\t\t\t} else {\n\t\t\t\ttimeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;\n\t\t\t\treject(timeoutError);\n\t\t\t}\n\t\t}, milliseconds);\n\n\t\t(async () => {\n\t\t\ttry {\n\t\t\t\tresolve(await promise);\n\t\t\t} catch (error) {\n\t\t\t\treject(error);\n\t\t\t}\n\t\t})();\n\t});\n\n\tconst cancelablePromise = wrappedPromise.finally(() => {\n\t\tcancelablePromise.clear();\n\t});\n\n\tcancelablePromise.clear = () => {\n\t\tcustomTimers.clearTimeout.call(undefined, timer);\n\t\ttimer = undefined;\n\t};\n\n\treturn cancelablePromise;\n}\n","import lowerBound from './lower-bound.js';\nexport default class PriorityQueue {\n #queue = [];\n enqueue(run, options) {\n options = {\n priority: 0,\n ...options,\n };\n const element = {\n priority: options.priority,\n run,\n };\n if (this.size && this.#queue[this.size - 1].priority >= options.priority) {\n this.#queue.push(element);\n return;\n }\n const index = lowerBound(this.#queue, element, (a, b) => b.priority - a.priority);\n this.#queue.splice(index, 0, element);\n }\n dequeue() {\n const item = this.#queue.shift();\n return item?.run;\n }\n filter(options) {\n return this.#queue.filter((element) => element.priority === options.priority).map((element) => element.run);\n }\n get size() {\n return this.#queue.length;\n }\n}\n","// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound\n// Used to compute insertion index to keep queue sorted after insertion\nexport default function lowerBound(array, value, comparator) {\n let first = 0;\n let count = array.length;\n while (count > 0) {\n const step = Math.trunc(count / 2);\n let it = first + step;\n if (comparator(array[it], value) <= 0) {\n first = ++it;\n count -= step + 1;\n }\n else {\n count = step;\n }\n }\n return first;\n}\n","import { EventEmitter } from 'eventemitter3';\nimport pTimeout, { TimeoutError } from 'p-timeout';\nimport PriorityQueue from './priority-queue.js';\n/**\nPromise queue with concurrency control.\n*/\nexport default class PQueue extends EventEmitter {\n #carryoverConcurrencyCount;\n #isIntervalIgnored;\n #intervalCount = 0;\n #intervalCap;\n #interval;\n #intervalEnd = 0;\n #intervalId;\n #timeoutId;\n #queue;\n #queueClass;\n #pending = 0;\n // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194\n #concurrency;\n #isPaused;\n #throwOnTimeout;\n /**\n Per-operation timeout in milliseconds. Operations fulfill once `timeout` elapses if they haven't already.\n\n Applies to each future operation.\n */\n timeout;\n // TODO: The `throwOnTimeout` option should affect the return types of `add()` and `addAll()`\n constructor(options) {\n super();\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n options = {\n carryoverConcurrencyCount: false,\n intervalCap: Number.POSITIVE_INFINITY,\n interval: 0,\n concurrency: Number.POSITIVE_INFINITY,\n autoStart: true,\n queueClass: PriorityQueue,\n ...options,\n };\n if (!(typeof options.intervalCap === 'number' && options.intervalCap >= 1)) {\n throw new TypeError(`Expected \\`intervalCap\\` to be a number from 1 and up, got \\`${options.intervalCap?.toString() ?? ''}\\` (${typeof options.intervalCap})`);\n }\n if (options.interval === undefined || !(Number.isFinite(options.interval) && options.interval >= 0)) {\n throw new TypeError(`Expected \\`interval\\` to be a finite number >= 0, got \\`${options.interval?.toString() ?? ''}\\` (${typeof options.interval})`);\n }\n this.#carryoverConcurrencyCount = options.carryoverConcurrencyCount;\n this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;\n this.#intervalCap = options.intervalCap;\n this.#interval = options.interval;\n this.#queue = new options.queueClass();\n this.#queueClass = options.queueClass;\n this.concurrency = options.concurrency;\n this.timeout = options.timeout;\n this.#throwOnTimeout = options.throwOnTimeout === true;\n this.#isPaused = options.autoStart === false;\n }\n get #doesIntervalAllowAnother() {\n return this.#isIntervalIgnored || this.#intervalCount < this.#intervalCap;\n }\n get #doesConcurrentAllowAnother() {\n return this.#pending < this.#concurrency;\n }\n #next() {\n this.#pending--;\n this.#tryToStartAnother();\n this.emit('next');\n }\n #onResumeInterval() {\n this.#onInterval();\n this.#initializeIntervalIfNeeded();\n this.#timeoutId = undefined;\n }\n get #isIntervalPaused() {\n const now = Date.now();\n if (this.#intervalId === undefined) {\n const delay = this.#intervalEnd - now;\n if (delay < 0) {\n // Act as the interval was done\n // We don't need to resume it here because it will be resumed on line 160\n this.#intervalCount = (this.#carryoverConcurrencyCount) ? this.#pending : 0;\n }\n else {\n // Act as the interval is pending\n if (this.#timeoutId === undefined) {\n this.#timeoutId = setTimeout(() => {\n this.#onResumeInterval();\n }, delay);\n }\n return true;\n }\n }\n return false;\n }\n #tryToStartAnother() {\n if (this.#queue.size === 0) {\n // We can clear the interval (\"pause\")\n // Because we can redo it later (\"resume\")\n if (this.#intervalId) {\n clearInterval(this.#intervalId);\n }\n this.#intervalId = undefined;\n this.emit('empty');\n if (this.#pending === 0) {\n this.emit('idle');\n }\n return false;\n }\n if (!this.#isPaused) {\n const canInitializeInterval = !this.#isIntervalPaused;\n if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {\n const job = this.#queue.dequeue();\n if (!job) {\n return false;\n }\n this.emit('active');\n job();\n if (canInitializeInterval) {\n this.#initializeIntervalIfNeeded();\n }\n return true;\n }\n }\n return false;\n }\n #initializeIntervalIfNeeded() {\n if (this.#isIntervalIgnored || this.#intervalId !== undefined) {\n return;\n }\n this.#intervalId = setInterval(() => {\n this.#onInterval();\n }, this.#interval);\n this.#intervalEnd = Date.now() + this.#interval;\n }\n #onInterval() {\n if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {\n clearInterval(this.#intervalId);\n this.#intervalId = undefined;\n }\n this.#intervalCount = this.#carryoverConcurrencyCount ? this.#pending : 0;\n this.#processQueue();\n }\n /**\n Executes all queued functions until it reaches the limit.\n */\n #processQueue() {\n // eslint-disable-next-line no-empty\n while (this.#tryToStartAnother()) { }\n }\n get concurrency() {\n return this.#concurrency;\n }\n set concurrency(newConcurrency) {\n if (!(typeof newConcurrency === 'number' && newConcurrency >= 1)) {\n throw new TypeError(`Expected \\`concurrency\\` to be a number from 1 and up, got \\`${newConcurrency}\\` (${typeof newConcurrency})`);\n }\n this.#concurrency = newConcurrency;\n this.#processQueue();\n }\n async #throwOnAbort(signal) {\n return new Promise((_resolve, reject) => {\n signal.addEventListener('abort', () => {\n reject(signal.reason);\n }, { once: true });\n });\n }\n async add(function_, options = {}) {\n options = {\n timeout: this.timeout,\n throwOnTimeout: this.#throwOnTimeout,\n ...options,\n };\n return new Promise((resolve, reject) => {\n this.#queue.enqueue(async () => {\n this.#pending++;\n this.#intervalCount++;\n try {\n options.signal?.throwIfAborted();\n let operation = function_({ signal: options.signal });\n if (options.timeout) {\n operation = pTimeout(Promise.resolve(operation), { milliseconds: options.timeout });\n }\n if (options.signal) {\n operation = Promise.race([operation, this.#throwOnAbort(options.signal)]);\n }\n const result = await operation;\n resolve(result);\n this.emit('completed', result);\n }\n catch (error) {\n if (error instanceof TimeoutError && !options.throwOnTimeout) {\n resolve();\n return;\n }\n reject(error);\n this.emit('error', error);\n }\n finally {\n this.#next();\n }\n }, options);\n this.emit('add');\n this.#tryToStartAnother();\n });\n }\n async addAll(functions, options) {\n return Promise.all(functions.map(async (function_) => this.add(function_, options)));\n }\n /**\n Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)\n */\n start() {\n if (!this.#isPaused) {\n return this;\n }\n this.#isPaused = false;\n this.#processQueue();\n return this;\n }\n /**\n Put queue execution on hold.\n */\n pause() {\n this.#isPaused = true;\n }\n /**\n Clear the queue.\n */\n clear() {\n this.#queue = new this.#queueClass();\n }\n /**\n Can be called multiple times. Useful if you for example add additional items at a later time.\n\n @returns A promise that settles when the queue becomes empty.\n */\n async onEmpty() {\n // Instantly resolve if the queue is empty\n if (this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('empty');\n }\n /**\n @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.\n\n If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.\n\n Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.\n */\n async onSizeLessThan(limit) {\n // Instantly resolve if the queue is empty.\n if (this.#queue.size < limit) {\n return;\n }\n await this.#onEvent('next', () => this.#queue.size < limit);\n }\n /**\n The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.\n\n @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.\n */\n async onIdle() {\n // Instantly resolve if none pending and if nothing else is queued\n if (this.#pending === 0 && this.#queue.size === 0) {\n return;\n }\n await this.#onEvent('idle');\n }\n async #onEvent(event, filter) {\n return new Promise(resolve => {\n const listener = () => {\n if (filter && !filter()) {\n return;\n }\n this.off(event, listener);\n resolve();\n };\n this.on(event, listener);\n });\n }\n /**\n Size of the queue, the number of queued items waiting to run.\n */\n get size() {\n return this.#queue.size;\n }\n /**\n Size of the queue, filtered by the given options.\n\n For example, this can be used to find the number of items remaining in the queue with a specific priority level.\n */\n sizeBy(options) {\n // eslint-disable-next-line unicorn/no-array-callback-reference\n return this.#queue.filter(options).length;\n }\n /**\n Number of running items (no longer in the queue).\n */\n get pending() {\n return this.#pending;\n }\n /**\n Whether the queue is currently paused.\n */\n get isPaused() {\n return this.#isPaused;\n }\n}\n","import axios from './lib/axios.js';\n\n// This module is intended to unwrap Axios default export as named.\n// Keep top-level export same with static properties\n// so that it can keep same with es module or cjs\nconst {\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\n} = axios;\n\nexport {\n axios as default,\n Axios,\n AxiosError,\n CanceledError,\n isCancel,\n CancelToken,\n VERSION,\n all,\n Cancel,\n isAxiosError,\n spread,\n toFormData,\n AxiosHeaders,\n HttpStatusCode,\n formToJSON,\n getAdapter,\n mergeConfig\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"918\":\"42dc18350820a2df996f\",\"1902\":\"15c69743cf3911d7117d\",\"2400\":\"e05bb23ce5cd8e8e3b27\",\"6429\":\"89166d2636e7cbd574e0\",\"6880\":\"367ddfc725b6ef2ee02b\",\"8066\":\"f1f0a3884f0b92377e6a\"}[chunkId] + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 2882;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t2882: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(38536)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","has","Object","prototype","hasOwnProperty","prefix","Events","EE","fn","context","once","this","addListener","emitter","event","TypeError","listener","evt","_events","push","_eventsCount","clearEvent","EventEmitter","create","__proto__","eventNames","events","name","names","call","slice","getOwnPropertySymbols","concat","listeners","handlers","i","l","length","ee","Array","listenerCount","emit","a1","a2","a3","a4","a5","args","len","arguments","removeListener","undefined","apply","j","on","removeAllListeners","off","prefixed","module","exports","pinia","createPinia","token","singleMatcher","RegExp","multiMatcher","decodeComponents","components","split","decodeURIComponent","join","left","right","decode","input","tokens","match","splitOnFirst","string","separator","separatorIndex","indexOf","includeKeys","object","predicate","result","isArray","key","descriptor","getOwnPropertyDescriptor","enumerable","defineProperty","Reflect","ownKeys","isNullOrUndefined","value","strictUriEncode","encodeURIComponent","replaceAll","x","charCodeAt","toString","toUpperCase","encodeFragmentIdentifier","Symbol","validateArrayFormatSeparator","encode","options","strict","encodedURI","replaceMap","exec","entries","keys","replace","customDecodeURIComponent","keysSorter","sort","a","b","Number","map","removeHash","hashStart","parseValue","parseNumbers","isNaN","trim","parseBooleans","toLowerCase","extract","queryStart","parse","query","arrayFormat","arrayFormatSeparator","formatter","accumulator","includes","isEncodedArray","newValue","item","test","arrayValue","flat","parserForArrayFormat","returnValue","parameter","parameter_","key2","value2","reduce","Boolean","stringify","shouldFilter","skipNull","skipEmptyString","index","keyValueSeparator","encoderForArrayFormat","objectCopy","filter","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryString","getHash","urlObjectForFragmentEncode","URL","pick","exclude","Vue","use","Router","originalPush","to","onComplete","onAbort","catch","err","mode","base","generateUrl","linkActiveClass","routes","path","redirect","params","view","props","stringifyQuery","emits","title","type","String","fillColor","default","size","_vm","_c","_self","_b","staticClass","attrs","$event","$emit","$attrs","_v","_s","_e","throttle","delay","callback","timeoutID","_ref","_ref$noTrailing","noTrailing","_ref$noLeading","noLeading","_ref$debounceMode","debounceMode","cancelled","lastExec","clearExistingTimeout","clearTimeout","wrapper","_len","arguments_","_key","self","elapsed","Date","now","clear","setTimeout","cancel","_ref2$upcomingOnly","upcomingOnly","getLoggerBuilder","setApp","detectUser","build","ChartPie","NcAppNavigationItem","NcProgressBar","data","loadingStorageStats","storageStats","loadState","computed","storageStatsTitle","_this$storageStats","_this$storageStats2","_this$storageStats3","usedQuotaByte","formatFileSize","used","quotaByte","quota","t","storageStatsTooltip","relative","beforeMount","setInterval","throttleUpdateStorageStats","subscribe","mounted","_this$storageStats4","_this$storageStats5","free","showStorageFullWarning","methods","debounceUpdateStorageStats","_ref$atBegin","atBegin","updateStorageStats","_response$data","_this$storageStats6","_response$data$data","_response$data$data2","response","axios","get","Error","error","logger","showError","translate","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","class","stopPropagation","preventDefault","slot","Math","min","el","Function","required","$el","appendChild","userConfig","show_hidden","crop_image_previews","sort_favorites_first","sort_folders_first","grid_view","useUserConfigStore","userConfigStore","defineStore","state","actions","onUpdate","update","put","store","_initialized","Clipboard","NcAppSettingsDialog","NcAppSettingsSection","NcCheckboxRadioSwitch","NcInputField","Setting","open","setup","_window$OCA","_getCurrentUser","_loadState$enable_non","settings","window","OCA","Files","Settings","webdavUrl","generateRemoteUrl","getCurrentUser","uid","webdavDocs","appPasswordUrl","webdavUrlCopied","enableGridView","forEach","setting","beforeDestroy","close","onClose","setConfig","copyCloudId","document","querySelector","select","navigator","clipboard","writeText","showSuccess","_l","target","scopedSlots","_u","proxy","useNavigation","navigation","getNavigation","views","shallowRef","currentView","active","onUpdateActive","detail","onUpdateViews","onMounted","addEventListener","onUnmounted","removeEventListener","viewConfig","useViewConfigStore","getters","getConfig","setSortingBy","toggleSortingDirection","newDirection","sorting_direction","viewConfigStore","defineComponent","IconCog","NavigationQuota","NcAppNavigation","NcIconSvgWrapper","SettingsModal","settingsOpened","currentViewId","_this$$route","$route","parentViews","parent","order","childViews","list","watch","newView","oldView","_this$currentView","id","find","showView","debug","_ref2","useExactRouteMatching","_this$childViews$view","_window$OCA$close","Sidebar","setActive","onToggleExpand","isExpanded","expanded","_this$viewConfigStore","generateToNavigation","dir","openSettings","onSettingsClose","_setupProxy","iconClass","sticky","icon","child","action","FileAction","displayName","iconSvgInline","InformationSvg","enabled","nodes","_window","_nodes$0$root","root","startsWith","permissions","Permission","NONE","node","setActiveTab","OCP","goToRoute","fileid","rootPath","defaultRootUrl","client","davGetClient","rootUrl","getClient","fetchNode","async","propfindPayload","davGetDefaultPropfind","stat","davRootPath","details","davResultToNode","useFilesStore","fileStore","files","roots","getNode","source","getNodes","sources","getNodesById","fileId","values","getRoot","service","updateNodes","acc","deleteNodes","delete","setRoot","onDeletedNode","onCreatedNode","onMovedNode","oldSource","onUpdatedNode","Promise","all","then","n","usePathsStore","pathsStore","paths","getPath","addPath","payload","deletePath","_getNavigation","FileType","Folder","addNodeToParentChildren","_getNavigation2","deleteNodeFromParentChildren","_getNavigation3","oldPath","oldNode","File","owner","mime","_getNavigation4","parentSource","dirname","folder","_folder$_children","children","Set","_children","_getNavigation5","_folder$_children2","add","useSelectionStore","selected","lastSelection","lastSelectedIndex","set","selection","setLastIndex","reset","uploader","useUploaderStore","getUploader","queue","Directory","constructor","contents","super","_contents","_computeDirectorySize","lastModified","_computeDirectoryMtime","directory","file","entry","traverseTree","isFile","resolve","reject","readDirectory","dirReader","createReader","getEntries","readEntries","results","createDirectoryIfNotExists","davClient","exists","absolutePath","createDirectory","recursive","resolveConflict","destination","conflicts","basename","uploads","renamed","openConflictPicker","showInfo","info","console","getQueue","PQueue","concurrency","MoveCopyAction","canMove","ALL","UPDATE","canCopy","every","_node$attributes$shar","_node$attributes","JSON","attributes","some","attribute","scope","canDownload","resultToNode","getActionForNodes","MOVE_OR_COPY","MOVE","COPY","handleCopyMoveNodeTo","method","overwrite","NodeStatus","LOADING","actionFinished","text","toast","isHTML","timeout","TOAST_PERMANENT_TIMEOUT","onRemove","_toast","hideToast","createLoadingNotification","copySuffix","currentPath","destinationPath","otherNodes","getDirectoryContents","getUniqueName","suffix","ignoreFileExtension","copyFile","controller","AbortController","CancelablePromise","onCancel","abort","contentsResponse","includeSelf","signal","filename","getContents","hasConflict","moveFile","_error$response","_parser$parseFromStri","parser","DOMParser","message","parseFromString","textContent","AxiosError","_error$response2","_error$response3","_error$response4","status","openFilePickerForAction","promise","withResolvers","fileIDs","getFilePickerBuilder","allowDirectories","setFilter","setMimeTypeFilter","setMultiSelect","startAt","setButtonFactory","buttons","dirnames","label","escape","sanitize","CopyIconSvg","FolderMoveSvg","FilePickerClosed","_node$root","e","displayname","execBatch","promises","dataTransferToFileTree","items","kind","_item$getAsEntry","_item$getAsEntry2","_item$webkitGetAsEntr","getAsEntry","webkitGetAsEntry","warned","fileTree","DataTransferItem","warn","getAsFile","showWarning","onDropExternalFiles","uploadDirectoryContents","relativePath","joinPaths","upload","pause","start","errors","allSettled","onDropInternalFiles","isCopy","useDragAndDropStore","dragging","extend","filesListWidth","_fileListEl$clientWid","fileListEl","clientWidth","$resizeObserver","ResizeObserver","contentRect","width","observe","disconnect","NcBreadcrumbs","NcBreadcrumb","mixins","filesListWidthMixin","draggingStore","filesStore","selectionStore","uploaderStore","dirs","sections","getFileSourceFromPath","getNodeFromSource","exact","getDirDisplayName","disableDrop","isUploadInProgress","wrapUploadProgressBar","viewIcon","_this$currentView$ico","selectedFiles","draggingFiles","_this$currentView2","onClick","_to$query","onDragOver","dataTransfer","ctrlKey","dropEffect","onDrop","_event$dataTransfer","_event$dataTransfer2","_this$currentView3","canDrop","CREATE","button","titleForSection","section","_section$to","ariaForSection","_section$to2","_t","nativeOn","getSummaryFor","fileCount","folderCount","useActionsMenuStore","opened","useRenamingStore","renamingStore","renamingNode","newName","rename","_this$newName$trim","_this$newName","oldName","oldEncodedSource","encodedSource","headers","Destination","Overwrite","$reset","isAxiosError","util","unrefElement","elRef","_a","plain","defaultWindow","useEventListener","cleanups","cleanup","stopWatch","options2","optionsClone","flatMap","register","immediate","flush","stop","_iOSWorkaround","onClickOutside","handler","ignore","capture","detectIframe","from","body","documentElement","shouldListen","shouldIgnore","target2","querySelectorAll","composedPath","passive","activeElement","tagName","contains","vOnClickOutside","binding","modifiers","bubble","__onClickOutside_stop","assign","unmounted","globalThis","global","FileMultipleIcon","FolderIcon","isSingleNode","isSingleFolder","summary","totalSize","total","parseInt","$refs","previewImg","replaceChildren","preview","parentNode","cloneNode","$nextTick","ref","Preview","DragAndDropPreview","directive","getFileActions","NcFile","Node","provide","defaultFileAction","enabledFileActions","loading","dragover","gridMode","currentDir","currentFileId","_this$$route$params","_this$$route$query","_this$source","uniqueId","str","hashCode","isLoading","extension","extname","isSelected","isRenaming","isRenamingSmallScreen","isActive","canDrag","openedMenu","actionsMenuStore","FAILED","resetState","getElementById","style","removeProperty","_this$$refs","_this$$refs$reset","onRightClick","_this$$el2","closest","_this$$el","getBoundingClientRect","setProperty","max","clientX","clientY","top","isMoreThanOneSelected","execDefaultAction","metaKey","openDetailsIfAvailable","_sidebarAction$enable","sidebarAction","onDragLeave","currentTarget","relatedTarget","onDragStart","_event$dataTransfer$c","clearData","image","$mount","$on","$off","getDragAndDropPreview","setDragImage","onDragEnd","_event$dataTransfer3","_event$dataTransfer4","render","updateRootElement","element","ArrowLeftIcon","CustomElementRender","NcActionButton","NcActions","NcActionSeparator","NcLoadingIcon","inject","openedSubmenu","enabledInlineActions","_action$inline","inline","enabledRenderActions","renderInline","enabledMenuActions","DefaultType","HIDDEN","findIndex","topActionsIds","enabledSubmenuActions","arr","getBoundariesElement","mountType","actionDisplayName","onActionClick","isSubmenu","$set","success","isMenu","_this$enabledSubmenuA","onBackToMenuClick","menuAction","_menuAction$$el$query","focus","_vm$openedSubmenu","_vm$openedSubmenu2","_action$title","refInFor","_action$title2","keyboardStore","altKey","shiftKey","onEvent","useKeyboardStore","loadingLabel","ariaLabel","onSelectionChange","_this$keyboardStore","newSelectedIndex","isAlreadySelected","end","filesToSelect","resetSelection","_k","keyCode","useRouteParameters","route","$root","_$route","run","$router","currentRoute","afterEach","useRoute","_route$params$fileid","openFile","openfile","toLocaleLowerCase","getFilenameValidity","validateFilename","InvalidFilenameError","reason","InvalidFilenameErrorReason","Character","char","segment","ReservedName","Extension","NcTextField","renameLabel","linkTo","failed","is","tabindex","renaming","startRenaming","_this$$refs$renameInp","renameInput","validity","checkIfNodeExists","setCustomValidity","reportValidity","_this$$refs$renameInp2","_this$source$extensio","setSelectionRange","dispatchEvent","Event","stopRenaming","onRename","_this$newName$trim2","_this$newName2","renameForm","checkValidity","nameContainter","directives","rawName","expression","tag","domProps","StarSvg","_el$setAttribute","setAttribute","AccountGroupIcon","AccountPlusIcon","CollectivesIcon","FavoriteIcon","FileIcon","FolderOpenIcon","KeyIcon","LinkIcon","NetworkIcon","TagIcon","backgroundFailed","_this$source$toString","isFavorite","favorite","cropPreviews","previewUrl","location","origin","searchParams","href","fileOverlay","PlayCircleIcon","folderOverlay","_this$source2","_this$source3","_this$source4","_this$source5","shareTypes","ShareType","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","src","onBackgroundError","_event$target","_m","FileEntryActions","FileEntryCheckbox","FileEntryName","FileEntryPreview","NcDateTime","FileEntryMixin","isMtimeAvailable","isSizeAvailable","compact","rowListeners","dragstart","contextmenu","dragleave","dragend","drop","columns","sizeOpacity","ratio","round","pow","color","mtimeOpacity","_this$source$mtime","_this$source$mtime$ge","maxOpacityTime","mtime","getTime","getDate","crtime","mtimeTitle","moment","format","_g","column","_vm$currentView","inheritAttrs","header","currentFolder","updated","mount","_this$currentFolder","classForColumn","_column$summary","mapState","sortingMode","_this$getConfig","sorting_mode","defaultSortKey","isAscSorting","_this$getConfig2","toggleSortBy","MenuDown","MenuUp","NcButton","filesSortingMixin","FilesListTableHeaderButton","selectAllBind","checked","isAllSelected","indeterminate","isSomeSelected","selectedNodes","isNoneSelected","ariaSortForMode","onToggleAll","dataComponent","dataKey","dataSources","extraProps","scrollToIndex","caption","beforeHeight","headerHeight","tableHeight","resizeObserver","isReady","bufferItems","columnCount","itemHeight","itemWidth","rowCount","ceil","floor","startIndex","shownItems","renderedItems","oldItemsKeys","$_recycledPool","unusedKeys","pop","random","substr","totalRowCount","tbodyStyle","isOverScrolled","lastIndex","hiddenAfterItems","paddingTop","paddingBottom","minHeight","scrollTo","oldColumnCount","_this$$refs2","before","thead","debounce","_before$clientHeight","_thead$clientHeight","_root$clientHeight","clientHeight","onScroll","targetRow","scrollTop","_this$_onScrollHandle","_onScrollHandle","requestAnimationFrame","topScroll","$scopedSlots","enabledActions","areSomeNodesLoading","inlineActions","selectionSources","failedSources","FilesListHeader","FilesListTableFooter","FilesListTableHeader","VirtualList","FilesListTableHeaderActions","View","FileEntry","FileEntryGrid","getFileListHeaders","openFileId","sortedHeaders","defaultCaption","viewCaption","sortableCaption","virtualListNote","scrollToFile","handleOpenFile","unselectFile","openSidebarForFile","unsubscribe","_this$currentFolder$f","defaultAction","at","types","tableTop","table","tableBottom","height","count","TrayArrowDownIcon","canUpload","isQuotaExceeded","cantUploadLabel","resetDragOver","mainContent","onContentDrop","_event$relatedTarget","_this$$el$querySelect","lastUpload","findLast","_upload$response","UploadStatus","webkitRelativePath","isSharingEnabled","_getCapabilities","getCapabilities","files_sharing","BreadCrumbs","DragAndDropNotice","FilesListVirtual","ListViewIcon","NcAppContent","NcEmptyContent","PlusIcon","UploadPicker","ViewGridIcon","IconAlertCircleOutline","IconReload","filterText","unsubscribeStoreCallback","pageHeading","_this$currentView$nam","_this$$route$params$f","_this$$route2","number","dirContentsSorted","filteredDirContent","dirContents","customColumn","reverse","sortNodes","sortFavoritesFirst","sortFoldersFirst","sortingOrder","_this$userConfigStore","showHidden","_file$attributes","hidden","isEmptyDir","isRefreshing","toPreviousDir","shareAttributes","_this$currentFolder2","_this$currentFolder3","shareButtonLabel","shareButtonType","Link","User","gridViewButtonLabel","_this$currentFolder4","canShare","SHARE","onSearch","searchEvent","_getCapabilities$them","_getCapabilities$them2","theming","productName","resetSearch","fetchContent","newDir","oldDir","_window$OCA$Files$Sid","filesListVirtual","onNodeDeleted","$subscribe","deep","isWebDAVClientError","humanizeWebDAVError","_this$currentFolder5","_this$currentFolder$d","_this$currentFolder6","onUpload","_this$currentFolder7","onUploadFail","_upload$response2","Parser","explicitRoot","parseStringPromise","_this$currentFolder8","openSharingSidebar","toggleGridView","_vm$currentView2","emptyTitle","emptyCaption","NcContent","FilesList","Navigation","__webpack_nonce__","btoa","getRequestToken","_window$OCA$Files","_window$OCP$Files","router","_router","goTo","PiniaVuePlugin","_settings","_defineProperty","_name","_el","_open","_close","FilesApp","___CSS_LOADER_EXPORT___","denyList","code","sax","opt","SAXParser","SAXStream","createStream","MAX_BUFFER_LENGTH","Stream","buffers","clearBuffers","q","c","bufferCheckPosition","lowercase","lowercasetags","looseCase","tags","closed","closedRoot","sawRoot","noscript","S","BEGIN","strictEntities","ENTITIES","XML_ENTITIES","attribList","xmlns","ns","rootNS","trackPosition","position","line","EVENTS","o","F","write","chunk","charAt","BEGIN_WHITESPACE","beginWhiteSpace","TEXT","starti","textNode","substring","isWhitespace","strictFail","TEXT_ENTITY","OPEN_WAKA","startTagPosition","SCRIPT","SCRIPT_ENDING","script","CLOSE_TAG","SGML_DECL","sgmlDecl","isMatch","nameStart","OPEN_TAG","PROC_INST","procInstName","procInstBody","pad","CDATA","emitNode","cdata","COMMENT","comment","DOCTYPE","doctype","isQuote","SGML_DECL_QUOTED","DOCTYPE_DTD","DOCTYPE_QUOTED","DOCTYPE_DTD_QUOTED","COMMENT_ENDING","COMMENT_ENDED","textopts","CDATA_ENDING","CDATA_ENDING_2","PROC_INST_ENDING","PROC_INST_BODY","nameBody","newTag","openTag","OPEN_TAG_SLASH","ATTRIB","closeTag","attribName","attribValue","ATTRIB_NAME","ATTRIB_VALUE","attrib","ATTRIB_NAME_SAW_WHITE","ATTRIB_VALUE_QUOTED","ATTRIB_VALUE_UNQUOTED","ATTRIB_VALUE_ENTITY_Q","ATTRIB_VALUE_CLOSED","isAttribEnd","ATTRIB_VALUE_ENTITY_U","CLOSE_TAG_SAW_WHITE","notMatch","returnState","buffer","unparsedEntities","parsedEntity","parseEntity","entity","entityBody","entityStart","maxAllowed","maxActual","closeText","m","checkBufferLength","resume","ex","streamWraps","ev","_parser","writable","readable","me","onend","onerror","er","_decoder","h","configurable","Buffer","isBuffer","SD","splice","XML_NAMESPACE","XMLNS_NAMESPACE","xml","regex","stringFromCharCode","fromCodePoint","s","STATE","COMMENT_STARTING","fromCharCode","nodeType","normalize","qname","qualName","local","qn","selfClosing","uri","p","nv","isSelfClosing","closeTo","num","entityLC","numStr","highSurrogate","lowSurrogate","codeUnits","codePoint","isFinite","RangeError","setImmediate","registerImmediate","html","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","getPrototypeOf","process","handle","nextTick","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","attachEvent","MessageChannel","port1","port2","createElement","onreadystatechange","removeChild","task","clearImmediate","g","def","d","RC","autostart","ignoreSameProgress","rate","lastTimestamp","lastProgress","historyTimeConstant","previousOutput","dt","report","progress","timestamp","deltaTimestamp","currentRate","estimate","Infinity","estimatedTime","Timeout","clearFn","_id","_clearFn","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","stripBOM","builder","defaults","escapeCDATA","requiresCDATA","wrapCDATA","hasProp","Builder","opts","buildObject","rootObj","attrkey","charkey","rootElement","rootName","_this","obj","attr","raw","txt","ele","up","att","xmldec","headless","allowSurrogateChars","renderOpts","explicitCharkey","normalizeTags","explicitArray","ignoreAttrs","mergeAttrs","validator","explicitChildren","childkey","charsAsChildren","includeWhiteChars","attrNameProcessors","attrValueProcessors","tagNameProcessors","valueProcessors","emptyTag","preserveChildrenOrder","chunkSize","bom","isEmpty","processItem","processors","bind","thing","superClass","parseString","assignOrPush","processAsync","xmlnskey","unshift","ctor","__super__","remaining","saxParser","error1","errThrown","ontext","stack","ended","resultObject","EXPLICIT_CHARKEY","onopentag","processedKey","onclosetag","emptyStr","nodeName","objClone","old","xpath","getOwnPropertyNames","charChild","oncdata","cb","prefixMatch","firstCharLowerCase","stripPrefix","parseFloat","ValidationError","Disconnected","Preceding","Following","Contains","ContainedBy","ImplementationSpecific","Element","Attribute","Text","CData","EntityReference","EntityDeclaration","ProcessingInstruction","Comment","Document","DocType","DocumentFragment","NotationDeclaration","Declaration","Raw","AttributeDeclaration","ElementDeclaration","Dummy","getValue","isFunction","isObject","isPlainObject","val","proto","valueOf","None","OpenTag","InsideTag","CloseTag","NodeType","XMLAttribute","debugInfo","attValue","isId","schemaTypeInfo","clone","writer","filterOptions","isEqualNode","namespaceURI","localName","XMLCharacterData","XMLCData","XMLNode","substringData","offset","appendData","arg","insertData","deleteData","replaceData","XMLComment","XMLDOMErrorHandler","XMLDOMStringList","XMLDOMConfiguration","defaultParams","getParameter","canSetParameter","setParameter","handleError","XMLDOMImplementation","hasFeature","feature","version","createDocumentType","qualifiedName","publicId","systemId","createDocument","createHTMLDocument","getFeature","XMLDTDAttList","elementName","attributeName","attributeType","defaultValueType","defaultValue","dtdAttType","dtdAttDefault","dtdAttList","XMLDTDElement","dtdElementValue","dtdElement","XMLDTDEntity","pe","pubID","sysID","internal","dtdPubID","dtdSysID","nData","dtdNData","dtdEntityValue","dtdEntity","XMLDTDNotation","dtdNotation","XMLDeclaration","encoding","standalone","xmlVersion","xmlEncoding","xmlStandalone","declaration","XMLNamedNodeMap","XMLDocType","ref1","ref2","documentObject","attList","pEntity","notation","docType","ent","pent","not","XMLStringWriter","XMLStringifier","XMLDocument","documentURI","domConfig","rootObject","writerOptions","createDocumentFragment","createTextNode","createComment","createCDATASection","createProcessingInstruction","createAttribute","createEntityReference","getElementsByTagName","tagname","importNode","importedNode","createElementNS","createAttributeNS","getElementsByTagNameNS","elementId","adoptNode","normalizeDocument","renameNode","getElementsByClassName","classNames","createEvent","eventInterface","createRange","createNodeIterator","whatToShow","createTreeWalker","WriterState","XMLElement","XMLProcessingInstruction","XMLRaw","XMLText","XMLDocumentCB","onData","onEnd","onDataCallback","onEndCallback","currentNode","currentLevel","openTags","documentStarted","documentCompleted","createChildNode","attName","attribs","dummy","instruction","openCurrent","oldValidationFlag","noValidation","keepNullAttributes","insTarget","insValue","processingInstruction","rootNodeName","closeNode","openNode","isOpen","indent","endline","isClosed","level","nod","dat","com","ins","dec","dtd","r","XMLDummy","isRoot","attributeMap","clonedSelf","clonedChild","removeAttribute","getAttribute","getAttributeNode","setAttributeNode","newAttr","removeAttributeNode","oldAttr","getAttributeNS","setAttributeNS","removeAttributeNS","getAttributeNodeNS","setAttributeNodeNS","hasAttribute","hasAttributeNS","setIdAttribute","setIdAttributeNS","setIdAttributeNode","idAttr","getNamedItem","setNamedItem","removeNamedItem","getNamedItemNS","setNamedItemNS","removeNamedItemNS","DocumentPosition","XMLNodeList","parent1","baseURI","childNodeList","setParent","childNode","k","lastChild","len1","ref3","ignoreDecorators","convertAttKey","separateArrayItems","keepNullNodes","convertTextKey","convertCDataKey","convertCommentKey","convertRawKey","convertPIKey","insertBefore","newChild","refChild","removed","insertAfter","remove","commentBefore","commentAfter","instructionBefore","instructionAfter","prev","next","importDocument","clonedRoot","u","importXMLBuilder","replaceChild","oldChild","hasChildNodes","isSupported","hasAttributes","compareDocumentPosition","other","res","isAncestor","isDescendant","isPreceding","isSameNode","lookupPrefix","isDefaultNamespace","lookupNamespaceURI","setUserData","getUserData","nodePos","thisPos","treePosition","isFollowing","found","pos","foreachTreeNode","func","XMLWriterBase","XMLStreamWriter","stream","isLastRootNode","writeChildNode","spaceBeforeSlash","childNodeCount","firstChildNode","allowEmpty","pretty","suppressPrettyCount","newline","assertLegalName","assertLegalChar","textEscape","attEscape","ampregex","noDoubleEncoding","previousSibling","nextSibling","splitText","replaceWholeText","content","filteredOptions","ref4","ref5","ref6","dontPrettyTextNodes","dontprettytextnodes","spacebeforeslash","user","indentLevel","openAttribute","closeAttribute","prettySuppressed","begin","stringWriter","streamWriter","implementation","writerState","CancelError","isCanceled","promiseState","freeze","pending","canceled","resolved","rejected","PCancelable","userFunction","executor","description","defineProperties","shouldReject","boolean","onFulfilled","onRejected","onFinally","finally","setPrototypeOf","namespace","isNetworkError","SAFE_HTTP_METHODS","IDEMPOTENT_HTTP_METHODS","isRetryableError","isIdempotentRequestError","config","isNetworkOrIdempotentRequestError","retryAfter","retryAfterHeader","retryAfterMs","exponentialDelay","retryNumber","delayFactor","calculatedDelay","DEFAULT_OPTIONS","retries","retryCondition","retryDelay","_retryNumber","shouldResetTimeout","onRetry","onMaxRetryTimesExceeded","validateResponse","setCurrentState","defaultOptions","resetLastRequestTime","currentState","getRequestOptions","retryCount","lastRequestTime","axiosRetry","axiosInstance","requestInterceptorId","interceptors","request","validateStatus","responseInterceptorId","shouldRetryOrPromise","_err","shouldRetry","agent","httpAgent","httpsAgent","fixConfig","lastRequestDuration","transformRequest","aborted","abortListener","handleRetry","handleMaxRetryTimesExceeded","isSafeRequestError","linearDelay","uploadData","uploadData2","onUploadProgress","destinationFile","Blob","getChunk","getMaxChunksSize","fileSize","maxChunkSize","OC","appConfig","max_chunk_size","minimumChunkSize","Status$1","Status2","Upload","_source","_file","_isChunked","_chunks","_size","_uploaded","_startTime","_status","_controller","_response","chunked","chunks","isChunked","startTime","uploaded","isFileSystemFileEntry","FileSystemFileEntry","isFileSystemEntry","FileSystemEntry","_originalName","_path","Map","sum","latest","originalName","getChild","addChildren","addChild","FileSystemDirectoryEntry","reader","filePath","relPath","gtBuilder","detectLocale","addTranslation","locale","json","gt","ngettext","gettext","Status","Uploader","_destinationFolder","_isPublic","_customHeaders","_uploadQueue","_jobQueue","chunked_upload","max_parallel_count","_queueSize","_queueProgress","_queueStatus","_notifiers","isPublic","destinationFolder","maxChunksSize","customHeaders","structuredClone","setCustomHeader","deleteCustomerHeader","updateStats","upload2","partialSum","addNotifier","notifier","_notifyAll","batchUpload","files2","rootFolder","UPLOADING","uploadDirectory","FINISHED","folderPath","currentUpload","selectedForUpload","directories","fileHandle","encodedDestinationFile","resolve2","disabledChunkUpload","blob","bytes","tempUrl","initChunkWorkspace","chunksQueue","bufferStart","bufferEnd","onIdle","normalizeComponent","scriptExports","render6","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","_compiled","_scopeId","IconCancel","IconFolderUpload","IconPlus","IconUpload","showInvalidFilenameDialog","InvalidFilenameDialog","rest","skip","getConflicts","contentNames","_sfc_main","NcActionCaption","accept","disabled","multiple","noMenu","allowFolders","forbiddenCharacters","progressTimeId","eta","timeLeft","newFileMenuEntries","uploadManager","menuEntriesUpload","category","UploadFromDevice","menuEntriesNew","CreateNew","menuEntriesOther","Other","canUploadFolders","totalQueueSize","uploadedQueueSize","hasFailure","isUploading","isAssembling","ASSEMBLING","isPaused","PAUSED","buttonLabel","buttonName","setDestination","updateStatus","onUploadCompletion","getContent","onTriggerPick","uploadFolders","webkitdirectory","click","onPick","contentsCallback","filesToUpload","resetForm","form","date","setSeconds","time","toISOString","seconds","staticStyle","forceRecreate","_nc_uploader","ConflictPicker","picker","recursiveUpload","submit","$destroy","ToastAriaLive","ToastAriaLive2","TOAST_DEFAULT_TIMEOUT","showMessage","selector","innerHTML","innerText","classes","isNode","ariaLive","POLITE","ASSERTIVE","duration","gravity","backgroundColor","className","escapeMarkup","showToast","spawnDialog","dialog","container","vue","h2","v","__name","severity","__props","handleUnload","__sfc","NcDialog","_sfc_render","_setup","NcNoteCard","_sfc_staticRenderFns","TimeoutError","AbortError","getDOMException","errorMessage","DOMException","getAbortedReason","PriorityQueue","enqueue","priority","array","comparator","first","step","trunc","it","lowerBound","dequeue","shift","carryoverConcurrencyCount","intervalCap","POSITIVE_INFINITY","interval","autoStart","queueClass","throwOnTimeout","canInitializeInterval","job","newConcurrency","_resolve","function_","throwIfAborted","operation","milliseconds","fallback","customTimers","timer","cancelablePromise","sign","timeoutError","pTimeout","race","addAll","functions","onEmpty","onSizeLessThan","limit","sizeBy","Axios","CanceledError","isCancel","CancelToken","VERSION","Cancel","spread","toFormData","AxiosHeaders","HttpStatusCode","formToJSON","getAdapter","mergeConfig","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","O","chunkIds","notFulfilled","fulfilled","getter","__esModule","definition","f","chunkId","prop","done","needAttach","scripts","charset","nc","onScriptComplete","onload","doneFns","head","toStringTag","nmd","scriptUrl","currentScript","installedChunks","installedChunkData","errorType","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
diff --git a/dist/files_sharing-additionalScripts.js b/dist/files_sharing-additionalScripts.js
index 19d7046330c..bd22206ecb0 100644
--- a/dist/files_sharing-additionalScripts.js
+++ b/dist/files_sharing-additionalScripts.js
@@ -1,3 +1,3 @@
/*! For license information please see files_sharing-additionalScripts.js.LICENSE.txt */
-(()=>{var e,a={6651:(e,a,r)=>{"use strict";var i=r(70580),n=r.n(i),s=r(77905),o=r(87485);_.extend(OC.Files.Client,{PROPERTY_SHARE_TYPES:"{"+OC.Files.Client.NS_OWNCLOUD+"}share-types",PROPERTY_OWNER_ID:"{"+OC.Files.Client.NS_OWNCLOUD+"}owner-id",PROPERTY_OWNER_DISPLAY_NAME:"{"+OC.Files.Client.NS_OWNCLOUD+"}owner-display-name"}),OCA.Sharing||(OCA.Sharing={}),OCA.Sharing.Util={_REMOTE_OWNER_REGEXP:new RegExp("^(([^@]*)@(([^@^/\\s]*)@)?)((https://)?[^[\\s/]*)([/](.*))?$"),attach:function(e){var a;if(null!==(a=(0,o.F)().files_sharing)&&void 0!==a&&a.api_enabled&&"trashbin"!==e.id&&"files.public"!==e.id){var r=e.fileActions,i=e._createRow;e._createRow=function(e){var a=i.apply(this,arguments),t=OCA.Sharing.Util.getSharePermissions(e);return 0===e.permissions&&(delete r.actions.all.Comment,delete r.actions.all.Details,delete r.actions.all.Goto),_.isFunction(e.canDownload)&&!e.canDownload()&&(delete r.actions.all.Download,0==(e.permissions&OC.PERMISSION_UPDATE)&&delete r.actions.all.MoveCopy),a.attr("data-share-permissions",t),a.attr("data-share-attributes",JSON.stringify(e.shareAttributes)),e.shareOwner&&(a.attr("data-share-owner",e.shareOwner),a.attr("data-share-owner-id",e.shareOwnerId),"shared-root"===e.mountType&&a.attr("data-permissions",e.permissions|OC.PERMISSION_UPDATE)),e.recipientData&&!_.isEmpty(e.recipientData)&&a.attr("data-share-recipient-data",JSON.stringify(e.recipientData)),e.shareTypes&&a.attr("data-share-types",e.shareTypes.join(",")),a};var n=e.elementToFile;e.elementToFile=function(e){var a=n.apply(this,arguments);if(a.shareAttributes=JSON.parse(e.attr("data-share-attributes")||"[]"),a.sharePermissions=e.attr("data-share-permissions")||void 0,a.shareOwner=e.attr("data-share-owner")||void 0,a.shareOwnerId=e.attr("data-share-owner-id")||void 0,e.attr("data-share-types")&&(a.shareTypes=e.attr("data-share-types").split(",")),e.attr("data-expiration")){var r=parseInt(e.attr("data-expiration"));a.shares=[],a.shares.push({expiration:r})}return a};var l=e._getWebdavProperties;e._getWebdavProperties=function(){var e=l.apply(this,arguments);return e.push(OC.Files.Client.PROPERTY_OWNER_ID),e.push(OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME),e.push(OC.Files.Client.PROPERTY_SHARE_TYPES),e},e.filesClient.addFileInfoParser((function(e){var a={},r=e.propStat[0].properties,t=r[OC.Files.Client.PROPERTY_PERMISSIONS];t&&t.indexOf("S")>=0&&(a.shareOwner=r[OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME],a.shareOwnerId=r[OC.Files.Client.PROPERTY_OWNER_ID]);var i=r[OC.Files.Client.PROPERTY_SHARE_TYPES];return i&&(a.shareTypes=_.chain(i).filter((function(e){return e.namespaceURI===OC.Files.Client.NS_OWNCLOUD&&"share-type"===e.nodeName.split(":")[1]})).map((function(e){return parseInt(e.textContent||e.text,10)})).value()),a})),e.$el.on("fileActionsReady",(function(e){var a=e.$files;_.each(a,(function(e){var a=$(e),r=a.attr("data-share-types")||"",t=a.attr("data-share-owner");if(r||t){var i=!1,n=!1;_.each(r.split(",")||[],(function(e){let a=parseInt(e,10);a===s.Z.SHARE_TYPE_LINK||a===s.Z.SHARE_TYPE_EMAIL?i=!0:(a===s.Z.SHARE_TYPE_USER||a===s.Z.SHARE_TYPE_GROUP||a===s.Z.SHARE_TYPE_REMOTE||a===s.Z.SHARE_TYPE_REMOTE_GROUP||a===s.Z.SHARE_TYPE_CIRCLE||a===s.Z.SHARE_TYPE_ROOM||a===s.Z.SHARE_TYPE_DECK||a===s.Z.SHARE_TYPE_SCIENCEMESH)&&(n=!0)})),OCA.Sharing.Util._updateFileActionIcon(a,n,i)}}))})),e.$el.on("changeDirectory",(function(){OCA.Sharing.sharesLoaded=!1})),r.registerAction({name:"Share",displayName:function(e){if(e&&e.$file){var a=parseInt(e.$file.data("share-types"),10),r=e.$file.data("share-owner-id");if(a>=0||r)return t("files_sharing","Shared")}return t("files_sharing","Share")},altText:t("files_sharing","Share"),mime:"all",order:-150,permissions:OC.PERMISSION_ALL,iconClass:function(e,a){var r=parseInt(a.$file.data("share-types"),10);return r===s.Z.SHARE_TYPE_EMAIL||r===s.Z.SHARE_TYPE_LINK?"icon-public":"icon-shared"},icon:function(e,a){var r=a.$file.data("share-owner-id");if(r)return OC.generateUrl("/avatar/".concat(r,"/32"))},type:OCA.Files.FileActions.TYPE_INLINE,actionHandler:function(a,r){if(e._detailsView){var t=parseInt(r.$file.data("share-permissions"),10);(isNaN(t)||t>0)&&e.showDetailsView(a,"sharing")}},render:function(e,a,t){return 0!=(parseInt(t.$file.data("permissions"),10)&OC.PERMISSION_SHARE)||t.$file.attr("data-share-owner")?r._defaultRenderAction.call(r,e,a,t):null}});var d=new OCA.Sharing.ShareBreadCrumbView;e.registerBreadCrumbDetailView(d)}},_updateFileListDataAttributes:function(e,a,r){if("files"!==e.id)if(_.pluck(r.get("shares"),"share_with_displayname").length){var t=_.mapObject(r.get("shares"),(function(e){return{shareWith:e.share_with,shareWithDisplayName:e.share_with_displayname}}));a.attr("data-share-recipient-data",JSON.stringify(t))}else a.removeAttr("data-share-recipient-data")},_updateFileActionIcon:function(e,a,r){return!!(a||r||e.attr("data-share-recipient-data")||e.attr("data-share-owner"))&&(OCA.Sharing.Util._markFileAsShared(e,!0,r),!0)},_markFileAsShared:function(e,a,r){var i,n,s,o,l=e.find('.fileactions .action[data-action="Share"]'),d=e.data("type"),h=l.find(".icon"),c=e.attr("data-share-owner-id"),p=e.attr("data-share-owner"),u=e.attr("data-mounttype"),f="icon-shared";l.removeClass("shared-style");var m=e.attr("data-e2eencrypted");"dir"===d&&"true"===m?(o=OC.MimeType.getIconUrl("dir-encrypted"),e.attr("data-icon",o)):"dir"===d&&(a||r||c)?(o=void 0!==u&&"shared-root"!==u&&"shared"!==u?OC.MimeType.getIconUrl("dir-"+u):r?OC.MimeType.getIconUrl("dir-public"):OC.MimeType.getIconUrl("dir-shared"),e.find(".filename .thumbnail").css("background-image","url("+o+")"),e.attr("data-icon",o)):"dir"===d&&(u&&0===u.indexOf("external")?(o=OC.MimeType.getIconUrl("dir-external"),e.attr("data-icon",o)):(o=OC.MimeType.getIconUrl("dir"),e.removeAttr("data-icon")),e.find(".filename .thumbnail").css("background-image","url("+o+")")),a||c?(n=e.data("share-recipient-data"),l.addClass("shared-style"),s="<span>"+t("files_sharing","Shared")+"</span>",c?(i=t("files_sharing","Shared by"),s=OCA.Sharing.Util._formatRemoteShare(c,p,i)):n&&(s=OCA.Sharing.Util._formatShareList(n)),l.html(s).prepend(h),(c||n)&&l.find(".avatar").each((function(){$(this).avatar($(this).data("username"),32)}))):l.html('<span class="hidden-visually">'+t("files_sharing","Shared")+"</span>").prepend(h),r&&(f="icon-public"),h.removeClass("icon-shared icon-public").addClass(f)},_formatRemoteShare:function(e,a,r){var t=OCA.Sharing.Util._REMOTE_OWNER_REGEXP.exec(e);if(!t||!t[7])return'<span class="avatar" data-username="'+n()(e)+'" title="'+r+" "+n()(a)+'"></span><span class="hidden-visually">'+r+" "+n()(a)+"</span> ";var i=t[2],s=t[4],o=t[5],l=t[6],d=t[8]?t[7]:"",h=r+" "+i;s&&(h+="@"+s),o&&(h+="@"+o.replace(l,"")+d);var c='<span class="remoteAddress" title="'+n()(h)+'">';return c+='<span class="username">'+n()(i)+"</span>",s&&(c+='<span class="userDomain">@'+n()(s)+"</span>"),c+"</span> "},_formatShareList:function(e){var a=this;return(e=_.toArray(e)).sort((function(e,a){return e.shareWithDisplayName.localeCompare(a.shareWithDisplayName)})),$.map(e,(function(e){return a._formatRemoteShare(e.shareWith,e.shareWithDisplayName,t("files_sharing","Shared with"))}))},markFileAsShared:function(e,a,r){var i,n,s,o,l=e.find('.fileactions .action[data-action="Share"]'),d=e.data("type"),h=l.find(".icon"),c=e.attr("data-share-owner-id"),p=e.attr("data-share-owner"),u=e.attr("data-mounttype"),f="icon-shared";l.removeClass("shared-style"),"dir"===d&&(a||r||c)?(o=void 0!==u&&"shared-root"!==u&&"shared"!==u?OC.MimeType.getIconUrl("dir-"+u):r?OC.MimeType.getIconUrl("dir-public"):OC.MimeType.getIconUrl("dir-shared"),e.find(".filename .thumbnail").css("background-image","url("+o+")"),e.attr("data-icon",o)):"dir"===d&&("true"===e.attr("data-e2eencrypted")?(o=OC.MimeType.getIconUrl("dir-encrypted"),e.attr("data-icon",o)):u&&0===u.indexOf("external")?(o=OC.MimeType.getIconUrl("dir-external"),e.attr("data-icon",o)):(o=OC.MimeType.getIconUrl("dir"),e.removeAttr("data-icon")),e.find(".filename .thumbnail").css("background-image","url("+o+")")),a||c?(n=e.data("share-recipient-data"),l.addClass("shared-style"),s="<span>"+t("files_sharing","Shared")+"</span>",c?(i=t("files_sharing","Shared by"),s=this._formatRemoteShare(c,p,i)):n&&(s=this._formatShareList(n)),l.html(s).prepend(h),(c||n)&&l.find(".avatar").each((function(){$(this).avatar($(this).data("username"),32)}))):l.html('<span class="hidden-visually">'+t("files_sharing","Shared")+"</span>").prepend(h),r&&(f="icon-public"),h.removeClass("icon-shared icon-public").addClass(f)},getSharePermissions:function(e){return e.sharePermissions}},OC.Plugins.register("OCA.Files.FileList",OCA.Sharing.Util),function(){const e=OC.Backbone.View.extend({tagName:"span",events:{click:"_onClick"},_dirInfo:void 0,render(e){if(this._dirInfo=e.dirInfo||null,null===this._dirInfo||"/"===this._dirInfo.path&&""===this._dirInfo.name)this.$el.removeClass("shared icon-public icon-shared"),this.$el.hide();else{const a=e.dirInfo&&e.dirInfo.shareTypes&&e.dirInfo.shareTypes.length>0;this.$el.removeClass("shared icon-public icon-shared"),a?(this.$el.addClass("shared"),-1!==e.dirInfo.shareTypes.indexOf(s.Z.SHARE_TYPE_LINK)?this.$el.addClass("icon-public"):this.$el.addClass("icon-shared")):this.$el.addClass("icon-shared"),this.$el.show(),this.delegateEvents()}return this},_onClick(e){e.preventDefault(),e.stopPropagation();const a=new OCA.Files.FileInfoModel(this._dirInfo),r=this;a.on("change",(function(){r.render({dirInfo:r._dirInfo})}));const t=a.attributes.path+"/"+a.attributes.name;OCA.Files.Sidebar.open(t),OCA.Files.Sidebar.setActiveTab("sharing")}});OCA.Sharing.ShareBreadCrumbView=e}();var l=r(85072),d=r.n(l),h=r(97825),c=r.n(h),p=r(77659),u=r.n(p),f=r(55056),m=r.n(f),O=r(10540),C=r.n(O),A=r(41113),g=r.n(A),S=r(69844),y={};y.styleTagTransform=g(),y.setAttributes=m(),y.insert=u().bind(null,"head"),y.domAPI=c(),y.insertStyleElement=C(),d()(S.A,y),S.A&&S.A.locals&&S.A.locals,r(84033),r.nc=btoa(OC.requestToken),window.OCA.Sharing=OCA.Sharing},84033:(e,a,r)=>{r.nc=btoa(OC.requestToken),window.OCP.Collaboration.registerType("file",{action:()=>new Promise(((e,a)=>{OC.dialogs.filepicker(t("files_sharing","Link to a file"),(function(r){OC.Files.getClient().getFileInfo(r).then(((a,r)=>{e(r.id)})).fail((()=>{a(new Error("Cannot get fileinfo"))}))}),!1,null,!1,OC.dialogs.FILEPICKER_TYPE_CHOOSE,"",{allowDirectoryChooser:!0})})),typeString:t("files_sharing","Link to a file"),typeIconClass:"icon-files-dark"})},69844:(e,a,r)=>{"use strict";r.d(a,{A:()=>o});var t=r(71354),i=r.n(t),n=r(76314),s=r.n(n)()(i());s.push([e.id,"li.crumb span.icon-shared,li.crumb span.icon-public{display:inline-block;cursor:pointer;opacity:.2;margin-right:6px}li.crumb span.icon-shared.shared,li.crumb span.icon-public.shared{opacity:.7}","",{version:3,sources:["webpack://./apps/files_sharing/src/style/sharebreadcrumb.scss"],names:[],mappings:"AAsBA,oDAEC,oBAAA,CACA,cAAA,CACA,UAAA,CACA,gBAAA,CAGD,kEAEC,UAAA",sourcesContent:["/**\n * @copyright 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nli.crumb span.icon-shared,\nli.crumb span.icon-public {\n\tdisplay: inline-block;\n\tcursor: pointer;\n\topacity: 0.2;\n\tmargin-right: 6px;\n}\n\nli.crumb span.icon-shared.shared,\nli.crumb span.icon-public.shared {\n\topacity: 0.7;\n}\n"],sourceRoot:""}]);const o=s}},r={};function i(e){var t=r[e];if(void 0!==t)return t.exports;var n=r[e]={id:e,loaded:!1,exports:{}};return a[e].call(n.exports,n,n.exports,i),n.loaded=!0,n.exports}i.m=a,e=[],i.O=(a,r,t,n)=>{if(!r){var s=1/0;for(h=0;h<e.length;h++){r=e[h][0],t=e[h][1],n=e[h][2];for(var o=!0,l=0;l<r.length;l++)(!1&n||s>=n)&&Object.keys(i.O).every((e=>i.O[e](r[l])))?r.splice(l--,1):(o=!1,n<s&&(s=n));if(o){e.splice(h--,1);var d=t();void 0!==d&&(a=d)}}return a}n=n||0;for(var h=e.length;h>0&&e[h-1][2]>n;h--)e[h]=e[h-1];e[h]=[r,t,n]},i.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return i.d(a,{a}),a},i.d=(e,a)=>{for(var r in a)i.o(a,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:a[r]})},i.e=()=>Promise.resolve(),i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=9643,(()=>{i.b=document.baseURI||self.location.href;var e={9643:0,7541:0};i.O.j=a=>0===e[a];var a=(a,r)=>{var t,n,s=r[0],o=r[1],l=r[2],d=0;if(s.some((a=>0!==e[a]))){for(t in o)i.o(o,t)&&(i.m[t]=o[t]);if(l)var h=l(i)}for(a&&a(r);d<s.length;d++)n=s[d],i.o(e,n)&&e[n]&&e[n][0](),e[n]=0;return i.O(h)},r=self.webpackChunknextcloud=self.webpackChunknextcloud||[];r.forEach(a.bind(null,0)),r.push=a.bind(null,r.push.bind(r))})(),i.nc=void 0;var n=i.O(void 0,[4208],(()=>i(6651)));n=i.O(n)})();
-//# sourceMappingURL=files_sharing-additionalScripts.js.map?v=4d4aa86c08666d584fc4 \ No newline at end of file
+(()=>{var e,a={6651:(e,a,r)=>{"use strict";var i=r(70580),n=r.n(i),s=r(77905),o=r(87485);_.extend(OC.Files.Client,{PROPERTY_SHARE_TYPES:"{"+OC.Files.Client.NS_OWNCLOUD+"}share-types",PROPERTY_OWNER_ID:"{"+OC.Files.Client.NS_OWNCLOUD+"}owner-id",PROPERTY_OWNER_DISPLAY_NAME:"{"+OC.Files.Client.NS_OWNCLOUD+"}owner-display-name"}),OCA.Sharing||(OCA.Sharing={}),OCA.Sharing.Util={_REMOTE_OWNER_REGEXP:new RegExp("^(([^@]*)@(([^@^/\\s]*)@)?)((https://)?[^[\\s/]*)([/](.*))?$"),attach:function(e){var a;if(null!==(a=(0,o.F)().files_sharing)&&void 0!==a&&a.api_enabled&&"trashbin"!==e.id&&"files.public"!==e.id){var r=e.fileActions,i=e._createRow;e._createRow=function(e){var a=i.apply(this,arguments),t=OCA.Sharing.Util.getSharePermissions(e);return 0===e.permissions&&(delete r.actions.all.Comment,delete r.actions.all.Details,delete r.actions.all.Goto),_.isFunction(e.canDownload)&&!e.canDownload()&&(delete r.actions.all.Download,0==(e.permissions&OC.PERMISSION_UPDATE)&&delete r.actions.all.MoveCopy),a.attr("data-share-permissions",t),a.attr("data-share-attributes",JSON.stringify(e.shareAttributes)),e.shareOwner&&(a.attr("data-share-owner",e.shareOwner),a.attr("data-share-owner-id",e.shareOwnerId),"shared-root"===e.mountType&&a.attr("data-permissions",e.permissions|OC.PERMISSION_UPDATE)),e.recipientData&&!_.isEmpty(e.recipientData)&&a.attr("data-share-recipient-data",JSON.stringify(e.recipientData)),e.shareTypes&&a.attr("data-share-types",e.shareTypes.join(",")),a};var n=e.elementToFile;e.elementToFile=function(e){var a=n.apply(this,arguments);if(a.shareAttributes=JSON.parse(e.attr("data-share-attributes")||"[]"),a.sharePermissions=e.attr("data-share-permissions")||void 0,a.shareOwner=e.attr("data-share-owner")||void 0,a.shareOwnerId=e.attr("data-share-owner-id")||void 0,e.attr("data-share-types")&&(a.shareTypes=e.attr("data-share-types").split(",")),e.attr("data-expiration")){var r=parseInt(e.attr("data-expiration"));a.shares=[],a.shares.push({expiration:r})}return a};var l=e._getWebdavProperties;e._getWebdavProperties=function(){var e=l.apply(this,arguments);return e.push(OC.Files.Client.PROPERTY_OWNER_ID),e.push(OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME),e.push(OC.Files.Client.PROPERTY_SHARE_TYPES),e},e.filesClient.addFileInfoParser((function(e){var a={},r=e.propStat[0].properties,t=r[OC.Files.Client.PROPERTY_PERMISSIONS];t&&t.indexOf("S")>=0&&(a.shareOwner=r[OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME],a.shareOwnerId=r[OC.Files.Client.PROPERTY_OWNER_ID]);var i=r[OC.Files.Client.PROPERTY_SHARE_TYPES];return i&&(a.shareTypes=_.chain(i).filter((function(e){return e.namespaceURI===OC.Files.Client.NS_OWNCLOUD&&"share-type"===e.nodeName.split(":")[1]})).map((function(e){return parseInt(e.textContent||e.text,10)})).value()),a})),e.$el.on("fileActionsReady",(function(e){var a=e.$files;_.each(a,(function(e){var a=$(e),r=a.attr("data-share-types")||"",t=a.attr("data-share-owner");if(r||t){var i=!1,n=!1;_.each(r.split(",")||[],(function(e){let a=parseInt(e,10);a===s.I.Link||a===s.I.Email?i=!0:(a===s.I.User||a===s.I.Group||a===s.I.Remote||a===s.I.RemoteGroup||a===s.I.Team||a===s.I.Room||a===s.I.Deck)&&(n=!0)})),OCA.Sharing.Util._updateFileActionIcon(a,n,i)}}))})),e.$el.on("changeDirectory",(function(){OCA.Sharing.sharesLoaded=!1})),r.registerAction({name:"Share",displayName:function(e){if(e&&e.$file){var a=parseInt(e.$file.data("share-types"),10),r=e.$file.data("share-owner-id");if(a>=0||r)return t("files_sharing","Shared")}return t("files_sharing","Share")},altText:t("files_sharing","Share"),mime:"all",order:-150,permissions:OC.PERMISSION_ALL,iconClass:function(e,a){var r=parseInt(a.$file.data("share-types"),10);return r===s.I.Email||r===s.I.Link?"icon-public":"icon-shared"},icon:function(e,a){var r=a.$file.data("share-owner-id");if(r)return OC.generateUrl("/avatar/".concat(r,"/32"))},type:OCA.Files.FileActions.TYPE_INLINE,actionHandler:function(a,r){if(e._detailsView){var t=parseInt(r.$file.data("share-permissions"),10);(isNaN(t)||t>0)&&e.showDetailsView(a,"sharing")}},render:function(e,a,t){return 0!=(parseInt(t.$file.data("permissions"),10)&OC.PERMISSION_SHARE)||t.$file.attr("data-share-owner")?r._defaultRenderAction.call(r,e,a,t):null}});var d=new OCA.Sharing.ShareBreadCrumbView;e.registerBreadCrumbDetailView(d)}},_updateFileListDataAttributes:function(e,a,r){if("files"!==e.id)if(_.pluck(r.get("shares"),"share_with_displayname").length){var t=_.mapObject(r.get("shares"),(function(e){return{shareWith:e.share_with,shareWithDisplayName:e.share_with_displayname}}));a.attr("data-share-recipient-data",JSON.stringify(t))}else a.removeAttr("data-share-recipient-data")},_updateFileActionIcon:function(e,a,r){return!!(a||r||e.attr("data-share-recipient-data")||e.attr("data-share-owner"))&&(OCA.Sharing.Util._markFileAsShared(e,!0,r),!0)},_markFileAsShared:function(e,a,r){var i,n,s,o,l=e.find('.fileactions .action[data-action="Share"]'),d=e.data("type"),h=l.find(".icon"),c=e.attr("data-share-owner-id"),p=e.attr("data-share-owner"),u=e.attr("data-mounttype"),f="icon-shared";l.removeClass("shared-style");var m=e.attr("data-e2eencrypted");"dir"===d&&"true"===m?(o=OC.MimeType.getIconUrl("dir-encrypted"),e.attr("data-icon",o)):"dir"===d&&(a||r||c)?(o=void 0!==u&&"shared-root"!==u&&"shared"!==u?OC.MimeType.getIconUrl("dir-"+u):r?OC.MimeType.getIconUrl("dir-public"):OC.MimeType.getIconUrl("dir-shared"),e.find(".filename .thumbnail").css("background-image","url("+o+")"),e.attr("data-icon",o)):"dir"===d&&(u&&0===u.indexOf("external")?(o=OC.MimeType.getIconUrl("dir-external"),e.attr("data-icon",o)):(o=OC.MimeType.getIconUrl("dir"),e.removeAttr("data-icon")),e.find(".filename .thumbnail").css("background-image","url("+o+")")),a||c?(n=e.data("share-recipient-data"),l.addClass("shared-style"),s="<span>"+t("files_sharing","Shared")+"</span>",c?(i=t("files_sharing","Shared by"),s=OCA.Sharing.Util._formatRemoteShare(c,p,i)):n&&(s=OCA.Sharing.Util._formatShareList(n)),l.html(s).prepend(h),(c||n)&&l.find(".avatar").each((function(){$(this).avatar($(this).data("username"),32)}))):l.html('<span class="hidden-visually">'+t("files_sharing","Shared")+"</span>").prepend(h),r&&(f="icon-public"),h.removeClass("icon-shared icon-public").addClass(f)},_formatRemoteShare:function(e,a,r){var t=OCA.Sharing.Util._REMOTE_OWNER_REGEXP.exec(e);if(!t||!t[7])return'<span class="avatar" data-username="'+n()(e)+'" title="'+r+" "+n()(a)+'"></span><span class="hidden-visually">'+r+" "+n()(a)+"</span> ";var i=t[2],s=t[4],o=t[5],l=t[6],d=t[8]?t[7]:"",h=r+" "+i;s&&(h+="@"+s),o&&(h+="@"+o.replace(l,"")+d);var c='<span class="remoteAddress" title="'+n()(h)+'">';return c+='<span class="username">'+n()(i)+"</span>",s&&(c+='<span class="userDomain">@'+n()(s)+"</span>"),c+"</span> "},_formatShareList:function(e){var a=this;return(e=_.toArray(e)).sort((function(e,a){return e.shareWithDisplayName.localeCompare(a.shareWithDisplayName)})),$.map(e,(function(e){return a._formatRemoteShare(e.shareWith,e.shareWithDisplayName,t("files_sharing","Shared with"))}))},markFileAsShared:function(e,a,r){var i,n,s,o,l=e.find('.fileactions .action[data-action="Share"]'),d=e.data("type"),h=l.find(".icon"),c=e.attr("data-share-owner-id"),p=e.attr("data-share-owner"),u=e.attr("data-mounttype"),f="icon-shared";l.removeClass("shared-style"),"dir"===d&&(a||r||c)?(o=void 0!==u&&"shared-root"!==u&&"shared"!==u?OC.MimeType.getIconUrl("dir-"+u):r?OC.MimeType.getIconUrl("dir-public"):OC.MimeType.getIconUrl("dir-shared"),e.find(".filename .thumbnail").css("background-image","url("+o+")"),e.attr("data-icon",o)):"dir"===d&&("true"===e.attr("data-e2eencrypted")?(o=OC.MimeType.getIconUrl("dir-encrypted"),e.attr("data-icon",o)):u&&0===u.indexOf("external")?(o=OC.MimeType.getIconUrl("dir-external"),e.attr("data-icon",o)):(o=OC.MimeType.getIconUrl("dir"),e.removeAttr("data-icon")),e.find(".filename .thumbnail").css("background-image","url("+o+")")),a||c?(n=e.data("share-recipient-data"),l.addClass("shared-style"),s="<span>"+t("files_sharing","Shared")+"</span>",c?(i=t("files_sharing","Shared by"),s=this._formatRemoteShare(c,p,i)):n&&(s=this._formatShareList(n)),l.html(s).prepend(h),(c||n)&&l.find(".avatar").each((function(){$(this).avatar($(this).data("username"),32)}))):l.html('<span class="hidden-visually">'+t("files_sharing","Shared")+"</span>").prepend(h),r&&(f="icon-public"),h.removeClass("icon-shared icon-public").addClass(f)},getSharePermissions:function(e){return e.sharePermissions}},OC.Plugins.register("OCA.Files.FileList",OCA.Sharing.Util),function(){const e=OC.Backbone.View.extend({tagName:"span",events:{click:"_onClick"},_dirInfo:void 0,render(e){if(this._dirInfo=e.dirInfo||null,null===this._dirInfo||"/"===this._dirInfo.path&&""===this._dirInfo.name)this.$el.removeClass("shared icon-public icon-shared"),this.$el.hide();else{const a=e.dirInfo&&e.dirInfo.shareTypes&&e.dirInfo.shareTypes.length>0;this.$el.removeClass("shared icon-public icon-shared"),a?(this.$el.addClass("shared"),-1!==e.dirInfo.shareTypes.indexOf(s.I.Link)?this.$el.addClass("icon-public"):this.$el.addClass("icon-shared")):this.$el.addClass("icon-shared"),this.$el.show(),this.delegateEvents()}return this},_onClick(e){e.preventDefault(),e.stopPropagation();const a=new OCA.Files.FileInfoModel(this._dirInfo),r=this;a.on("change",(function(){r.render({dirInfo:r._dirInfo})}));const t=a.attributes.path+"/"+a.attributes.name;OCA.Files.Sidebar.open(t),OCA.Files.Sidebar.setActiveTab("sharing")}});OCA.Sharing.ShareBreadCrumbView=e}();var l=r(85072),d=r.n(l),h=r(97825),c=r.n(h),p=r(77659),u=r.n(p),f=r(55056),m=r.n(f),O=r(10540),C=r.n(O),g=r(41113),y=r.n(g),A=r(69844),v={};v.styleTagTransform=y(),v.setAttributes=m(),v.insert=u().bind(null,"head"),v.domAPI=c(),v.insertStyleElement=C(),d()(A.A,v),A.A&&A.A.locals&&A.A.locals,r(84033),r.nc=btoa(OC.requestToken),window.OCA.Sharing=OCA.Sharing},84033:(e,a,r)=>{r.nc=btoa(OC.requestToken),window.OCP.Collaboration.registerType("file",{action:()=>new Promise(((e,a)=>{OC.dialogs.filepicker(t("files_sharing","Link to a file"),(function(r){OC.Files.getClient().getFileInfo(r).then(((a,r)=>{e(r.id)})).fail((()=>{a(new Error("Cannot get fileinfo"))}))}),!1,null,!1,OC.dialogs.FILEPICKER_TYPE_CHOOSE,"",{allowDirectoryChooser:!0})})),typeString:t("files_sharing","Link to a file"),typeIconClass:"icon-files-dark"})},69844:(e,a,r)=>{"use strict";r.d(a,{A:()=>o});var t=r(71354),i=r.n(t),n=r(76314),s=r.n(n)()(i());s.push([e.id,"li.crumb span.icon-shared,li.crumb span.icon-public{display:inline-block;cursor:pointer;opacity:.2;margin-right:6px}li.crumb span.icon-shared.shared,li.crumb span.icon-public.shared{opacity:.7}","",{version:3,sources:["webpack://./apps/files_sharing/src/style/sharebreadcrumb.scss"],names:[],mappings:"AAsBA,oDAEC,oBAAA,CACA,cAAA,CACA,UAAA,CACA,gBAAA,CAGD,kEAEC,UAAA",sourcesContent:["/**\n * @copyright 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nli.crumb span.icon-shared,\nli.crumb span.icon-public {\n\tdisplay: inline-block;\n\tcursor: pointer;\n\topacity: 0.2;\n\tmargin-right: 6px;\n}\n\nli.crumb span.icon-shared.shared,\nli.crumb span.icon-public.shared {\n\topacity: 0.7;\n}\n"],sourceRoot:""}]);const o=s}},r={};function i(e){var t=r[e];if(void 0!==t)return t.exports;var n=r[e]={id:e,loaded:!1,exports:{}};return a[e].call(n.exports,n,n.exports,i),n.loaded=!0,n.exports}i.m=a,e=[],i.O=(a,r,t,n)=>{if(!r){var s=1/0;for(h=0;h<e.length;h++){r=e[h][0],t=e[h][1],n=e[h][2];for(var o=!0,l=0;l<r.length;l++)(!1&n||s>=n)&&Object.keys(i.O).every((e=>i.O[e](r[l])))?r.splice(l--,1):(o=!1,n<s&&(s=n));if(o){e.splice(h--,1);var d=t();void 0!==d&&(a=d)}}return a}n=n||0;for(var h=e.length;h>0&&e[h-1][2]>n;h--)e[h]=e[h-1];e[h]=[r,t,n]},i.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return i.d(a,{a}),a},i.d=(e,a)=>{for(var r in a)i.o(a,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:a[r]})},i.e=()=>Promise.resolve(),i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),i.j=9643,(()=>{i.b=document.baseURI||self.location.href;var e={9643:0,7541:0};i.O.j=a=>0===e[a];var a=(a,r)=>{var t,n,s=r[0],o=r[1],l=r[2],d=0;if(s.some((a=>0!==e[a]))){for(t in o)i.o(o,t)&&(i.m[t]=o[t]);if(l)var h=l(i)}for(a&&a(r);d<s.length;d++)n=s[d],i.o(e,n)&&e[n]&&e[n][0](),e[n]=0;return i.O(h)},r=self.webpackChunknextcloud=self.webpackChunknextcloud||[];r.forEach(a.bind(null,0)),r.push=a.bind(null,r.push.bind(r))})(),i.nc=void 0;var n=i.O(void 0,[4208],(()=>i(6651)));n=i.O(n)})();
+//# sourceMappingURL=files_sharing-additionalScripts.js.map?v=26d016e9d55c725760ce \ No newline at end of file
diff --git a/dist/files_sharing-additionalScripts.js.map b/dist/files_sharing-additionalScripts.js.map
index 542d5f72a6f..1b38c7f62c2 100644
--- a/dist/files_sharing-additionalScripts.js.map
+++ b/dist/files_sharing-additionalScripts.js.map
@@ -1 +1 @@
-{"version":3,"file":"files_sharing-additionalScripts.js?v=4d4aa86c08666d584fc4","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/files_sharing/src/share.js","webpack:///nextcloud/apps/files_sharing/src/sharebreadcrumbview.js","webpack://nextcloud/./apps/files_sharing/src/style/sharebreadcrumb.scss?a9a3","webpack:///nextcloud/apps/files_sharing/src/additionalScripts.js","webpack:///nextcloud/apps/files_sharing/src/collaborationresourceshandler.js","webpack:///nextcloud/apps/files_sharing/src/style/sharebreadcrumb.scss","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/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/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (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((key) => (__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};","/**\n * Copyright (c) 2014\n *\n * @author Arthur Schiwon <blizzz@arthur-schiwon.de>\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Maxence Lange <maxence@nextcloud.com>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author Michael Jobst <mjobst@necls.com>\n * @author Morris Jobke <hey@morrisjobke.de>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Samuel <faust64@gmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport escapeHTML from 'escape-html'\n\nimport { Type as ShareTypes } from '@nextcloud/sharing'\nimport { getCapabilities } from '@nextcloud/capabilities'\n\n(function() {\n\n\t_.extend(OC.Files.Client, {\n\t\tPROPERTY_SHARE_TYPES:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}share-types',\n\t\tPROPERTY_OWNER_ID:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}owner-id',\n\t\tPROPERTY_OWNER_DISPLAY_NAME:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}owner-display-name'\n\t})\n\n\tif (!OCA.Sharing) {\n\t\tOCA.Sharing = {}\n\t}\n\n\t/**\n\t * @namespace\n\t */\n\tOCA.Sharing.Util = {\n\n\t\t/**\n\t\t * Regular expression for splitting parts of remote share owners:\n\t\t * \"user@example.com/\"\n\t\t * \"user@example.com/path/to/owncloud\"\n\t\t * \"user@anotherexample.com@example.com/path/to/owncloud\n\t\t */\n\t\t_REMOTE_OWNER_REGEXP: new RegExp('^(([^@]*)@(([^@^/\\\\s]*)@)?)((https://)?[^[\\\\s/]*)([/](.*))?$'),\n\n\t\t/**\n\t\t * Initialize the sharing plugin.\n\t\t *\n\t\t * Registers the \"Share\" file action and adds additional\n\t\t * DOM attributes for the sharing file info.\n\t\t *\n\t\t * @param {OCA.Files.FileList} fileList file list to be extended\n\t\t */\n\t\tattach: function(fileList) {\n\t\t\t// core sharing is disabled/not loaded\n\t\t\tif (!getCapabilities().files_sharing?.api_enabled) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tif (fileList.id === 'trashbin' || fileList.id === 'files.public') {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tvar fileActions = fileList.fileActions\n\t\t\tvar oldCreateRow = fileList._createRow\n\t\t\tfileList._createRow = function(fileData) {\n\n\t\t\t\tvar tr = oldCreateRow.apply(this, arguments)\n\t\t\t\tvar sharePermissions = OCA.Sharing.Util.getSharePermissions(fileData)\n\n\t\t\t\tif (fileData.permissions === 0) {\n\t\t\t\t\t// no permission, disabling sidebar\n\t\t\t\t\tdelete fileActions.actions.all.Comment\n\t\t\t\t\tdelete fileActions.actions.all.Details\n\t\t\t\t\tdelete fileActions.actions.all.Goto\n\t\t\t\t}\n\t\t\t\tif (_.isFunction(fileData.canDownload) && !fileData.canDownload()) {\n\t\t\t\t\tdelete fileActions.actions.all.Download\n\t\t\t\t\tif ((fileData.permissions & OC.PERMISSION_UPDATE) === 0) {\n\t\t\t\t\t\t// neither move nor copy is allowed, remove the action completely\n\t\t\t\t\t\tdelete fileActions.actions.all.MoveCopy\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ttr.attr('data-share-permissions', sharePermissions)\n\t\t\t\ttr.attr('data-share-attributes', JSON.stringify(fileData.shareAttributes))\n\t\t\t\tif (fileData.shareOwner) {\n\t\t\t\t\ttr.attr('data-share-owner', fileData.shareOwner)\n\t\t\t\t\ttr.attr('data-share-owner-id', fileData.shareOwnerId)\n\t\t\t\t\t// user should always be able to rename a mount point\n\t\t\t\t\tif (fileData.mountType === 'shared-root') {\n\t\t\t\t\t\ttr.attr('data-permissions', fileData.permissions | OC.PERMISSION_UPDATE)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (fileData.recipientData && !_.isEmpty(fileData.recipientData)) {\n\t\t\t\t\ttr.attr('data-share-recipient-data', JSON.stringify(fileData.recipientData))\n\t\t\t\t}\n\t\t\t\tif (fileData.shareTypes) {\n\t\t\t\t\ttr.attr('data-share-types', fileData.shareTypes.join(','))\n\t\t\t\t}\n\t\t\t\treturn tr\n\t\t\t}\n\n\t\t\tvar oldElementToFile = fileList.elementToFile\n\t\t\tfileList.elementToFile = function($el) {\n\t\t\t\tvar fileInfo = oldElementToFile.apply(this, arguments)\n\t\t\t\tfileInfo.shareAttributes = JSON.parse($el.attr('data-share-attributes') || '[]')\n\t\t\t\tfileInfo.sharePermissions = $el.attr('data-share-permissions') || undefined\n\t\t\t\tfileInfo.shareOwner = $el.attr('data-share-owner') || undefined\n\t\t\t\tfileInfo.shareOwnerId = $el.attr('data-share-owner-id') || undefined\n\n\t\t\t\tif ($el.attr('data-share-types')) {\n\t\t\t\t\tfileInfo.shareTypes = $el.attr('data-share-types').split(',')\n\t\t\t\t}\n\n\t\t\t\tif ($el.attr('data-expiration')) {\n\t\t\t\t\tvar expirationTimestamp = parseInt($el.attr('data-expiration'))\n\t\t\t\t\tfileInfo.shares = []\n\t\t\t\t\tfileInfo.shares.push({ expiration: expirationTimestamp })\n\t\t\t\t}\n\n\t\t\t\treturn fileInfo\n\t\t\t}\n\n\t\t\tvar oldGetWebdavProperties = fileList._getWebdavProperties\n\t\t\tfileList._getWebdavProperties = function() {\n\t\t\t\tvar props = oldGetWebdavProperties.apply(this, arguments)\n\t\t\t\tprops.push(OC.Files.Client.PROPERTY_OWNER_ID)\n\t\t\t\tprops.push(OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME)\n\t\t\t\tprops.push(OC.Files.Client.PROPERTY_SHARE_TYPES)\n\t\t\t\treturn props\n\t\t\t}\n\n\t\t\tfileList.filesClient.addFileInfoParser(function(response) {\n\t\t\t\tvar data = {}\n\t\t\t\tvar props = response.propStat[0].properties\n\t\t\t\tvar permissionsProp = props[OC.Files.Client.PROPERTY_PERMISSIONS]\n\n\t\t\t\tif (permissionsProp && permissionsProp.indexOf('S') >= 0) {\n\t\t\t\t\tdata.shareOwner = props[OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME]\n\t\t\t\t\tdata.shareOwnerId = props[OC.Files.Client.PROPERTY_OWNER_ID]\n\t\t\t\t}\n\n\t\t\t\tvar shareTypesProp = props[OC.Files.Client.PROPERTY_SHARE_TYPES]\n\t\t\t\tif (shareTypesProp) {\n\t\t\t\t\tdata.shareTypes = _.chain(shareTypesProp).filter(function(xmlvalue) {\n\t\t\t\t\t\treturn (xmlvalue.namespaceURI === OC.Files.Client.NS_OWNCLOUD && xmlvalue.nodeName.split(':')[1] === 'share-type')\n\t\t\t\t\t}).map(function(xmlvalue) {\n\t\t\t\t\t\treturn parseInt(xmlvalue.textContent || xmlvalue.text, 10)\n\t\t\t\t\t}).value()\n\t\t\t\t}\n\n\t\t\t\treturn data\n\t\t\t})\n\n\t\t\t// use delegate to catch the case with multiple file lists\n\t\t\tfileList.$el.on('fileActionsReady', function(ev) {\n\t\t\t\tvar $files = ev.$files\n\n\t\t\t\t_.each($files, function(file) {\n\t\t\t\t\tvar $tr = $(file)\n\t\t\t\t\tvar shareTypesStr = $tr.attr('data-share-types') || ''\n\t\t\t\t\tvar shareOwner = $tr.attr('data-share-owner')\n\t\t\t\t\tif (shareTypesStr || shareOwner) {\n\t\t\t\t\t\tvar hasLink = false\n\t\t\t\t\t\tvar hasShares = false\n\t\t\t\t\t\t_.each(shareTypesStr.split(',') || [], function(shareTypeStr) {\n\t\t\t\t\t\t\tlet shareType = parseInt(shareTypeStr, 10)\n\t\t\t\t\t\t\tif (shareType === ShareTypes.SHARE_TYPE_LINK) {\n\t\t\t\t\t\t\t\thasLink = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_EMAIL) {\n\t\t\t\t\t\t\t\thasLink = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_USER) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_GROUP) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_REMOTE) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_REMOTE_GROUP) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_CIRCLE) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_ROOM) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_DECK) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareTypes.SHARE_TYPE_SCIENCEMESH) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\tOCA.Sharing.Util._updateFileActionIcon($tr, hasShares, hasLink)\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\n\t\t\tfileList.$el.on('changeDirectory', function() {\n\t\t\t\tOCA.Sharing.sharesLoaded = false\n\t\t\t})\n\n\t\t\tfileActions.registerAction({\n\t\t\t\tname: 'Share',\n\t\t\t\tdisplayName: function(context) {\n\t\t\t\t\tif (context && context.$file) {\n\t\t\t\t\t\tvar shareType = parseInt(context.$file.data('share-types'), 10)\n\t\t\t\t\t\tvar shareOwner = context.$file.data('share-owner-id')\n\t\t\t\t\t\tif (shareType >= 0 || shareOwner) {\n\t\t\t\t\t\t\treturn t('files_sharing', 'Shared')\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn t('files_sharing', 'Share')\n\t\t\t\t},\n\t\t\t\taltText: t('files_sharing', 'Share'),\n\t\t\t\tmime: 'all',\n\t\t\t\torder: -150,\n\t\t\t\tpermissions: OC.PERMISSION_ALL,\n\t\t\t\ticonClass: function(fileName, context) {\n\t\t\t\t\tvar shareType = parseInt(context.$file.data('share-types'), 10)\n\t\t\t\t\tif (shareType === ShareTypes.SHARE_TYPE_EMAIL\n\t\t\t\t\t\t|| shareType === ShareTypes.SHARE_TYPE_LINK) {\n\t\t\t\t\t\treturn 'icon-public'\n\t\t\t\t\t}\n\t\t\t\t\treturn 'icon-shared'\n\t\t\t\t},\n\t\t\t\ticon: function(fileName, context) {\n\t\t\t\t\tvar shareOwner = context.$file.data('share-owner-id')\n\t\t\t\t\tif (shareOwner) {\n\t\t\t\t\t\treturn OC.generateUrl(`/avatar/${shareOwner}/32`)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttype: OCA.Files.FileActions.TYPE_INLINE,\n\t\t\t\tactionHandler: function(fileName, context) {\n\t\t\t\t\t// details view disabled in some share lists\n\t\t\t\t\tif (!fileList._detailsView) {\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\t// do not open sidebar if permission is set and equal to 0\n\t\t\t\t\tvar permissions = parseInt(context.$file.data('share-permissions'), 10)\n\t\t\t\t\tif (isNaN(permissions) || permissions > 0) {\n\t\t\t\t\t\tfileList.showDetailsView(fileName, 'sharing')\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\trender: function(actionSpec, isDefault, context) {\n\t\t\t\t\tvar permissions = parseInt(context.$file.data('permissions'), 10)\n\t\t\t\t\t// if no share permissions but share owner exists, still show the link\n\t\t\t\t\tif ((permissions & OC.PERMISSION_SHARE) !== 0 || context.$file.attr('data-share-owner')) {\n\t\t\t\t\t\treturn fileActions._defaultRenderAction.call(fileActions, actionSpec, isDefault, context)\n\t\t\t\t\t}\n\t\t\t\t\t// don't render anything\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t// register share breadcrumbs component\n\t\t\tvar breadCrumbSharingDetailView = new OCA.Sharing.ShareBreadCrumbView()\n\t\t\tfileList.registerBreadCrumbDetailView(breadCrumbSharingDetailView)\n\t\t},\n\n\t\t/**\n\t\t * Update file list data attributes\n\t\t */\n\t\t_updateFileListDataAttributes: function(fileList, $tr, shareModel) {\n\t\t\t// files app current cannot show recipients on load, so we don't update the\n\t\t\t// icon when changed for consistency\n\t\t\tif (fileList.id === 'files') {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tvar recipients = _.pluck(shareModel.get('shares'), 'share_with_displayname')\n\t\t\t// note: we only update the data attribute because updateIcon()\n\t\t\tif (recipients.length) {\n\t\t\t\tvar recipientData = _.mapObject(shareModel.get('shares'), function(share) {\n\t\t\t\t\treturn { shareWith: share.share_with, shareWithDisplayName: share.share_with_displayname }\n\t\t\t\t})\n\t\t\t\t$tr.attr('data-share-recipient-data', JSON.stringify(recipientData))\n\t\t\t} else {\n\t\t\t\t$tr.removeAttr('data-share-recipient-data')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update the file action share icon for the given file\n\t\t *\n\t\t * @param $tr file element of the file to update\n\t\t * @param {boolean} hasUserShares true if a user share exists\n\t\t * @param {boolean} hasLinkShares true if a link share exists\n\t\t *\n\t\t * @returns {boolean} true if the icon was set, false otherwise\n\t\t */\n\t\t_updateFileActionIcon: function($tr, hasUserShares, hasLinkShares) {\n\t\t\t// if the statuses are loaded already, use them for the icon\n\t\t\t// (needed when scrolling to the next page)\n\t\t\tif (hasUserShares || hasLinkShares || $tr.attr('data-share-recipient-data') || $tr.attr('data-share-owner')) {\n\t\t\t\tOCA.Sharing.Util._markFileAsShared($tr, true, hasLinkShares)\n\t\t\t\treturn true\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\n\t\t/**\n\t\t * Marks/unmarks a given file as shared by changing its action icon\n\t\t * and folder icon.\n\t\t *\n\t\t * @param $tr file element to mark as shared\n\t\t * @param hasShares whether shares are available\n\t\t * @param hasLink whether link share is available\n\t\t */\n\t\t_markFileAsShared: function($tr, hasShares, hasLink) {\n\t\t\tvar action = $tr.find('.fileactions .action[data-action=\"Share\"]')\n\t\t\tvar type = $tr.data('type')\n\t\t\tvar icon = action.find('.icon')\n\t\t\tvar message, recipients, avatars\n\t\t\tvar ownerId = $tr.attr('data-share-owner-id')\n\t\t\tvar owner = $tr.attr('data-share-owner')\n\t\t\tvar mountType = $tr.attr('data-mounttype')\n\t\t\tvar shareFolderIcon\n\t\t\tvar iconClass = 'icon-shared'\n\t\t\taction.removeClass('shared-style')\n\t\t\t// update folder icon\n\t\t\tvar isEncrypted = $tr.attr('data-e2eencrypted')\n\t\t\tif (type === 'dir' && isEncrypted === 'true') {\n\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-encrypted')\n\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t} else if (type === 'dir' && (hasShares || hasLink || ownerId)) {\n\t\t\t\tif (typeof mountType !== 'undefined' && mountType !== 'shared-root' && mountType !== 'shared') {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-' + mountType)\n\t\t\t\t} else if (hasLink) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-public')\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-shared')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t} else if (type === 'dir') {\n\t\t\t\t// FIXME: duplicate of FileList._createRow logic for external folder,\n\t\t\t\t// need to refactor the icon logic into a single code path eventually\n\t\t\t\tif (mountType && mountType.indexOf('external') === 0) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-external')\n\t\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir')\n\t\t\t\t\t// back to default\n\t\t\t\t\t$tr.removeAttr('data-icon')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t}\n\t\t\t// update share action text / icon\n\t\t\tif (hasShares || ownerId) {\n\t\t\t\trecipients = $tr.data('share-recipient-data')\n\t\t\t\taction.addClass('shared-style')\n\n\t\t\t\tavatars = '<span>' + t('files_sharing', 'Shared') + '</span>'\n\t\t\t\t// even if reshared, only show \"Shared by\"\n\t\t\t\tif (ownerId) {\n\t\t\t\t\tmessage = t('files_sharing', 'Shared by')\n\t\t\t\t\tavatars = OCA.Sharing.Util._formatRemoteShare(ownerId, owner, message)\n\t\t\t\t} else if (recipients) {\n\t\t\t\t\tavatars = OCA.Sharing.Util._formatShareList(recipients)\n\t\t\t\t}\n\t\t\t\taction.html(avatars).prepend(icon)\n\n\t\t\t\tif (ownerId || recipients) {\n\t\t\t\t\tvar avatarElement = action.find('.avatar')\n\t\t\t\t\tavatarElement.each(function() {\n\t\t\t\t\t\t$(this).avatar($(this).data('username'), 32)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\taction.html('<span class=\"hidden-visually\">' + t('files_sharing', 'Shared') + '</span>').prepend(icon)\n\t\t\t}\n\t\t\tif (hasLink) {\n\t\t\t\ticonClass = 'icon-public'\n\t\t\t}\n\t\t\ticon.removeClass('icon-shared icon-public').addClass(iconClass)\n\t\t},\n\t\t/**\n\t\t * Format a remote address\n\t\t *\n\t\t * @param {String} shareWith userid, full remote share, or whatever\n\t\t * @param {String} shareWithDisplayName\n\t\t * @param {String} message\n\t\t * @returns {String} HTML code to display\n\t\t */\n\t\t_formatRemoteShare: function(shareWith, shareWithDisplayName, message) {\n\t\t\tvar parts = OCA.Sharing.Util._REMOTE_OWNER_REGEXP.exec(shareWith)\n\t\t\tif (!parts || !parts[7]) {\n\t\t\t\t// display avatar of the user\n\t\t\t\tvar avatar = '<span class=\"avatar\" data-username=\"' + escapeHTML(shareWith) + '\" title=\"' + message + ' ' + escapeHTML(shareWithDisplayName) + '\"></span>'\n\t\t\t\tvar hidden = '<span class=\"hidden-visually\">' + message + ' ' + escapeHTML(shareWithDisplayName) + '</span> '\n\t\t\t\treturn avatar + hidden\n\t\t\t}\n\n\t\t\tvar userName = parts[2]\n\t\t\tvar userDomain = parts[4]\n\t\t\tvar server = parts[5]\n\t\t\tvar protocol = parts[6]\n\t\t\tvar serverPath = parts[8] ? parts[7] : ''; // no trailing slash on root\n\n\t\t\tvar tooltip = message + ' ' + userName\n\t\t\tif (userDomain) {\n\t\t\t\ttooltip += '@' + userDomain\n\t\t\t}\n\t\t\tif (server) {\n\t\t\t\ttooltip += '@' + server.replace(protocol, '') + serverPath\n\t\t\t}\n\n\t\t\tvar html = '<span class=\"remoteAddress\" title=\"' + escapeHTML(tooltip) + '\">'\n\t\t\thtml += '<span class=\"username\">' + escapeHTML(userName) + '</span>'\n\t\t\tif (userDomain) {\n\t\t\t\thtml += '<span class=\"userDomain\">@' + escapeHTML(userDomain) + '</span>'\n\t\t\t}\n\t\t\thtml += '</span> '\n\t\t\treturn html\n\t\t},\n\t\t/**\n\t\t * Loop over all recipients in the list and format them using\n\t\t * all kind of fancy magic.\n\t\t *\n\t\t* @param {Object} recipients array of all the recipients\n\t\t* @returns {String[]} modified list of recipients\n\t\t*/\n\t\t_formatShareList: function(recipients) {\n\t\t\tvar _parent = this\n\t\t\trecipients = _.toArray(recipients)\n\t\t\trecipients.sort(function(a, b) {\n\t\t\t\treturn a.shareWithDisplayName.localeCompare(b.shareWithDisplayName)\n\t\t\t})\n\t\t\treturn $.map(recipients, function(recipient) {\n\t\t\t\treturn _parent._formatRemoteShare(recipient.shareWith, recipient.shareWithDisplayName, t('files_sharing', 'Shared with'))\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Marks/unmarks a given file as shared by changing its action icon\n\t\t * and folder icon.\n\t\t *\n\t\t* @param $tr file element to mark as shared\n\t\t* @param hasShares whether shares are available\n\t\t* @param hasLink whether link share is available\n\t\t*/\n\t\tmarkFileAsShared: function($tr, hasShares, hasLink) {\n\t\t\tvar action = $tr.find('.fileactions .action[data-action=\"Share\"]')\n\t\t\tvar type = $tr.data('type')\n\t\t\tvar icon = action.find('.icon')\n\t\t\tvar message, recipients, avatars\n\t\t\tvar ownerId = $tr.attr('data-share-owner-id')\n\t\t\tvar owner = $tr.attr('data-share-owner')\n\t\t\tvar mountType = $tr.attr('data-mounttype')\n\t\t\tvar shareFolderIcon\n\t\t\tvar iconClass = 'icon-shared'\n\t\t\taction.removeClass('shared-style')\n\t\t\t// update folder icon\n\t\t\tif (type === 'dir' && (hasShares || hasLink || ownerId)) {\n\t\t\t\tif (typeof mountType !== 'undefined' && mountType !== 'shared-root' && mountType !== 'shared') {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-' + mountType)\n\t\t\t\t} else if (hasLink) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-public')\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-shared')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t} else if (type === 'dir') {\n\t\t\t\tvar isEncrypted = $tr.attr('data-e2eencrypted')\n\t\t\t\t// FIXME: duplicate of FileList._createRow logic for external folder,\n\t\t\t\t// need to refactor the icon logic into a single code path eventually\n\t\t\t\tif (isEncrypted === 'true') {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-encrypted')\n\t\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t\t} else if (mountType && mountType.indexOf('external') === 0) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-external')\n\t\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir')\n\t\t\t\t\t// back to default\n\t\t\t\t\t$tr.removeAttr('data-icon')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t}\n\t\t\t// update share action text / icon\n\t\t\tif (hasShares || ownerId) {\n\t\t\t\trecipients = $tr.data('share-recipient-data')\n\t\t\t\taction.addClass('shared-style')\n\n\t\t\t\tavatars = '<span>' + t('files_sharing', 'Shared') + '</span>'\n\t\t\t\t// even if reshared, only show \"Shared by\"\n\t\t\t\tif (ownerId) {\n\t\t\t\t\tmessage = t('files_sharing', 'Shared by')\n\t\t\t\t\tavatars = this._formatRemoteShare(ownerId, owner, message)\n\t\t\t\t} else if (recipients) {\n\t\t\t\t\tavatars = this._formatShareList(recipients)\n\t\t\t\t}\n\t\t\t\taction.html(avatars).prepend(icon)\n\n\t\t\t\tif (ownerId || recipients) {\n\t\t\t\t\tvar avatarElement = action.find('.avatar')\n\t\t\t\t\tavatarElement.each(function() {\n\t\t\t\t\t\t$(this).avatar($(this).data('username'), 32)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\taction.html('<span class=\"hidden-visually\">' + t('files_sharing', 'Shared') + '</span>').prepend(icon)\n\t\t\t}\n\t\t\tif (hasLink) {\n\t\t\t\ticonClass = 'icon-public'\n\t\t\t}\n\t\t\ticon.removeClass('icon-shared icon-public').addClass(iconClass)\n\t\t},\n\n\t\t/**\n\t\t * @param {Array} fileData\n\t\t * @returns {String}\n\t\t */\n\t\tgetSharePermissions: function(fileData) {\n\t\t\treturn fileData.sharePermissions\n\t\t}\n\t}\n})()\n\nOC.Plugins.register('OCA.Files.FileList', OCA.Sharing.Util)\n","/**\n * @copyright 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { Type as ShareTypes } from '@nextcloud/sharing'\n\n(function() {\n\t'use strict'\n\n\tconst BreadCrumbView = OC.Backbone.View.extend({\n\t\ttagName: 'span',\n\t\tevents: {\n\t\t\tclick: '_onClick',\n\t\t},\n\t\t_dirInfo: undefined,\n\n\t\trender(data) {\n\t\t\tthis._dirInfo = data.dirInfo || null\n\n\t\t\tif (this._dirInfo !== null && (this._dirInfo.path !== '/' || this._dirInfo.name !== '')) {\n\t\t\t\tconst isShared = data.dirInfo && data.dirInfo.shareTypes && data.dirInfo.shareTypes.length > 0\n\t\t\t\tthis.$el.removeClass('shared icon-public icon-shared')\n\t\t\t\tif (isShared) {\n\t\t\t\t\tthis.$el.addClass('shared')\n\t\t\t\t\tif (data.dirInfo.shareTypes.indexOf(ShareTypes.SHARE_TYPE_LINK) !== -1) {\n\t\t\t\t\t\tthis.$el.addClass('icon-public')\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.$el.addClass('icon-shared')\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.$el.addClass('icon-shared')\n\t\t\t\t}\n\t\t\t\tthis.$el.show()\n\t\t\t\tthis.delegateEvents()\n\t\t\t} else {\n\t\t\t\tthis.$el.removeClass('shared icon-public icon-shared')\n\t\t\t\tthis.$el.hide()\n\t\t\t}\n\n\t\t\treturn this\n\t\t},\n\t\t_onClick(e) {\n\t\t\te.preventDefault()\n\t\t\te.stopPropagation()\n\n\t\t\tconst fileInfoModel = new OCA.Files.FileInfoModel(this._dirInfo)\n\t\t\tconst self = this\n\t\t\tfileInfoModel.on('change', function() {\n\t\t\t\tself.render({\n\t\t\t\t\tdirInfo: self._dirInfo,\n\t\t\t\t})\n\t\t\t})\n\n\t\t\tconst path = fileInfoModel.attributes.path + '/' + fileInfoModel.attributes.name\n\t\t\tOCA.Files.Sidebar.open(path)\n\t\t\tOCA.Files.Sidebar.setActiveTab('sharing')\n\t\t},\n\t})\n\n\tOCA.Sharing.ShareBreadCrumbView = BreadCrumbView\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!./sharebreadcrumb.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!./sharebreadcrumb.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2016 Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport './share.js'\nimport './sharebreadcrumbview.js'\nimport './style/sharebreadcrumb.scss'\nimport './collaborationresourceshandler.js'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(OC.requestToken)\n\nwindow.OCA.Sharing = OCA.Sharing\n","/**\n * @copyright Copyright (c) 2016 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(OC.requestToken)\n\nwindow.OCP.Collaboration.registerType('file', {\n\taction: () => {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tOC.dialogs.filepicker(t('files_sharing', 'Link to a file'), function(f) {\n\t\t\t\tconst client = OC.Files.getClient()\n\t\t\t\tclient.getFileInfo(f).then((status, fileInfo) => {\n\t\t\t\t\tresolve(fileInfo.id)\n\t\t\t\t}).fail(() => {\n\t\t\t\t\treject(new Error('Cannot get fileinfo'))\n\t\t\t\t})\n\t\t\t}, false, null, false, OC.dialogs.FILEPICKER_TYPE_CHOOSE, '', { allowDirectoryChooser: true })\n\t\t})\n\t},\n\ttypeString: t('files_sharing', 'Link to a file'),\n\ttypeIconClass: 'icon-files-dark',\n})\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, `li.crumb span.icon-shared,li.crumb span.icon-public{display:inline-block;cursor:pointer;opacity:.2;margin-right:6px}li.crumb span.icon-shared.shared,li.crumb span.icon-public.shared{opacity:.7}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/style/sharebreadcrumb.scss\"],\"names\":[],\"mappings\":\"AAsBA,oDAEC,oBAAA,CACA,cAAA,CACA,UAAA,CACA,gBAAA,CAGD,kEAEC,UAAA\",\"sourcesContent\":[\"/**\\n * @copyright 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\\n *\\n * @author 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n\\nli.crumb span.icon-shared,\\nli.crumb span.icon-public {\\n\\tdisplay: inline-block;\\n\\tcursor: pointer;\\n\\topacity: 0.2;\\n\\tmargin-right: 6px;\\n}\\n\\nli.crumb span.icon-shared.shared,\\nli.crumb span.icon-public.shared {\\n\\topacity: 0.7;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 9643;","__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\t9643: 0,\n\t7541: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(6651)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","_","extend","OC","Files","Client","PROPERTY_SHARE_TYPES","NS_OWNCLOUD","PROPERTY_OWNER_ID","PROPERTY_OWNER_DISPLAY_NAME","OCA","Sharing","Util","_REMOTE_OWNER_REGEXP","RegExp","attach","fileList","_getCapabilities$file","getCapabilities","files_sharing","api_enabled","id","fileActions","oldCreateRow","_createRow","fileData","tr","apply","this","arguments","sharePermissions","getSharePermissions","permissions","actions","all","Comment","Details","Goto","isFunction","canDownload","Download","PERMISSION_UPDATE","MoveCopy","attr","JSON","stringify","shareAttributes","shareOwner","shareOwnerId","mountType","recipientData","isEmpty","shareTypes","join","oldElementToFile","elementToFile","$el","fileInfo","parse","undefined","split","expirationTimestamp","parseInt","shares","push","expiration","oldGetWebdavProperties","_getWebdavProperties","props","filesClient","addFileInfoParser","response","data","propStat","properties","permissionsProp","PROPERTY_PERMISSIONS","indexOf","shareTypesProp","chain","filter","xmlvalue","namespaceURI","nodeName","map","textContent","text","value","on","ev","$files","each","file","$tr","$","shareTypesStr","hasLink","hasShares","shareTypeStr","shareType","ShareTypes","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","SHARE_TYPE_USER","SHARE_TYPE_GROUP","SHARE_TYPE_REMOTE","SHARE_TYPE_REMOTE_GROUP","SHARE_TYPE_CIRCLE","SHARE_TYPE_ROOM","SHARE_TYPE_DECK","SHARE_TYPE_SCIENCEMESH","_updateFileActionIcon","sharesLoaded","registerAction","name","displayName","context","$file","t","altText","mime","order","PERMISSION_ALL","iconClass","fileName","icon","generateUrl","concat","type","FileActions","TYPE_INLINE","actionHandler","_detailsView","isNaN","showDetailsView","render","actionSpec","isDefault","PERMISSION_SHARE","_defaultRenderAction","call","breadCrumbSharingDetailView","ShareBreadCrumbView","registerBreadCrumbDetailView","_updateFileListDataAttributes","shareModel","pluck","get","length","mapObject","share","shareWith","share_with","shareWithDisplayName","share_with_displayname","removeAttr","hasUserShares","hasLinkShares","_markFileAsShared","message","recipients","avatars","shareFolderIcon","action","find","ownerId","owner","removeClass","isEncrypted","MimeType","getIconUrl","css","addClass","_formatRemoteShare","_formatShareList","html","prepend","avatar","parts","exec","escapeHTML","userName","userDomain","server","protocol","serverPath","tooltip","replace","_parent","toArray","sort","a","b","localeCompare","recipient","markFileAsShared","Plugins","register","BreadCrumbView","Backbone","View","tagName","events","click","_dirInfo","dirInfo","path","hide","isShared","show","delegateEvents","_onClick","e","preventDefault","stopPropagation","fileInfoModel","FileInfoModel","self","attributes","Sidebar","open","setActiveTab","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","__webpack_nonce__","btoa","requestToken","window","OCP","Collaboration","registerType","Promise","resolve","reject","dialogs","filepicker","f","getClient","getFileInfo","then","status","fail","Error","FILEPICKER_TYPE_CHOOSE","allowDirectoryChooser","typeString","typeIconClass","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","Object","keys","every","key","splice","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","document","baseURI","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"files_sharing-additionalScripts.js?v=26d016e9d55c725760ce","mappings":";UAAIA,+EC0CHC,EAAEC,OAAOC,GAAGC,MAAMC,OAAQ,CACzBC,qBAAsB,IAAMH,GAAGC,MAAMC,OAAOE,YAAc,eAC1DC,kBAAmB,IAAML,GAAGC,MAAMC,OAAOE,YAAc,YACvDE,4BAA6B,IAAMN,GAAGC,MAAMC,OAAOE,YAAc,wBAG7DG,IAAIC,UACRD,IAAIC,QAAU,CAAC,GAMhBD,IAAIC,QAAQC,KAAO,CAQlBC,qBAAsB,IAAIC,OAAO,gEAUjCC,OAAQ,SAASC,GAAU,IAAAC,EAE1B,GAAoC,QAAhCA,GAACC,EAAAA,EAAAA,KAAkBC,qBAAa,IAAAF,GAA/BA,EAAiCG,aAGlB,aAAhBJ,EAASK,IAAqC,iBAAhBL,EAASK,GAA3C,CAGA,IAAIC,EAAcN,EAASM,YACvBC,EAAeP,EAASQ,WAC5BR,EAASQ,WAAa,SAASC,GAE9B,IAAIC,EAAKH,EAAaI,MAAMC,KAAMC,WAC9BC,EAAmBpB,IAAIC,QAAQC,KAAKmB,oBAAoBN,GA+B5D,OA7B6B,IAAzBA,EAASO,qBAELV,EAAYW,QAAQC,IAAIC,eACxBb,EAAYW,QAAQC,IAAIE,eACxBd,EAAYW,QAAQC,IAAIG,MAE5BpC,EAAEqC,WAAWb,EAASc,eAAiBd,EAASc,uBAC5CjB,EAAYW,QAAQC,IAAIM,SACuB,IAAjDf,EAASO,YAAc7B,GAAGsC,2BAEvBnB,EAAYW,QAAQC,IAAIQ,UAGjChB,EAAGiB,KAAK,yBAA0Bb,GAClCJ,EAAGiB,KAAK,wBAAyBC,KAAKC,UAAUpB,EAASqB,kBACrDrB,EAASsB,aACZrB,EAAGiB,KAAK,mBAAoBlB,EAASsB,YACrCrB,EAAGiB,KAAK,sBAAuBlB,EAASuB,cAEb,gBAAvBvB,EAASwB,WACZvB,EAAGiB,KAAK,mBAAoBlB,EAASO,YAAc7B,GAAGsC,oBAGpDhB,EAASyB,gBAAkBjD,EAAEkD,QAAQ1B,EAASyB,gBACjDxB,EAAGiB,KAAK,4BAA6BC,KAAKC,UAAUpB,EAASyB,gBAE1DzB,EAAS2B,YACZ1B,EAAGiB,KAAK,mBAAoBlB,EAAS2B,WAAWC,KAAK,MAE/C3B,CACR,EAEA,IAAI4B,EAAmBtC,EAASuC,cAChCvC,EAASuC,cAAgB,SAASC,GACjC,IAAIC,EAAWH,EAAiB3B,MAAMC,KAAMC,WAU5C,GATA4B,EAASX,gBAAkBF,KAAKc,MAAMF,EAAIb,KAAK,0BAA4B,MAC3Ec,EAAS3B,iBAAmB0B,EAAIb,KAAK,gCAA6BgB,EAClEF,EAASV,WAAaS,EAAIb,KAAK,0BAAuBgB,EACtDF,EAAST,aAAeQ,EAAIb,KAAK,6BAA0BgB,EAEvDH,EAAIb,KAAK,sBACZc,EAASL,WAAaI,EAAIb,KAAK,oBAAoBiB,MAAM,MAGtDJ,EAAIb,KAAK,mBAAoB,CAChC,IAAIkB,EAAsBC,SAASN,EAAIb,KAAK,oBAC5Cc,EAASM,OAAS,GAClBN,EAASM,OAAOC,KAAK,CAAEC,WAAYJ,GACpC,CAEA,OAAOJ,CACR,EAEA,IAAIS,EAAyBlD,EAASmD,qBACtCnD,EAASmD,qBAAuB,WAC/B,IAAIC,EAAQF,EAAuBvC,MAAMC,KAAMC,WAI/C,OAHAuC,EAAMJ,KAAK7D,GAAGC,MAAMC,OAAOG,mBAC3B4D,EAAMJ,KAAK7D,GAAGC,MAAMC,OAAOI,6BAC3B2D,EAAMJ,KAAK7D,GAAGC,MAAMC,OAAOC,sBACpB8D,CACR,EAEApD,EAASqD,YAAYC,mBAAkB,SAASC,GAC/C,IAAIC,EAAO,CAAC,EACRJ,EAAQG,EAASE,SAAS,GAAGC,WAC7BC,EAAkBP,EAAMjE,GAAGC,MAAMC,OAAOuE,sBAExCD,GAAmBA,EAAgBE,QAAQ,MAAQ,IACtDL,EAAKzB,WAAaqB,EAAMjE,GAAGC,MAAMC,OAAOI,6BACxC+D,EAAKxB,aAAeoB,EAAMjE,GAAGC,MAAMC,OAAOG,oBAG3C,IAAIsE,EAAiBV,EAAMjE,GAAGC,MAAMC,OAAOC,sBAS3C,OARIwE,IACHN,EAAKpB,WAAanD,EAAE8E,MAAMD,GAAgBE,QAAO,SAASC,GACzD,OAAQA,EAASC,eAAiB/E,GAAGC,MAAMC,OAAOE,aAAmD,eAApC0E,EAASE,SAASvB,MAAM,KAAK,EAC/F,IAAGwB,KAAI,SAASH,GACf,OAAOnB,SAASmB,EAASI,aAAeJ,EAASK,KAAM,GACxD,IAAGC,SAGGf,CACR,IAGAxD,EAASwC,IAAIgC,GAAG,oBAAoB,SAASC,GAC5C,IAAIC,EAASD,EAAGC,OAEhBzF,EAAE0F,KAAKD,GAAQ,SAASE,GACvB,IAAIC,EAAMC,EAAEF,GACRG,EAAgBF,EAAIlD,KAAK,qBAAuB,GAChDI,EAAa8C,EAAIlD,KAAK,oBAC1B,GAAIoD,GAAiBhD,EAAY,CAChC,IAAIiD,GAAU,EACVC,GAAY,EAChBhG,EAAE0F,KAAKI,EAAcnC,MAAM,MAAQ,IAAI,SAASsC,GAC/C,IAAIC,EAAYrC,SAASoC,EAAc,IACnCC,IAAcC,EAAAA,EAAUC,MAEjBF,IAAcC,EAAAA,EAAUE,MADlCN,GAAU,GAGAG,IAAcC,EAAAA,EAAUG,MAExBJ,IAAcC,EAAAA,EAAUI,OAExBL,IAAcC,EAAAA,EAAUK,QAExBN,IAAcC,EAAAA,EAAUM,aAExBP,IAAcC,EAAAA,EAAUO,MAExBR,IAAcC,EAAAA,EAAUQ,MAExBT,IAAcC,EAAAA,EAAUS,QAXlCZ,GAAY,EAcd,IACAvF,IAAIC,QAAQC,KAAKkG,sBAAsBjB,EAAKI,EAAWD,EACxD,CACD,GACD,IAEAhF,EAASwC,IAAIgC,GAAG,mBAAmB,WAClC9E,IAAIC,QAAQoG,cAAe,CAC5B,IAEAzF,EAAY0F,eAAe,CAC1BC,KAAM,QACNC,YAAa,SAASC,GACrB,GAAIA,GAAWA,EAAQC,MAAO,CAC7B,IAAIjB,EAAYrC,SAASqD,EAAQC,MAAM5C,KAAK,eAAgB,IACxDzB,EAAaoE,EAAQC,MAAM5C,KAAK,kBACpC,GAAI2B,GAAa,GAAKpD,EACrB,OAAOsE,EAAE,gBAAiB,SAE5B,CACA,OAAOA,EAAE,gBAAiB,QAC3B,EACAC,QAASD,EAAE,gBAAiB,SAC5BE,KAAM,MACNC,OAAQ,IACRxF,YAAa7B,GAAGsH,eAChBC,UAAW,SAASC,EAAUR,GAC7B,IAAIhB,EAAYrC,SAASqD,EAAQC,MAAM5C,KAAK,eAAgB,IAC5D,OAAI2B,IAAcC,EAAAA,EAAUE,OACxBH,IAAcC,EAAAA,EAAUC,KACpB,cAED,aACR,EACAuB,KAAM,SAASD,EAAUR,GACxB,IAAIpE,EAAaoE,EAAQC,MAAM5C,KAAK,kBACpC,GAAIzB,EACH,OAAO5C,GAAG0H,YAAY,WAADC,OAAY/E,EAAU,OAE7C,EACAgF,KAAMrH,IAAIN,MAAM4H,YAAYC,YAC5BC,cAAe,SAASP,EAAUR,GAEjC,GAAKnG,EAASmH,aAAd,CAIA,IAAInG,EAAc8B,SAASqD,EAAQC,MAAM5C,KAAK,qBAAsB,KAChE4D,MAAMpG,IAAgBA,EAAc,IACvChB,EAASqH,gBAAgBV,EAAU,UAJpC,CAMD,EACAW,OAAQ,SAASC,EAAYC,EAAWrB,GAGvC,OAA4C,IAF1BrD,SAASqD,EAAQC,MAAM5C,KAAK,eAAgB,IAE3CrE,GAAGsI,mBAA2BtB,EAAQC,MAAMzE,KAAK,oBAC5DrB,EAAYoH,qBAAqBC,KAAKrH,EAAaiH,EAAYC,EAAWrB,GAG3E,IACR,IAID,IAAIyB,EAA8B,IAAIlI,IAAIC,QAAQkI,oBAClD7H,EAAS8H,6BAA6BF,EA7LtC,CA8LD,EAKAG,8BAA+B,SAAS/H,EAAU6E,EAAKmD,GAGtD,GAAoB,UAAhBhI,EAASK,GAKb,GAFiBpB,EAAEgJ,MAAMD,EAAWE,IAAI,UAAW,0BAEpCC,OAAQ,CACtB,IAAIjG,EAAgBjD,EAAEmJ,UAAUJ,EAAWE,IAAI,WAAW,SAASG,GAClE,MAAO,CAAEC,UAAWD,EAAME,WAAYC,qBAAsBH,EAAMI,uBACnE,IACA5D,EAAIlD,KAAK,4BAA6BC,KAAKC,UAAUK,GACtD,MACC2C,EAAI6D,WAAW,4BAEjB,EAWA5C,sBAAuB,SAASjB,EAAK8D,EAAeC,GAGnD,SAAID,GAAiBC,GAAiB/D,EAAIlD,KAAK,8BAAgCkD,EAAIlD,KAAK,uBACvFjC,IAAIC,QAAQC,KAAKiJ,kBAAkBhE,GAAK,EAAM+D,IACvC,EAGT,EAUAC,kBAAmB,SAAShE,EAAKI,EAAWD,GAC3C,IAGI8D,EAASC,EAAYC,EAIrBC,EAPAC,EAASrE,EAAIsE,KAAK,6CAClBpC,EAAOlC,EAAIrB,KAAK,QAChBoD,EAAOsC,EAAOC,KAAK,SAEnBC,EAAUvE,EAAIlD,KAAK,uBACnB0H,EAAQxE,EAAIlD,KAAK,oBACjBM,EAAY4C,EAAIlD,KAAK,kBAErB+E,EAAY,cAChBwC,EAAOI,YAAY,gBAEnB,IAAIC,EAAc1E,EAAIlD,KAAK,qBACd,QAAToF,GAAkC,SAAhBwC,GACrBN,EAAkB9J,GAAGqK,SAASC,WAAW,iBACzC5E,EAAIlD,KAAK,YAAasH,IACH,QAATlC,IAAmB9B,GAAaD,GAAWoE,IAEpDH,OADwB,IAAdhH,GAA2C,gBAAdA,GAA6C,WAAdA,EACpD9C,GAAGqK,SAASC,WAAW,OAASxH,GACxC+C,EACQ7F,GAAGqK,SAASC,WAAW,cAEvBtK,GAAGqK,SAASC,WAAW,cAE1C5E,EAAIsE,KAAK,wBAAwBO,IAAI,mBAAoB,OAAST,EAAkB,KACpFpE,EAAIlD,KAAK,YAAasH,IACH,QAATlC,IAGN9E,GAA+C,IAAlCA,EAAU4B,QAAQ,aAClCoF,EAAkB9J,GAAGqK,SAASC,WAAW,gBACzC5E,EAAIlD,KAAK,YAAasH,KAEtBA,EAAkB9J,GAAGqK,SAASC,WAAW,OAEzC5E,EAAI6D,WAAW,cAEhB7D,EAAIsE,KAAK,wBAAwBO,IAAI,mBAAoB,OAAST,EAAkB,MAGjFhE,GAAamE,GAChBL,EAAalE,EAAIrB,KAAK,wBACtB0F,EAAOS,SAAS,gBAEhBX,EAAU,SAAW3C,EAAE,gBAAiB,UAAY,UAEhD+C,GACHN,EAAUzC,EAAE,gBAAiB,aAC7B2C,EAAUtJ,IAAIC,QAAQC,KAAKgK,mBAAmBR,EAASC,EAAOP,IACpDC,IACVC,EAAUtJ,IAAIC,QAAQC,KAAKiK,iBAAiBd,IAE7CG,EAAOY,KAAKd,GAASe,QAAQnD,IAEzBwC,GAAWL,IACMG,EAAOC,KAAK,WAClBxE,MAAK,WAClBG,EAAElE,MAAMoJ,OAAOlF,EAAElE,MAAM4C,KAAK,YAAa,GAC1C,KAGD0F,EAAOY,KAAK,iCAAmCzD,EAAE,gBAAiB,UAAY,WAAW0D,QAAQnD,GAE9F5B,IACH0B,EAAY,eAEbE,EAAK0C,YAAY,2BAA2BK,SAASjD,EACtD,EASAkD,mBAAoB,SAAStB,EAAWE,EAAsBM,GAC7D,IAAImB,EAAQvK,IAAIC,QAAQC,KAAKC,qBAAqBqK,KAAK5B,GACvD,IAAK2B,IAAUA,EAAM,GAIpB,MAFa,uCAAyCE,IAAW7B,GAAa,YAAcQ,EAAU,IAAMqB,IAAW3B,GAA1G,0CACmCM,EAAU,IAAMqB,IAAW3B,GAAwB,WAIpG,IAAI4B,EAAWH,EAAM,GACjBI,EAAaJ,EAAM,GACnBK,EAASL,EAAM,GACfM,EAAWN,EAAM,GACjBO,EAAaP,EAAM,GAAKA,EAAM,GAAK,GAEnCQ,EAAU3B,EAAU,IAAMsB,EAC1BC,IACHI,GAAW,IAAMJ,GAEdC,IACHG,GAAW,IAAMH,EAAOI,QAAQH,EAAU,IAAMC,GAGjD,IAAIV,EAAO,sCAAwCK,IAAWM,GAAW,KAMzE,OALAX,GAAQ,0BAA4BK,IAAWC,GAAY,UACvDC,IACHP,GAAQ,6BAA+BK,IAAWE,GAAc,WAEjEP,EAAQ,UAET,EAQAD,iBAAkB,SAASd,GAC1B,IAAI4B,EAAU/J,KAKd,OAJAmI,EAAa9J,EAAE2L,QAAQ7B,IACZ8B,MAAK,SAASC,EAAGC,GAC3B,OAAOD,EAAEtC,qBAAqBwC,cAAcD,EAAEvC,qBAC/C,IACO1D,EAAEV,IAAI2E,GAAY,SAASkC,GACjC,OAAON,EAAQf,mBAAmBqB,EAAU3C,UAAW2C,EAAUzC,qBAAsBnC,EAAE,gBAAiB,eAC3G,GACD,EAUA6E,iBAAkB,SAASrG,EAAKI,EAAWD,GAC1C,IAGI8D,EAASC,EAAYC,EAIrBC,EAPAC,EAASrE,EAAIsE,KAAK,6CAClBpC,EAAOlC,EAAIrB,KAAK,QAChBoD,EAAOsC,EAAOC,KAAK,SAEnBC,EAAUvE,EAAIlD,KAAK,uBACnB0H,EAAQxE,EAAIlD,KAAK,oBACjBM,EAAY4C,EAAIlD,KAAK,kBAErB+E,EAAY,cAChBwC,EAAOI,YAAY,gBAEN,QAATvC,IAAmB9B,GAAaD,GAAWoE,IAE7CH,OADwB,IAAdhH,GAA2C,gBAAdA,GAA6C,WAAdA,EACpD9C,GAAGqK,SAASC,WAAW,OAASxH,GACxC+C,EACQ7F,GAAGqK,SAASC,WAAW,cAEvBtK,GAAGqK,SAASC,WAAW,cAE1C5E,EAAIsE,KAAK,wBAAwBO,IAAI,mBAAoB,OAAST,EAAkB,KACpFpE,EAAIlD,KAAK,YAAasH,IACH,QAATlC,IAIU,SAHFlC,EAAIlD,KAAK,sBAI1BsH,EAAkB9J,GAAGqK,SAASC,WAAW,iBACzC5E,EAAIlD,KAAK,YAAasH,IACZhH,GAA+C,IAAlCA,EAAU4B,QAAQ,aACzCoF,EAAkB9J,GAAGqK,SAASC,WAAW,gBACzC5E,EAAIlD,KAAK,YAAasH,KAEtBA,EAAkB9J,GAAGqK,SAASC,WAAW,OAEzC5E,EAAI6D,WAAW,cAEhB7D,EAAIsE,KAAK,wBAAwBO,IAAI,mBAAoB,OAAST,EAAkB,MAGjFhE,GAAamE,GAChBL,EAAalE,EAAIrB,KAAK,wBACtB0F,EAAOS,SAAS,gBAEhBX,EAAU,SAAW3C,EAAE,gBAAiB,UAAY,UAEhD+C,GACHN,EAAUzC,EAAE,gBAAiB,aAC7B2C,EAAUpI,KAAKgJ,mBAAmBR,EAASC,EAAOP,IACxCC,IACVC,EAAUpI,KAAKiJ,iBAAiBd,IAEjCG,EAAOY,KAAKd,GAASe,QAAQnD,IAEzBwC,GAAWL,IACMG,EAAOC,KAAK,WAClBxE,MAAK,WAClBG,EAAElE,MAAMoJ,OAAOlF,EAAElE,MAAM4C,KAAK,YAAa,GAC1C,KAGD0F,EAAOY,KAAK,iCAAmCzD,EAAE,gBAAiB,UAAY,WAAW0D,QAAQnD,GAE9F5B,IACH0B,EAAY,eAEbE,EAAK0C,YAAY,2BAA2BK,SAASjD,EACtD,EAMA3F,oBAAqB,SAASN,GAC7B,OAAOA,EAASK,gBACjB,GAIF3B,GAAGgM,QAAQC,SAAS,qBAAsB1L,IAAIC,QAAQC,MC1ftD,WAGC,MAAMyL,EAAiBlM,GAAGmM,SAASC,KAAKrM,OAAO,CAC9CsM,QAAS,OACTC,OAAQ,CACPC,MAAO,YAERC,cAAUhJ,EAEV2E,MAAAA,CAAO9D,GAGN,GAFA5C,KAAK+K,SAAWnI,EAAKoI,SAAW,KAEV,OAAlBhL,KAAK+K,UAA6C,MAAvB/K,KAAK+K,SAASE,MAAuC,KAAvBjL,KAAK+K,SAAS1F,KAgB1ErF,KAAK4B,IAAI8G,YAAY,kCACrB1I,KAAK4B,IAAIsJ,WAjB+E,CACxF,MAAMC,EAAWvI,EAAKoI,SAAWpI,EAAKoI,QAAQxJ,YAAcoB,EAAKoI,QAAQxJ,WAAW+F,OAAS,EAC7FvH,KAAK4B,IAAI8G,YAAY,kCACjByC,GACHnL,KAAK4B,IAAImH,SAAS,WACuC,IAArDnG,EAAKoI,QAAQxJ,WAAWyB,QAAQuB,EAAAA,EAAUC,MAC7CzE,KAAK4B,IAAImH,SAAS,eAElB/I,KAAK4B,IAAImH,SAAS,gBAGnB/I,KAAK4B,IAAImH,SAAS,eAEnB/I,KAAK4B,IAAIwJ,OACTpL,KAAKqL,gBACN,CAKA,OAAOrL,IACR,EACAsL,QAAAA,CAASC,GACRA,EAAEC,iBACFD,EAAEE,kBAEF,MAAMC,EAAgB,IAAI5M,IAAIN,MAAMmN,cAAc3L,KAAK+K,UACjDa,EAAO5L,KACb0L,EAAc9H,GAAG,UAAU,WAC1BgI,EAAKlF,OAAO,CACXsE,QAASY,EAAKb,UAEhB,IAEA,MAAME,EAAOS,EAAcG,WAAWZ,KAAO,IAAMS,EAAcG,WAAWxG,KAC5EvG,IAAIN,MAAMsN,QAAQC,KAAKd,GACvBnM,IAAIN,MAAMsN,QAAQE,aAAa,UAChC,IAGDlN,IAAIC,QAAQkI,oBAAsBwD,CAClC,CAtDD,0ICfIwB,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,IAAQM,QAAS,IAAQA,gBCI1DC,EAAAA,GAAoBC,KAAKlO,GAAGmO,cAE5BC,OAAO7N,IAAIC,QAAUD,IAAIC,yBCRzByN,EAAAA,GAAoBC,KAAKlO,GAAGmO,cAE5BC,OAAOC,IAAIC,cAAcC,aAAa,OAAQ,CAC7CxE,OAAQA,IACA,IAAIyE,SAAQ,CAACC,EAASC,KAC5B1O,GAAG2O,QAAQC,WAAW1H,EAAE,gBAAiB,mBAAmB,SAAS2H,GACrD7O,GAAGC,MAAM6O,YACjBC,YAAYF,GAAGG,MAAK,CAACC,EAAQ3L,KACnCmL,EAAQnL,EAASpC,GAAG,IAClBgO,MAAK,KACPR,EAAO,IAAIS,MAAM,uBAAuB,GAE1C,IAAG,EAAO,MAAM,EAAOnP,GAAG2O,QAAQS,uBAAwB,GAAI,CAAEC,uBAAuB,GAAO,IAGhGC,WAAYpI,EAAE,gBAAiB,kBAC/BqI,cAAe,sGCrCZC,QAA0B,GAA4B,KAE1DA,EAAwB3L,KAAK,CAAC4L,EAAOvO,GAAI,oMAAqM,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,iEAAiE,MAAQ,GAAG,SAAW,mEAAmE,eAAiB,CAAC,6mCAA6mC,WAAa,MAE/iD,YCNIwO,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBpM,IAAjBqM,EACH,OAAOA,EAAaC,QAGrB,IAAIL,EAASC,EAAyBE,GAAY,CACjD1O,GAAI0O,EACJG,QAAQ,EACRD,QAAS,CAAC,GAUX,OANAE,EAAoBJ,GAAUpH,KAAKiH,EAAOK,QAASL,EAAQA,EAAOK,QAASH,GAG3EF,EAAOM,QAAS,EAGTN,EAAOK,OACf,CAGAH,EAAoBM,EAAID,EP5BpBnQ,EAAW,GACf8P,EAAoBO,EAAI,CAACC,EAAQC,EAAUC,EAAIC,KAC9C,IAAGF,EAAH,CAMA,IAAIG,EAAeC,IACnB,IAASC,EAAI,EAAGA,EAAI5Q,EAASmJ,OAAQyH,IAAK,CACrCL,EAAWvQ,EAAS4Q,GAAG,GACvBJ,EAAKxQ,EAAS4Q,GAAG,GACjBH,EAAWzQ,EAAS4Q,GAAG,GAE3B,IAJA,IAGIC,GAAY,EACPC,EAAI,EAAGA,EAAIP,EAASpH,OAAQ2H,MACpB,EAAXL,GAAsBC,GAAgBD,IAAaM,OAAOC,KAAKlB,EAAoBO,GAAGY,OAAOC,GAASpB,EAAoBO,EAAEa,GAAKX,EAASO,MAC9IP,EAASY,OAAOL,IAAK,IAErBD,GAAY,EACTJ,EAAWC,IAAcA,EAAeD,IAG7C,GAAGI,EAAW,CACb7Q,EAASmR,OAAOP,IAAK,GACrB,IAAIQ,EAAIZ,SACE7M,IAANyN,IAAiBd,EAASc,EAC/B,CACD,CACA,OAAOd,CArBP,CAJCG,EAAWA,GAAY,EACvB,IAAI,IAAIG,EAAI5Q,EAASmJ,OAAQyH,EAAI,GAAK5Q,EAAS4Q,EAAI,GAAG,GAAKH,EAAUG,IAAK5Q,EAAS4Q,GAAK5Q,EAAS4Q,EAAI,GACrG5Q,EAAS4Q,GAAK,CAACL,EAAUC,EAAIC,EAuBjB,EQ3BdX,EAAoBuB,EAAKzB,IACxB,IAAI0B,EAAS1B,GAAUA,EAAO2B,WAC7B,IAAO3B,EAAiB,QACxB,IAAM,EAEP,OADAE,EAAoB0B,EAAEF,EAAQ,CAAExF,IACzBwF,CAAM,ECLdxB,EAAoB0B,EAAI,CAACvB,EAASwB,KACjC,IAAI,IAAIP,KAAOO,EACX3B,EAAoB4B,EAAED,EAAYP,KAASpB,EAAoB4B,EAAEzB,EAASiB,IAC5EH,OAAOY,eAAe1B,EAASiB,EAAK,CAAEU,YAAY,EAAM1I,IAAKuI,EAAWP,IAE1E,ECHDpB,EAAoB3C,EAAI,IAAOwB,QAAQC,UCHvCkB,EAAoB+B,EAAI,WACvB,GAA0B,iBAAfC,WAAyB,OAAOA,WAC3C,IACC,OAAOlQ,MAAQ,IAAImQ,SAAS,cAAb,EAChB,CAAE,MAAO5E,GACR,GAAsB,iBAAXoB,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxBuB,EAAoB4B,EAAI,CAACM,EAAKC,IAAUlB,OAAOmB,UAAUC,eAAexJ,KAAKqJ,EAAKC,GCClFnC,EAAoBsB,EAAKnB,IACH,oBAAXmC,QAA0BA,OAAOC,aAC1CtB,OAAOY,eAAe1B,EAASmC,OAAOC,YAAa,CAAE9M,MAAO,WAE7DwL,OAAOY,eAAe1B,EAAS,aAAc,CAAE1K,OAAO,GAAO,ECL9DuK,EAAoBwC,IAAO1C,IAC1BA,EAAO2C,MAAQ,GACV3C,EAAO4C,WAAU5C,EAAO4C,SAAW,IACjC5C,GCHRE,EAAoBgB,EAAI,WCAxBhB,EAAoB/D,EAAI0G,SAASC,SAAWlF,KAAKmF,SAASC,KAK1D,IAAIC,EAAkB,CACrB,KAAM,EACN,KAAM,GAaP/C,EAAoBO,EAAES,EAAKgC,GAA0C,IAA7BD,EAAgBC,GAGxD,IAAIC,EAAuB,CAACC,EAA4BxO,KACvD,IAKIuL,EAAU+C,EALVvC,EAAW/L,EAAK,GAChByO,EAAczO,EAAK,GACnB0O,EAAU1O,EAAK,GAGIoM,EAAI,EAC3B,GAAGL,EAAS4C,MAAM9R,GAAgC,IAAxBwR,EAAgBxR,KAAa,CACtD,IAAI0O,KAAYkD,EACZnD,EAAoB4B,EAAEuB,EAAalD,KACrCD,EAAoBM,EAAEL,GAAYkD,EAAYlD,IAGhD,GAAGmD,EAAS,IAAI5C,EAAS4C,EAAQpD,EAClC,CAEA,IADGkD,GAA4BA,EAA2BxO,GACrDoM,EAAIL,EAASpH,OAAQyH,IACzBkC,EAAUvC,EAASK,GAChBd,EAAoB4B,EAAEmB,EAAiBC,IAAYD,EAAgBC,IACrED,EAAgBC,GAAS,KAE1BD,EAAgBC,GAAW,EAE5B,OAAOhD,EAAoBO,EAAEC,EAAO,EAGjC8C,EAAqB5F,KAA4B,sBAAIA,KAA4B,uBAAK,GAC1F4F,EAAmBC,QAAQN,EAAqBO,KAAK,KAAM,IAC3DF,EAAmBpP,KAAO+O,EAAqBO,KAAK,KAAMF,EAAmBpP,KAAKsP,KAAKF,QCnDvFtD,EAAoByD,QAAK5P,ECGzB,IAAI6P,EAAsB1D,EAAoBO,OAAE1M,EAAW,CAAC,OAAO,IAAOmM,EAAoB,QAC9F0D,EAAsB1D,EAAoBO,EAAEmD","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/files_sharing/src/share.js","webpack:///nextcloud/apps/files_sharing/src/sharebreadcrumbview.js","webpack://nextcloud/./apps/files_sharing/src/style/sharebreadcrumb.scss?a9a3","webpack:///nextcloud/apps/files_sharing/src/additionalScripts.js","webpack:///nextcloud/apps/files_sharing/src/collaborationresourceshandler.js","webpack:///nextcloud/apps/files_sharing/src/style/sharebreadcrumb.scss","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/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/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (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((key) => (__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};","/**\n * Copyright (c) 2014\n *\n * @author Arthur Schiwon <blizzz@arthur-schiwon.de>\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author Daniel Calviño Sánchez <danxuliu@gmail.com>\n * @author Joas Schilling <coding@schilljs.com>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Maxence Lange <maxence@nextcloud.com>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author Michael Jobst <mjobst@necls.com>\n * @author Morris Jobke <hey@morrisjobke.de>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n * @author Samuel <faust64@gmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n/* eslint-disable */\nimport escapeHTML from 'escape-html'\n\nimport { ShareType } from '@nextcloud/sharing'\nimport { getCapabilities } from '@nextcloud/capabilities'\n\n(function() {\n\n\t_.extend(OC.Files.Client, {\n\t\tPROPERTY_SHARE_TYPES:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}share-types',\n\t\tPROPERTY_OWNER_ID:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}owner-id',\n\t\tPROPERTY_OWNER_DISPLAY_NAME:\t'{' + OC.Files.Client.NS_OWNCLOUD + '}owner-display-name'\n\t})\n\n\tif (!OCA.Sharing) {\n\t\tOCA.Sharing = {}\n\t}\n\n\t/**\n\t * @namespace\n\t */\n\tOCA.Sharing.Util = {\n\n\t\t/**\n\t\t * Regular expression for splitting parts of remote share owners:\n\t\t * \"user@example.com/\"\n\t\t * \"user@example.com/path/to/owncloud\"\n\t\t * \"user@anotherexample.com@example.com/path/to/owncloud\n\t\t */\n\t\t_REMOTE_OWNER_REGEXP: new RegExp('^(([^@]*)@(([^@^/\\\\s]*)@)?)((https://)?[^[\\\\s/]*)([/](.*))?$'),\n\n\t\t/**\n\t\t * Initialize the sharing plugin.\n\t\t *\n\t\t * Registers the \"Share\" file action and adds additional\n\t\t * DOM attributes for the sharing file info.\n\t\t *\n\t\t * @param {OCA.Files.FileList} fileList file list to be extended\n\t\t */\n\t\tattach: function(fileList) {\n\t\t\t// core sharing is disabled/not loaded\n\t\t\tif (!getCapabilities().files_sharing?.api_enabled) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tif (fileList.id === 'trashbin' || fileList.id === 'files.public') {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tvar fileActions = fileList.fileActions\n\t\t\tvar oldCreateRow = fileList._createRow\n\t\t\tfileList._createRow = function(fileData) {\n\n\t\t\t\tvar tr = oldCreateRow.apply(this, arguments)\n\t\t\t\tvar sharePermissions = OCA.Sharing.Util.getSharePermissions(fileData)\n\n\t\t\t\tif (fileData.permissions === 0) {\n\t\t\t\t\t// no permission, disabling sidebar\n\t\t\t\t\tdelete fileActions.actions.all.Comment\n\t\t\t\t\tdelete fileActions.actions.all.Details\n\t\t\t\t\tdelete fileActions.actions.all.Goto\n\t\t\t\t}\n\t\t\t\tif (_.isFunction(fileData.canDownload) && !fileData.canDownload()) {\n\t\t\t\t\tdelete fileActions.actions.all.Download\n\t\t\t\t\tif ((fileData.permissions & OC.PERMISSION_UPDATE) === 0) {\n\t\t\t\t\t\t// neither move nor copy is allowed, remove the action completely\n\t\t\t\t\t\tdelete fileActions.actions.all.MoveCopy\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\ttr.attr('data-share-permissions', sharePermissions)\n\t\t\t\ttr.attr('data-share-attributes', JSON.stringify(fileData.shareAttributes))\n\t\t\t\tif (fileData.shareOwner) {\n\t\t\t\t\ttr.attr('data-share-owner', fileData.shareOwner)\n\t\t\t\t\ttr.attr('data-share-owner-id', fileData.shareOwnerId)\n\t\t\t\t\t// user should always be able to rename a mount point\n\t\t\t\t\tif (fileData.mountType === 'shared-root') {\n\t\t\t\t\t\ttr.attr('data-permissions', fileData.permissions | OC.PERMISSION_UPDATE)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (fileData.recipientData && !_.isEmpty(fileData.recipientData)) {\n\t\t\t\t\ttr.attr('data-share-recipient-data', JSON.stringify(fileData.recipientData))\n\t\t\t\t}\n\t\t\t\tif (fileData.shareTypes) {\n\t\t\t\t\ttr.attr('data-share-types', fileData.shareTypes.join(','))\n\t\t\t\t}\n\t\t\t\treturn tr\n\t\t\t}\n\n\t\t\tvar oldElementToFile = fileList.elementToFile\n\t\t\tfileList.elementToFile = function($el) {\n\t\t\t\tvar fileInfo = oldElementToFile.apply(this, arguments)\n\t\t\t\tfileInfo.shareAttributes = JSON.parse($el.attr('data-share-attributes') || '[]')\n\t\t\t\tfileInfo.sharePermissions = $el.attr('data-share-permissions') || undefined\n\t\t\t\tfileInfo.shareOwner = $el.attr('data-share-owner') || undefined\n\t\t\t\tfileInfo.shareOwnerId = $el.attr('data-share-owner-id') || undefined\n\n\t\t\t\tif ($el.attr('data-share-types')) {\n\t\t\t\t\tfileInfo.shareTypes = $el.attr('data-share-types').split(',')\n\t\t\t\t}\n\n\t\t\t\tif ($el.attr('data-expiration')) {\n\t\t\t\t\tvar expirationTimestamp = parseInt($el.attr('data-expiration'))\n\t\t\t\t\tfileInfo.shares = []\n\t\t\t\t\tfileInfo.shares.push({ expiration: expirationTimestamp })\n\t\t\t\t}\n\n\t\t\t\treturn fileInfo\n\t\t\t}\n\n\t\t\tvar oldGetWebdavProperties = fileList._getWebdavProperties\n\t\t\tfileList._getWebdavProperties = function() {\n\t\t\t\tvar props = oldGetWebdavProperties.apply(this, arguments)\n\t\t\t\tprops.push(OC.Files.Client.PROPERTY_OWNER_ID)\n\t\t\t\tprops.push(OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME)\n\t\t\t\tprops.push(OC.Files.Client.PROPERTY_SHARE_TYPES)\n\t\t\t\treturn props\n\t\t\t}\n\n\t\t\tfileList.filesClient.addFileInfoParser(function(response) {\n\t\t\t\tvar data = {}\n\t\t\t\tvar props = response.propStat[0].properties\n\t\t\t\tvar permissionsProp = props[OC.Files.Client.PROPERTY_PERMISSIONS]\n\n\t\t\t\tif (permissionsProp && permissionsProp.indexOf('S') >= 0) {\n\t\t\t\t\tdata.shareOwner = props[OC.Files.Client.PROPERTY_OWNER_DISPLAY_NAME]\n\t\t\t\t\tdata.shareOwnerId = props[OC.Files.Client.PROPERTY_OWNER_ID]\n\t\t\t\t}\n\n\t\t\t\tvar shareTypesProp = props[OC.Files.Client.PROPERTY_SHARE_TYPES]\n\t\t\t\tif (shareTypesProp) {\n\t\t\t\t\tdata.shareTypes = _.chain(shareTypesProp).filter(function(xmlvalue) {\n\t\t\t\t\t\treturn (xmlvalue.namespaceURI === OC.Files.Client.NS_OWNCLOUD && xmlvalue.nodeName.split(':')[1] === 'share-type')\n\t\t\t\t\t}).map(function(xmlvalue) {\n\t\t\t\t\t\treturn parseInt(xmlvalue.textContent || xmlvalue.text, 10)\n\t\t\t\t\t}).value()\n\t\t\t\t}\n\n\t\t\t\treturn data\n\t\t\t})\n\n\t\t\t// use delegate to catch the case with multiple file lists\n\t\t\tfileList.$el.on('fileActionsReady', function(ev) {\n\t\t\t\tvar $files = ev.$files\n\n\t\t\t\t_.each($files, function(file) {\n\t\t\t\t\tvar $tr = $(file)\n\t\t\t\t\tvar shareTypesStr = $tr.attr('data-share-types') || ''\n\t\t\t\t\tvar shareOwner = $tr.attr('data-share-owner')\n\t\t\t\t\tif (shareTypesStr || shareOwner) {\n\t\t\t\t\t\tvar hasLink = false\n\t\t\t\t\t\tvar hasShares = false\n\t\t\t\t\t\t_.each(shareTypesStr.split(',') || [], function(shareTypeStr) {\n\t\t\t\t\t\t\tlet shareType = parseInt(shareTypeStr, 10)\n\t\t\t\t\t\t\tif (shareType === ShareType.Link) {\n\t\t\t\t\t\t\t\thasLink = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.Email) {\n\t\t\t\t\t\t\t\thasLink = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.User) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.Group) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.Remote) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.RemoteGroup) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.Team) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.Room) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t} else if (shareType === ShareType.Deck) {\n\t\t\t\t\t\t\t\thasShares = true\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\tOCA.Sharing.Util._updateFileActionIcon($tr, hasShares, hasLink)\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\n\t\t\tfileList.$el.on('changeDirectory', function() {\n\t\t\t\tOCA.Sharing.sharesLoaded = false\n\t\t\t})\n\n\t\t\tfileActions.registerAction({\n\t\t\t\tname: 'Share',\n\t\t\t\tdisplayName: function(context) {\n\t\t\t\t\tif (context && context.$file) {\n\t\t\t\t\t\tvar shareType = parseInt(context.$file.data('share-types'), 10)\n\t\t\t\t\t\tvar shareOwner = context.$file.data('share-owner-id')\n\t\t\t\t\t\tif (shareType >= 0 || shareOwner) {\n\t\t\t\t\t\t\treturn t('files_sharing', 'Shared')\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn t('files_sharing', 'Share')\n\t\t\t\t},\n\t\t\t\taltText: t('files_sharing', 'Share'),\n\t\t\t\tmime: 'all',\n\t\t\t\torder: -150,\n\t\t\t\tpermissions: OC.PERMISSION_ALL,\n\t\t\t\ticonClass: function(fileName, context) {\n\t\t\t\t\tvar shareType = parseInt(context.$file.data('share-types'), 10)\n\t\t\t\t\tif (shareType === ShareType.Email\n\t\t\t\t\t\t|| shareType === ShareType.Link) {\n\t\t\t\t\t\treturn 'icon-public'\n\t\t\t\t\t}\n\t\t\t\t\treturn 'icon-shared'\n\t\t\t\t},\n\t\t\t\ticon: function(fileName, context) {\n\t\t\t\t\tvar shareOwner = context.$file.data('share-owner-id')\n\t\t\t\t\tif (shareOwner) {\n\t\t\t\t\t\treturn OC.generateUrl(`/avatar/${shareOwner}/32`)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttype: OCA.Files.FileActions.TYPE_INLINE,\n\t\t\t\tactionHandler: function(fileName, context) {\n\t\t\t\t\t// details view disabled in some share lists\n\t\t\t\t\tif (!fileList._detailsView) {\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\t\t\t\t\t// do not open sidebar if permission is set and equal to 0\n\t\t\t\t\tvar permissions = parseInt(context.$file.data('share-permissions'), 10)\n\t\t\t\t\tif (isNaN(permissions) || permissions > 0) {\n\t\t\t\t\t\tfileList.showDetailsView(fileName, 'sharing')\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\trender: function(actionSpec, isDefault, context) {\n\t\t\t\t\tvar permissions = parseInt(context.$file.data('permissions'), 10)\n\t\t\t\t\t// if no share permissions but share owner exists, still show the link\n\t\t\t\t\tif ((permissions & OC.PERMISSION_SHARE) !== 0 || context.$file.attr('data-share-owner')) {\n\t\t\t\t\t\treturn fileActions._defaultRenderAction.call(fileActions, actionSpec, isDefault, context)\n\t\t\t\t\t}\n\t\t\t\t\t// don't render anything\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t// register share breadcrumbs component\n\t\t\tvar breadCrumbSharingDetailView = new OCA.Sharing.ShareBreadCrumbView()\n\t\t\tfileList.registerBreadCrumbDetailView(breadCrumbSharingDetailView)\n\t\t},\n\n\t\t/**\n\t\t * Update file list data attributes\n\t\t */\n\t\t_updateFileListDataAttributes: function(fileList, $tr, shareModel) {\n\t\t\t// files app current cannot show recipients on load, so we don't update the\n\t\t\t// icon when changed for consistency\n\t\t\tif (fileList.id === 'files') {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tvar recipients = _.pluck(shareModel.get('shares'), 'share_with_displayname')\n\t\t\t// note: we only update the data attribute because updateIcon()\n\t\t\tif (recipients.length) {\n\t\t\t\tvar recipientData = _.mapObject(shareModel.get('shares'), function(share) {\n\t\t\t\t\treturn { shareWith: share.share_with, shareWithDisplayName: share.share_with_displayname }\n\t\t\t\t})\n\t\t\t\t$tr.attr('data-share-recipient-data', JSON.stringify(recipientData))\n\t\t\t} else {\n\t\t\t\t$tr.removeAttr('data-share-recipient-data')\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Update the file action share icon for the given file\n\t\t *\n\t\t * @param $tr file element of the file to update\n\t\t * @param {boolean} hasUserShares true if a user share exists\n\t\t * @param {boolean} hasLinkShares true if a link share exists\n\t\t *\n\t\t * @returns {boolean} true if the icon was set, false otherwise\n\t\t */\n\t\t_updateFileActionIcon: function($tr, hasUserShares, hasLinkShares) {\n\t\t\t// if the statuses are loaded already, use them for the icon\n\t\t\t// (needed when scrolling to the next page)\n\t\t\tif (hasUserShares || hasLinkShares || $tr.attr('data-share-recipient-data') || $tr.attr('data-share-owner')) {\n\t\t\t\tOCA.Sharing.Util._markFileAsShared($tr, true, hasLinkShares)\n\t\t\t\treturn true\n\t\t\t}\n\t\t\treturn false\n\t\t},\n\n\t\t/**\n\t\t * Marks/unmarks a given file as shared by changing its action icon\n\t\t * and folder icon.\n\t\t *\n\t\t * @param $tr file element to mark as shared\n\t\t * @param hasShares whether shares are available\n\t\t * @param hasLink whether link share is available\n\t\t */\n\t\t_markFileAsShared: function($tr, hasShares, hasLink) {\n\t\t\tvar action = $tr.find('.fileactions .action[data-action=\"Share\"]')\n\t\t\tvar type = $tr.data('type')\n\t\t\tvar icon = action.find('.icon')\n\t\t\tvar message, recipients, avatars\n\t\t\tvar ownerId = $tr.attr('data-share-owner-id')\n\t\t\tvar owner = $tr.attr('data-share-owner')\n\t\t\tvar mountType = $tr.attr('data-mounttype')\n\t\t\tvar shareFolderIcon\n\t\t\tvar iconClass = 'icon-shared'\n\t\t\taction.removeClass('shared-style')\n\t\t\t// update folder icon\n\t\t\tvar isEncrypted = $tr.attr('data-e2eencrypted')\n\t\t\tif (type === 'dir' && isEncrypted === 'true') {\n\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-encrypted')\n\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t} else if (type === 'dir' && (hasShares || hasLink || ownerId)) {\n\t\t\t\tif (typeof mountType !== 'undefined' && mountType !== 'shared-root' && mountType !== 'shared') {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-' + mountType)\n\t\t\t\t} else if (hasLink) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-public')\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-shared')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t} else if (type === 'dir') {\n\t\t\t\t// FIXME: duplicate of FileList._createRow logic for external folder,\n\t\t\t\t// need to refactor the icon logic into a single code path eventually\n\t\t\t\tif (mountType && mountType.indexOf('external') === 0) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-external')\n\t\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir')\n\t\t\t\t\t// back to default\n\t\t\t\t\t$tr.removeAttr('data-icon')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t}\n\t\t\t// update share action text / icon\n\t\t\tif (hasShares || ownerId) {\n\t\t\t\trecipients = $tr.data('share-recipient-data')\n\t\t\t\taction.addClass('shared-style')\n\n\t\t\t\tavatars = '<span>' + t('files_sharing', 'Shared') + '</span>'\n\t\t\t\t// even if reshared, only show \"Shared by\"\n\t\t\t\tif (ownerId) {\n\t\t\t\t\tmessage = t('files_sharing', 'Shared by')\n\t\t\t\t\tavatars = OCA.Sharing.Util._formatRemoteShare(ownerId, owner, message)\n\t\t\t\t} else if (recipients) {\n\t\t\t\t\tavatars = OCA.Sharing.Util._formatShareList(recipients)\n\t\t\t\t}\n\t\t\t\taction.html(avatars).prepend(icon)\n\n\t\t\t\tif (ownerId || recipients) {\n\t\t\t\t\tvar avatarElement = action.find('.avatar')\n\t\t\t\t\tavatarElement.each(function() {\n\t\t\t\t\t\t$(this).avatar($(this).data('username'), 32)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\taction.html('<span class=\"hidden-visually\">' + t('files_sharing', 'Shared') + '</span>').prepend(icon)\n\t\t\t}\n\t\t\tif (hasLink) {\n\t\t\t\ticonClass = 'icon-public'\n\t\t\t}\n\t\t\ticon.removeClass('icon-shared icon-public').addClass(iconClass)\n\t\t},\n\t\t/**\n\t\t * Format a remote address\n\t\t *\n\t\t * @param {String} shareWith userid, full remote share, or whatever\n\t\t * @param {String} shareWithDisplayName\n\t\t * @param {String} message\n\t\t * @returns {String} HTML code to display\n\t\t */\n\t\t_formatRemoteShare: function(shareWith, shareWithDisplayName, message) {\n\t\t\tvar parts = OCA.Sharing.Util._REMOTE_OWNER_REGEXP.exec(shareWith)\n\t\t\tif (!parts || !parts[7]) {\n\t\t\t\t// display avatar of the user\n\t\t\t\tvar avatar = '<span class=\"avatar\" data-username=\"' + escapeHTML(shareWith) + '\" title=\"' + message + ' ' + escapeHTML(shareWithDisplayName) + '\"></span>'\n\t\t\t\tvar hidden = '<span class=\"hidden-visually\">' + message + ' ' + escapeHTML(shareWithDisplayName) + '</span> '\n\t\t\t\treturn avatar + hidden\n\t\t\t}\n\n\t\t\tvar userName = parts[2]\n\t\t\tvar userDomain = parts[4]\n\t\t\tvar server = parts[5]\n\t\t\tvar protocol = parts[6]\n\t\t\tvar serverPath = parts[8] ? parts[7] : ''; // no trailing slash on root\n\n\t\t\tvar tooltip = message + ' ' + userName\n\t\t\tif (userDomain) {\n\t\t\t\ttooltip += '@' + userDomain\n\t\t\t}\n\t\t\tif (server) {\n\t\t\t\ttooltip += '@' + server.replace(protocol, '') + serverPath\n\t\t\t}\n\n\t\t\tvar html = '<span class=\"remoteAddress\" title=\"' + escapeHTML(tooltip) + '\">'\n\t\t\thtml += '<span class=\"username\">' + escapeHTML(userName) + '</span>'\n\t\t\tif (userDomain) {\n\t\t\t\thtml += '<span class=\"userDomain\">@' + escapeHTML(userDomain) + '</span>'\n\t\t\t}\n\t\t\thtml += '</span> '\n\t\t\treturn html\n\t\t},\n\t\t/**\n\t\t * Loop over all recipients in the list and format them using\n\t\t * all kind of fancy magic.\n\t\t *\n\t\t* @param {Object} recipients array of all the recipients\n\t\t* @returns {String[]} modified list of recipients\n\t\t*/\n\t\t_formatShareList: function(recipients) {\n\t\t\tvar _parent = this\n\t\t\trecipients = _.toArray(recipients)\n\t\t\trecipients.sort(function(a, b) {\n\t\t\t\treturn a.shareWithDisplayName.localeCompare(b.shareWithDisplayName)\n\t\t\t})\n\t\t\treturn $.map(recipients, function(recipient) {\n\t\t\t\treturn _parent._formatRemoteShare(recipient.shareWith, recipient.shareWithDisplayName, t('files_sharing', 'Shared with'))\n\t\t\t})\n\t\t},\n\n\t\t/**\n\t\t * Marks/unmarks a given file as shared by changing its action icon\n\t\t * and folder icon.\n\t\t *\n\t\t* @param $tr file element to mark as shared\n\t\t* @param hasShares whether shares are available\n\t\t* @param hasLink whether link share is available\n\t\t*/\n\t\tmarkFileAsShared: function($tr, hasShares, hasLink) {\n\t\t\tvar action = $tr.find('.fileactions .action[data-action=\"Share\"]')\n\t\t\tvar type = $tr.data('type')\n\t\t\tvar icon = action.find('.icon')\n\t\t\tvar message, recipients, avatars\n\t\t\tvar ownerId = $tr.attr('data-share-owner-id')\n\t\t\tvar owner = $tr.attr('data-share-owner')\n\t\t\tvar mountType = $tr.attr('data-mounttype')\n\t\t\tvar shareFolderIcon\n\t\t\tvar iconClass = 'icon-shared'\n\t\t\taction.removeClass('shared-style')\n\t\t\t// update folder icon\n\t\t\tif (type === 'dir' && (hasShares || hasLink || ownerId)) {\n\t\t\t\tif (typeof mountType !== 'undefined' && mountType !== 'shared-root' && mountType !== 'shared') {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-' + mountType)\n\t\t\t\t} else if (hasLink) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-public')\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-shared')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t} else if (type === 'dir') {\n\t\t\t\tvar isEncrypted = $tr.attr('data-e2eencrypted')\n\t\t\t\t// FIXME: duplicate of FileList._createRow logic for external folder,\n\t\t\t\t// need to refactor the icon logic into a single code path eventually\n\t\t\t\tif (isEncrypted === 'true') {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-encrypted')\n\t\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t\t} else if (mountType && mountType.indexOf('external') === 0) {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir-external')\n\t\t\t\t\t$tr.attr('data-icon', shareFolderIcon)\n\t\t\t\t} else {\n\t\t\t\t\tshareFolderIcon = OC.MimeType.getIconUrl('dir')\n\t\t\t\t\t// back to default\n\t\t\t\t\t$tr.removeAttr('data-icon')\n\t\t\t\t}\n\t\t\t\t$tr.find('.filename .thumbnail').css('background-image', 'url(' + shareFolderIcon + ')')\n\t\t\t}\n\t\t\t// update share action text / icon\n\t\t\tif (hasShares || ownerId) {\n\t\t\t\trecipients = $tr.data('share-recipient-data')\n\t\t\t\taction.addClass('shared-style')\n\n\t\t\t\tavatars = '<span>' + t('files_sharing', 'Shared') + '</span>'\n\t\t\t\t// even if reshared, only show \"Shared by\"\n\t\t\t\tif (ownerId) {\n\t\t\t\t\tmessage = t('files_sharing', 'Shared by')\n\t\t\t\t\tavatars = this._formatRemoteShare(ownerId, owner, message)\n\t\t\t\t} else if (recipients) {\n\t\t\t\t\tavatars = this._formatShareList(recipients)\n\t\t\t\t}\n\t\t\t\taction.html(avatars).prepend(icon)\n\n\t\t\t\tif (ownerId || recipients) {\n\t\t\t\t\tvar avatarElement = action.find('.avatar')\n\t\t\t\t\tavatarElement.each(function() {\n\t\t\t\t\t\t$(this).avatar($(this).data('username'), 32)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\taction.html('<span class=\"hidden-visually\">' + t('files_sharing', 'Shared') + '</span>').prepend(icon)\n\t\t\t}\n\t\t\tif (hasLink) {\n\t\t\t\ticonClass = 'icon-public'\n\t\t\t}\n\t\t\ticon.removeClass('icon-shared icon-public').addClass(iconClass)\n\t\t},\n\n\t\t/**\n\t\t * @param {Array} fileData\n\t\t * @returns {String}\n\t\t */\n\t\tgetSharePermissions: function(fileData) {\n\t\t\treturn fileData.sharePermissions\n\t\t}\n\t}\n})()\n\nOC.Plugins.register('OCA.Files.FileList', OCA.Sharing.Util)\n","/**\n * @copyright 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\n *\n * @author Christoph Wurst <christoph@winzerhof-wurst.at>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport { ShareType } from '@nextcloud/sharing'\n\n(function() {\n\t'use strict'\n\n\tconst BreadCrumbView = OC.Backbone.View.extend({\n\t\ttagName: 'span',\n\t\tevents: {\n\t\t\tclick: '_onClick',\n\t\t},\n\t\t_dirInfo: undefined,\n\n\t\trender(data) {\n\t\t\tthis._dirInfo = data.dirInfo || null\n\n\t\t\tif (this._dirInfo !== null && (this._dirInfo.path !== '/' || this._dirInfo.name !== '')) {\n\t\t\t\tconst isShared = data.dirInfo && data.dirInfo.shareTypes && data.dirInfo.shareTypes.length > 0\n\t\t\t\tthis.$el.removeClass('shared icon-public icon-shared')\n\t\t\t\tif (isShared) {\n\t\t\t\t\tthis.$el.addClass('shared')\n\t\t\t\t\tif (data.dirInfo.shareTypes.indexOf(ShareType.Link) !== -1) {\n\t\t\t\t\t\tthis.$el.addClass('icon-public')\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.$el.addClass('icon-shared')\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.$el.addClass('icon-shared')\n\t\t\t\t}\n\t\t\t\tthis.$el.show()\n\t\t\t\tthis.delegateEvents()\n\t\t\t} else {\n\t\t\t\tthis.$el.removeClass('shared icon-public icon-shared')\n\t\t\t\tthis.$el.hide()\n\t\t\t}\n\n\t\t\treturn this\n\t\t},\n\t\t_onClick(e) {\n\t\t\te.preventDefault()\n\t\t\te.stopPropagation()\n\n\t\t\tconst fileInfoModel = new OCA.Files.FileInfoModel(this._dirInfo)\n\t\t\tconst self = this\n\t\t\tfileInfoModel.on('change', function() {\n\t\t\t\tself.render({\n\t\t\t\t\tdirInfo: self._dirInfo,\n\t\t\t\t})\n\t\t\t})\n\n\t\t\tconst path = fileInfoModel.attributes.path + '/' + fileInfoModel.attributes.name\n\t\t\tOCA.Files.Sidebar.open(path)\n\t\t\tOCA.Files.Sidebar.setActiveTab('sharing')\n\t\t},\n\t})\n\n\tOCA.Sharing.ShareBreadCrumbView = BreadCrumbView\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!./sharebreadcrumb.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!./sharebreadcrumb.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2016 Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Roeland Jago Douma <roeland@famdouma.nl>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport './share.js'\nimport './sharebreadcrumbview.js'\nimport './style/sharebreadcrumb.scss'\nimport './collaborationresourceshandler.js'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(OC.requestToken)\n\nwindow.OCA.Sharing = OCA.Sharing\n","/**\n * @copyright Copyright (c) 2016 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(OC.requestToken)\n\nwindow.OCP.Collaboration.registerType('file', {\n\taction: () => {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tOC.dialogs.filepicker(t('files_sharing', 'Link to a file'), function(f) {\n\t\t\t\tconst client = OC.Files.getClient()\n\t\t\t\tclient.getFileInfo(f).then((status, fileInfo) => {\n\t\t\t\t\tresolve(fileInfo.id)\n\t\t\t\t}).fail(() => {\n\t\t\t\t\treject(new Error('Cannot get fileinfo'))\n\t\t\t\t})\n\t\t\t}, false, null, false, OC.dialogs.FILEPICKER_TYPE_CHOOSE, '', { allowDirectoryChooser: true })\n\t\t})\n\t},\n\ttypeString: t('files_sharing', 'Link to a file'),\n\ttypeIconClass: 'icon-files-dark',\n})\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, `li.crumb span.icon-shared,li.crumb span.icon-public{display:inline-block;cursor:pointer;opacity:.2;margin-right:6px}li.crumb span.icon-shared.shared,li.crumb span.icon-public.shared{opacity:.7}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/style/sharebreadcrumb.scss\"],\"names\":[],\"mappings\":\"AAsBA,oDAEC,oBAAA,CACA,cAAA,CACA,UAAA,CACA,gBAAA,CAGD,kEAEC,UAAA\",\"sourcesContent\":[\"/**\\n * @copyright 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\\n *\\n * @author 2016 Christoph Wurst <christoph@winzerhof-wurst.at>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n\\nli.crumb span.icon-shared,\\nli.crumb span.icon-public {\\n\\tdisplay: inline-block;\\n\\tcursor: pointer;\\n\\topacity: 0.2;\\n\\tmargin-right: 6px;\\n}\\n\\nli.crumb span.icon-shared.shared,\\nli.crumb span.icon-public.shared {\\n\\topacity: 0.7;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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};","// The chunk loading function for additional chunks\n// Since all referenced chunks are already included\n// in this file, this function is empty here.\n__webpack_require__.e = () => (Promise.resolve());","__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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 9643;","__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\t9643: 0,\n\t7541: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(6651)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","_","extend","OC","Files","Client","PROPERTY_SHARE_TYPES","NS_OWNCLOUD","PROPERTY_OWNER_ID","PROPERTY_OWNER_DISPLAY_NAME","OCA","Sharing","Util","_REMOTE_OWNER_REGEXP","RegExp","attach","fileList","_getCapabilities$file","getCapabilities","files_sharing","api_enabled","id","fileActions","oldCreateRow","_createRow","fileData","tr","apply","this","arguments","sharePermissions","getSharePermissions","permissions","actions","all","Comment","Details","Goto","isFunction","canDownload","Download","PERMISSION_UPDATE","MoveCopy","attr","JSON","stringify","shareAttributes","shareOwner","shareOwnerId","mountType","recipientData","isEmpty","shareTypes","join","oldElementToFile","elementToFile","$el","fileInfo","parse","undefined","split","expirationTimestamp","parseInt","shares","push","expiration","oldGetWebdavProperties","_getWebdavProperties","props","filesClient","addFileInfoParser","response","data","propStat","properties","permissionsProp","PROPERTY_PERMISSIONS","indexOf","shareTypesProp","chain","filter","xmlvalue","namespaceURI","nodeName","map","textContent","text","value","on","ev","$files","each","file","$tr","$","shareTypesStr","hasLink","hasShares","shareTypeStr","shareType","ShareType","Link","Email","User","Group","Remote","RemoteGroup","Team","Room","Deck","_updateFileActionIcon","sharesLoaded","registerAction","name","displayName","context","$file","t","altText","mime","order","PERMISSION_ALL","iconClass","fileName","icon","generateUrl","concat","type","FileActions","TYPE_INLINE","actionHandler","_detailsView","isNaN","showDetailsView","render","actionSpec","isDefault","PERMISSION_SHARE","_defaultRenderAction","call","breadCrumbSharingDetailView","ShareBreadCrumbView","registerBreadCrumbDetailView","_updateFileListDataAttributes","shareModel","pluck","get","length","mapObject","share","shareWith","share_with","shareWithDisplayName","share_with_displayname","removeAttr","hasUserShares","hasLinkShares","_markFileAsShared","message","recipients","avatars","shareFolderIcon","action","find","ownerId","owner","removeClass","isEncrypted","MimeType","getIconUrl","css","addClass","_formatRemoteShare","_formatShareList","html","prepend","avatar","parts","exec","escapeHTML","userName","userDomain","server","protocol","serverPath","tooltip","replace","_parent","toArray","sort","a","b","localeCompare","recipient","markFileAsShared","Plugins","register","BreadCrumbView","Backbone","View","tagName","events","click","_dirInfo","dirInfo","path","hide","isShared","show","delegateEvents","_onClick","e","preventDefault","stopPropagation","fileInfoModel","FileInfoModel","self","attributes","Sidebar","open","setActiveTab","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","__webpack_nonce__","btoa","requestToken","window","OCP","Collaboration","registerType","Promise","resolve","reject","dialogs","filepicker","f","getClient","getFileInfo","then","status","fail","Error","FILEPICKER_TYPE_CHOOSE","allowDirectoryChooser","typeString","typeIconClass","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","Object","keys","every","key","splice","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","nmd","paths","children","document","baseURI","location","href","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
diff --git a/dist/files_sharing-files_sharing_tab.js b/dist/files_sharing-files_sharing_tab.js
index 2b6b109e3a4..20d71a5a568 100644
--- a/dist/files_sharing-files_sharing_tab.js
+++ b/dist/files_sharing-files_sharing_tab.js
@@ -1,3 +1,3 @@
/*! For license information please see files_sharing-files_sharing_tab.js.LICENSE.txt */
-(()=>{"use strict";var e,t,r,i={69196:(e,t,r)=>{var i=r(85471),n=r(53334),o=r(21777),a=r(96763);var s=r(96763);var l=r(96763);r.nc=btoa((0,o.do)()),window.OCA.Sharing||(window.OCA.Sharing={}),Object.assign(window.OCA.Sharing,{ShareSearch:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_state"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._state={},this._state.results=[],a.debug("OCA.Sharing.ShareSearch initialized")}get state(){return this._state}addNewResult(e){return""!==e.displayName.trim()&&"function"==typeof e.handler?(this._state.results.push(e),!0):(a.error("Invalid search result provided",e),!1)}}}),Object.assign(window.OCA.Sharing,{ExternalLinkActions:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_state"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._state={},this._state.actions=[],s.debug("OCA.Sharing.ExternalLinkActions initialized")}get state(){return this._state}registerAction(e){return OC.debug&&s.warn("OCA.Sharing.ExternalLinkActions is deprecated, use OCA.Sharing.ExternalShareAction instead"),"object"==typeof e&&e.icon&&e.name&&e.url?(this._state.actions.push(e),!0):(s.error("Invalid action provided",e),!1)}}}),Object.assign(window.OCA.Sharing,{ExternalShareActions:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_state"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._state={},this._state.actions=[],l.debug("OCA.Sharing.ExternalShareActions initialized")}get state(){return this._state}registerAction(e){return"object"==typeof e&&"string"==typeof e.id&&"function"==typeof e.data&&Array.isArray(e.shareType)&&"object"==typeof e.handlers&&Object.values(e.handlers).every((e=>"function"==typeof e))?this._state.actions.findIndex((t=>t.id===e.id))>-1?(l.error("An action with the same id ".concat(e.id," already exists"),e),!1):(this._state.actions.push(e),!0):(l.error("Invalid action provided",e),!1)}}}),Object.assign(window.OCA.Sharing,{ShareTabSections:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_sections"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._sections=[]}registerSection(e){this._sections.push(e)}getSections(){return this._sections}}}),i.Ay.prototype.t=n.Tl,i.Ay.prototype.n=n.zw;let c=null;window.addEventListener("DOMContentLoaded",(function(){OCA.Files&&OCA.Files.Sidebar&&OCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({id:"sharing",name:(0,n.Tl)("files_sharing","Sharing"),iconSvg:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-share-variant" viewBox="0 0 24 24"><path d="M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0 0,0 18,16.08Z" /></svg>',async mount(e,t,n){const o=(await Promise.all([r.e(4208),r.e(5724)]).then(r.bind(r,76322))).default,a=i.Ay.extend(o);c&&c.$destroy(),c=new a({parent:n}),await c.update(t),c.$mount(e)},update(e){c.update(e)},destroy(){c&&(c.$destroy(),c=null)}}))}))}},n={};function o(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={id:e,loaded:!1,exports:{}};return i[e].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=i,e=[],o.O=(t,r,i,n)=>{if(!r){var a=1/0;for(u=0;u<e.length;u++){r=e[u][0],i=e[u][1],n=e[u][2];for(var s=!0,l=0;l<r.length;l++)(!1&n||a>=n)&&Object.keys(o.O).every((e=>o.O[e](r[l])))?r.splice(l--,1):(s=!1,n<a&&(a=n));if(s){e.splice(u--,1);var c=i();void 0!==c&&(t=c)}}return t}n=n||0;for(var u=e.length;u>0&&e[u-1][2]>n;u--)e[u]=e[u-1];e[u]=[r,i,n]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((t,r)=>(o.f[r](e,t),t)),[])),o.u=e=>e+"-"+e+".js?v="+{1902:"15c69743cf3911d7117d",5724:"b7bea40d5b6f46423af7",8066:"f1f0a3884f0b92377e6a"}[e],o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},r="nextcloud:",o.l=(e,i,n,a)=>{if(t[e])t[e].push(i);else{var s,l;if(void 0!==n)for(var c=document.getElementsByTagName("script"),u=0;u<c.length;u++){var d=c[u];if(d.getAttribute("src")==e||d.getAttribute("data-webpack")==r+n){s=d;break}}s||(l=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,o.nc&&s.setAttribute("nonce",o.nc),s.setAttribute("data-webpack",r+n),s.src=e),t[e]=[i];var p=(r,i)=>{s.onerror=s.onload=null,clearTimeout(f);var n=t[e];if(delete t[e],s.parentNode&&s.parentNode.removeChild(s),n&&n.forEach((e=>e(i))),r)return r(i)},f=setTimeout(p.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=p.bind(null,s.onerror),s.onload=p.bind(null,s.onload),l&&document.head.appendChild(s)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),o.j=4958,(()=>{var e;o.g.importScripts&&(e=o.g.location+"");var t=o.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var i=r.length-1;i>-1&&(!e||!/^http(s?):/.test(e));)e=r[i--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=e})(),(()=>{o.b=document.baseURI||self.location.href;var e={4958:0};o.f.j=(t,r)=>{var i=o.o(e,t)?e[t]:void 0;if(0!==i)if(i)r.push(i[2]);else{var n=new Promise(((r,n)=>i=e[t]=[r,n]));r.push(i[2]=n);var a=o.p+o.u(t),s=new Error;o.l(a,(r=>{if(o.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var n=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+n+": "+a+")",s.name="ChunkLoadError",s.type=n,s.request=a,i[1](s)}}),"chunk-"+t,t)}},o.O.j=t=>0===e[t];var t=(t,r)=>{var i,n,a=r[0],s=r[1],l=r[2],c=0;if(a.some((t=>0!==e[t]))){for(i in s)o.o(s,i)&&(o.m[i]=s[i]);if(l)var u=l(o)}for(t&&t(r);c<a.length;c++)n=a[c],o.o(e,n)&&e[n]&&e[n][0](),e[n]=0;return o.O(u)},r=self.webpackChunknextcloud=self.webpackChunknextcloud||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),o.nc=void 0;var a=o.O(void 0,[4208],(()=>o(69196)));a=o.O(a)})();
-//# sourceMappingURL=files_sharing-files_sharing_tab.js.map?v=8b6dc8d33d3553b155e8 \ No newline at end of file
+(()=>{"use strict";var e,t,r,i={69196:(e,t,r)=>{var i=r(85471),n=r(53334),a=r(21777),o=r(96763);var s=r(96763);var l=r(96763);r.nc=btoa((0,a.do)()),window.OCA.Sharing||(window.OCA.Sharing={}),Object.assign(window.OCA.Sharing,{ShareSearch:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_state"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._state={},this._state.results=[],o.debug("OCA.Sharing.ShareSearch initialized")}get state(){return this._state}addNewResult(e){return""!==e.displayName.trim()&&"function"==typeof e.handler?(this._state.results.push(e),!0):(o.error("Invalid search result provided",e),!1)}}}),Object.assign(window.OCA.Sharing,{ExternalLinkActions:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_state"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._state={},this._state.actions=[],s.debug("OCA.Sharing.ExternalLinkActions initialized")}get state(){return this._state}registerAction(e){return OC.debug&&s.warn("OCA.Sharing.ExternalLinkActions is deprecated, use OCA.Sharing.ExternalShareAction instead"),"object"==typeof e&&e.icon&&e.name&&e.url?(this._state.actions.push(e),!0):(s.error("Invalid action provided",e),!1)}}}),Object.assign(window.OCA.Sharing,{ExternalShareActions:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_state"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._state={},this._state.actions=[],l.debug("OCA.Sharing.ExternalShareActions initialized")}get state(){return this._state}registerAction(e){return"object"==typeof e&&"string"==typeof e.id&&"function"==typeof e.data&&Array.isArray(e.shareType)&&"object"==typeof e.handlers&&Object.values(e.handlers).every((e=>"function"==typeof e))?this._state.actions.findIndex((t=>t.id===e.id))>-1?(l.error("An action with the same id ".concat(e.id," already exists"),e),!1):(this._state.actions.push(e),!0):(l.error("Invalid action provided",e),!1)}}}),Object.assign(window.OCA.Sharing,{ShareTabSections:new class{constructor(){var e,t,r,i;e=this,r=void 0,(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t="_sections"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,this._sections=[]}registerSection(e){this._sections.push(e)}getSections(){return this._sections}}}),i.Ay.prototype.t=n.Tl,i.Ay.prototype.n=n.zw;let c=null;window.addEventListener("DOMContentLoaded",(function(){OCA.Files&&OCA.Files.Sidebar&&OCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({id:"sharing",name:(0,n.Tl)("files_sharing","Sharing"),iconSvg:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-share-variant" viewBox="0 0 24 24"><path d="M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0 0,0 18,16.08Z" /></svg>',async mount(e,t,n){const a=(await Promise.all([r.e(4208),r.e(3098)]).then(r.bind(r,86839))).default,o=i.Ay.extend(a);c&&c.$destroy(),c=new o({parent:n}),await c.update(t),c.$mount(e)},update(e){c.update(e)},destroy(){c&&(c.$destroy(),c=null)}}))}))}},n={};function a(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={id:e,loaded:!1,exports:{}};return i[e].call(r.exports,r,r.exports,a),r.loaded=!0,r.exports}a.m=i,e=[],a.O=(t,r,i,n)=>{if(!r){var o=1/0;for(u=0;u<e.length;u++){r=e[u][0],i=e[u][1],n=e[u][2];for(var s=!0,l=0;l<r.length;l++)(!1&n||o>=n)&&Object.keys(a.O).every((e=>a.O[e](r[l])))?r.splice(l--,1):(s=!1,n<o&&(o=n));if(s){e.splice(u--,1);var c=i();void 0!==c&&(t=c)}}return t}n=n||0;for(var u=e.length;u>0&&e[u-1][2]>n;u--)e[u]=e[u-1];e[u]=[r,i,n]},a.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((t,r)=>(a.f[r](e,t),t)),[])),a.u=e=>e+"-"+e+".js?v="+{1902:"15c69743cf3911d7117d",3098:"708c5ceed10a77e85209",8066:"f1f0a3884f0b92377e6a"}[e],a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},r="nextcloud:",a.l=(e,i,n,o)=>{if(t[e])t[e].push(i);else{var s,l;if(void 0!==n)for(var c=document.getElementsByTagName("script"),u=0;u<c.length;u++){var d=c[u];if(d.getAttribute("src")==e||d.getAttribute("data-webpack")==r+n){s=d;break}}s||(l=!0,(s=document.createElement("script")).charset="utf-8",s.timeout=120,a.nc&&s.setAttribute("nonce",a.nc),s.setAttribute("data-webpack",r+n),s.src=e),t[e]=[i];var p=(r,i)=>{s.onerror=s.onload=null,clearTimeout(f);var n=t[e];if(delete t[e],s.parentNode&&s.parentNode.removeChild(s),n&&n.forEach((e=>e(i))),r)return r(i)},f=setTimeout(p.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=p.bind(null,s.onerror),s.onload=p.bind(null,s.onload),l&&document.head.appendChild(s)}},a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),a.j=4958,(()=>{var e;a.g.importScripts&&(e=a.g.location+"");var t=a.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var i=r.length-1;i>-1&&(!e||!/^http(s?):/.test(e));)e=r[i--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),a.p=e})(),(()=>{a.b=document.baseURI||self.location.href;var e={4958:0};a.f.j=(t,r)=>{var i=a.o(e,t)?e[t]:void 0;if(0!==i)if(i)r.push(i[2]);else{var n=new Promise(((r,n)=>i=e[t]=[r,n]));r.push(i[2]=n);var o=a.p+a.u(t),s=new Error;a.l(o,(r=>{if(a.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var n=r&&("load"===r.type?"missing":r.type),o=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+n+": "+o+")",s.name="ChunkLoadError",s.type=n,s.request=o,i[1](s)}}),"chunk-"+t,t)}},a.O.j=t=>0===e[t];var t=(t,r)=>{var i,n,o=r[0],s=r[1],l=r[2],c=0;if(o.some((t=>0!==e[t]))){for(i in s)a.o(s,i)&&(a.m[i]=s[i]);if(l)var u=l(a)}for(t&&t(r);c<o.length;c++)n=o[c],a.o(e,n)&&e[n]&&e[n][0](),e[n]=0;return a.O(u)},r=self.webpackChunknextcloud=self.webpackChunknextcloud||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),a.nc=void 0;var o=a.O(void 0,[4208],(()=>a(69196)));o=a.O(o)})();
+//# sourceMappingURL=files_sharing-files_sharing_tab.js.map?v=5d956b4c5390585c6522 \ No newline at end of file
diff --git a/dist/files_sharing-files_sharing_tab.js.map b/dist/files_sharing-files_sharing_tab.js.map
index 466a9bcf47f..3f92b28ee2b 100644
--- a/dist/files_sharing-files_sharing_tab.js.map
+++ b/dist/files_sharing-files_sharing_tab.js.map
@@ -1 +1 @@
-{"version":3,"file":"files_sharing-files_sharing_tab.js?v=8b6dc8d33d3553b155e8","mappings":";uBAAIA,ECAAC,EACAC,mGCmCJC,EAAAA,GAAoBC,MAAKC,EAAAA,EAAAA,OAGpBC,OAAOC,IAAIC,UACfF,OAAOC,IAAIC,QAAU,CAAC,GAEvBC,OAAOC,OAAOJ,OAAOC,IAAIC,QAAS,CAAEG,YAAa,ICpBlC,MAIdC,WAAAA,iBAAc,kYAEbC,KAAKC,OAAS,CAAC,EAGfD,KAAKC,OAAOC,QAAU,GACtBC,EAAQC,MAAM,sCACf,CASA,SAAIC,GACH,OAAOL,KAAKC,MACb,CAgBAK,YAAAA,CAAaC,GACZ,MAAkC,KAA9BA,EAAOC,YAAYC,QACO,mBAAnBF,EAAOG,SACjBV,KAAKC,OAAOC,QAAQS,KAAKJ,IAClB,IAERJ,EAAQS,MAAM,iCAAkCL,IACzC,EACR,KDzBDX,OAAOC,OAAOJ,OAAOC,IAAIC,QAAS,CAAEkB,oBAAqB,IErB1C,MAIdd,WAAAA,iBAAc,kYAEbC,KAAKC,OAAS,CAAC,EAGfD,KAAKC,OAAOa,QAAU,GACtBX,EAAQC,MAAM,8CACf,CASA,SAAIC,GACH,OAAOL,KAAKC,MACb,CASAc,cAAAA,CAAeC,GAGd,OAFAC,GAAGb,OAASD,EAAQe,KAAK,8FAEH,iBAAXF,GAAuBA,EAAOG,MAAQH,EAAOI,MAAQJ,EAAOK,KACtErB,KAAKC,OAAOa,QAAQH,KAAKK,IAClB,IAERb,EAAQS,MAAM,0BAA2BI,IAClC,EACR,KFlBDpB,OAAOC,OAAOJ,OAAOC,IAAIC,QAAS,CAAE2B,qBAAsB,IGtB3C,MAIdvB,WAAAA,iBAAc,kYAEbC,KAAKC,OAAS,CAAC,EAGfD,KAAKC,OAAOa,QAAU,GACtBX,EAAQC,MAAM,+CACf,CASA,SAAIC,GACH,OAAOL,KAAKC,MACb,CAkBAc,cAAAA,CAAeC,GAEd,MAAsB,iBAAXA,GACc,iBAAdA,EAAOO,IACS,mBAAhBP,EAAOQ,MACbC,MAAMC,QAAQV,EAAOW,YACK,iBAApBX,EAAOY,UACbhC,OAAOiC,OAAOb,EAAOY,UAAUE,OAAMpB,GAA8B,mBAAZA,IAMvCV,KAAKC,OAAOa,QAAQiB,WAAUC,GAASA,EAAMT,KAAOP,EAAOO,MAAO,GAEtFpB,EAAQS,MAAM,8BAADqB,OAA+BjB,EAAOO,GAAE,mBAAmBP,IACjE,IAGRhB,KAAKC,OAAOa,QAAQH,KAAKK,IAClB,IAZNb,EAAQS,MAAM,0BAA2BI,IAClC,EAYT,KHtCDpB,OAAOC,OAAOJ,OAAOC,IAAIC,QAAS,CAAEuC,iBAAkB,IIvBvC,MAIdnC,WAAAA,iBAAc,qYACbC,KAAKmC,UAAY,EAClB,CAKAC,eAAAA,CAAgBC,GACfrC,KAAKmC,UAAUxB,KAAK0B,EACrB,CAEAC,WAAAA,GACC,OAAOtC,KAAKmC,SACb,KJQDI,EAAAA,GAAIC,UAAUC,EAAIA,EAAAA,GAClBF,EAAAA,GAAIC,UAAUE,EAAIA,EAAAA,GAGlB,IAAIC,EAAc,KAElBlD,OAAOmD,iBAAiB,oBAAoB,WACvClD,IAAImD,OAASnD,IAAImD,MAAMC,SAC1BpD,IAAImD,MAAMC,QAAQC,YAAY,IAAIrD,IAAImD,MAAMC,QAAQE,IAAI,CACvDzB,GAAI,UACJH,MAAMqB,EAAAA,EAAAA,IAAE,gBAAiB,WACzBQ,2iBAEA,WAAMC,CAAMC,EAAIC,EAAUC,GACzB,MAAMC,SAAoB,0DAAkCC,QACtDC,EAAOjB,EAAAA,GAAIkB,OAAOH,GAEpBX,GACHA,EAAYe,WAEbf,EAAc,IAAIa,EAAK,CAEtBG,OAAQN,UAGHV,EAAYiB,OAAOR,GACzBT,EAAYkB,OAAOV,EACpB,EAEAS,MAAAA,CAAOR,GACNT,EAAYiB,OAAOR,EACpB,EAEAU,OAAAA,GACKnB,IACHA,EAAYe,WACZf,EAAc,KAEhB,IAGH,MKvFIoB,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAaE,QAGrB,IAAIC,EAASN,EAAyBE,GAAY,CACjD1C,GAAI0C,EACJK,QAAQ,EACRF,QAAS,CAAC,GAUX,OANAG,EAAoBN,GAAUO,KAAKH,EAAOD,QAASC,EAAQA,EAAOD,QAASJ,GAG3EK,EAAOC,QAAS,EAGTD,EAAOD,OACf,CAGAJ,EAAoBS,EAAIF,EP5BpBpF,EAAW,GACf6E,EAAoBU,EAAI,CAACnE,EAAQoE,EAAUC,EAAIC,KAC9C,IAAGF,EAAH,CAMA,IAAIG,EAAeC,IACnB,IAASC,EAAI,EAAGA,EAAI7F,EAAS8F,OAAQD,IAAK,CACrCL,EAAWxF,EAAS6F,GAAG,GACvBJ,EAAKzF,EAAS6F,GAAG,GACjBH,EAAW1F,EAAS6F,GAAG,GAE3B,IAJA,IAGIE,GAAY,EACPC,EAAI,EAAGA,EAAIR,EAASM,OAAQE,MACpB,EAAXN,GAAsBC,GAAgBD,IAAajF,OAAOwF,KAAKpB,EAAoBU,GAAG5C,OAAOuD,GAASrB,EAAoBU,EAAEW,GAAKV,EAASQ,MAC9IR,EAASW,OAAOH,IAAK,IAErBD,GAAY,EACTL,EAAWC,IAAcA,EAAeD,IAG7C,GAAGK,EAAW,CACb/F,EAASmG,OAAON,IAAK,GACrB,IAAIO,EAAIX,SACET,IAANoB,IAAiBhF,EAASgF,EAC/B,CACD,CACA,OAAOhF,CArBP,CAJCsE,EAAWA,GAAY,EACvB,IAAI,IAAIG,EAAI7F,EAAS8F,OAAQD,EAAI,GAAK7F,EAAS6F,EAAI,GAAG,GAAKH,EAAUG,IAAK7F,EAAS6F,GAAK7F,EAAS6F,EAAI,GACrG7F,EAAS6F,GAAK,CAACL,EAAUC,EAAIC,EAuBjB,EQ3Bdb,EAAoBtB,EAAK2B,IACxB,IAAImB,EAASnB,GAAUA,EAAOoB,WAC7B,IAAOpB,EAAiB,QACxB,IAAM,EAEP,OADAL,EAAoB0B,EAAEF,EAAQ,CAAEG,EAAGH,IAC5BA,CAAM,ECLdxB,EAAoB0B,EAAI,CAACtB,EAASwB,KACjC,IAAI,IAAIP,KAAOO,EACX5B,EAAoB6B,EAAED,EAAYP,KAASrB,EAAoB6B,EAAEzB,EAASiB,IAC5EzF,OAAOkG,eAAe1B,EAASiB,EAAK,CAAEU,YAAY,EAAMC,IAAKJ,EAAWP,IAE1E,ECNDrB,EAAoBiC,EAAI,CAAC,EAGzBjC,EAAoBkC,EAAKC,GACjBC,QAAQC,IAAIzG,OAAOwF,KAAKpB,EAAoBiC,GAAGK,QAAO,CAACC,EAAUlB,KACvErB,EAAoBiC,EAAEZ,GAAKc,EAASI,GAC7BA,IACL,KCNJvC,EAAoBwC,EAAKL,GAEZA,EAAU,IAAMA,EAAU,SAAW,CAAC,KAAO,uBAAuB,KAAO,uBAAuB,KAAO,wBAAwBA,GCH9InC,EAAoByC,EAAI,WACvB,GAA0B,iBAAfC,WAAyB,OAAOA,WAC3C,IACC,OAAO1G,MAAQ,IAAI2G,SAAS,cAAb,EAChB,CAAE,MAAOT,GACR,GAAsB,iBAAXzG,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxBuE,EAAoB6B,EAAI,CAACe,EAAKC,IAAUjH,OAAO4C,UAAUsE,eAAetC,KAAKoC,EAAKC,GZA9EzH,EAAa,CAAC,EACdC,EAAoB,aAExB2E,EAAoB+C,EAAI,CAAC1F,EAAK2F,EAAM3B,EAAKc,KACxC,GAAG/G,EAAWiC,GAAQjC,EAAWiC,GAAKV,KAAKqG,OAA3C,CACA,IAAIC,EAAQC,EACZ,QAAW/C,IAARkB,EAEF,IADA,IAAI8B,EAAUC,SAASC,qBAAqB,UACpCrC,EAAI,EAAGA,EAAImC,EAAQlC,OAAQD,IAAK,CACvC,IAAIsC,EAAIH,EAAQnC,GAChB,GAAGsC,EAAEC,aAAa,QAAUlG,GAAOiG,EAAEC,aAAa,iBAAmBlI,EAAoBgG,EAAK,CAAE4B,EAASK,EAAG,KAAO,CACpH,CAEGL,IACHC,GAAa,GACbD,EAASG,SAASI,cAAc,WAEzBC,QAAU,QACjBR,EAAOS,QAAU,IACb1D,EAAoB2D,IACvBV,EAAOW,aAAa,QAAS5D,EAAoB2D,IAElDV,EAAOW,aAAa,eAAgBvI,EAAoBgG,GAExD4B,EAAOY,IAAMxG,GAEdjC,EAAWiC,GAAO,CAAC2F,GACnB,IAAIc,EAAmB,CAACC,EAAMC,KAE7Bf,EAAOgB,QAAUhB,EAAOiB,OAAS,KACjCC,aAAaT,GACb,IAAIU,EAAUhJ,EAAWiC,GAIzB,UAHOjC,EAAWiC,GAClB4F,EAAOoB,YAAcpB,EAAOoB,WAAWC,YAAYrB,GACnDmB,GAAWA,EAAQG,SAAS3D,GAAQA,EAAGoD,KACpCD,EAAM,OAAOA,EAAKC,EAAM,EAExBN,EAAUc,WAAWV,EAAiBW,KAAK,UAAMtE,EAAW,CAAEuE,KAAM,UAAWC,OAAQ1B,IAAW,MACtGA,EAAOgB,QAAUH,EAAiBW,KAAK,KAAMxB,EAAOgB,SACpDhB,EAAOiB,OAASJ,EAAiBW,KAAK,KAAMxB,EAAOiB,QACnDhB,GAAcE,SAASwB,KAAKC,YAAY5B,EApCkB,CAoCX,EavChDjD,EAAoBuB,EAAKnB,IACH,oBAAX0E,QAA0BA,OAAOC,aAC1CnJ,OAAOkG,eAAe1B,EAAS0E,OAAOC,YAAa,CAAEC,MAAO,WAE7DpJ,OAAOkG,eAAe1B,EAAS,aAAc,CAAE4E,OAAO,GAAO,ECL9DhF,EAAoBiF,IAAO5E,IAC1BA,EAAO6E,MAAQ,GACV7E,EAAO8E,WAAU9E,EAAO8E,SAAW,IACjC9E,GCHRL,EAAoBmB,EAAI,WCAxB,IAAIiE,EACApF,EAAoByC,EAAE4C,gBAAeD,EAAYpF,EAAoByC,EAAE6C,SAAW,IACtF,IAAIlC,EAAWpD,EAAoByC,EAAEW,SACrC,IAAKgC,GAAahC,IACbA,EAASmC,eAAkE,WAAjDnC,EAASmC,cAAcC,QAAQC,gBAC5DL,EAAYhC,EAASmC,cAAc1B,MAC/BuB,GAAW,CACf,IAAIjC,EAAUC,EAASC,qBAAqB,UAC5C,GAAGF,EAAQlC,OAEV,IADA,IAAID,EAAImC,EAAQlC,OAAS,EAClBD,GAAK,KAAOoE,IAAc,aAAaM,KAAKN,KAAaA,EAAYjC,EAAQnC,KAAK6C,GAE3F,CAID,IAAKuB,EAAW,MAAM,IAAIO,MAAM,yDAChCP,EAAYA,EAAUQ,QAAQ,OAAQ,IAAIA,QAAQ,QAAS,IAAIA,QAAQ,YAAa,KACpF5F,EAAoB6F,EAAIT,YClBxBpF,EAAoB8F,EAAI1C,SAAS2C,SAAWC,KAAKV,SAASW,KAK1D,IAAIC,EAAkB,CACrB,KAAM,GAGPlG,EAAoBiC,EAAEd,EAAI,CAACgB,EAASI,KAElC,IAAI4D,EAAqBnG,EAAoB6B,EAAEqE,EAAiB/D,GAAW+D,EAAgB/D,QAAWhC,EACtG,GAA0B,IAAvBgG,EAGF,GAAGA,EACF5D,EAAS5F,KAAKwJ,EAAmB,QAC3B,CAGL,IAAIC,EAAU,IAAIhE,SAAQ,CAACiE,EAASC,IAAYH,EAAqBD,EAAgB/D,GAAW,CAACkE,EAASC,KAC1G/D,EAAS5F,KAAKwJ,EAAmB,GAAKC,GAGtC,IAAI/I,EAAM2C,EAAoB6F,EAAI7F,EAAoBwC,EAAEL,GAEpDvF,EAAQ,IAAI+I,MAgBhB3F,EAAoB+C,EAAE1F,GAfF2G,IACnB,GAAGhE,EAAoB6B,EAAEqE,EAAiB/D,KAEf,KAD1BgE,EAAqBD,EAAgB/D,MACR+D,EAAgB/D,QAAWhC,GACrDgG,GAAoB,CACtB,IAAII,EAAYvC,IAAyB,SAAfA,EAAMU,KAAkB,UAAYV,EAAMU,MAChE8B,EAAUxC,GAASA,EAAMW,QAAUX,EAAMW,OAAOd,IACpDjH,EAAM6J,QAAU,iBAAmBtE,EAAU,cAAgBoE,EAAY,KAAOC,EAAU,IAC1F5J,EAAMQ,KAAO,iBACbR,EAAM8H,KAAO6B,EACb3J,EAAM8J,QAAUF,EAChBL,EAAmB,GAAGvJ,EACvB,CACD,GAEwC,SAAWuF,EAASA,EAE/D,CACD,EAWFnC,EAAoBU,EAAES,EAAKgB,GAA0C,IAA7B+D,EAAgB/D,GAGxD,IAAIwE,EAAuB,CAACC,EAA4BpJ,KACvD,IAKIyC,EAAUkC,EALVxB,EAAWnD,EAAK,GAChBqJ,EAAcrJ,EAAK,GACnBsJ,EAAUtJ,EAAK,GAGIwD,EAAI,EAC3B,GAAGL,EAASoG,MAAMxJ,GAAgC,IAAxB2I,EAAgB3I,KAAa,CACtD,IAAI0C,KAAY4G,EACZ7G,EAAoB6B,EAAEgF,EAAa5G,KACrCD,EAAoBS,EAAER,GAAY4G,EAAY5G,IAGhD,GAAG6G,EAAS,IAAIvK,EAASuK,EAAQ9G,EAClC,CAEA,IADG4G,GAA4BA,EAA2BpJ,GACrDwD,EAAIL,EAASM,OAAQD,IACzBmB,EAAUxB,EAASK,GAChBhB,EAAoB6B,EAAEqE,EAAiB/D,IAAY+D,EAAgB/D,IACrE+D,EAAgB/D,GAAS,KAE1B+D,EAAgB/D,GAAW,EAE5B,OAAOnC,EAAoBU,EAAEnE,EAAO,EAGjCyK,EAAqBhB,KAA4B,sBAAIA,KAA4B,uBAAK,GAC1FgB,EAAmBzC,QAAQoC,EAAqBlC,KAAK,KAAM,IAC3DuC,EAAmBrK,KAAOgK,EAAqBlC,KAAK,KAAMuC,EAAmBrK,KAAK8H,KAAKuC,QCvFvFhH,EAAoB2D,QAAKxD,ECGzB,IAAI8G,EAAsBjH,EAAoBU,OAAEP,EAAW,CAAC,OAAO,IAAOH,EAAoB,SAC9FiH,EAAsBjH,EAAoBU,EAAEuG","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_sharing/src/files_sharing_tab.js","webpack:///nextcloud/apps/files_sharing/src/services/ShareSearch.js","webpack:///nextcloud/apps/files_sharing/src/services/ExternalLinkActions.js","webpack:///nextcloud/apps/files_sharing/src/services/ExternalShareActions.js","webpack:///nextcloud/apps/files_sharing/src/services/TabSections.js","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\nimport { getRequestToken } from '@nextcloud/auth'\n\nimport ShareSearch from './services/ShareSearch.js'\nimport ExternalLinkActions from './services/ExternalLinkActions.js'\nimport ExternalShareActions from './services/ExternalShareActions.js'\nimport TabSections from './services/TabSections.js'\n\n// eslint-disable-next-line n/no-missing-import, import/no-unresolved\nimport ShareVariant from '@mdi/svg/svg/share-variant.svg?raw'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n\n// Init Sharing Tab Service\nif (!window.OCA.Sharing) {\n\twindow.OCA.Sharing = {}\n}\nObject.assign(window.OCA.Sharing, { ShareSearch: new ShareSearch() })\nObject.assign(window.OCA.Sharing, { ExternalLinkActions: new ExternalLinkActions() })\nObject.assign(window.OCA.Sharing, { ExternalShareActions: new ExternalShareActions() })\nObject.assign(window.OCA.Sharing, { ShareTabSections: new TabSections() })\n\nVue.prototype.t = t\nVue.prototype.n = n\n\n// Init Sharing tab component\nlet TabInstance = null\n\nwindow.addEventListener('DOMContentLoaded', function() {\n\tif (OCA.Files && OCA.Files.Sidebar) {\n\t\tOCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({\n\t\t\tid: 'sharing',\n\t\t\tname: t('files_sharing', 'Sharing'),\n\t\t\ticonSvg: ShareVariant,\n\n\t\t\tasync mount(el, fileInfo, context) {\n\t\t\t\tconst SharingTab = (await import('./views/SharingTab.vue')).default\n\t\t\t\tconst View = Vue.extend(SharingTab)\n\n\t\t\t\tif (TabInstance) {\n\t\t\t\t\tTabInstance.$destroy()\n\t\t\t\t}\n\t\t\t\tTabInstance = new View({\n\t\t\t\t\t// Better integration with vue parent component\n\t\t\t\t\tparent: context,\n\t\t\t\t})\n\t\t\t\t// Only mount after we have all the info we need\n\t\t\t\tawait TabInstance.update(fileInfo)\n\t\t\t\tTabInstance.$mount(el)\n\t\t\t},\n\n\t\t\tupdate(fileInfo) {\n\t\t\t\tTabInstance.update(fileInfo)\n\t\t\t},\n\n\t\t\tdestroy() {\n\t\t\t\tif (TabInstance) {\n\t\t\t\t\tTabInstance.$destroy()\n\t\t\t\t\tTabInstance = null\n\t\t\t\t}\n\t\t\t},\n\t\t}))\n\t}\n})\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class ShareSearch {\n\n\t_state\n\n\tconstructor() {\n\t\t// init empty state\n\t\tthis._state = {}\n\n\t\t// init default values\n\t\tthis._state.results = []\n\t\tconsole.debug('OCA.Sharing.ShareSearch initialized')\n\t}\n\n\t/**\n\t * Get the state\n\t *\n\t * @readonly\n\t * @memberof ShareSearch\n\t * @return {object} the data state\n\t */\n\tget state() {\n\t\treturn this._state\n\t}\n\n\t/**\n\t * Register a new result\n\t * Mostly used by the guests app.\n\t * We should consider deprecation and add results via php ?\n\t *\n\t * @param {object} result entry to append\n\t * @param {string} [result.user] entry user\n\t * @param {string} result.displayName entry first line\n\t * @param {string} [result.desc] entry second line\n\t * @param {string} [result.icon] entry icon\n\t * @param {Function} result.handler function to run on entry selection\n\t * @param {Function} [result.condition] condition to add entry or not\n\t * @return {boolean}\n\t */\n\taddNewResult(result) {\n\t\tif (result.displayName.trim() !== ''\n\t\t\t&& typeof result.handler === 'function') {\n\t\t\tthis._state.results.push(result)\n\t\t\treturn true\n\t\t}\n\t\tconsole.error('Invalid search result provided', result)\n\t\treturn false\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class ExternalLinkActions {\n\n\t_state\n\n\tconstructor() {\n\t\t// init empty state\n\t\tthis._state = {}\n\n\t\t// init default values\n\t\tthis._state.actions = []\n\t\tconsole.debug('OCA.Sharing.ExternalLinkActions initialized')\n\t}\n\n\t/**\n\t * Get the state\n\t *\n\t * @readonly\n\t * @memberof ExternalLinkActions\n\t * @return {object} the data state\n\t */\n\tget state() {\n\t\treturn this._state\n\t}\n\n\t/**\n\t * Register a new action for the link share\n\t * Mostly used by the social sharing app.\n\t *\n\t * @param {object} action new action component to register\n\t * @return {boolean}\n\t */\n\tregisterAction(action) {\n\t\tOC.debug && console.warn('OCA.Sharing.ExternalLinkActions is deprecated, use OCA.Sharing.ExternalShareAction instead')\n\n\t\tif (typeof action === 'object' && action.icon && action.name && action.url) {\n\t\t\tthis._state.actions.push(action)\n\t\t\treturn true\n\t\t}\n\t\tconsole.error('Invalid action provided', action)\n\t\treturn false\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class ExternalShareActions {\n\n\t_state\n\n\tconstructor() {\n\t\t// init empty state\n\t\tthis._state = {}\n\n\t\t// init default values\n\t\tthis._state.actions = []\n\t\tconsole.debug('OCA.Sharing.ExternalShareActions initialized')\n\t}\n\n\t/**\n\t * Get the state\n\t *\n\t * @readonly\n\t * @memberof ExternalLinkActions\n\t * @return {object} the data state\n\t */\n\tget state() {\n\t\treturn this._state\n\t}\n\n\t/**\n\t * @typedef ExternalShareActionData\n\t * @property {import('vue').Component} is Vue component to render, for advanced actions the `async onSave` method of the component will be called when saved\n\t */\n\n\t/**\n\t * Register a new option/entry for the a given share type\n\t *\n\t * @param {object} action new action component to register\n\t * @param {string} action.id unique action id\n\t * @param {(data: any) => ExternalShareActionData & Record<string, unknown>} action.data data to bind the component to\n\t * @param {Array} action.shareType list of \\@nextcloud/sharing.Types.SHARE_XXX to be mounted on\n\t * @param {boolean} action.advanced `true` if the action entry should be rendered within advanced settings\n\t * @param {object} action.handlers list of listeners\n\t * @return {boolean}\n\t */\n\tregisterAction(action) {\n\t\t// Validate action\n\t\tif (typeof action !== 'object'\n\t\t\t|| typeof action.id !== 'string'\n\t\t\t|| typeof action.data !== 'function' // () => {disabled: true}\n\t\t\t|| !Array.isArray(action.shareType) // [\\@nextcloud/sharing.Types.SHARE_TYPE_LINK, ...]\n\t\t\t|| typeof action.handlers !== 'object' // {click: () => {}, ...}\n\t\t\t|| !Object.values(action.handlers).every(handler => typeof handler === 'function')) {\n\t\t\tconsole.error('Invalid action provided', action)\n\t\t\treturn false\n\t\t}\n\n\t\t// Check duplicates\n\t\tconst hasDuplicate = this._state.actions.findIndex(check => check.id === action.id) > -1\n\t\tif (hasDuplicate) {\n\t\t\tconsole.error(`An action with the same id ${action.id} already exists`, action)\n\t\t\treturn false\n\t\t}\n\n\t\tthis._state.actions.push(action)\n\t\treturn true\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class TabSections {\n\n\t_sections\n\n\tconstructor() {\n\t\tthis._sections = []\n\t}\n\n\t/**\n\t * @param {registerSectionCallback} section To be called to mount the section to the sharing sidebar\n\t */\n\tregisterSection(section) {\n\t\tthis._sections.push(section)\n\t}\n\n\tgetSections() {\n\t\treturn this._sections\n\t}\n\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"1902\":\"15c69743cf3911d7117d\",\"5724\":\"b7bea40d5b6f46423af7\",\"8066\":\"f1f0a3884f0b92377e6a\"}[chunkId] + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4958;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t4958: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(69196)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","__webpack_nonce__","btoa","getRequestToken","window","OCA","Sharing","Object","assign","ShareSearch","constructor","this","_state","results","console","debug","state","addNewResult","result","displayName","trim","handler","push","error","ExternalLinkActions","actions","registerAction","action","OC","warn","icon","name","url","ExternalShareActions","id","data","Array","isArray","shareType","handlers","values","every","findIndex","check","concat","ShareTabSections","_sections","registerSection","section","getSections","Vue","prototype","t","n","TabInstance","addEventListener","Files","Sidebar","registerTab","Tab","iconSvg","mount","el","fileInfo","context","SharingTab","default","View","extend","$destroy","parent","update","$mount","destroy","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","loaded","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","key","splice","r","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","g","globalThis","Function","obj","prop","hasOwnProperty","l","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","bind","type","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","Error","replace","p","b","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"files_sharing-files_sharing_tab.js?v=5d956b4c5390585c6522","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_sharing/src/files_sharing_tab.js","webpack:///nextcloud/apps/files_sharing/src/services/ShareSearch.js","webpack:///nextcloud/apps/files_sharing/src/services/ExternalLinkActions.js","webpack:///nextcloud/apps/files_sharing/src/services/ExternalShareActions.js","webpack:///nextcloud/apps/files_sharing/src/services/TabSections.js","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Vue from 'vue'\nimport { translate as t, translatePlural as n } from '@nextcloud/l10n'\nimport { getRequestToken } from '@nextcloud/auth'\n\nimport ShareSearch from './services/ShareSearch.js'\nimport ExternalLinkActions from './services/ExternalLinkActions.js'\nimport ExternalShareActions from './services/ExternalShareActions.js'\nimport TabSections from './services/TabSections.js'\n\n// eslint-disable-next-line n/no-missing-import, import/no-unresolved\nimport ShareVariant from '@mdi/svg/svg/share-variant.svg?raw'\n\n// eslint-disable-next-line camelcase\n__webpack_nonce__ = btoa(getRequestToken())\n\n// Init Sharing Tab Service\nif (!window.OCA.Sharing) {\n\twindow.OCA.Sharing = {}\n}\nObject.assign(window.OCA.Sharing, { ShareSearch: new ShareSearch() })\nObject.assign(window.OCA.Sharing, { ExternalLinkActions: new ExternalLinkActions() })\nObject.assign(window.OCA.Sharing, { ExternalShareActions: new ExternalShareActions() })\nObject.assign(window.OCA.Sharing, { ShareTabSections: new TabSections() })\n\nVue.prototype.t = t\nVue.prototype.n = n\n\n// Init Sharing tab component\nlet TabInstance = null\n\nwindow.addEventListener('DOMContentLoaded', function() {\n\tif (OCA.Files && OCA.Files.Sidebar) {\n\t\tOCA.Files.Sidebar.registerTab(new OCA.Files.Sidebar.Tab({\n\t\t\tid: 'sharing',\n\t\t\tname: t('files_sharing', 'Sharing'),\n\t\t\ticonSvg: ShareVariant,\n\n\t\t\tasync mount(el, fileInfo, context) {\n\t\t\t\tconst SharingTab = (await import('./views/SharingTab.vue')).default\n\t\t\t\tconst View = Vue.extend(SharingTab)\n\n\t\t\t\tif (TabInstance) {\n\t\t\t\t\tTabInstance.$destroy()\n\t\t\t\t}\n\t\t\t\tTabInstance = new View({\n\t\t\t\t\t// Better integration with vue parent component\n\t\t\t\t\tparent: context,\n\t\t\t\t})\n\t\t\t\t// Only mount after we have all the info we need\n\t\t\t\tawait TabInstance.update(fileInfo)\n\t\t\t\tTabInstance.$mount(el)\n\t\t\t},\n\n\t\t\tupdate(fileInfo) {\n\t\t\t\tTabInstance.update(fileInfo)\n\t\t\t},\n\n\t\t\tdestroy() {\n\t\t\t\tif (TabInstance) {\n\t\t\t\t\tTabInstance.$destroy()\n\t\t\t\t\tTabInstance = null\n\t\t\t\t}\n\t\t\t},\n\t\t}))\n\t}\n})\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class ShareSearch {\n\n\t_state\n\n\tconstructor() {\n\t\t// init empty state\n\t\tthis._state = {}\n\n\t\t// init default values\n\t\tthis._state.results = []\n\t\tconsole.debug('OCA.Sharing.ShareSearch initialized')\n\t}\n\n\t/**\n\t * Get the state\n\t *\n\t * @readonly\n\t * @memberof ShareSearch\n\t * @return {object} the data state\n\t */\n\tget state() {\n\t\treturn this._state\n\t}\n\n\t/**\n\t * Register a new result\n\t * Mostly used by the guests app.\n\t * We should consider deprecation and add results via php ?\n\t *\n\t * @param {object} result entry to append\n\t * @param {string} [result.user] entry user\n\t * @param {string} result.displayName entry first line\n\t * @param {string} [result.desc] entry second line\n\t * @param {string} [result.icon] entry icon\n\t * @param {Function} result.handler function to run on entry selection\n\t * @param {Function} [result.condition] condition to add entry or not\n\t * @return {boolean}\n\t */\n\taddNewResult(result) {\n\t\tif (result.displayName.trim() !== ''\n\t\t\t&& typeof result.handler === 'function') {\n\t\t\tthis._state.results.push(result)\n\t\t\treturn true\n\t\t}\n\t\tconsole.error('Invalid search result provided', result)\n\t\treturn false\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class ExternalLinkActions {\n\n\t_state\n\n\tconstructor() {\n\t\t// init empty state\n\t\tthis._state = {}\n\n\t\t// init default values\n\t\tthis._state.actions = []\n\t\tconsole.debug('OCA.Sharing.ExternalLinkActions initialized')\n\t}\n\n\t/**\n\t * Get the state\n\t *\n\t * @readonly\n\t * @memberof ExternalLinkActions\n\t * @return {object} the data state\n\t */\n\tget state() {\n\t\treturn this._state\n\t}\n\n\t/**\n\t * Register a new action for the link share\n\t * Mostly used by the social sharing app.\n\t *\n\t * @param {object} action new action component to register\n\t * @return {boolean}\n\t */\n\tregisterAction(action) {\n\t\tOC.debug && console.warn('OCA.Sharing.ExternalLinkActions is deprecated, use OCA.Sharing.ExternalShareAction instead')\n\n\t\tif (typeof action === 'object' && action.icon && action.name && action.url) {\n\t\t\tthis._state.actions.push(action)\n\t\t\treturn true\n\t\t}\n\t\tconsole.error('Invalid action provided', action)\n\t\treturn false\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class ExternalShareActions {\n\n\t_state\n\n\tconstructor() {\n\t\t// init empty state\n\t\tthis._state = {}\n\n\t\t// init default values\n\t\tthis._state.actions = []\n\t\tconsole.debug('OCA.Sharing.ExternalShareActions initialized')\n\t}\n\n\t/**\n\t * Get the state\n\t *\n\t * @readonly\n\t * @memberof ExternalLinkActions\n\t * @return {object} the data state\n\t */\n\tget state() {\n\t\treturn this._state\n\t}\n\n\t/**\n\t * @typedef ExternalShareActionData\n\t * @property {import('vue').Component} is Vue component to render, for advanced actions the `async onSave` method of the component will be called when saved\n\t */\n\n\t/**\n\t * Register a new option/entry for the a given share type\n\t *\n\t * @param {object} action new action component to register\n\t * @param {string} action.id unique action id\n\t * @param {(data: any) => ExternalShareActionData & Record<string, unknown>} action.data data to bind the component to\n\t * @param {Array} action.shareType list of \\@nextcloud/sharing.Types.SHARE_XXX to be mounted on\n\t * @param {boolean} action.advanced `true` if the action entry should be rendered within advanced settings\n\t * @param {object} action.handlers list of listeners\n\t * @return {boolean}\n\t */\n\tregisterAction(action) {\n\t\t// Validate action\n\t\tif (typeof action !== 'object'\n\t\t\t|| typeof action.id !== 'string'\n\t\t\t|| typeof action.data !== 'function' // () => {disabled: true}\n\t\t\t|| !Array.isArray(action.shareType) // [\\@nextcloud/sharing.Types.Link, ...]\n\t\t\t|| typeof action.handlers !== 'object' // {click: () => {}, ...}\n\t\t\t|| !Object.values(action.handlers).every(handler => typeof handler === 'function')) {\n\t\t\tconsole.error('Invalid action provided', action)\n\t\t\treturn false\n\t\t}\n\n\t\t// Check duplicates\n\t\tconst hasDuplicate = this._state.actions.findIndex(check => check.id === action.id) > -1\n\t\tif (hasDuplicate) {\n\t\t\tconsole.error(`An action with the same id ${action.id} already exists`, action)\n\t\t\treturn false\n\t\t}\n\n\t\tthis._state.actions.push(action)\n\t\treturn true\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default class TabSections {\n\n\t_sections\n\n\tconstructor() {\n\t\tthis._sections = []\n\t}\n\n\t/**\n\t * @param {registerSectionCallback} section To be called to mount the section to the sharing sidebar\n\t */\n\tregisterSection(section) {\n\t\tthis._sections.push(section)\n\t}\n\n\tgetSections() {\n\t\treturn this._sections\n\t}\n\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"1902\":\"15c69743cf3911d7117d\",\"3098\":\"708c5ceed10a77e85209\",\"8066\":\"f1f0a3884f0b92377e6a\"}[chunkId] + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4958;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t4958: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(69196)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","__webpack_nonce__","btoa","getRequestToken","window","OCA","Sharing","Object","assign","ShareSearch","constructor","this","_state","results","console","debug","state","addNewResult","result","displayName","trim","handler","push","error","ExternalLinkActions","actions","registerAction","action","OC","warn","icon","name","url","ExternalShareActions","id","data","Array","isArray","shareType","handlers","values","every","findIndex","check","concat","ShareTabSections","_sections","registerSection","section","getSections","Vue","prototype","t","n","TabInstance","addEventListener","Files","Sidebar","registerTab","Tab","iconSvg","mount","el","fileInfo","context","SharingTab","default","View","extend","$destroy","parent","update","$mount","destroy","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","loaded","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","keys","key","splice","r","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","g","globalThis","Function","obj","prop","hasOwnProperty","l","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","bind","type","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","Error","replace","p","b","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
diff --git a/dist/files_sharing-init.js b/dist/files_sharing-init.js
index 28494fca6c6..2305ac69339 100644
--- a/dist/files_sharing-init.js
+++ b/dist/files_sharing-init.js
@@ -1,3 +1,3 @@
/*! For license information please see files_sharing-init.js.LICENSE.txt */
-(()=>{"use strict";var e,t,i,n={70370:(e,t,i)=>{var n=i(34297),r=i(53334);const s='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account-group" viewBox="0 0 24 24"><path d="M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z" /></svg>',a='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account-plus" viewBox="0 0 24 24"><path d="M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z" /></svg>',o='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-link" viewBox="0 0 24 24"><path d="M3.9,12C3.9,10.29 5.29,8.9 7,8.9H11V7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H11V15.1H7C5.29,15.1 3.9,13.71 3.9,12M8,13H16V11H8V13M17,7H13V8.9H17C18.71,8.9 20.1,10.29 20.1,12C20.1,13.71 18.71,15.1 17,15.1H13V17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7Z" /></svg>';var l=i(63814),d=i(21777),h=i(65043),u=i(35947);const c=(0,u.YK)().setApp("files_sharing").detectUser().build();var p;const g="/files/".concat(null===(p=(0,d.HW)())||void 0===p?void 0:p.uid),v={"Content-Type":"application/json"},m=async function(e){try{var t;if(void 0!==(null==e?void 0:e.remote_id)){if(!e.mimetype){const t=(await i.e(857).then(i.bind(i,10857))).default;e.mimetype=t.getType(e.name)}e.item_type=e.type||(e.mimetype?"file":"folder"),e.item_mtime=e.mtime,e.file_target=e.file_target||e.mountpoint,e.accepted||(e.item_permissions=n.aX.NONE,e.permissions=n.aX.NONE),e.uid_owner=e.owner,e.displayname_owner=e.owner}const r="folder"===(null==e?void 0:e.item_type),s=!0===(null==e?void 0:e.has_preview),a=r?n.vd:n.ZH,o=e.file_source||e.file_id||e.id,d=e.path||e.file_target||e.name,h=(0,l.dC)("dav/".concat(g,"/").concat(d).replaceAll(/\/\//gm,"/"));let u=e.item_mtime?new Date(1e3*e.item_mtime):void 0;return(null==e?void 0:e.stime)>((null==e?void 0:e.item_mtime)||0)&&(u=new Date(1e3*e.stime)),new a({id:o,source:h,owner:null==e?void 0:e.uid_owner,mime:(null==e?void 0:e.mimetype)||"application/octet-stream",mtime:u,size:null==e?void 0:e.item_size,permissions:(null==e?void 0:e.item_permissions)||(null==e?void 0:e.permissions),root:g,attributes:{...e,"has-preview":s,"owner-id":null==e?void 0:e.uid_owner,"owner-display-name":null==e?void 0:e.displayname_owner,"share-types":null==e?void 0:e.share_type,"share-attributes":(null==e?void 0:e.attributes)||"[]",favorite:null!=e&&null!==(t=e.tags)&&void 0!==t&&t.includes(window.OC.TAG_FAVORITE)?1:0}})}catch(e){return c.error("Error while parsing OCS entry",{error:e}),null}},w=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=(0,l.KT)("apps/files_sharing/api/v1/shares");return h.Ay.get(t,{headers:v,params:{shared_with_me:e,include_tags:!0}})},f=async function(){var e;let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];const a=[];(!(arguments.length>0&&void 0!==arguments[0])||arguments[0])&&a.push(w(!0),function(){const e=(0,l.KT)("apps/files_sharing/api/v1/remote_shares");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}()),t&&a.push(w()),i&&a.push(function(){const e=(0,l.KT)("apps/files_sharing/api/v1/shares/pending");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}(),function(){const e=(0,l.KT)("apps/files_sharing/api/v1/remote_shares/pending");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}()),r&&a.push(function(){const e=(0,l.KT)("apps/files_sharing/api/v1/deletedshares");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}());const o=(await Promise.all(a)).map((e=>e.data.ocs.data)).flat();let u=(await Promise.all(o.map(m))).filter((e=>null!==e));var c,p;return s.length>0&&(u=u.filter((e=>{var t;return s.includes(null===(t=e.attributes)||void 0===t?void 0:t.share_type)}))),u=(c=u,p="source",Object.values(c.reduce((function(e,t){return(e[t[p]]=e[t[p]]||[]).push(t),e}),{}))).map((e=>{const t=e[0];return t.attributes["share-types"]=e.map((e=>e.attributes["share-types"])),t})),{folder:new n.vd({id:0,source:(0,l.dC)("dav"+g),owner:(null===(e=(0,d.HW)())||void 0===e?void 0:e.uid)||null}),contents:u}},A="shareoverview",y="sharingin",_="sharingout",C="sharinglinks",b="deletedshares",T="pendingshares";var x=i(61338);const S=new n.hY({id:"accept-share",displayName:e=>(0,r.zw)("files_sharing","Accept share","Accept shares",e.length),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-check" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z" /></svg>',enabled:(e,t)=>e.length>0&&t.id===T,async exec(e){try{const t=!!e.attributes.remote,i=(0,l.KT)("apps/files_sharing/api/v1/{shareBase}/pending/{id}",{shareBase:t?"remote_shares":"shares",id:e.attributes.id});return await h.Ay.post(i),(0,x.Ic)("files:node:deleted",e),!0}catch(e){return!1}},async execBatch(e,t,i){return Promise.all(e.map((e=>this.exec(e,t,i))))},order:1,inline:()=>!0});(0,n.Gg)(S);const H=new n.hY({id:"open-in-files",displayName:()=>(0,r.Tl)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,t)=>[A,y,_,C].includes(t.id),async exec(e){const t=e.type===n.pt.Folder;return window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:String(e.fileid)},{dir:t?e.path:e.dirname,openfile:t?void 0:"true"}),null},order:-1e3,default:n.m9.HIDDEN});(0,n.Gg)(H);const L=new n.hY({id:"reject-share",displayName:e=>(0,r.zw)("files_sharing","Reject share","Reject shares",e.length),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-close" viewBox="0 0 24 24"><path d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" /></svg>',enabled:(e,t)=>t.id===T&&0!==e.length&&!e.some((e=>e.attributes.remote_id&&e.attributes.share_type===window.OC.Share.SHARE_TYPE_REMOTE_GROUP)),async exec(e){try{const t=!!e.attributes.remote,i=(0,l.KT)("apps/files_sharing/api/v1/{shareBase}/{id}",{shareBase:t?"remote_shares":"shares",id:e.attributes.id});return await h.Ay.delete(i),(0,x.Ic)("files:node:deleted",e),!0}catch(e){return!1}},async execBatch(e,t,i){return Promise.all(e.map((e=>this.exec(e,t,i))))},order:2,inline:()=>!0});(0,n.Gg)(L);const E=new n.hY({id:"restore-share",displayName:e=>(0,r.zw)("files_sharing","Restore share","Restore shares",e.length),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-u-left-top" viewBox="0 0 24 24"><path d="M20 13.5C20 17.09 17.09 20 13.5 20H6V18H13.5C16 18 18 16 18 13.5S16 9 13.5 9H7.83L10.91 12.09L9.5 13.5L4 8L9.5 2.5L10.92 3.91L7.83 7H13.5C17.09 7 20 9.91 20 13.5Z" /></svg>',enabled:(e,t)=>e.length>0&&t.id===b,async exec(e){try{const t=(0,l.KT)("apps/files_sharing/api/v1/deletedshares/{id}",{id:e.attributes.id});return await h.Ay.post(t),(0,x.Ic)("files:node:deleted",e),!0}catch(e){return!1}},async execBatch(e,t,i){return Promise.all(e.map((e=>this.exec(e,t,i))))},order:1,inline:()=>!0});(0,n.Gg)(E);var O=i(77905),M=i(49981);const V=(0,u.YK)().setApp("files").detectUser().build(),N=new n.hY({id:"details",displayName:()=>(0,r.Tl)("files","Open details"),iconSvgInline:()=>M,enabled:e=>{var t,i,r;return 1===e.length&&!!e[0]&&!(null===(t=window)||void 0===t||null===(t=t.OCA)||void 0===t||null===(t=t.Files)||void 0===t||!t.Sidebar)&&null!==(i=(null===(r=e[0].root)||void 0===r?void 0:r.startsWith("/files/"))&&e[0].permissions!==n.aX.NONE)&&void 0!==i&&i},async exec(e,t,i){try{return await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:i},!0),null}catch(e){return V.error("Error while opening sidebar",{error:e}),!1}},order:-50});var P=i(85072),R=i.n(P),k=i(97825),B=i.n(k),I=i(77659),Y=i.n(I),j=i(55056),F=i.n(j),G=i(10540),Z=i.n(G),U=i(41113),K=i.n(U),D=i(8132),W={};W.styleTagTransform=K(),W.setAttributes=F(),W.insert=Y().bind(null,"head"),W.domAPI=B(),W.insertStyleElement=Z(),R()(D.A,W),D.A&&D.A.locals&&D.A.locals;const z=e=>void 0!==e.attributes.remote_id,q=new n.hY({id:"sharing-status",displayName(e){var t,i;const n=e[0];return Object.values((null==n||null===(t=n.attributes)||void 0===t?void 0:t["share-types"])||{}).flat().length>0||n.owner!==(null===(i=(0,d.HW)())||void 0===i?void 0:i.uid)||z(n)?(0,r.Tl)("files_sharing","Shared"):""},title(e){var t,i,n;const s=e[0];if(Array.isArray(null===(t=s.attributes)||void 0===t?void 0:t["share-types"])&&(null===(i=s.attributes)||void 0===i?void 0:i["share-types"].length)>1)return(0,r.Tl)("files_sharing","Shared multiple times with different people");if(s.owner&&(s.owner!==(null===(n=(0,d.HW)())||void 0===n?void 0:n.uid)||z(s))){var a;const e=null==s||null===(a=s.attributes)||void 0===a?void 0:a["owner-display-name"];return(0,r.Tl)("files_sharing","Shared by {ownerDisplayName}",{ownerDisplayName:e})}return(0,r.Tl)("files_sharing","Show sharing options")},iconSvgInline(e){var t,i,n,r;const h=e[0],u=Object.values((null==h||null===(t=h.attributes)||void 0===t?void 0:t["share-types"])||{}).flat();return Array.isArray(null===(i=h.attributes)||void 0===i?void 0:i["share-types"])&&(null===(n=h.attributes)||void 0===n?void 0:n["share-types"].length)>1?a:u.includes(O.Z.SHARE_TYPE_LINK)||u.includes(O.Z.SHARE_TYPE_EMAIL)?o:u.includes(O.Z.SHARE_TYPE_GROUP)||u.includes(O.Z.SHARE_TYPE_REMOTE_GROUP)?s:u.includes(O.Z.SHARE_TYPE_CIRCLE)?'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z" /></svg>':h.owner&&(h.owner!==(null===(r=(0,d.HW)())||void 0===r?void 0:r.uid)||z(h))?function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const i=t?"/avatar/guest/".concat(e):"/avatar/".concat(e),n=!0===(null===(r=window)||void 0===r||null===(s=r.matchMedia)||void 0===s||null===(s=s.call(r,"(prefers-color-scheme: dark)"))||void 0===s?void 0:s.matches)||null!==document.querySelector("[data-themes*=dark]")?"/dark":"";var r,s;const a=t?"":"?guestFallback=true",o="".concat(i,"/32").concat(n).concat(a),d=(0,l.Jv)(o,{userId:e});return'<svg width="32" height="32" viewBox="0 0 32 32"\n\t\txmlns="http://www.w3.org/2000/svg" class="sharing-status__avatar">\n\t\t<image href="'.concat(d,'" height="32" width="32" />\n\t</svg>')}(h.owner.replace(/[^a-zA-Z0-9._%+@-]+/g,"").replace(/\//g,""),z(h)):a},enabled(e){var t,i;if(1!==e.length)return!1;const r=e[0],s=null===(t=r.attributes)||void 0===t?void 0:t["share-types"];return!!(Array.isArray(s)&&s.length>0)||!(!r.owner||r.owner===(null===(i=(0,d.HW)())||void 0===i?void 0:i.uid)&&!z(r))||0!=(r.permissions&n.aX.SHARE)},async exec(e,t,i){var r,s;return 0!=(e.permissions&n.aX.READ)?(null===(r=window.OCA)||void 0===r||null===(r=r.Files)||void 0===r||null===(r=r.Sidebar)||void 0===r||null===(s=r.setActiveTab)||void 0===s||s.call(r,"sharing"),N.exec(e,t,i)):null},inline:()=>!0});(0,n.Gg)(q),(()=>{const e=(0,n.bh)();e.register(new n.Ss({id:A,name:(0,r.Tl)("files_sharing","Shares"),caption:(0,r.Tl)("files_sharing","Overview of shared files."),emptyTitle:(0,r.Tl)("files_sharing","No shares"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders you shared or have been shared with you will show up here"),icon:a,order:20,columns:[],getContents:()=>f()})),e.register(new n.Ss({id:y,name:(0,r.Tl)("files_sharing","Shared with you"),caption:(0,r.Tl)("files_sharing","List of files that are shared with you."),emptyTitle:(0,r.Tl)("files_sharing","Nothing shared with you yet"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders others shared with you will show up here"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account" viewBox="0 0 24 24"><path d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,14C16.42,14 20,15.79 20,18V20H4V18C4,15.79 7.58,14 12,14Z" /></svg>',order:1,parent:A,columns:[],getContents:()=>f(!0,!1,!1,!1)})),e.register(new n.Ss({id:_,name:(0,r.Tl)("files_sharing","Shared with others"),caption:(0,r.Tl)("files_sharing","List of files that you shared with others."),emptyTitle:(0,r.Tl)("files_sharing","Nothing shared yet"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders you shared will show up here"),icon:s,order:2,parent:A,columns:[],getContents:()=>f(!1,!0,!1,!1)})),e.register(new n.Ss({id:C,name:(0,r.Tl)("files_sharing","Shared by link"),caption:(0,r.Tl)("files_sharing","List of files that are shared by link."),emptyTitle:(0,r.Tl)("files_sharing","No shared links"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders you shared by link will show up here"),icon:o,order:3,parent:A,columns:[],getContents:()=>f(!1,!0,!1,!1,[window.OC.Share.SHARE_TYPE_LINK])})),e.register(new n.Ss({id:b,name:(0,r.Tl)("files_sharing","Deleted shares"),caption:(0,r.Tl)("files_sharing","List of shares you left."),emptyTitle:(0,r.Tl)("files_sharing","No deleted shares"),emptyCaption:(0,r.Tl)("files_sharing","Shares you have left will show up here"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-delete" viewBox="0 0 24 24"><path d="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" /></svg>',order:4,parent:A,columns:[],getContents:()=>f(!1,!1,!1,!0)})),e.register(new n.Ss({id:T,name:(0,r.Tl)("files_sharing","Pending shares"),caption:(0,r.Tl)("files_sharing","List of unapproved shares."),emptyTitle:(0,r.Tl)("files_sharing","No pending shares"),emptyCaption:(0,r.Tl)("files_sharing","Shares you have received but not approved will show up here"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account-clock" viewBox="0 0 24 24"><path d="M10.63,14.1C12.23,10.58 16.38,9.03 19.9,10.63C23.42,12.23 24.97,16.38 23.37,19.9C22.24,22.4 19.75,24 17,24C14.3,24 11.83,22.44 10.67,20H1V18C1.06,16.86 1.84,15.93 3.34,15.18C4.84,14.43 6.72,14.04 9,14C9.57,14 10.11,14.05 10.63,14.1V14.1M9,4C10.12,4.03 11.06,4.42 11.81,5.17C12.56,5.92 12.93,6.86 12.93,8C12.93,9.14 12.56,10.08 11.81,10.83C11.06,11.58 10.12,11.95 9,11.95C7.88,11.95 6.94,11.58 6.19,10.83C5.44,10.08 5.07,9.14 5.07,8C5.07,6.86 5.44,5.92 6.19,5.17C6.94,4.42 7.88,4.03 9,4M17,22A5,5 0 0,0 22,17A5,5 0 0,0 17,12A5,5 0 0,0 12,17A5,5 0 0,0 17,22M16,14H17.5V16.82L19.94,18.23L19.19,19.53L16,17.69V14Z" /></svg>',order:5,parent:A,columns:[],getContents:()=>f(!1,!1,!0,!1)}))})(),(0,n.Yc)("nc:share-attributes",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("oc:share-types",{oc:"http://owncloud.org/ns"}),(0,n.Yc)("ocs:share-permissions",{ocs:"http://open-collaboration-services.org/ns"})},8132:(e,t,i)=>{i.d(t,{A:()=>o});var n=i(71354),r=i.n(n),s=i(76314),a=i.n(s)()(r());a.push([e.id,".action-items>.files-list__row-action-sharing-status{direction:rtl;padding-right:0 !important}svg.sharing-status__avatar{height:32px !important;width:32px !important;max-height:32px !important;max-width:32px !important;border-radius:32px;overflow:hidden}","",{version:3,sources:["webpack://./apps/files_sharing/src/actions/sharingStatusAction.scss"],names:[],mappings:"AAsBA,qDAEC,aAAA,CAEG,0BAAA,CAGJ,2BACC,sBAAA,CACA,qBAAA,CACA,0BAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA",sourcesContent:["/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n // Only when rendered inline, when not enough space, this is put in the menu\n.action-items > .files-list__row-action-sharing-status {\n\t// put icon at the end of the button\n\tdirection: rtl;\n\t// align icons with textless inline actions\n padding-right: 0 !important;\n}\n\nsvg.sharing-status__avatar {\n\theight: 32px !important;\n\twidth: 32px !important;\n\tmax-height: 32px !important;\n\tmax-width: 32px !important;\n\tborder-radius: 32px;\n\toverflow: hidden;\n}\n"],sourceRoot:""}]);const o=a}},r={};function s(e){var t=r[e];if(void 0!==t)return t.exports;var i=r[e]={id:e,loaded:!1,exports:{}};return n[e].call(i.exports,i,i.exports,s),i.loaded=!0,i.exports}s.m=n,e=[],s.O=(t,i,n,r)=>{if(!i){var a=1/0;for(h=0;h<e.length;h++){i=e[h][0],n=e[h][1],r=e[h][2];for(var o=!0,l=0;l<i.length;l++)(!1&r||a>=r)&&Object.keys(s.O).every((e=>s.O[e](i[l])))?i.splice(l--,1):(o=!1,r<a&&(a=r));if(o){e.splice(h--,1);var d=n();void 0!==d&&(t=d)}}return t}r=r||0;for(var h=e.length;h>0&&e[h-1][2]>r;h--)e[h]=e[h-1];e[h]=[i,n,r]},s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce(((t,i)=>(s.f[i](e,t),t)),[])),s.u=e=>e+"-"+e+".js?v=89447025dfbc21bc3d51",s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},i="nextcloud:",s.l=(e,n,r,a)=>{if(t[e])t[e].push(n);else{var o,l;if(void 0!==r)for(var d=document.getElementsByTagName("script"),h=0;h<d.length;h++){var u=d[h];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==i+r){o=u;break}}o||(l=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,s.nc&&o.setAttribute("nonce",s.nc),o.setAttribute("data-webpack",i+r),o.src=e),t[e]=[n];var c=(i,n)=>{o.onerror=o.onload=null,clearTimeout(p);var r=t[e];if(delete t[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach((e=>e(n))),i)return i(n)},p=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),l&&document.head.appendChild(o)}},s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),s.j=5928,(()=>{var e;s.g.importScripts&&(e=s.g.location+"");var t=s.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var i=t.getElementsByTagName("script");if(i.length)for(var n=i.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=i[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.p=e})(),(()=>{s.b=document.baseURI||self.location.href;var e={5928:0};s.f.j=(t,i)=>{var n=s.o(e,t)?e[t]:void 0;if(0!==n)if(n)i.push(n[2]);else{var r=new Promise(((i,r)=>n=e[t]=[i,r]));i.push(n[2]=r);var a=s.p+s.u(t),o=new Error;s.l(a,(i=>{if(s.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var r=i&&("load"===i.type?"missing":i.type),a=i&&i.target&&i.target.src;o.message="Loading chunk "+t+" failed.\n("+r+": "+a+")",o.name="ChunkLoadError",o.type=r,o.request=a,n[1](o)}}),"chunk-"+t,t)}},s.O.j=t=>0===e[t];var t=(t,i)=>{var n,r,a=i[0],o=i[1],l=i[2],d=0;if(a.some((t=>0!==e[t]))){for(n in o)s.o(o,n)&&(s.m[n]=o[n]);if(l)var h=l(s)}for(t&&t(i);d<a.length;d++)r=a[d],s.o(e,r)&&e[r]&&e[r][0](),e[r]=0;return s.O(h)},i=self.webpackChunknextcloud=self.webpackChunknextcloud||[];i.forEach(t.bind(null,0)),i.push=t.bind(null,i.push.bind(i))})(),s.nc=void 0;var a=s.O(void 0,[4208],(()=>s(70370)));a=s.O(a)})();
-//# sourceMappingURL=files_sharing-init.js.map?v=d990312111a9b9f9c492 \ No newline at end of file
+(()=>{"use strict";var e,t,i,n={70370:(e,t,i)=>{var n=i(34297),r=i(53334);const s='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account-group" viewBox="0 0 24 24"><path d="M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z" /></svg>',a='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account-plus" viewBox="0 0 24 24"><path d="M15,14C12.33,14 7,15.33 7,18V20H23V18C23,15.33 17.67,14 15,14M6,10V7H4V10H1V12H4V15H6V12H9V10M15,12A4,4 0 0,0 19,8A4,4 0 0,0 15,4A4,4 0 0,0 11,8A4,4 0 0,0 15,12Z" /></svg>',o='<svg xmlns="http://www.w3.org/2000/svg" id="mdi-link" viewBox="0 0 24 24"><path d="M3.9,12C3.9,10.29 5.29,8.9 7,8.9H11V7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H11V15.1H7C5.29,15.1 3.9,13.71 3.9,12M8,13H16V11H8V13M17,7H13V8.9H17C18.71,8.9 20.1,10.29 20.1,12C20.1,13.71 18.71,15.1 17,15.1H13V17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7Z" /></svg>';var l=i(63814),d=i(21777),h=i(65043),u=i(35947);const c=(0,u.YK)().setApp("files_sharing").detectUser().build();var p;const g="/files/".concat(null===(p=(0,d.HW)())||void 0===p?void 0:p.uid),v={"Content-Type":"application/json"},m=async function(e){try{var t;if(void 0!==(null==e?void 0:e.remote_id)){if(!e.mimetype){const t=(await i.e(857).then(i.bind(i,10857))).default;e.mimetype=t.getType(e.name)}e.item_type=e.type||(e.mimetype?"file":"folder"),e.item_mtime=e.mtime,e.file_target=e.file_target||e.mountpoint,e.accepted||(e.item_permissions=n.aX.NONE,e.permissions=n.aX.NONE),e.uid_owner=e.owner,e.displayname_owner=e.owner}const r="folder"===(null==e?void 0:e.item_type),s=!0===(null==e?void 0:e.has_preview),a=r?n.vd:n.ZH,o=e.file_source||e.file_id||e.id,d=e.path||e.file_target||e.name,h=(0,l.dC)("dav/".concat(g,"/").concat(d).replaceAll(/\/\//gm,"/"));let u=e.item_mtime?new Date(1e3*e.item_mtime):void 0;return(null==e?void 0:e.stime)>((null==e?void 0:e.item_mtime)||0)&&(u=new Date(1e3*e.stime)),new a({id:o,source:h,owner:null==e?void 0:e.uid_owner,mime:(null==e?void 0:e.mimetype)||"application/octet-stream",mtime:u,size:null==e?void 0:e.item_size,permissions:(null==e?void 0:e.item_permissions)||(null==e?void 0:e.permissions),root:g,attributes:{...e,"has-preview":s,"owner-id":null==e?void 0:e.uid_owner,"owner-display-name":null==e?void 0:e.displayname_owner,"share-types":null==e?void 0:e.share_type,"share-attributes":(null==e?void 0:e.attributes)||"[]",favorite:null!=e&&null!==(t=e.tags)&&void 0!==t&&t.includes(window.OC.TAG_FAVORITE)?1:0}})}catch(e){return c.error("Error while parsing OCS entry",{error:e}),null}},w=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=(0,l.KT)("apps/files_sharing/api/v1/shares");return h.Ay.get(t,{headers:v,params:{shared_with_me:e,include_tags:!0}})},f=async function(){var e;let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];const a=[];(!(arguments.length>0&&void 0!==arguments[0])||arguments[0])&&a.push(w(!0),function(){const e=(0,l.KT)("apps/files_sharing/api/v1/remote_shares");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}()),t&&a.push(w()),i&&a.push(function(){const e=(0,l.KT)("apps/files_sharing/api/v1/shares/pending");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}(),function(){const e=(0,l.KT)("apps/files_sharing/api/v1/remote_shares/pending");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}()),r&&a.push(function(){const e=(0,l.KT)("apps/files_sharing/api/v1/deletedshares");return h.Ay.get(e,{headers:v,params:{include_tags:!0}})}());const o=(await Promise.all(a)).map((e=>e.data.ocs.data)).flat();let u=(await Promise.all(o.map(m))).filter((e=>null!==e));var c,p;return s.length>0&&(u=u.filter((e=>{var t;return s.includes(null===(t=e.attributes)||void 0===t?void 0:t.share_type)}))),u=(c=u,p="source",Object.values(c.reduce((function(e,t){return(e[t[p]]=e[t[p]]||[]).push(t),e}),{}))).map((e=>{const t=e[0];return t.attributes["share-types"]=e.map((e=>e.attributes["share-types"])),t})),{folder:new n.vd({id:0,source:(0,l.dC)("dav"+g),owner:(null===(e=(0,d.HW)())||void 0===e?void 0:e.uid)||null}),contents:u}},A="shareoverview",y="sharingin",_="sharingout",C="sharinglinks",b="deletedshares",T="pendingshares";var x=i(61338);const S=new n.hY({id:"accept-share",displayName:e=>(0,r.zw)("files_sharing","Accept share","Accept shares",e.length),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-check" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z" /></svg>',enabled:(e,t)=>e.length>0&&t.id===T,async exec(e){try{const t=!!e.attributes.remote,i=(0,l.KT)("apps/files_sharing/api/v1/{shareBase}/pending/{id}",{shareBase:t?"remote_shares":"shares",id:e.attributes.id});return await h.Ay.post(i),(0,x.Ic)("files:node:deleted",e),!0}catch(e){return!1}},async execBatch(e,t,i){return Promise.all(e.map((e=>this.exec(e,t,i))))},order:1,inline:()=>!0});(0,n.Gg)(S);const H=new n.hY({id:"open-in-files",displayName:()=>(0,r.Tl)("files","Open in Files"),iconSvgInline:()=>"",enabled:(e,t)=>[A,y,_,C].includes(t.id),async exec(e){const t=e.type===n.pt.Folder;return window.OCP.Files.Router.goToRoute(null,{view:"files",fileid:String(e.fileid)},{dir:t?e.path:e.dirname,openfile:t?void 0:"true"}),null},order:-1e3,default:n.m9.HIDDEN});(0,n.Gg)(H);const L=new n.hY({id:"reject-share",displayName:e=>(0,r.zw)("files_sharing","Reject share","Reject shares",e.length),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-close" viewBox="0 0 24 24"><path d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" /></svg>',enabled:(e,t)=>t.id===T&&0!==e.length&&!e.some((e=>e.attributes.remote_id&&e.attributes.share_type===window.OC.Share.SHARE_TYPE_REMOTE_GROUP)),async exec(e){try{const t=!!e.attributes.remote,i=(0,l.KT)("apps/files_sharing/api/v1/{shareBase}/{id}",{shareBase:t?"remote_shares":"shares",id:e.attributes.id});return await h.Ay.delete(i),(0,x.Ic)("files:node:deleted",e),!0}catch(e){return!1}},async execBatch(e,t,i){return Promise.all(e.map((e=>this.exec(e,t,i))))},order:2,inline:()=>!0});(0,n.Gg)(L);const O=new n.hY({id:"restore-share",displayName:e=>(0,r.zw)("files_sharing","Restore share","Restore shares",e.length),iconSvgInline:()=>'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-u-left-top" viewBox="0 0 24 24"><path d="M20 13.5C20 17.09 17.09 20 13.5 20H6V18H13.5C16 18 18 16 18 13.5S16 9 13.5 9H7.83L10.91 12.09L9.5 13.5L4 8L9.5 2.5L10.92 3.91L7.83 7H13.5C17.09 7 20 9.91 20 13.5Z" /></svg>',enabled:(e,t)=>e.length>0&&t.id===b,async exec(e){try{const t=(0,l.KT)("apps/files_sharing/api/v1/deletedshares/{id}",{id:e.attributes.id});return await h.Ay.post(t),(0,x.Ic)("files:node:deleted",e),!0}catch(e){return!1}},async execBatch(e,t,i){return Promise.all(e.map((e=>this.exec(e,t,i))))},order:1,inline:()=>!0});(0,n.Gg)(O);var E=i(77905),M=i(49981);const V=(0,u.YK)().setApp("files").detectUser().build(),N=new n.hY({id:"details",displayName:()=>(0,r.Tl)("files","Open details"),iconSvgInline:()=>M,enabled:e=>{var t,i,r;return 1===e.length&&!!e[0]&&!(null===(t=window)||void 0===t||null===(t=t.OCA)||void 0===t||null===(t=t.Files)||void 0===t||!t.Sidebar)&&null!==(i=(null===(r=e[0].root)||void 0===r?void 0:r.startsWith("/files/"))&&e[0].permissions!==n.aX.NONE)&&void 0!==i&&i},async exec(e,t,i){try{return window.OCA.Files.Sidebar.setActiveTab("sharing"),await window.OCA.Files.Sidebar.open(e.path),window.OCP.Files.Router.goToRoute(null,{view:t.id,fileid:e.fileid},{...window.OCP.Files.Router.query,dir:i},!0),null}catch(e){return V.error("Error while opening sidebar",{error:e}),!1}},order:-50});var P=i(85072),R=i.n(P),k=i(97825),B=i.n(k),I=i(77659),Y=i.n(I),j=i(55056),F=i.n(j),G=i(10540),Z=i.n(G),U=i(41113),K=i.n(U),D=i(8132),W={};W.styleTagTransform=K(),W.setAttributes=F(),W.insert=Y().bind(null,"head"),W.domAPI=B(),W.insertStyleElement=Z(),R()(D.A,W),D.A&&D.A.locals&&D.A.locals;const z=e=>void 0!==e.attributes.remote_id,q=new n.hY({id:"sharing-status",displayName(e){var t,i;const n=e[0];return Object.values((null==n||null===(t=n.attributes)||void 0===t?void 0:t["share-types"])||{}).flat().length>0||n.owner!==(null===(i=(0,d.HW)())||void 0===i?void 0:i.uid)||z(n)?(0,r.Tl)("files_sharing","Shared"):""},title(e){var t,i,n;const s=e[0];if(Array.isArray(null===(t=s.attributes)||void 0===t?void 0:t["share-types"])&&(null===(i=s.attributes)||void 0===i?void 0:i["share-types"].length)>1)return(0,r.Tl)("files_sharing","Shared multiple times with different people");if(s.owner&&(s.owner!==(null===(n=(0,d.HW)())||void 0===n?void 0:n.uid)||z(s))){var a;const e=null==s||null===(a=s.attributes)||void 0===a?void 0:a["owner-display-name"];return(0,r.Tl)("files_sharing","Shared by {ownerDisplayName}",{ownerDisplayName:e})}return(0,r.Tl)("files_sharing","Show sharing options")},iconSvgInline(e){var t,i,n,r;const h=e[0],u=Object.values((null==h||null===(t=h.attributes)||void 0===t?void 0:t["share-types"])||{}).flat();return Array.isArray(null===(i=h.attributes)||void 0===i?void 0:i["share-types"])&&(null===(n=h.attributes)||void 0===n?void 0:n["share-types"].length)>1?a:u.includes(E.Z.SHARE_TYPE_LINK)||u.includes(E.Z.SHARE_TYPE_EMAIL)?o:u.includes(E.Z.SHARE_TYPE_GROUP)||u.includes(E.Z.SHARE_TYPE_REMOTE_GROUP)?s:u.includes(E.Z.SHARE_TYPE_CIRCLE)?'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z" /></svg>':h.owner&&(h.owner!==(null===(r=(0,d.HW)())||void 0===r?void 0:r.uid)||z(h))?function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const i=t?"/avatar/guest/".concat(e):"/avatar/".concat(e),n=!0===(null===(r=window)||void 0===r||null===(s=r.matchMedia)||void 0===s||null===(s=s.call(r,"(prefers-color-scheme: dark)"))||void 0===s?void 0:s.matches)||null!==document.querySelector("[data-themes*=dark]")?"/dark":"";var r,s;const a=t?"":"?guestFallback=true",o="".concat(i,"/32").concat(n).concat(a),d=(0,l.Jv)(o,{userId:e});return'<svg width="32" height="32" viewBox="0 0 32 32"\n\t\txmlns="http://www.w3.org/2000/svg" class="sharing-status__avatar">\n\t\t<image href="'.concat(d,'" height="32" width="32" />\n\t</svg>')}(h.owner.replace(/[^a-zA-Z0-9._%+@-]+/g,"").replace(/\//g,""),z(h)):a},enabled(e){var t,i;if(1!==e.length)return!1;const r=e[0],s=null===(t=r.attributes)||void 0===t?void 0:t["share-types"];return!!(Array.isArray(s)&&s.length>0)||!(!r.owner||r.owner===(null===(i=(0,d.HW)())||void 0===i?void 0:i.uid)&&!z(r))||0!=(r.permissions&n.aX.SHARE)},async exec(e,t,i){var r,s;return 0!=(e.permissions&n.aX.READ)?(null===(r=window.OCA)||void 0===r||null===(r=r.Files)||void 0===r||null===(r=r.Sidebar)||void 0===r||null===(s=r.setActiveTab)||void 0===s||s.call(r,"sharing"),N.exec(e,t,i)):null},inline:()=>!0});(0,n.Gg)(q),(()=>{const e=(0,n.bh)();e.register(new n.Ss({id:A,name:(0,r.Tl)("files_sharing","Shares"),caption:(0,r.Tl)("files_sharing","Overview of shared files."),emptyTitle:(0,r.Tl)("files_sharing","No shares"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders you shared or have been shared with you will show up here"),icon:a,order:20,columns:[],getContents:()=>f()})),e.register(new n.Ss({id:y,name:(0,r.Tl)("files_sharing","Shared with you"),caption:(0,r.Tl)("files_sharing","List of files that are shared with you."),emptyTitle:(0,r.Tl)("files_sharing","Nothing shared with you yet"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders others shared with you will show up here"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account" viewBox="0 0 24 24"><path d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,14C16.42,14 20,15.79 20,18V20H4V18C4,15.79 7.58,14 12,14Z" /></svg>',order:1,parent:A,columns:[],getContents:()=>f(!0,!1,!1,!1)})),e.register(new n.Ss({id:_,name:(0,r.Tl)("files_sharing","Shared with others"),caption:(0,r.Tl)("files_sharing","List of files that you shared with others."),emptyTitle:(0,r.Tl)("files_sharing","Nothing shared yet"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders you shared will show up here"),icon:s,order:2,parent:A,columns:[],getContents:()=>f(!1,!0,!1,!1)})),e.register(new n.Ss({id:C,name:(0,r.Tl)("files_sharing","Shared by link"),caption:(0,r.Tl)("files_sharing","List of files that are shared by link."),emptyTitle:(0,r.Tl)("files_sharing","No shared links"),emptyCaption:(0,r.Tl)("files_sharing","Files and folders you shared by link will show up here"),icon:o,order:3,parent:A,columns:[],getContents:()=>f(!1,!0,!1,!1,[window.OC.Share.SHARE_TYPE_LINK])})),e.register(new n.Ss({id:b,name:(0,r.Tl)("files_sharing","Deleted shares"),caption:(0,r.Tl)("files_sharing","List of shares you left."),emptyTitle:(0,r.Tl)("files_sharing","No deleted shares"),emptyCaption:(0,r.Tl)("files_sharing","Shares you have left will show up here"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-delete" viewBox="0 0 24 24"><path d="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z" /></svg>',order:4,parent:A,columns:[],getContents:()=>f(!1,!1,!1,!0)})),e.register(new n.Ss({id:T,name:(0,r.Tl)("files_sharing","Pending shares"),caption:(0,r.Tl)("files_sharing","List of unapproved shares."),emptyTitle:(0,r.Tl)("files_sharing","No pending shares"),emptyCaption:(0,r.Tl)("files_sharing","Shares you have received but not approved will show up here"),icon:'<svg xmlns="http://www.w3.org/2000/svg" id="mdi-account-clock" viewBox="0 0 24 24"><path d="M10.63,14.1C12.23,10.58 16.38,9.03 19.9,10.63C23.42,12.23 24.97,16.38 23.37,19.9C22.24,22.4 19.75,24 17,24C14.3,24 11.83,22.44 10.67,20H1V18C1.06,16.86 1.84,15.93 3.34,15.18C4.84,14.43 6.72,14.04 9,14C9.57,14 10.11,14.05 10.63,14.1V14.1M9,4C10.12,4.03 11.06,4.42 11.81,5.17C12.56,5.92 12.93,6.86 12.93,8C12.93,9.14 12.56,10.08 11.81,10.83C11.06,11.58 10.12,11.95 9,11.95C7.88,11.95 6.94,11.58 6.19,10.83C5.44,10.08 5.07,9.14 5.07,8C5.07,6.86 5.44,5.92 6.19,5.17C6.94,4.42 7.88,4.03 9,4M17,22A5,5 0 0,0 22,17A5,5 0 0,0 17,12A5,5 0 0,0 12,17A5,5 0 0,0 17,22M16,14H17.5V16.82L19.94,18.23L19.19,19.53L16,17.69V14Z" /></svg>',order:5,parent:A,columns:[],getContents:()=>f(!1,!1,!0,!1)}))})(),(0,n.Yc)("nc:share-attributes",{nc:"http://nextcloud.org/ns"}),(0,n.Yc)("oc:share-types",{oc:"http://owncloud.org/ns"}),(0,n.Yc)("ocs:share-permissions",{ocs:"http://open-collaboration-services.org/ns"})},8132:(e,t,i)=>{i.d(t,{A:()=>o});var n=i(71354),r=i.n(n),s=i(76314),a=i.n(s)()(r());a.push([e.id,".action-items>.files-list__row-action-sharing-status{direction:rtl;padding-right:0 !important}svg.sharing-status__avatar{height:32px !important;width:32px !important;max-height:32px !important;max-width:32px !important;border-radius:32px;overflow:hidden}","",{version:3,sources:["webpack://./apps/files_sharing/src/actions/sharingStatusAction.scss"],names:[],mappings:"AAsBA,qDAEC,aAAA,CAEG,0BAAA,CAGJ,2BACC,sBAAA,CACA,qBAAA,CACA,0BAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA",sourcesContent:["/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\n // Only when rendered inline, when not enough space, this is put in the menu\n.action-items > .files-list__row-action-sharing-status {\n\t// put icon at the end of the button\n\tdirection: rtl;\n\t// align icons with textless inline actions\n padding-right: 0 !important;\n}\n\nsvg.sharing-status__avatar {\n\theight: 32px !important;\n\twidth: 32px !important;\n\tmax-height: 32px !important;\n\tmax-width: 32px !important;\n\tborder-radius: 32px;\n\toverflow: hidden;\n}\n"],sourceRoot:""}]);const o=a}},r={};function s(e){var t=r[e];if(void 0!==t)return t.exports;var i=r[e]={id:e,loaded:!1,exports:{}};return n[e].call(i.exports,i,i.exports,s),i.loaded=!0,i.exports}s.m=n,e=[],s.O=(t,i,n,r)=>{if(!i){var a=1/0;for(h=0;h<e.length;h++){i=e[h][0],n=e[h][1],r=e[h][2];for(var o=!0,l=0;l<i.length;l++)(!1&r||a>=r)&&Object.keys(s.O).every((e=>s.O[e](i[l])))?i.splice(l--,1):(o=!1,r<a&&(a=r));if(o){e.splice(h--,1);var d=n();void 0!==d&&(t=d)}}return t}r=r||0;for(var h=e.length;h>0&&e[h-1][2]>r;h--)e[h]=e[h-1];e[h]=[i,n,r]},s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce(((t,i)=>(s.f[i](e,t),t)),[])),s.u=e=>e+"-"+e+".js?v=89447025dfbc21bc3d51",s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),t={},i="nextcloud:",s.l=(e,n,r,a)=>{if(t[e])t[e].push(n);else{var o,l;if(void 0!==r)for(var d=document.getElementsByTagName("script"),h=0;h<d.length;h++){var u=d[h];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==i+r){o=u;break}}o||(l=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,s.nc&&o.setAttribute("nonce",s.nc),o.setAttribute("data-webpack",i+r),o.src=e),t[e]=[n];var c=(i,n)=>{o.onerror=o.onload=null,clearTimeout(p);var r=t[e];if(delete t[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach((e=>e(n))),i)return i(n)},p=setTimeout(c.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=c.bind(null,o.onerror),o.onload=c.bind(null,o.onload),l&&document.head.appendChild(o)}},s.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),s.j=5928,(()=>{var e;s.g.importScripts&&(e=s.g.location+"");var t=s.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var i=t.getElementsByTagName("script");if(i.length)for(var n=i.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=i[n--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.p=e})(),(()=>{s.b=document.baseURI||self.location.href;var e={5928:0};s.f.j=(t,i)=>{var n=s.o(e,t)?e[t]:void 0;if(0!==n)if(n)i.push(n[2]);else{var r=new Promise(((i,r)=>n=e[t]=[i,r]));i.push(n[2]=r);var a=s.p+s.u(t),o=new Error;s.l(a,(i=>{if(s.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var r=i&&("load"===i.type?"missing":i.type),a=i&&i.target&&i.target.src;o.message="Loading chunk "+t+" failed.\n("+r+": "+a+")",o.name="ChunkLoadError",o.type=r,o.request=a,n[1](o)}}),"chunk-"+t,t)}},s.O.j=t=>0===e[t];var t=(t,i)=>{var n,r,a=i[0],o=i[1],l=i[2],d=0;if(a.some((t=>0!==e[t]))){for(n in o)s.o(o,n)&&(s.m[n]=o[n]);if(l)var h=l(s)}for(t&&t(i);d<a.length;d++)r=a[d],s.o(e,r)&&e[r]&&e[r][0](),e[r]=0;return s.O(h)},i=self.webpackChunknextcloud=self.webpackChunknextcloud||[];i.forEach(t.bind(null,0)),i.push=t.bind(null,i.push.bind(i))})(),s.nc=void 0;var a=s.O(void 0,[4208],(()=>s(70370)));a=s.O(a)})();
+//# sourceMappingURL=files_sharing-init.js.map?v=deca8e13bac9f2b33e42 \ No newline at end of file
diff --git a/dist/files_sharing-init.js.map b/dist/files_sharing-init.js.map
index 4a2199112c6..06becc1d7bc 100644
--- a/dist/files_sharing-init.js.map
+++ b/dist/files_sharing-init.js.map
@@ -1 +1 @@
-{"version":3,"file":"files_sharing-init.js?v=d990312111a9b9f9c492","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_sharing/src/services/logger.ts","webpack:///nextcloud/apps/files_sharing/src/services/SharingService.ts","webpack:///nextcloud/apps/files_sharing/src/views/shares.ts","webpack:///nextcloud/apps/files_sharing/src/actions/acceptShareAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/rejectShareAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/restoreShareAction.ts","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack://nextcloud/./apps/files_sharing/src/actions/sharingStatusAction.scss?3ea7","webpack:///nextcloud/apps/files_sharing/src/actions/sharingStatusAction.ts","webpack:///nextcloud/apps/files_sharing/src/utils/AccountIcon.ts","webpack:///nextcloud/apps/files_sharing/src/init.ts","webpack:///nextcloud/apps/files_sharing/src/actions/sharingStatusAction.scss","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport default getLoggerBuilder()\n .setApp('files_sharing')\n .detectUser()\n .build();\n","import { Folder, File, Permission } from '@nextcloud/files';\nimport { generateOcsUrl, generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport axios from '@nextcloud/axios';\nimport logger from './logger';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nconst headers = {\n 'Content-Type': 'application/json',\n};\nconst ocsEntryToNode = async function (ocsEntry) {\n try {\n // Federated share handling\n if (ocsEntry?.remote_id !== undefined) {\n if (!ocsEntry.mimetype) {\n const mime = (await import('mime')).default;\n // This won't catch files without an extension, but this is the best we can do\n ocsEntry.mimetype = mime.getType(ocsEntry.name);\n }\n ocsEntry.item_type = ocsEntry.type || (ocsEntry.mimetype ? 'file' : 'folder');\n // different naming for remote shares\n ocsEntry.item_mtime = ocsEntry.mtime;\n ocsEntry.file_target = ocsEntry.file_target || ocsEntry.mountpoint;\n // If the share is not accepted yet we don't know which permissions it will have\n if (!ocsEntry.accepted) {\n // Need to set permissions to NONE for federated shares\n ocsEntry.item_permissions = Permission.NONE;\n ocsEntry.permissions = Permission.NONE;\n }\n ocsEntry.uid_owner = ocsEntry.owner;\n // TODO: have the real display name stored somewhere\n ocsEntry.displayname_owner = ocsEntry.owner;\n }\n const isFolder = ocsEntry?.item_type === 'folder';\n const hasPreview = ocsEntry?.has_preview === true;\n const Node = isFolder ? Folder : File;\n // If this is an external share that is not yet accepted,\n // we don't have an id. We can fallback to the row id temporarily\n // local shares (this server) use `file_source`, but remote shares (federated) use `file_id`\n const fileid = ocsEntry.file_source || ocsEntry.file_id || ocsEntry.id;\n // Generate path and strip double slashes\n const path = ocsEntry.path || ocsEntry.file_target || ocsEntry.name;\n const source = generateRemoteUrl(`dav/${rootPath}/${path}`.replaceAll(/\\/\\//gm, '/'));\n let mtime = ocsEntry.item_mtime ? new Date((ocsEntry.item_mtime) * 1000) : undefined;\n // Prefer share time if more recent than item mtime\n if (ocsEntry?.stime > (ocsEntry?.item_mtime || 0)) {\n mtime = new Date((ocsEntry.stime) * 1000);\n }\n return new Node({\n id: fileid,\n source,\n owner: ocsEntry?.uid_owner,\n mime: ocsEntry?.mimetype || 'application/octet-stream',\n mtime,\n size: ocsEntry?.item_size,\n permissions: ocsEntry?.item_permissions || ocsEntry?.permissions,\n root: rootPath,\n attributes: {\n ...ocsEntry,\n 'has-preview': hasPreview,\n // Also check the sharingStatusAction.ts code\n 'owner-id': ocsEntry?.uid_owner,\n 'owner-display-name': ocsEntry?.displayname_owner,\n 'share-types': ocsEntry?.share_type,\n 'share-attributes': ocsEntry?.attributes || '[]',\n favorite: ocsEntry?.tags?.includes(window.OC.TAG_FAVORITE) ? 1 : 0,\n },\n });\n }\n catch (error) {\n logger.error('Error while parsing OCS entry', { error });\n return null;\n }\n};\nconst getShares = function (shared_with_me = false) {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares');\n return axios.get(url, {\n headers,\n params: {\n shared_with_me,\n include_tags: true,\n },\n });\n};\nconst getSharedWithYou = function () {\n return getShares(true);\n};\nconst getSharedWithOthers = function () {\n return getShares();\n};\nconst getRemoteShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getPendingShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getRemotePendingShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getDeletedShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\n/**\n * Group an array of objects (here Nodes) by a key\n * and return an array of arrays of them.\n * @param nodes Nodes to group\n * @param key The attribute to group by\n */\nconst groupBy = function (nodes, key) {\n return Object.values(nodes.reduce(function (acc, curr) {\n (acc[curr[key]] = acc[curr[key]] || []).push(curr);\n return acc;\n }, {}));\n};\nexport const getContents = async (sharedWithYou = true, sharedWithOthers = true, pendingShares = false, deletedshares = false, filterTypes = []) => {\n const promises = [];\n if (sharedWithYou) {\n promises.push(getSharedWithYou(), getRemoteShares());\n }\n if (sharedWithOthers) {\n promises.push(getSharedWithOthers());\n }\n if (pendingShares) {\n promises.push(getPendingShares(), getRemotePendingShares());\n }\n if (deletedshares) {\n promises.push(getDeletedShares());\n }\n const responses = await Promise.all(promises);\n const data = responses.map((response) => response.data.ocs.data).flat();\n let contents = (await Promise.all(data.map(ocsEntryToNode)))\n .filter((node) => node !== null);\n if (filterTypes.length > 0) {\n contents = contents.filter((node) => filterTypes.includes(node.attributes?.share_type));\n }\n // Merge duplicate shares and group their attributes\n // Also check the sharingStatusAction.ts code\n contents = groupBy(contents, 'source').map((nodes) => {\n const node = nodes[0];\n node.attributes['share-types'] = nodes.map(node => node.attributes['share-types']);\n return node;\n });\n return {\n folder: new Folder({\n id: 0,\n source: generateRemoteUrl('dav' + rootPath),\n owner: getCurrentUser()?.uid || null,\n }),\n contents,\n };\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation } from '@nextcloud/files';\nimport AccountClockSvg from '@mdi/svg/svg/account-clock.svg?raw';\nimport AccountGroupSvg from '@mdi/svg/svg/account-group.svg?raw';\nimport AccountPlusSvg from '@mdi/svg/svg/account-plus.svg?raw';\nimport AccountSvg from '@mdi/svg/svg/account.svg?raw';\nimport DeleteSvg from '@mdi/svg/svg/delete.svg?raw';\nimport LinkSvg from '@mdi/svg/svg/link.svg?raw';\nimport { getContents } from '../services/SharingService';\nexport const sharesViewId = 'shareoverview';\nexport const sharedWithYouViewId = 'sharingin';\nexport const sharedWithOthersViewId = 'sharingout';\nexport const sharingByLinksViewId = 'sharinglinks';\nexport const deletedSharesViewId = 'deletedshares';\nexport const pendingSharesViewId = 'pendingshares';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: sharesViewId,\n name: t('files_sharing', 'Shares'),\n caption: t('files_sharing', 'Overview of shared files.'),\n emptyTitle: t('files_sharing', 'No shares'),\n emptyCaption: t('files_sharing', 'Files and folders you shared or have been shared with you will show up here'),\n icon: AccountPlusSvg,\n order: 20,\n columns: [],\n getContents: () => getContents(),\n }));\n Navigation.register(new View({\n id: sharedWithYouViewId,\n name: t('files_sharing', 'Shared with you'),\n caption: t('files_sharing', 'List of files that are shared with you.'),\n emptyTitle: t('files_sharing', 'Nothing shared with you yet'),\n emptyCaption: t('files_sharing', 'Files and folders others shared with you will show up here'),\n icon: AccountSvg,\n order: 1,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(true, false, false, false),\n }));\n Navigation.register(new View({\n id: sharedWithOthersViewId,\n name: t('files_sharing', 'Shared with others'),\n caption: t('files_sharing', 'List of files that you shared with others.'),\n emptyTitle: t('files_sharing', 'Nothing shared yet'),\n emptyCaption: t('files_sharing', 'Files and folders you shared will show up here'),\n icon: AccountGroupSvg,\n order: 2,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, true, false, false),\n }));\n Navigation.register(new View({\n id: sharingByLinksViewId,\n name: t('files_sharing', 'Shared by link'),\n caption: t('files_sharing', 'List of files that are shared by link.'),\n emptyTitle: t('files_sharing', 'No shared links'),\n emptyCaption: t('files_sharing', 'Files and folders you shared by link will show up here'),\n icon: LinkSvg,\n order: 3,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, true, false, false, [window.OC.Share.SHARE_TYPE_LINK]),\n }));\n Navigation.register(new View({\n id: deletedSharesViewId,\n name: t('files_sharing', 'Deleted shares'),\n caption: t('files_sharing', 'List of shares you left.'),\n emptyTitle: t('files_sharing', 'No deleted shares'),\n emptyCaption: t('files_sharing', 'Shares you have left will show up here'),\n icon: DeleteSvg,\n order: 4,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, false, false, true),\n }));\n Navigation.register(new View({\n id: pendingSharesViewId,\n name: t('files_sharing', 'Pending shares'),\n caption: t('files_sharing', 'List of unapproved shares.'),\n emptyTitle: t('files_sharing', 'No pending shares'),\n emptyCaption: t('files_sharing', 'Shares you have received but not approved will show up here'),\n icon: AccountClockSvg,\n order: 5,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, false, true, false),\n }));\n};\n","import { emit } from '@nextcloud/event-bus';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { registerFileAction, FileAction } from '@nextcloud/files';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CheckSvg from '@mdi/svg/svg/check.svg?raw';\nimport { pendingSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'accept-share',\n displayName: (nodes) => n('files_sharing', 'Accept share', 'Accept shares', nodes.length),\n iconSvgInline: () => CheckSvg,\n enabled: (nodes, view) => nodes.length > 0 && view.id === pendingSharesViewId,\n async exec(node) {\n try {\n const isRemote = !!node.attributes.remote;\n const url = generateOcsUrl('apps/files_sharing/api/v1/{shareBase}/pending/{id}', {\n shareBase: isRemote ? 'remote_shares' : 'shares',\n id: node.attributes.id,\n });\n await axios.post(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 1,\n inline: () => true,\n});\nregisterFileAction(action);\n","import { registerFileAction, FileAction, DefaultType, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { sharesViewId, sharedWithYouViewId, sharedWithOthersViewId, sharingByLinksViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'open-in-files',\n displayName: () => t('files', 'Open in Files'),\n iconSvgInline: () => '',\n enabled: (nodes, view) => [\n sharesViewId,\n sharedWithYouViewId,\n sharedWithOthersViewId,\n sharingByLinksViewId,\n // Deleted and pending shares are not\n // accessible in the files app.\n ].includes(view.id),\n async exec(node) {\n const isFolder = node.type === FileType.Folder;\n window.OCP.Files.Router.goToRoute(null, // use default route\n {\n view: 'files',\n fileid: String(node.fileid),\n }, {\n // If this node is a folder open the folder in files\n dir: isFolder ? node.path : node.dirname,\n // otherwise if this is a file, we should open it\n openfile: isFolder ? undefined : 'true',\n });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\nregisterFileAction(action);\n","import { emit } from '@nextcloud/event-bus';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { registerFileAction, FileAction } from '@nextcloud/files';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CloseSvg from '@mdi/svg/svg/close.svg?raw';\nimport { pendingSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'reject-share',\n displayName: (nodes) => n('files_sharing', 'Reject share', 'Reject shares', nodes.length),\n iconSvgInline: () => CloseSvg,\n enabled: (nodes, view) => {\n if (view.id !== pendingSharesViewId) {\n return false;\n }\n if (nodes.length === 0) {\n return false;\n }\n // disable rejecting group shares from the pending list because they anyway\n // land back into that same list after rejecting them\n if (nodes.some(node => node.attributes.remote_id\n && node.attributes.share_type === window.OC.Share.SHARE_TYPE_REMOTE_GROUP)) {\n return false;\n }\n return true;\n },\n async exec(node) {\n try {\n const isRemote = !!node.attributes.remote;\n const url = generateOcsUrl('apps/files_sharing/api/v1/{shareBase}/{id}', {\n shareBase: isRemote ? 'remote_shares' : 'shares',\n id: node.attributes.id,\n });\n await axios.delete(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 2,\n inline: () => true,\n});\nregisterFileAction(action);\n","import { emit } from '@nextcloud/event-bus';\nimport { FileAction, registerFileAction } from '@nextcloud/files';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport ArrowULeftTopSvg from '@mdi/svg/svg/arrow-u-left-top.svg?raw';\nimport axios from '@nextcloud/axios';\nimport { deletedSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'restore-share',\n displayName: (nodes) => n('files_sharing', 'Restore share', 'Restore shares', nodes.length),\n iconSvgInline: () => ArrowULeftTopSvg,\n enabled: (nodes, view) => nodes.length > 0 && view.id === deletedSharesViewId,\n async exec(node) {\n try {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares/{id}', {\n id: node.attributes.id,\n });\n await axios.post(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 1,\n inline: () => true,\n});\nregisterFileAction(action);\n","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\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!./sharingStatusAction.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!./sharingStatusAction.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, View, registerFileAction, FileAction, Permission } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { Type } from '@nextcloud/sharing';\nimport AccountGroupSvg from '@mdi/svg/svg/account-group.svg?raw';\nimport AccountPlusSvg from '@mdi/svg/svg/account-plus.svg?raw';\nimport LinkSvg from '@mdi/svg/svg/link.svg?raw';\nimport CircleSvg from '../../../../core/img/apps/circles.svg?raw';\nimport { action as sidebarAction } from '../../../files/src/actions/sidebarAction';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { generateAvatarSvg } from '../utils/AccountIcon.ts';\nimport './sharingStatusAction.scss';\nconst isExternal = (node) => {\n return node.attributes.remote_id !== undefined;\n};\nexport const action = new FileAction({\n id: 'sharing-status',\n displayName(nodes) {\n const node = nodes[0];\n const shareTypes = Object.values(node?.attributes?.['share-types'] || {}).flat();\n if (shareTypes.length > 0\n || (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n return t('files_sharing', 'Shared');\n }\n return '';\n },\n title(nodes) {\n const node = nodes[0];\n // Mixed share types\n if (Array.isArray(node.attributes?.['share-types']) && node.attributes?.['share-types'].length > 1) {\n return t('files_sharing', 'Shared multiple times with different people');\n }\n if (node.owner && (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n const ownerDisplayName = node?.attributes?.['owner-display-name'];\n return t('files_sharing', 'Shared by {ownerDisplayName}', { ownerDisplayName });\n }\n return t('files_sharing', 'Show sharing options');\n },\n iconSvgInline(nodes) {\n const node = nodes[0];\n const shareTypes = Object.values(node?.attributes?.['share-types'] || {}).flat();\n // Mixed share types\n if (Array.isArray(node.attributes?.['share-types']) && node.attributes?.['share-types'].length > 1) {\n return AccountPlusSvg;\n }\n // Link shares\n if (shareTypes.includes(Type.SHARE_TYPE_LINK)\n || shareTypes.includes(Type.SHARE_TYPE_EMAIL)) {\n return LinkSvg;\n }\n // Group shares\n if (shareTypes.includes(Type.SHARE_TYPE_GROUP)\n || shareTypes.includes(Type.SHARE_TYPE_REMOTE_GROUP)) {\n return AccountGroupSvg;\n }\n // Circle shares\n if (shareTypes.includes(Type.SHARE_TYPE_CIRCLE)) {\n return CircleSvg;\n }\n if (node.owner && (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n const sanitizeId = (id) => id.replace(/[^a-zA-Z0-9._%+@-]+/g, '').replace(/\\//g, '');\n return generateAvatarSvg(sanitizeId(node.owner), isExternal(node));\n }\n return AccountPlusSvg;\n },\n enabled(nodes) {\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n const shareTypes = node.attributes?.['share-types'];\n const isMixed = Array.isArray(shareTypes) && shareTypes.length > 0;\n // If the node is shared multiple times with\n // different share types to the current user\n if (isMixed) {\n return true;\n }\n // If the node is shared by someone else\n if (node.owner && (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n return true;\n }\n return (node.permissions & Permission.SHARE) !== 0;\n },\n async exec(node, view, dir) {\n // You need read permissions to see the sidebar\n if ((node.permissions & Permission.READ) !== 0) {\n window.OCA?.Files?.Sidebar?.setActiveTab?.('sharing');\n return sidebarAction.exec(node, view, dir);\n }\n return null;\n },\n inline: () => true,\n});\nregisterFileAction(action);\n","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { generateUrl } from '@nextcloud/router';\nconst isDarkMode = () => {\n return window?.matchMedia?.('(prefers-color-scheme: dark)')?.matches === true\n || document.querySelector('[data-themes*=dark]') !== null;\n};\nexport const generateAvatarSvg = (userId, isGuest = false) => {\n // normal avatar url: /avatar/{userId}/32?guestFallback=true\n // dark avatar url: /avatar/{userId}/32/dark?guestFallback=true\n // guest avatar url: /avatar/guest/{userId}/32\n // guest dark avatar url: /avatar/guest/{userId}/32/dark\n const basePath = isGuest ? `/avatar/guest/${userId}` : `/avatar/${userId}`;\n const darkModePath = isDarkMode() ? '/dark' : '';\n const guestFallback = isGuest ? '' : '?guestFallback=true';\n const url = `${basePath}/32${darkModePath}${guestFallback}`;\n const avatarUrl = generateUrl(url, { userId });\n return `<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\n\t\txmlns=\"http://www.w3.org/2000/svg\" class=\"sharing-status__avatar\">\n\t\t<image href=\"${avatarUrl}\" height=\"32\" width=\"32\" />\n\t</svg>`;\n};\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { registerDavProperty } from '@nextcloud/files';\nimport registerSharingViews from './views/shares';\nimport './actions/acceptShareAction';\nimport './actions/openInFilesAction';\nimport './actions/rejectShareAction';\nimport './actions/restoreShareAction';\nimport './actions/sharingStatusAction';\nregisterSharingViews();\nregisterDavProperty('nc:share-attributes', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('oc:share-types', { oc: 'http://owncloud.org/ns' });\nregisterDavProperty('ocs:share-permissions', { ocs: 'http://open-collaboration-services.org/ns' });\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, `.action-items>.files-list__row-action-sharing-status{direction:rtl;padding-right:0 !important}svg.sharing-status__avatar{height:32px !important;width:32px !important;max-height:32px !important;max-width:32px !important;border-radius:32px;overflow:hidden}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/actions/sharingStatusAction.scss\"],\"names\":[],\"mappings\":\"AAsBA,qDAEC,aAAA,CAEG,0BAAA,CAGJ,2BACC,sBAAA,CACA,qBAAA,CACA,0BAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\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 <http://www.gnu.org/licenses/>.\\n *\\n */\\n // Only when rendered inline, when not enough space, this is put in the menu\\n.action-items > .files-list__row-action-sharing-status {\\n\\t// put icon at the end of the button\\n\\tdirection: rtl;\\n\\t// align icons with textless inline actions\\n padding-right: 0 !important;\\n}\\n\\nsvg.sharing-status__avatar {\\n\\theight: 32px !important;\\n\\twidth: 32px !important;\\n\\tmax-height: 32px !important;\\n\\tmax-width: 32px !important;\\n\\tborder-radius: 32px;\\n\\toverflow: hidden;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"89447025dfbc21bc3d51\" + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 5928;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t5928: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(70370)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","getLoggerBuilder","setApp","detectUser","build","rootPath","concat","_getCurrentUser","getCurrentUser","uid","headers","ocsEntryToNode","async","ocsEntry","_ocsEntry$tags","undefined","remote_id","mimetype","mime","default","getType","name","item_type","type","item_mtime","mtime","file_target","mountpoint","accepted","item_permissions","Permission","NONE","permissions","uid_owner","owner","displayname_owner","isFolder","hasPreview","has_preview","Node","Folder","File","fileid","file_source","file_id","id","path","source","generateRemoteUrl","replaceAll","Date","stime","size","item_size","root","attributes","share_type","favorite","tags","includes","window","OC","TAG_FAVORITE","error","logger","getShares","shared_with_me","arguments","length","url","generateOcsUrl","axios","get","params","include_tags","getContents","_getCurrentUser2","sharedWithOthers","pendingShares","deletedshares","filterTypes","promises","push","getRemoteShares","getPendingShares","getRemotePendingShares","getDeletedShares","data","Promise","all","map","response","ocs","flat","contents","filter","node","nodes","key","_node$attributes","Object","values","reduce","acc","curr","folder","sharesViewId","sharedWithYouViewId","sharedWithOthersViewId","sharingByLinksViewId","deletedSharesViewId","pendingSharesViewId","action","FileAction","displayName","n","iconSvgInline","enabled","view","exec","isRemote","remote","shareBase","post","emit","execBatch","dir","this","order","inline","registerFileAction","t","FileType","OCP","Files","Router","goToRoute","String","dirname","openfile","DefaultType","HIDDEN","some","Share","SHARE_TYPE_REMOTE_GROUP","delete","InformationSvg","_window","_ref","_nodes$0$root","OCA","Sidebar","startsWith","open","query","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","isExternal","title","_node$attributes2","_node$attributes3","Array","isArray","_node$attributes4","ownerDisplayName","_node$attributes5","_node$attributes6","_node$attributes7","_getCurrentUser3","shareTypes","AccountPlusSvg","Type","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","LinkSvg","SHARE_TYPE_GROUP","AccountGroupSvg","SHARE_TYPE_CIRCLE","userId","isGuest","basePath","darkModePath","_window$matchMedia","matchMedia","call","matches","document","querySelector","isDarkMode","guestFallback","avatarUrl","generateUrl","generateAvatarSvg","replace","_node$attributes8","_getCurrentUser4","SHARE","_window$OCA","_window$OCA$setActive","READ","setActiveTab","sidebarAction","Navigation","getNavigation","register","View","caption","emptyTitle","emptyCaption","icon","columns","parent","registerSharingViews","registerDavProperty","nc","oc","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","splice","r","getter","__esModule","d","a","definition","o","defineProperty","enumerable","f","e","chunkId","u","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","bind","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","Error","p","b","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"files_sharing-init.js?v=deca8e13bac9f2b33e42","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_sharing/src/services/logger.ts","webpack:///nextcloud/apps/files_sharing/src/services/SharingService.ts","webpack:///nextcloud/apps/files_sharing/src/views/shares.ts","webpack:///nextcloud/apps/files_sharing/src/actions/acceptShareAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/rejectShareAction.ts","webpack:///nextcloud/apps/files_sharing/src/actions/restoreShareAction.ts","webpack:///nextcloud/apps/files/src/logger.js","webpack:///nextcloud/apps/files/src/actions/sidebarAction.ts","webpack://nextcloud/./apps/files_sharing/src/actions/sharingStatusAction.scss?3ea7","webpack:///nextcloud/apps/files_sharing/src/actions/sharingStatusAction.ts","webpack:///nextcloud/apps/files_sharing/src/utils/AccountIcon.ts","webpack:///nextcloud/apps/files_sharing/src/init.ts","webpack:///nextcloud/apps/files_sharing/src/actions/sharingStatusAction.scss","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 = (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((key) => (__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 = (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 = (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((fn) => (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};","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport default getLoggerBuilder()\n .setApp('files_sharing')\n .detectUser()\n .build();\n","import { Folder, File, Permission } from '@nextcloud/files';\nimport { generateOcsUrl, generateRemoteUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport axios from '@nextcloud/axios';\nimport logger from './logger';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nconst headers = {\n 'Content-Type': 'application/json',\n};\nconst ocsEntryToNode = async function (ocsEntry) {\n try {\n // Federated share handling\n if (ocsEntry?.remote_id !== undefined) {\n if (!ocsEntry.mimetype) {\n const mime = (await import('mime')).default;\n // This won't catch files without an extension, but this is the best we can do\n ocsEntry.mimetype = mime.getType(ocsEntry.name);\n }\n ocsEntry.item_type = ocsEntry.type || (ocsEntry.mimetype ? 'file' : 'folder');\n // different naming for remote shares\n ocsEntry.item_mtime = ocsEntry.mtime;\n ocsEntry.file_target = ocsEntry.file_target || ocsEntry.mountpoint;\n // If the share is not accepted yet we don't know which permissions it will have\n if (!ocsEntry.accepted) {\n // Need to set permissions to NONE for federated shares\n ocsEntry.item_permissions = Permission.NONE;\n ocsEntry.permissions = Permission.NONE;\n }\n ocsEntry.uid_owner = ocsEntry.owner;\n // TODO: have the real display name stored somewhere\n ocsEntry.displayname_owner = ocsEntry.owner;\n }\n const isFolder = ocsEntry?.item_type === 'folder';\n const hasPreview = ocsEntry?.has_preview === true;\n const Node = isFolder ? Folder : File;\n // If this is an external share that is not yet accepted,\n // we don't have an id. We can fallback to the row id temporarily\n // local shares (this server) use `file_source`, but remote shares (federated) use `file_id`\n const fileid = ocsEntry.file_source || ocsEntry.file_id || ocsEntry.id;\n // Generate path and strip double slashes\n const path = ocsEntry.path || ocsEntry.file_target || ocsEntry.name;\n const source = generateRemoteUrl(`dav/${rootPath}/${path}`.replaceAll(/\\/\\//gm, '/'));\n let mtime = ocsEntry.item_mtime ? new Date((ocsEntry.item_mtime) * 1000) : undefined;\n // Prefer share time if more recent than item mtime\n if (ocsEntry?.stime > (ocsEntry?.item_mtime || 0)) {\n mtime = new Date((ocsEntry.stime) * 1000);\n }\n return new Node({\n id: fileid,\n source,\n owner: ocsEntry?.uid_owner,\n mime: ocsEntry?.mimetype || 'application/octet-stream',\n mtime,\n size: ocsEntry?.item_size,\n permissions: ocsEntry?.item_permissions || ocsEntry?.permissions,\n root: rootPath,\n attributes: {\n ...ocsEntry,\n 'has-preview': hasPreview,\n // Also check the sharingStatusAction.ts code\n 'owner-id': ocsEntry?.uid_owner,\n 'owner-display-name': ocsEntry?.displayname_owner,\n 'share-types': ocsEntry?.share_type,\n 'share-attributes': ocsEntry?.attributes || '[]',\n favorite: ocsEntry?.tags?.includes(window.OC.TAG_FAVORITE) ? 1 : 0,\n },\n });\n }\n catch (error) {\n logger.error('Error while parsing OCS entry', { error });\n return null;\n }\n};\nconst getShares = function (shared_with_me = false) {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares');\n return axios.get(url, {\n headers,\n params: {\n shared_with_me,\n include_tags: true,\n },\n });\n};\nconst getSharedWithYou = function () {\n return getShares(true);\n};\nconst getSharedWithOthers = function () {\n return getShares();\n};\nconst getRemoteShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getPendingShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getRemotePendingShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/remote_shares/pending');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\nconst getDeletedShares = function () {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares');\n return axios.get(url, {\n headers,\n params: {\n include_tags: true,\n },\n });\n};\n/**\n * Group an array of objects (here Nodes) by a key\n * and return an array of arrays of them.\n * @param nodes Nodes to group\n * @param key The attribute to group by\n */\nconst groupBy = function (nodes, key) {\n return Object.values(nodes.reduce(function (acc, curr) {\n (acc[curr[key]] = acc[curr[key]] || []).push(curr);\n return acc;\n }, {}));\n};\nexport const getContents = async (sharedWithYou = true, sharedWithOthers = true, pendingShares = false, deletedshares = false, filterTypes = []) => {\n const promises = [];\n if (sharedWithYou) {\n promises.push(getSharedWithYou(), getRemoteShares());\n }\n if (sharedWithOthers) {\n promises.push(getSharedWithOthers());\n }\n if (pendingShares) {\n promises.push(getPendingShares(), getRemotePendingShares());\n }\n if (deletedshares) {\n promises.push(getDeletedShares());\n }\n const responses = await Promise.all(promises);\n const data = responses.map((response) => response.data.ocs.data).flat();\n let contents = (await Promise.all(data.map(ocsEntryToNode)))\n .filter((node) => node !== null);\n if (filterTypes.length > 0) {\n contents = contents.filter((node) => filterTypes.includes(node.attributes?.share_type));\n }\n // Merge duplicate shares and group their attributes\n // Also check the sharingStatusAction.ts code\n contents = groupBy(contents, 'source').map((nodes) => {\n const node = nodes[0];\n node.attributes['share-types'] = nodes.map(node => node.attributes['share-types']);\n return node;\n });\n return {\n folder: new Folder({\n id: 0,\n source: generateRemoteUrl('dav' + rootPath),\n owner: getCurrentUser()?.uid || null,\n }),\n contents,\n };\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation } from '@nextcloud/files';\nimport AccountClockSvg from '@mdi/svg/svg/account-clock.svg?raw';\nimport AccountGroupSvg from '@mdi/svg/svg/account-group.svg?raw';\nimport AccountPlusSvg from '@mdi/svg/svg/account-plus.svg?raw';\nimport AccountSvg from '@mdi/svg/svg/account.svg?raw';\nimport DeleteSvg from '@mdi/svg/svg/delete.svg?raw';\nimport LinkSvg from '@mdi/svg/svg/link.svg?raw';\nimport { getContents } from '../services/SharingService';\nexport const sharesViewId = 'shareoverview';\nexport const sharedWithYouViewId = 'sharingin';\nexport const sharedWithOthersViewId = 'sharingout';\nexport const sharingByLinksViewId = 'sharinglinks';\nexport const deletedSharesViewId = 'deletedshares';\nexport const pendingSharesViewId = 'pendingshares';\nexport default () => {\n const Navigation = getNavigation();\n Navigation.register(new View({\n id: sharesViewId,\n name: t('files_sharing', 'Shares'),\n caption: t('files_sharing', 'Overview of shared files.'),\n emptyTitle: t('files_sharing', 'No shares'),\n emptyCaption: t('files_sharing', 'Files and folders you shared or have been shared with you will show up here'),\n icon: AccountPlusSvg,\n order: 20,\n columns: [],\n getContents: () => getContents(),\n }));\n Navigation.register(new View({\n id: sharedWithYouViewId,\n name: t('files_sharing', 'Shared with you'),\n caption: t('files_sharing', 'List of files that are shared with you.'),\n emptyTitle: t('files_sharing', 'Nothing shared with you yet'),\n emptyCaption: t('files_sharing', 'Files and folders others shared with you will show up here'),\n icon: AccountSvg,\n order: 1,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(true, false, false, false),\n }));\n Navigation.register(new View({\n id: sharedWithOthersViewId,\n name: t('files_sharing', 'Shared with others'),\n caption: t('files_sharing', 'List of files that you shared with others.'),\n emptyTitle: t('files_sharing', 'Nothing shared yet'),\n emptyCaption: t('files_sharing', 'Files and folders you shared will show up here'),\n icon: AccountGroupSvg,\n order: 2,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, true, false, false),\n }));\n Navigation.register(new View({\n id: sharingByLinksViewId,\n name: t('files_sharing', 'Shared by link'),\n caption: t('files_sharing', 'List of files that are shared by link.'),\n emptyTitle: t('files_sharing', 'No shared links'),\n emptyCaption: t('files_sharing', 'Files and folders you shared by link will show up here'),\n icon: LinkSvg,\n order: 3,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, true, false, false, [window.OC.Share.SHARE_TYPE_LINK]),\n }));\n Navigation.register(new View({\n id: deletedSharesViewId,\n name: t('files_sharing', 'Deleted shares'),\n caption: t('files_sharing', 'List of shares you left.'),\n emptyTitle: t('files_sharing', 'No deleted shares'),\n emptyCaption: t('files_sharing', 'Shares you have left will show up here'),\n icon: DeleteSvg,\n order: 4,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, false, false, true),\n }));\n Navigation.register(new View({\n id: pendingSharesViewId,\n name: t('files_sharing', 'Pending shares'),\n caption: t('files_sharing', 'List of unapproved shares.'),\n emptyTitle: t('files_sharing', 'No pending shares'),\n emptyCaption: t('files_sharing', 'Shares you have received but not approved will show up here'),\n icon: AccountClockSvg,\n order: 5,\n parent: sharesViewId,\n columns: [],\n getContents: () => getContents(false, false, true, false),\n }));\n};\n","import { emit } from '@nextcloud/event-bus';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { registerFileAction, FileAction } from '@nextcloud/files';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CheckSvg from '@mdi/svg/svg/check.svg?raw';\nimport { pendingSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'accept-share',\n displayName: (nodes) => n('files_sharing', 'Accept share', 'Accept shares', nodes.length),\n iconSvgInline: () => CheckSvg,\n enabled: (nodes, view) => nodes.length > 0 && view.id === pendingSharesViewId,\n async exec(node) {\n try {\n const isRemote = !!node.attributes.remote;\n const url = generateOcsUrl('apps/files_sharing/api/v1/{shareBase}/pending/{id}', {\n shareBase: isRemote ? 'remote_shares' : 'shares',\n id: node.attributes.id,\n });\n await axios.post(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 1,\n inline: () => true,\n});\nregisterFileAction(action);\n","import { registerFileAction, FileAction, DefaultType, FileType } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { sharesViewId, sharedWithYouViewId, sharedWithOthersViewId, sharingByLinksViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'open-in-files',\n displayName: () => t('files', 'Open in Files'),\n iconSvgInline: () => '',\n enabled: (nodes, view) => [\n sharesViewId,\n sharedWithYouViewId,\n sharedWithOthersViewId,\n sharingByLinksViewId,\n // Deleted and pending shares are not\n // accessible in the files app.\n ].includes(view.id),\n async exec(node) {\n const isFolder = node.type === FileType.Folder;\n window.OCP.Files.Router.goToRoute(null, // use default route\n {\n view: 'files',\n fileid: String(node.fileid),\n }, {\n // If this node is a folder open the folder in files\n dir: isFolder ? node.path : node.dirname,\n // otherwise if this is a file, we should open it\n openfile: isFolder ? undefined : 'true',\n });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\nregisterFileAction(action);\n","import { emit } from '@nextcloud/event-bus';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { registerFileAction, FileAction } from '@nextcloud/files';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport CloseSvg from '@mdi/svg/svg/close.svg?raw';\nimport { pendingSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'reject-share',\n displayName: (nodes) => n('files_sharing', 'Reject share', 'Reject shares', nodes.length),\n iconSvgInline: () => CloseSvg,\n enabled: (nodes, view) => {\n if (view.id !== pendingSharesViewId) {\n return false;\n }\n if (nodes.length === 0) {\n return false;\n }\n // disable rejecting group shares from the pending list because they anyway\n // land back into that same list after rejecting them\n if (nodes.some(node => node.attributes.remote_id\n && node.attributes.share_type === window.OC.Share.SHARE_TYPE_REMOTE_GROUP)) {\n return false;\n }\n return true;\n },\n async exec(node) {\n try {\n const isRemote = !!node.attributes.remote;\n const url = generateOcsUrl('apps/files_sharing/api/v1/{shareBase}/{id}', {\n shareBase: isRemote ? 'remote_shares' : 'shares',\n id: node.attributes.id,\n });\n await axios.delete(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 2,\n inline: () => true,\n});\nregisterFileAction(action);\n","import { emit } from '@nextcloud/event-bus';\nimport { FileAction, registerFileAction } from '@nextcloud/files';\nimport { generateOcsUrl } from '@nextcloud/router';\nimport { translatePlural as n } from '@nextcloud/l10n';\nimport ArrowULeftTopSvg from '@mdi/svg/svg/arrow-u-left-top.svg?raw';\nimport axios from '@nextcloud/axios';\nimport { deletedSharesViewId } from '../views/shares';\nexport const action = new FileAction({\n id: 'restore-share',\n displayName: (nodes) => n('files_sharing', 'Restore share', 'Restore shares', nodes.length),\n iconSvgInline: () => ArrowULeftTopSvg,\n enabled: (nodes, view) => nodes.length > 0 && view.id === deletedSharesViewId,\n async exec(node) {\n try {\n const url = generateOcsUrl('apps/files_sharing/api/v1/deletedshares/{id}', {\n id: node.attributes.id,\n });\n await axios.post(url);\n // Remove from current view\n emit('files:node:deleted', node);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n async execBatch(nodes, view, dir) {\n return Promise.all(nodes.map(node => this.exec(node, view, dir)));\n },\n order: 1,\n inline: () => true,\n});\nregisterFileAction(action);\n","/**\n * @copyright Copyright (c) 2022 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { getLoggerBuilder } from '@nextcloud/logger'\n\nexport default getLoggerBuilder()\n\t.setApp('files')\n\t.detectUser()\n\t.build()\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Permission, View, FileAction } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport InformationSvg from '@mdi/svg/svg/information-variant.svg?raw';\nimport logger from '../logger.js';\nexport const ACTION_DETAILS = 'details';\nexport const action = new FileAction({\n id: ACTION_DETAILS,\n displayName: () => t('files', 'Open details'),\n iconSvgInline: () => InformationSvg,\n // Sidebar currently supports user folder only, /files/USER\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n if (!nodes[0]) {\n return false;\n }\n // Only work if the sidebar is available\n if (!window?.OCA?.Files?.Sidebar) {\n return false;\n }\n return (nodes[0].root?.startsWith('/files/') && nodes[0].permissions !== Permission.NONE) ?? false;\n },\n async exec(node, view, dir) {\n try {\n // Open sidebar and set active tab to sharing by default\n window.OCA.Files.Sidebar.setActiveTab('sharing');\n // TODO: migrate Sidebar to use a Node instead\n await window.OCA.Files.Sidebar.open(node.path);\n // Silently update current fileid\n window.OCP.Files.Router.goToRoute(null, { view: view.id, fileid: node.fileid }, { ...window.OCP.Files.Router.query, dir }, true);\n return null;\n }\n catch (error) {\n logger.error('Error while opening sidebar', { error });\n return false;\n }\n },\n order: -50,\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!./sharingStatusAction.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!./sharingStatusAction.scss\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { Node, View, registerFileAction, FileAction, Permission } from '@nextcloud/files';\nimport { translate as t } from '@nextcloud/l10n';\nimport { Type } from '@nextcloud/sharing';\nimport AccountGroupSvg from '@mdi/svg/svg/account-group.svg?raw';\nimport AccountPlusSvg from '@mdi/svg/svg/account-plus.svg?raw';\nimport LinkSvg from '@mdi/svg/svg/link.svg?raw';\nimport CircleSvg from '../../../../core/img/apps/circles.svg?raw';\nimport { action as sidebarAction } from '../../../files/src/actions/sidebarAction';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport { generateAvatarSvg } from '../utils/AccountIcon.ts';\nimport './sharingStatusAction.scss';\nconst isExternal = (node) => {\n return node.attributes.remote_id !== undefined;\n};\nexport const action = new FileAction({\n id: 'sharing-status',\n displayName(nodes) {\n const node = nodes[0];\n const shareTypes = Object.values(node?.attributes?.['share-types'] || {}).flat();\n if (shareTypes.length > 0\n || (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n return t('files_sharing', 'Shared');\n }\n return '';\n },\n title(nodes) {\n const node = nodes[0];\n // Mixed share types\n if (Array.isArray(node.attributes?.['share-types']) && node.attributes?.['share-types'].length > 1) {\n return t('files_sharing', 'Shared multiple times with different people');\n }\n if (node.owner && (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n const ownerDisplayName = node?.attributes?.['owner-display-name'];\n return t('files_sharing', 'Shared by {ownerDisplayName}', { ownerDisplayName });\n }\n return t('files_sharing', 'Show sharing options');\n },\n iconSvgInline(nodes) {\n const node = nodes[0];\n const shareTypes = Object.values(node?.attributes?.['share-types'] || {}).flat();\n // Mixed share types\n if (Array.isArray(node.attributes?.['share-types']) && node.attributes?.['share-types'].length > 1) {\n return AccountPlusSvg;\n }\n // Link shares\n if (shareTypes.includes(Type.SHARE_TYPE_LINK)\n || shareTypes.includes(Type.SHARE_TYPE_EMAIL)) {\n return LinkSvg;\n }\n // Group shares\n if (shareTypes.includes(Type.SHARE_TYPE_GROUP)\n || shareTypes.includes(Type.SHARE_TYPE_REMOTE_GROUP)) {\n return AccountGroupSvg;\n }\n // Circle shares\n if (shareTypes.includes(Type.SHARE_TYPE_CIRCLE)) {\n return CircleSvg;\n }\n if (node.owner && (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n const sanitizeId = (id) => id.replace(/[^a-zA-Z0-9._%+@-]+/g, '').replace(/\\//g, '');\n return generateAvatarSvg(sanitizeId(node.owner), isExternal(node));\n }\n return AccountPlusSvg;\n },\n enabled(nodes) {\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n const shareTypes = node.attributes?.['share-types'];\n const isMixed = Array.isArray(shareTypes) && shareTypes.length > 0;\n // If the node is shared multiple times with\n // different share types to the current user\n if (isMixed) {\n return true;\n }\n // If the node is shared by someone else\n if (node.owner && (node.owner !== getCurrentUser()?.uid || isExternal(node))) {\n return true;\n }\n return (node.permissions & Permission.SHARE) !== 0;\n },\n async exec(node, view, dir) {\n // You need read permissions to see the sidebar\n if ((node.permissions & Permission.READ) !== 0) {\n window.OCA?.Files?.Sidebar?.setActiveTab?.('sharing');\n return sidebarAction.exec(node, view, dir);\n }\n return null;\n },\n inline: () => true,\n});\nregisterFileAction(action);\n","/*!\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { generateUrl } from '@nextcloud/router';\nconst isDarkMode = () => {\n return window?.matchMedia?.('(prefers-color-scheme: dark)')?.matches === true\n || document.querySelector('[data-themes*=dark]') !== null;\n};\nexport const generateAvatarSvg = (userId, isGuest = false) => {\n // normal avatar url: /avatar/{userId}/32?guestFallback=true\n // dark avatar url: /avatar/{userId}/32/dark?guestFallback=true\n // guest avatar url: /avatar/guest/{userId}/32\n // guest dark avatar url: /avatar/guest/{userId}/32/dark\n const basePath = isGuest ? `/avatar/guest/${userId}` : `/avatar/${userId}`;\n const darkModePath = isDarkMode() ? '/dark' : '';\n const guestFallback = isGuest ? '' : '?guestFallback=true';\n const url = `${basePath}/32${darkModePath}${guestFallback}`;\n const avatarUrl = generateUrl(url, { userId });\n return `<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\"\n\t\txmlns=\"http://www.w3.org/2000/svg\" class=\"sharing-status__avatar\">\n\t\t<image href=\"${avatarUrl}\" height=\"32\" width=\"32\" />\n\t</svg>`;\n};\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\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 <http://www.gnu.org/licenses/>.\n *\n */\nimport { registerDavProperty } from '@nextcloud/files';\nimport registerSharingViews from './views/shares';\nimport './actions/acceptShareAction';\nimport './actions/openInFilesAction';\nimport './actions/rejectShareAction';\nimport './actions/restoreShareAction';\nimport './actions/sharingStatusAction';\nregisterSharingViews();\nregisterDavProperty('nc:share-attributes', { nc: 'http://nextcloud.org/ns' });\nregisterDavProperty('oc:share-types', { oc: 'http://owncloud.org/ns' });\nregisterDavProperty('ocs:share-permissions', { ocs: 'http://open-collaboration-services.org/ns' });\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, `.action-items>.files-list__row-action-sharing-status{direction:rtl;padding-right:0 !important}svg.sharing-status__avatar{height:32px !important;width:32px !important;max-height:32px !important;max-width:32px !important;border-radius:32px;overflow:hidden}`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_sharing/src/actions/sharingStatusAction.scss\"],\"names\":[],\"mappings\":\"AAsBA,qDAEC,aAAA,CAEG,0BAAA,CAGJ,2BACC,sBAAA,CACA,qBAAA,CACA,0BAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2023 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\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 <http://www.gnu.org/licenses/>.\\n *\\n */\\n // Only when rendered inline, when not enough space, this is put in the menu\\n.action-items > .files-list__row-action-sharing-status {\\n\\t// put icon at the end of the button\\n\\tdirection: rtl;\\n\\t// align icons with textless inline actions\\n padding-right: 0 !important;\\n}\\n\\nsvg.sharing-status__avatar {\\n\\theight: 32px !important;\\n\\twidth: 32px !important;\\n\\tmax-height: 32px !important;\\n\\tmax-width: 32px !important;\\n\\tborder-radius: 32px;\\n\\toverflow: hidden;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\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 = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (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 = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((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 = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"89447025dfbc21bc3d51\" + \"\";\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 = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (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 = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 5928;","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 && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\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 || !/^http(s?):/.test(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\t5928: 0\n};\n\n__webpack_require__.f.j = (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((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 = (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 = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (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((id) => (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, [4208], () => (__webpack_require__(70370)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","getLoggerBuilder","setApp","detectUser","build","rootPath","concat","_getCurrentUser","getCurrentUser","uid","headers","ocsEntryToNode","async","ocsEntry","_ocsEntry$tags","undefined","remote_id","mimetype","mime","default","getType","name","item_type","type","item_mtime","mtime","file_target","mountpoint","accepted","item_permissions","Permission","NONE","permissions","uid_owner","owner","displayname_owner","isFolder","hasPreview","has_preview","Node","Folder","File","fileid","file_source","file_id","id","path","source","generateRemoteUrl","replaceAll","Date","stime","size","item_size","root","attributes","share_type","favorite","tags","includes","window","OC","TAG_FAVORITE","error","logger","getShares","shared_with_me","arguments","length","url","generateOcsUrl","axios","get","params","include_tags","getContents","_getCurrentUser2","sharedWithOthers","pendingShares","deletedshares","filterTypes","promises","push","getRemoteShares","getPendingShares","getRemotePendingShares","getDeletedShares","data","Promise","all","map","response","ocs","flat","contents","filter","node","nodes","key","_node$attributes","Object","values","reduce","acc","curr","folder","sharesViewId","sharedWithYouViewId","sharedWithOthersViewId","sharingByLinksViewId","deletedSharesViewId","pendingSharesViewId","action","FileAction","displayName","n","iconSvgInline","enabled","view","exec","isRemote","remote","shareBase","post","emit","execBatch","dir","this","order","inline","registerFileAction","t","FileType","OCP","Files","Router","goToRoute","String","dirname","openfile","DefaultType","HIDDEN","some","Share","SHARE_TYPE_REMOTE_GROUP","delete","InformationSvg","_window","_ref","_nodes$0$root","OCA","Sidebar","startsWith","setActiveTab","open","query","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","isExternal","title","_node$attributes2","_node$attributes3","Array","isArray","_node$attributes4","ownerDisplayName","_node$attributes5","_node$attributes6","_node$attributes7","_getCurrentUser3","shareTypes","AccountPlusSvg","Type","SHARE_TYPE_LINK","SHARE_TYPE_EMAIL","LinkSvg","SHARE_TYPE_GROUP","AccountGroupSvg","SHARE_TYPE_CIRCLE","userId","isGuest","basePath","darkModePath","_window$matchMedia","matchMedia","call","matches","document","querySelector","isDarkMode","guestFallback","avatarUrl","generateUrl","generateAvatarSvg","replace","_node$attributes8","_getCurrentUser4","SHARE","_window$OCA","_window$OCA$setActive","READ","sidebarAction","Navigation","getNavigation","register","View","caption","emptyTitle","emptyCaption","icon","columns","parent","registerSharingViews","registerDavProperty","nc","oc","___CSS_LOADER_EXPORT___","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","loaded","__webpack_modules__","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","splice","r","getter","__esModule","d","a","definition","o","defineProperty","enumerable","f","e","chunkId","u","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","l","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","bind","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","Error","p","b","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file